:root{
  --bg:#f4f4f1;--surface:#fff;--surface-2:#ecece8;--ink:#151515;--muted:#62625d;
  --line:#deded8;--brand:#c9212e;--brand-dark:#9f1722;--black:#1d1d1b;
  --radius:18px;--radius-sm:12px;--shadow:0 18px 55px rgba(18,18,16,.08);
  --max:1480px;--header:74px;--ease:cubic-bezier(.22,1,.36,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:var(--ink)}button,a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.icon{width:20px;height:20px;display:inline-block;vertical-align:-4px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-sm{width:16px;height:16px}.icon-lg{width:26px;height:26px}.btn{border:0;border-radius:999px;min-height:46px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;font-weight:700;line-height:1;white-space:nowrap;transition:.28s var(--ease);text-decoration:none}.btn .icon{flex:0 0 auto}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark);box-shadow:0 10px 24px rgba(201,33,46,.2)}.btn-light{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-light:hover{background:#f8f8f5;border-color:#c9c9c3}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn-ghost:hover{background:#fff;border-color:#c9c9c3}.btn-square{width:46px;padding:0}.eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--brand)}:where(a,button,input,select):focus-visible{outline:3px solid rgba(201,33,46,.22);outline-offset:2px}
/* login */
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(430px,.78fr);background:#fff}.login-visual{position:relative;overflow:hidden;background:#111;min-height:100vh}.login-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08);opacity:.82;transform:scale(1.015)}.login-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.03) 20%,rgba(10,10,10,.75) 100%),linear-gradient(90deg,rgba(201,33,46,.16),transparent 50%)}.login-visual__content{position:absolute;z-index:2;left:clamp(34px,5vw,76px);right:clamp(34px,5vw,76px);bottom:clamp(42px,7vh,84px);color:#fff}.login-visual__mark{display:flex;align-items:center;gap:11px;margin-bottom:24px;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:800}.login-visual__mark:before{content:"";width:28px;height:2px;background:var(--brand)}.login-visual h1{font-size:clamp(36px,5vw,64px);line-height:.96;margin:0 0 22px;letter-spacing:-.05em;max-width:850px}.login-visual p{font-size:clamp(17px,1.45vw,22px);line-height:1.55;color:rgba(255,255,255,.78);max-width:610px;margin:0}.login-panel{min-height:100vh;padding:48px clamp(36px,5vw,80px);display:flex;flex-direction:column;justify-content:center;position:relative}.login-brand{position:absolute;top:44px;left:clamp(36px,5vw,80px);display:flex;align-items:center;gap:16px;min-height:32px}.login-brand img{display:block;width:142px;height:auto;flex:0 0 auto}.brand-divider{display:block;flex:0 0 1px;width:1px;height:30px;background:#d5d5d0}.brand-label{height:30px;display:flex;align-items:center;font-size:14px;line-height:1;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#5f5f5a}.login-form{width:100%;max-width:470px;margin:0 auto}.login-form h2{font-size:34px;letter-spacing:-.04em;margin:0 0 10px}.login-form>p{color:var(--muted);margin:0 0 34px;line-height:1.6}.field{margin-bottom:18px}.field label{display:block;font-size:13px;font-weight:800;margin:0 0 8px}.field-wrap{position:relative}.field input,.field select{width:100%;height:54px;border:1px solid #d8d8d2;border-radius:13px;background:#fafaf8;padding:0 16px;outline:none;transition:.2s}.field input:focus,.field select:focus{background:#fff;border-color:#a9a9a3;box-shadow:0 0 0 4px rgba(0,0,0,.035)}.password-toggle{position:absolute;right:8px;top:7px;width:40px;height:40px;border:0;background:transparent;border-radius:10px;cursor:pointer;color:#73736e}.login-actions{display:flex;justify-content:space-between;align-items:center;margin:8px 0 26px;font-size:13px}.check{display:flex;align-items:center;gap:8px;color:#585853}.check input{accent-color:var(--brand)}.login-form .btn-primary{width:100%;min-height:54px;border-radius:13px}.prototype-note{margin-top:22px;padding:14px 16px;background:#f5f5f2;border-radius:12px;color:#666660;font-size:12px;line-height:1.55}.login-footer{position:absolute;bottom:30px;left:clamp(36px,5vw,80px);right:clamp(36px,5vw,80px);color:#7f7f79;font-size:11px}
/* shell */
.app-shell{min-height:100vh}.topbar{height:var(--header);position:sticky;top:0;z-index:30;background:rgba(247,247,245,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(210,210,204,.76)}.topbar-inner{max-width:var(--max);height:100%;margin:auto;padding:0 28px;display:flex;align-items:center;gap:22px}.brand{height:100%;display:flex;align-items:center;gap:14px;text-decoration:none;flex:0 0 auto;cursor:pointer}.brand img{display:block;width:110px;height:auto;flex:0 0 auto}.brand span{min-height:28px;display:flex;align-items:center;border-left:1px solid #cfcfc9;padding-left:14px;font-size:11px;line-height:1;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#62625d}.global-search{flex:1;max-width:620px;margin-left:30px;position:relative}.global-search input{width:100%;height:44px;border:1px solid #dcdcd6;border-radius:999px;background:#fff;padding:0 44px 0 42px;outline:0}.global-search input::placeholder{color:#7b7b75}.global-search .search-ico{position:absolute;left:15px;top:50%;transform:translateY(-50%);height:20px;color:#73736d;pointer-events:none}.global-search kbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:1px solid #deded7;background:#f5f5f2;border-radius:7px;padding:3px 7px;font:11px ui-monospace;color:#74746e}.top-actions{height:100%;margin-left:auto;display:flex;align-items:center;gap:8px}.user-pill{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:5px 8px 5px 5px;border-radius:999px;cursor:pointer;line-height:1;color:var(--ink)}.user-pill:hover{background:rgba(0,0,0,.035)}.avatar{width:34px;height:34px;border-radius:50%;background:#20201f;color:#fff;display:grid;place-items:center;flex:0 0 auto;font-size:12px;font-weight:800}.user-name{display:flex;align-items:center;min-height:34px;font-size:13px;font-weight:750;line-height:1}.page{max-width:var(--max);margin:0 auto;padding:34px 28px 80px}.fade-in{animation:fadeIn .5s var(--ease) both}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* home */
.hero{position:relative;overflow:hidden;border-radius:28px;background:#1b1b1a;color:white;min-height:440px;padding:clamp(36px,5vw,72px);display:flex;align-items:flex-end}.hero:before{content:"";position:absolute;inset:0;background:var(--hero-image,url('images/photo-6.webp')) center 44%/cover no-repeat;filter:grayscale(1);opacity:.56;transform:scale(1.02)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,13,12,.9) 0%,rgba(13,13,12,.55) 48%,rgba(13,13,12,.12) 100%),linear-gradient(0deg,rgba(201,33,46,.16),transparent 50%)}.hero-content{z-index:1;position:relative;max-width:790px}.hero .eyebrow{color:#ff6571}.hero h1{font-size:clamp(28px,3vw,48px);line-height:.98;letter-spacing:-.055em;margin:12px 0 21px}.hero p{font-size:18px;color:rgba(255,255,255,.76);line-height:1.6;max-width:650px}.hero-search{margin-top:29px;display:flex;gap:10px;background:white;border-radius:16px;padding:7px;max-width:680px;box-shadow:0 18px 50px rgba(0,0,0,.22)}.hero-search input{min-width:0;flex:1;border:0;outline:0;padding:0 13px;font-size:15px}.hero-search .btn{border-radius:11px}.section{margin-top:54px}.section--timeline-home{margin-top:18px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}.section-head h2{font-size:clamp(26px,2.5vw,36px);line-height:1.05;letter-spacing:-.04em;margin:5px 0 0}.section-head p{margin:0;color:var(--muted);max-width:540px;line-height:1.6;text-align: right;}.text-link{border:0;background:transparent;color:var(--ink);cursor:pointer;font-weight:800;display:flex;gap:8px;align-items:center;white-space:nowrap;transition:.2s}.text-link:hover{color:var(--brand)}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category{border:1px solid var(--line);border-radius:18px;background:#fff;min-height:182px;padding:24px;position:relative;overflow:hidden;cursor:pointer;text-align:left;transition:.35s var(--ease)}.category:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#cecec8}.category .cat-icon{width:44px;height:44px;border-radius:12px;background:#f0f0ed;display:grid;place-items:center;margin-bottom:30px}.category strong{font-size:18px;display:block}.category small{color:var(--muted);display:block;margin-top:4px}.category .arrow{position:absolute;right:22px;bottom:22px;transition:.3s}.category:hover .arrow{transform:translateX(4px);color:var(--brand)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;transition:.35s var(--ease);min-width:0}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-media{aspect-ratio:4/3;background:#ddd;overflow:hidden;position:relative}.card-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:.55s var(--ease)}.card:hover .card-media img{transform:scale(1.035)}.media-tag{position:absolute;top:12px;left:12px;background:rgba(20,20,19,.78);backdrop-filter:blur(8px);color:white;padding:7px 9px;border-radius:999px;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.card-body{padding:18px}.card-meta{display:flex;justify-content:space-between;color:#6f6f69;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:750}.card h3{font-size:17px;line-height:1.35;letter-spacing:-.02em;margin:12px 0 10px}.card-ref{color:#686863;font-size:12px}.timeline{background:#20201f;color:#fff;border-radius:24px;padding:34px 32px;overflow:hidden}.timeline .eyebrow{color:#ff6672}.timeline-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.timeline-head h3{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.03em;color:#fff}.timeline .btn-light{background:#fff;color:#171716;border-color:#fff}.timeline .btn-light:hover{background:#f1f1ed;border-color:#f1f1ed}.decades{display:flex;align-items:flex-start;position:relative;padding:14px 0 0}.decades:before{content:"";position:absolute;left:7.15%;right:7.15%;top:20px;height:1px;background:#555550}.decade{position:relative;z-index:1;flex:1;border:0;background:none;color:#b8b8b1;text-align:center;padding:0;cursor:pointer;font-weight:500;line-height:1.2}.decade:before{content:"";display:block;width:12px;height:12px;border-radius:50%;background:#666660;border:3px solid #20201f;margin:0 auto 15px;outline:1px solid #73736d}.decade:hover,.decade.active{color:#fff}.decade:hover:before{background:#8c8c85;outline-color:#a1a19a}.decade.active:before{background:var(--brand);outline-color:#ed4050}
/* search */
.page-title{display:flex;justify-content:space-between;gap:24px;align-items:end;margin:10px 0 28px}.page-title h1{font-size:clamp(28px,3vw,48px);line-height:1.02;letter-spacing:-.055em;margin:5px 0}.page-title p{color:var(--muted);margin:0}.search-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}.filters{position:sticky;top:104px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.filter-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.filter-head strong{font-size:14px}.filter-clear{border:0;background:transparent;color:var(--brand);font-size:11px;font-weight:800;cursor:pointer}.filter-group{padding:18px 0;border-top:1px solid #ecece7}.filter-group:first-of-type{border-top:0}.filter-group h4{font-size:12px;margin:0 0 13px;text-transform:uppercase;letter-spacing:.08em}.filter-option{display:flex;align-items:center;justify-content:space-between;gap:9px;color:#555550;margin:10px 0;font-size:13px}.filter-option label{display:flex;align-items:center;gap:9px;cursor:pointer}.filter-option input{accent-color:var(--brand)}.filter-option small{color:#7e7e78}.range-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.range-pair input{width:100%;height:39px;border:1px solid var(--line);border-radius:9px;padding:0 9px;background:#fafaf8}.results-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.results-toolbar strong{font-size:13px}.view-actions{display:flex;align-items:center;gap:8px}.select-compact{height:39px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:0 30px 0 12px;font-size:12px}.view-toggle{display:flex;background:#e9e9e5;border-radius:10px;padding:3px}.view-toggle button{width:34px;height:32px;border:0;background:transparent;border-radius:8px;cursor:pointer;color:#7f7f79}.view-toggle button.active{background:#fff;color:#161615;box-shadow:0 2px 8px rgba(0,0,0,.06)}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.results-grid.list{grid-template-columns:1fr}.results-grid.list .card{display:grid;grid-template-columns:190px 1fr}.results-grid.list .card-media{aspect-ratio:auto;height:145px}.empty{background:#fff;border:1px solid var(--line);border-radius:18px;padding:65px 30px;text-align:center;color:var(--muted)}.empty strong{color:var(--ink);display:block;font-size:20px;margin-bottom:8px}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:35px}.page-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer}.page-btn.active{background:#1e1e1c;color:white;border-color:#1e1e1c}.filter-mobile{display:none}
/* detail */
.breadcrumbs{display:flex;align-items:center;gap:8px;color:#70706a;font-size:12px;margin:5px 0 25px}.breadcrumbs button{border:0;background:transparent;padding:0;cursor:pointer;color:inherit}.detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(390px,.7fr);gap:42px}.detail-gallery{min-width:0}.detail-main{aspect-ratio:1.33;border-radius:22px;overflow:hidden;background:#ddd}.detail-main img{width:100%;height:100%;object-fit:cover;filter:saturate(.78)}.thumbs{display:flex;gap:10px;margin-top:10px}.thumb{width:88px;height:68px;border-radius:10px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:#ddd}.thumb.active{border-color:var(--brand)}.thumb img{width:100%;height:100%;object-fit:cover}.detail-info{padding-top:5px}.detail-info h1{font-size:clamp(28px,3vw,36px);line-height:1.02;letter-spacing:-.055em;margin:12px 0 18px}.detail-lead{color:#686863;font-size:15px;line-height:1.65}.detail-chips{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#e9e9e5;color:#54544f;font-size:11px;font-weight:800}.detail-actions{display:flex;gap:8px;margin:25px 0}.metadata{margin-top:30px;border-top:1px solid var(--line)}.meta-row{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.meta-row dt{color:#70706a}.meta-row dd{margin:0;font-weight:650}.history-block{margin-top:52px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px}.history-block h2{font-size:22px;line-height:1.12;letter-spacing:-.03em;margin:0 0 15px}.history-block p{line-height:1.75;color:#5f5f5a;margin:0;max-width:950px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:#1d1d1b;color:white;border-radius:999px;padding:12px 18px;font-size:12px;font-weight:750;opacity:0;pointer-events:none;transition:.3s;z-index:100}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1100px){.cards,.categories{grid-template-columns:repeat(2,1fr)}.results-grid{grid-template-columns:repeat(2,1fr)}.login-shell{grid-template-columns:1fr 480px}.detail{grid-template-columns:1fr}.detail-info{max-width:760px}.global-search{margin-left:5px}}
@media(max-width:780px){:root{--header:66px}.login-shell{display:block;background:#fff}.login-visual{min-height:38vh}.login-visual__content{bottom:28px}.login-visual h1{font-size:38px;margin-bottom:12px}.login-visual p{font-size:14px}.login-panel{min-height:62vh;padding:80px 24px 55px}.login-brand{top:26px;left:24px;gap:12px}.login-brand img{width:115px}.brand-divider{height:26px}.brand-label{height:26px;font-size:13px}.login-footer{display:none}.topbar-inner{padding:0 16px;gap:10px}.brand span,.user-name,.global-search kbd{display:none}.brand img{width:96px}.global-search{margin:0}.global-search input{height:40px}.top-actions .btn-square{display:none}.page{padding:24px 16px 65px}.hero{min-height:500px;padding:30px 22px;border-radius:21px}.hero:after{background:linear-gradient(0deg,rgba(13,13,12,.93),rgba(13,13,12,.18))}.hero h1{font-size:38px}.hero p{font-size:15px}.hero-search{display:block;background:transparent;padding:0;box-shadow:none}.hero-search input{height:52px;width:100%;border-radius:12px;padding:0 15px;background:#fff}.hero-search .btn{width:100%;margin-top:8px;height:50px}.section{margin-top:40px}.section--timeline-home{margin-top:12px}.section-head{align-items:start}.section-head p{display:none}.categories,.cards{grid-template-columns:1fr 1fr;gap:9px}.category{min-height:160px;padding:17px}.category .cat-icon{margin-bottom:24px}.card-body{padding:14px}.card h3{font-size:14px}.timeline{padding:22px 18px}.timeline-head{align-items:flex-start}.decades{overflow-x:auto;gap:0;padding-top:14px}.decades:before{left:30px;right:30px}.decade{min-width:72px}.page-title{align-items:start;display:block}.page-title h1{font-size:36px}.search-layout{display:block}.filters{display:none;position:static;margin-bottom:15px}.filters.open{display:block}.filter-mobile{display:flex;margin-bottom:13px}.results-grid{grid-template-columns:1fr 1fr;gap:9px}.results-toolbar{align-items:flex-start;gap:12px}.results-toolbar strong{padding-top:10px}.select-compact{max-width:132px}.detail{gap:24px}.detail-main{border-radius:16px}.detail-info h1{font-size:34px}.meta-row{grid-template-columns:110px 1fr}.history-block{padding:22px}.thumb{width:72px;height:56px}}
@media(max-width:520px){.categories,.cards,.results-grid{grid-template-columns:1fr}.results-grid.list .card{grid-template-columns:120px 1fr}.results-grid.list .card-media{height:125px}.section-head .text-link{font-size:12px}.view-toggle{display:none}.login-visual{min-height:34vh}.login-visual h1{font-size:34px}.login-form h2{font-size:30px}.timeline-head{display:block}.timeline-head .btn{width:100%;margin-top:18px}.decades:before{left:36px;right:36px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v2 — páginas separadas / template compartilhado */
a.brand,a.category,a.card,a.text-link,a.decade,.breadcrumbs a{text-decoration:none}.breadcrumbs a{color:inherit}.timeline-page{margin-top:8px}.timeline-page + .section{margin-top:34px}.timeline-page .decade{font:inherit}.category{display:block}.category .arrow{display:block}.empty + .pagination{display:none}

/* v4 — fechamento visual / rodapé institucional / motion leve */
.app-shell{display:flex;flex-direction:column}.page{width:100%;flex:1}.login-footer{display:flex;align-items:center;justify-content:space-between;gap:18px}.login-footer a{color:#5e5e59;text-decoration:none;font-weight:700;transition:color .2s var(--ease)}.login-footer a:hover{color:var(--brand)}

.site-footer{margin-top:auto;background:#e9e9e5;border-top:1px solid #d9d9d3;color:#3f3f3b}.site-footer__inner{max-width:var(--max);margin:0 auto;padding:46px 28px 38px;display:grid;grid-template-columns:1.25fr .8fr 1.15fr .8fr;gap:clamp(28px,4vw,70px);align-items:start}.footer-brand img{display:block;width:126px;height:auto;margin-bottom:22px}.footer-brand p{margin:0 0 7px;font-size:18px;font-weight:800;letter-spacing:-.025em;color:var(--ink)}.footer-brand span{display:block;color:#74746e;font-size:12px;letter-spacing:.04em}.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:13px;line-height:1.55}.footer-group strong{margin-bottom:3px;color:var(--ink);font-size:11px;letter-spacing:.11em;text-transform:uppercase}.footer-group a{color:#555550;text-decoration:none;transition:color .2s var(--ease),transform .2s var(--ease)}.footer-group a:hover{color:var(--brand);transform:translateX(2px)}.footer-group address{margin:0;color:#5d5d58;font-style:normal;line-height:1.7}.site-footer__bottom{max-width:var(--max);margin:0 auto;padding:18px 28px 22px;border-top:1px solid #d3d3cd;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#74746e;font-size:11px}.site-footer__bottom a{color:#555550;text-decoration:none;font-weight:700}.site-footer__bottom a:hover{color:var(--brand)}

/* pequenos refinamentos vistos na revisão geral */
.hero-search:focus-within{box-shadow:0 18px 50px rgba(0,0,0,.22),0 0 0 4px rgba(201,33,46,.14)}.card,.category,.history-block,.filters{box-shadow:0 1px 0 rgba(0,0,0,.015)}.decade:before{transition:transform .25s var(--ease),background .25s var(--ease),outline-color .25s var(--ease)}.decade:hover:before,.decade.active:before{transform:scale(1.12)}.thumb{transition:border-color .22s var(--ease),transform .22s var(--ease),opacity .22s var(--ease)}.thumb:hover{transform:translateY(-2px);opacity:.9}.page-btn,.view-toggle button,.filter-clear{transition:.22s var(--ease)}.page-btn:hover:not(.active){border-color:#bdbdb7;background:#f8f8f5}.filter-clear:hover{color:var(--brand-dark)}

/* animações de entrada: somente opacity/transform; sem bibliotecas */
.motion-enabled .reveal-item{opacity:0;transform:translateY(14px);transition:opacity .58s var(--ease) var(--reveal-delay,0ms),transform .58s var(--ease) var(--reveal-delay,0ms)}.motion-enabled .reveal-item.is-visible{opacity:1;transform:none}.motion-enabled .hero:before{animation:hero-settle 1.15s var(--ease) both}.motion-enabled .login-visual img{animation:login-settle 1.2s var(--ease) both}@keyframes hero-settle{from{transform:scale(1.055)}to{transform:scale(1.02)}}@keyframes login-settle{from{transform:scale(1.055);opacity:.68}to{transform:scale(1.015);opacity:.82}}

@media(max-width:1100px){.site-footer__inner{grid-template-columns:1.2fr .8fr 1fr}.site-footer__inner .footer-group:last-child{grid-column:2/4}}
@media(max-width:780px){.site-footer__inner{padding:38px 16px 30px;grid-template-columns:1fr 1fr;gap:30px 22px}.footer-brand{grid-column:1/-1}.site-footer__inner .footer-group:last-child{grid-column:auto}.site-footer__bottom{padding:17px 16px 20px;align-items:flex-start;flex-direction:column;gap:7px}.login-footer{position:static!important;display:flex!important;margin-top:30px;left:auto!important;right:auto!important;bottom:auto!important;flex-wrap:wrap}.login-panel{padding-bottom:34px}}
@media(max-width:520px){.site-footer__inner{grid-template-columns:1fr}.site-footer__inner .footer-group:last-child,.footer-brand{grid-column:auto}.footer-address br{display:none}.login-footer{font-size:10px;gap:7px 14px}}
@media(prefers-reduced-motion:reduce){.motion-enabled .reveal-item{opacity:1!important;transform:none!important}.motion-enabled .hero:before,.motion-enabled .login-visual img{animation:none!important}}

/* Etapa 02 — backend real / estados e integração */
.logout-form{margin:0;display:flex}.logout-form .user-pill{font:inherit}.form-alert{margin:2px 0 16px;padding:12px 14px;border:1px solid #e4b4b8;border-radius:11px;background:#fff4f4;color:#8d1720;font-size:12px;font-weight:700;line-height:1.45}.btn.is-loading,.btn:disabled{opacity:.68;cursor:wait}.filter-clear{text-decoration:none}.filter-apply{width:100%;margin-top:12px}.sort-form{margin:0}.page-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink)}.page-ellipsis{display:inline-flex;align-items:center;justify-content:center;width:28px;color:var(--muted)}
.card-media--placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#efefeb,#deded8)}.card-placeholder{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:rgba(255,255,255,.72);color:#7d7d76}.card-placeholder .icon{width:31px;height:31px}.detail-main--placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#efefeb,#dcdcd6);color:#8a8a83}.detail-placeholder-icon{width:76px;height:76px}.thumbs{overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.thumb{flex:0 0 auto}.history-block p + p{margin-top:16px}.history-note{padding-top:16px;border-top:1px solid var(--line)}.empty-page{margin:60px auto;max-width:760px}.empty-page .btn{margin-top:24px}.timeline-decades{overflow-x:auto;padding-bottom:5px}.global-search kbd{white-space:nowrap}

@media(max-width:780px){.logout-form .user-pill{padding-left:5px}.logout-form .user-name{display:none}.filter-mobile{align-items:center;gap:7px}.filters form{display:block}}
.filter-extra.hidden{display:none}.filter-more-toggle{border:0;background:transparent;padding:7px 0 0;color:#666660;font:inherit;font-size:11px;font-weight:750;cursor:pointer}.filter-more-toggle:hover{color:var(--brand)}

/* Etapa 02.3 — separação entre formato físico e classificação histórica */
.card-classification{margin:-2px 0 7px;color:#7a7a74;font-size:11px;line-height:1.35}.files-block{margin-top:52px}.file-list{display:grid;gap:10px}.file-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px}.file-icon{width:46px;height:46px;border-radius:12px;background:#f0f0ed;display:grid;place-items:center;color:#5f5f5a}.file-info{min-width:0}.file-info strong{display:block;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.file-info>span{display:block;margin-top:3px;color:#777771;font-size:11px;text-transform:uppercase;letter-spacing:.055em;font-weight:750}.file-info audio{display:block;width:min(420px,100%);height:36px;margin-top:9px}.file-actions{display:flex;gap:7px;align-items:center}.btn-sm{min-height:36px;padding:0 12px;border-radius:9px;font-size:11px}.filter-group h4{line-height:1.25}
@media(max-width:780px){.files-block{margin-top:40px}.file-row{grid-template-columns:46px minmax(0,1fr);padding:13px}.file-icon{width:40px;height:40px}.file-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.file-info audio{width:100%}}
@media(max-width:520px){.file-row{grid-template-columns:1fr}.file-icon{display:none}.file-actions{grid-column:1}.file-actions .btn{flex:1}.detail-actions{flex-wrap:wrap}}
@media(min-width:1101px){.categories--3{grid-template-columns:repeat(3,1fr)}.categories--2{grid-template-columns:repeat(2,1fr)}.categories--1{grid-template-columns:minmax(260px,1fr);max-width:360px}}

/* Etapa 02.4 — Home / timeline navegável e refinamentos de composição */
.page-home .section--formats-home{margin-top:48px}.page-home .section--featured-home{margin-top:58px}.page-home .section-head{margin-bottom:18px}
.timeline--home{padding:30px 30px 26px}.timeline--home .timeline-head{margin-bottom:18px}.timeline--home .timeline-head>div{max-width:720px}.timeline--home .timeline-head p{margin:7px 0 0;color:#9b9b95;font-size:13px;line-height:1.5}.timeline-carousel{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:14px}.timeline-window{min-width:0;overflow-x:auto;padding:3px 0 7px;scrollbar-width:none;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;outline:none}.timeline-window::-webkit-scrollbar{display:none}.timeline-window:focus-visible{border-radius:12px;box-shadow:0 0 0 3px rgba(201,33,46,.22)}
.decades--carousel{display:flex;align-items:flex-start;width:max-content;min-width:100%;padding:15px 0 0}.decades--carousel:before{display:none}.decades--carousel .decade{position:relative;flex:0 0 184px;min-width:184px;padding:0 8px 2px;color:#b8b8b1;scroll-snap-align:start;cursor:pointer}.decades--carousel .decade:before{position:relative;z-index:2;margin-bottom:12px}.decades--carousel .decade:not(:last-child):after{content:"";position:absolute;z-index:1;top:6px;left:50%;width:100%;height:1px;background:#555550}.decades--carousel .decade-year{position:relative;z-index:2;display:block;font-size:14px;transition:color .24s var(--ease),transform .24s var(--ease)}.decades--carousel .decade small{position:relative;z-index:2;display:block;min-height:13px;margin-top:5px;color:#797973;font-size:10px;font-weight:650;letter-spacing:.01em;transition:color .24s var(--ease)}.decades--carousel .decade.has-items:hover .decade-year{color:#fff;transform:translateY(-1px)}.decades--carousel .decade.has-items:hover small{color:#c7c7c1}.decades--carousel .decade.is-empty{cursor:default;opacity:.38}.decades--carousel .decade.is-empty:before{background:#444440;outline-color:#5a5a55}.decades--carousel .decade.is-empty small{color:#686863}.timeline-arrow{width:44px;height:44px;border:1px solid #464641;border-radius:50%;background:#2a2a28;color:#f1f1ed;display:grid;place-items:center;padding:0;cursor:pointer;transition:background .24s var(--ease),color .24s var(--ease),border-color .24s var(--ease),transform .24s var(--ease),opacity .24s var(--ease)}.timeline-arrow .icon{width:18px;height:18px}.timeline-arrow--prev .icon{transform:rotate(180deg)}.timeline-arrow:hover:not(:disabled){background:#fff;border-color:#fff;color:#1c1c1b;transform:translateY(-1px)}.timeline-arrow:disabled{opacity:.22;cursor:default}.timeline-carousel:not(.has-overflow) .timeline-arrow{opacity:.14}.page-home .category{min-height:174px}.page-home .category small{line-height:1.45}.page-home .card h3{margin-top:10px}
@media(max-width:780px){.page-home .section--formats-home{margin-top:42px}.page-home .section--featured-home{margin-top:46px}.timeline--home{padding:23px 18px 21px}.timeline--home .timeline-head{margin-bottom:16px}.timeline--home .timeline-head p{font-size:12px}.timeline-carousel{grid-template-columns:38px minmax(0,1fr) 38px;gap:8px}.timeline-arrow{width:38px;height:38px}.decades--carousel .decade{flex-basis:122px;min-width:122px;padding-left:5px;padding-right:5px}.decades--carousel .decade-year{font-size:13px}.decades--carousel .decade small{font-size:9px}}
@media(max-width:520px){.timeline--home .timeline-head p{margin-top:6px}.timeline--home .timeline-head .btn{margin-top:15px}.timeline-carousel{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.timeline-arrow{width:36px;height:36px}.timeline-arrow .icon{width:16px;height:16px}.decades--carousel .decade{flex-basis:108px;min-width:108px}.page-home .section-head{margin-bottom:15px}}
.decades--carousel .decade.is-empty:hover{color:#b8b8b1}.decades--carousel .decade.is-empty:hover:before{background:#444440;outline-color:#5a5a55;transform:none}


/* Etapa 02.5 — timeline por anos reais / componente compartilhado Home + Timeline */
.timeline-years .timeline-year{flex-basis:138px;min-width:138px}
.timeline-years .timeline-year .decade-year{font-size:15px;font-weight:700;letter-spacing:.01em}
.timeline-years .timeline-year small{font-size:10px}
.timeline-years .timeline-year.active{color:#fff}
.timeline-years .timeline-year.active:before{background:var(--brand);outline-color:#ed4050;transform:scale(1.16)}
.timeline-years .timeline-year.active .decade-year{color:#fff}
.timeline-years .timeline-year.active small{color:#d8d8d2}
.timeline-page .timeline-head{margin-bottom:18px}
.timeline-page .timeline-head>div{max-width:700px}
.timeline-page .timeline-head p{margin:7px 0 0;color:#9b9b95;font-size:13px;line-height:1.5}
.timeline-page .timeline-carousel{margin-top:2px}
.timeline-results{margin-top:42px}
.page-timeline .timeline-page{padding:30px 30px 26px}
.page-timeline .page-title{margin-bottom:20px}
.page-timeline .card{will-change:auto}
@media(max-width:780px){
  .timeline-years .timeline-year{flex-basis:112px;min-width:112px}
  .timeline-years .timeline-year .decade-year{font-size:14px}
  .page-timeline .timeline-page{padding:23px 18px 21px}
  .timeline-results{margin-top:36px}
}
@media(max-width:520px){
  .timeline-years .timeline-year{flex-basis:96px;min-width:96px}
  .timeline-years .timeline-year small{font-size:9px}
  .timeline-page .timeline-head p{font-size:12px}
}

/* Etapa 02.6 — busca principal: multiseleção, filtros compactos e navegação refinada */
.page-search .page-title--search{margin-bottom:24px}
.page-search .page-title--search>div{max-width:980px}
.page-search .page-title--search p{max-width:900px;line-height:1.55}
.page-search .search-layout{grid-template-columns:286px minmax(0,1fr);gap:30px}
.page-search .filters{top:94px;padding:18px 18px 0}
.page-search .filter-head{margin:0 -2px 4px;padding-bottom:13px}.page-search .filter-head>div{display:flex;align-items:center;gap:8px}.page-search .filter-head small{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border-radius:999px;background:#f1f1ed;color:#70706a;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.page-search .filter-group{padding:17px 0}.page-search .filter-group h4{margin-bottom:12px}.page-search .filter-option{margin:8px 0;min-height:21px}.page-search .filter-option label{min-width:0;line-height:1.35}.page-search .filter-option label span{min-width:0}.page-search .filter-option input[type="checkbox"]{width:15px;height:15px;flex:0 0 15px;margin:0;accent-color:var(--brand)}.page-search .filter-option small{flex:0 0 auto;font-size:10px}.page-search .filter-extra[hidden]{display:none!important}.page-search .filter-extra-selected{padding-left:7px;border-left:2px solid rgba(201,33,46,.25)}
.page-search .filter-more-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:8px;padding:9px 0 2px;border-top:1px dashed #e4e4df;color:#5f5f59}.page-search .filter-more-toggle span{font-size:15px;color:var(--brand)}
.page-search .filter-actions{position:sticky;bottom:0;margin:0 -18px;padding:13px 18px 18px;background:linear-gradient(180deg,rgba(255,255,255,.2),#fff 22%,#fff);border-radius:0 0 18px 18px}.page-search .filter-apply{margin:0;min-height:42px;border-radius:11px;font-size:12px}.page-search [data-filter-form].is-dirty .filter-apply{box-shadow:0 8px 20px rgba(201,33,46,.16)}
.page-search .search-results{min-width:0}.page-search .active-filter-bar{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px;padding:11px 13px;border:1px solid #e1e1dc;border-radius:13px;background:rgba(255,255,255,.62)}.page-search .active-filter-label{flex:0 0 auto;padding-top:6px;color:#777771;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.page-search .active-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.page-search .filter-chip{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 9px;border:1px solid #d9d9d3;border-radius:999px;background:#fff;color:#3f3f3b;text-decoration:none;font-size:10px;font-weight:700;transition:.2s var(--ease)}.page-search .filter-chip b{color:#999992;font-size:15px;line-height:1;font-weight:500}.page-search .filter-chip:hover{border-color:#c9a8ab;background:#fff8f8;color:var(--brand)}.page-search .filter-chip:hover b{color:var(--brand)}
.page-search .results-toolbar{min-height:42px;margin-bottom:15px}.page-search .results-count{display:flex;align-items:baseline;gap:8px}.page-search .results-count strong{font-size:13px}.page-search .results-count small{color:#8a8a84;font-size:10px}
.page-search .pagination{flex-wrap:wrap;gap:6px;margin-top:40px}.page-search .page-nav{width:auto;min-width:40px;padding:0 12px;gap:7px;font-size:11px;font-weight:750}.page-search .page-prev .icon{transform:rotate(180deg)}.page-search .page-nav.disabled{opacity:.34;pointer-events:none;background:#f0f0ec;color:#85857f}.page-search .page-nav:not(.disabled):hover{border-color:#bdbdb7;background:#fff}.page-search .page-btn.active{box-shadow:0 6px 16px rgba(0,0,0,.08)}
@media(max-width:1100px){.page-search .search-layout{grid-template-columns:250px minmax(0,1fr);gap:22px}.page-search .filters{padding-left:16px;padding-right:16px}.page-search .filter-actions{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}}
@media(max-width:780px){.page-search .page-title--search{margin-bottom:18px}.page-search .search-layout{display:block}.page-search .filters{max-height:none;overflow:visible;padding:17px 17px 0;margin-bottom:18px}.page-search .filter-actions{position:static;margin-left:-17px;margin-right:-17px;padding:13px 17px 17px}.page-search .active-filter-bar{display:block}.page-search .active-filter-label{display:block;padding:0;margin-bottom:8px}.page-search .results-toolbar{align-items:center}.page-search .results-count{display:block}.page-search .results-count small{display:block;margin-top:3px}.page-search .page-nav span{display:none}.page-search .page-nav{width:40px;padding:0}.page-search .pagination{gap:5px}.page-search .page-btn{width:38px;height:38px}.page-search .page-nav{width:38px}}
@media(max-width:520px){.page-search .active-filter-bar{margin-bottom:12px;padding:10px}.page-search .filter-chip{font-size:9.5px}.page-search .results-toolbar{gap:8px}.page-search .select-compact{max-width:124px}.page-search .pagination{margin-top:30px}.page-search .page-ellipsis{width:20px}}

/* Etapa 02.7 — detalhe: galeria fiel, transição suave e refinamentos de leitura */
.page-detail .detail-main{position:relative;display:grid;place-items:center;aspect-ratio:4/3;background:#fff;border:1px solid #deded8;box-shadow:0 1px 0 rgba(0,0,0,.015)}
.page-detail .detail-main img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff;filter:none;transition:opacity .18s var(--ease),transform .24s var(--ease)}
.page-detail .detail-main.is-loading img{opacity:.58}
.page-detail .detail-main.is-swapping img{opacity:0;transform:scale(.996)}
.page-detail .detail-image-loader{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(255,255,255,.54);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s var(--ease),visibility .18s var(--ease)}
.page-detail .detail-main.is-loading .detail-image-loader{opacity:1;visibility:visible}
.page-detail .detail-spinner{width:30px;height:30px;border-radius:50%;border:2px solid #d6d6d0;border-top-color:var(--brand);animation:detail-spin .72s linear infinite}
.page-detail .detail-image-loader small{color:#666660;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.page-detail .detail-image-count{position:absolute;z-index:4;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:0 10px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 4px 16px rgba(0,0,0,.05);color:#65655f;font-size:10px;font-weight:750}
.page-detail .detail-image-count b{color:#20201f;font-weight:850}
.page-detail .thumbs{gap:9px;margin-top:11px;padding:1px 1px 5px}
.page-detail .thumb{position:relative;background:#fff;border:1px solid #d8d8d2;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.page-detail .thumb.active{border:2px solid var(--brand);box-shadow:0 0 0 2px rgba(201,33,46,.08)}
.page-detail .thumb.is-pending{border-color:#a9a9a3;opacity:.72}
.page-detail .thumb.is-error{border-color:#d59aa0;animation:detail-thumb-error .28s ease 2}
.page-detail .thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff;filter:none}
.page-detail .detail-info{padding-top:7px}
.page-detail .files-block{margin-top:56px}
.page-detail .history-block{margin-top:46px}
.page-detail .section{margin-top:48px}
@keyframes detail-spin{to{transform:rotate(360deg)}}
@keyframes detail-thumb-error{50%{transform:translateX(2px)}}
@media(max-width:780px){.page-detail .detail-image-count{right:10px;bottom:10px}.page-detail .files-block{margin-top:42px}.page-detail .history-block{margin-top:38px}.page-detail .section{margin-top:40px}}
@media(prefers-reduced-motion:reduce){.page-detail .detail-main img,.page-detail .detail-image-loader,.page-detail .thumb{transition:none}.page-detail .detail-spinner{animation:none;border-top-color:#d6d6d0}.page-detail .thumb.is-error{animation:none}}

/* Etapa 02.7.3 — galeria em quadro 4:3 estável para qualquer proporção */
.page-detail .detail-main{
  width:100%;
  max-width:900px;
  aspect-ratio:4/3;
  min-height:0;
  padding:0;
}
.page-detail .detail-main.is-portrait,
.page-detail .detail-main.is-tall-portrait{
  aspect-ratio:4/3;
  min-height:0;
  padding:0;
}
.page-detail .detail-main.is-portrait img,
.page-detail .detail-main.is-tall-portrait img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  background:#fff;
}
@media(max-width:780px){
  .page-detail .detail-main,
  .page-detail .detail-main.is-portrait,
  .page-detail .detail-main.is-tall-portrait{aspect-ratio:4/3;padding:0}
}

/* Etapa 02.7.4 — trava estrutural do palco da galeria em 4:3 */
.page-detail .detail-main,
.page-detail .detail-main.is-portrait,
.page-detail .detail-main.is-tall-portrait{
  position:relative;
  width:100%;
  max-width:900px;
  aspect-ratio:4/3;
  height:auto;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:#fff;
}
.page-detail .detail-main > img,
.page-detail .detail-main.is-portrait > img,
.page-detail .detail-main.is-tall-portrait > img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center;
  background:#fff;
}

/* Etapa 02.7.5 — prévias na lista de arquivos e download em lote */
.page-detail .files-section-head{align-items:flex-end;gap:24px}
.page-detail .files-head-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:390px;text-align:right}
.page-detail .files-head-actions p{margin:0}
.page-detail .files-head-actions small{color:#777771;font-size:10px;line-height:1.35}
.page-detail .btn-zip-all{min-height:40px;padding:0 14px;border-radius:10px;font-size:11px;white-space:nowrap}
.page-detail .file-row{grid-template-columns:74px minmax(0,1fr) auto;min-height:76px}
.page-detail .file-icon{width:62px;height:52px;border-radius:10px}
.page-detail .file-preview{width:62px;height:52px;border:1px solid #deded8;border-radius:10px;overflow:hidden;background:#fff;display:grid;place-items:center;transition:border-color .18s var(--ease),transform .18s var(--ease)}
.page-detail .file-preview img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}
@media(hover:hover) and (pointer:fine){.page-detail .file-preview:hover{border-color:#bdbdb7;transform:translateY(-1px)}}
@media(max-width:780px){.page-detail .files-section-head{align-items:flex-start}.page-detail .files-head-actions{align-items:flex-start;max-width:none;text-align:left}.page-detail .file-row{grid-template-columns:62px minmax(0,1fr);gap:12px}.page-detail .file-preview,.page-detail .file-icon{width:52px;height:46px}.page-detail .file-actions{grid-column:2}}
@media(max-width:520px){.page-detail .file-row.has-preview{grid-template-columns:58px minmax(0,1fr)}.page-detail .file-row.has-preview .file-actions{grid-column:2}.page-detail .file-row.has-preview .file-preview{width:50px;height:44px}.page-detail .btn-zip-all{white-space:normal;text-align:center}}

/* Etapa 02.8 — seleção de downloads, estados de processo, cards sem recorte e paginação Timeline */
.card-media{background:#fff}
.card-media img{object-fit:contain;object-position:center;background:#fff;filter:none;transform:none!important}
.card:hover .card-media img{transform:none!important}
.card-media.is-media-loading:after,.file-preview.is-media-loading:after{content:"";position:absolute;z-index:3;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border:2px solid #d6d6d0;border-top-color:var(--brand);border-radius:50%;animation:detail-spin .72s linear infinite;pointer-events:none}
.card-media.is-media-loading img,.file-preview.is-media-loading img{opacity:.38}
.card-media.is-media-error:after,.file-preview.is-media-error:after{content:"!";position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:#f1f1ed;color:#85857f;font-size:13px;font-weight:850}
.file-preview{position:relative}
.file-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 10px;padding:11px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}
.file-select-all{display:inline-flex;align-items:center;gap:9px;color:#555550;font-size:11px;font-weight:750;cursor:pointer}.file-select-all input,.file-select-control input{accent-color:var(--brand)}
.file-batch-actions{display:flex;align-items:center;gap:10px}.file-selected-count{color:#777771;font-size:10px;font-weight:700;white-space:nowrap}
.file-select-control{display:grid;place-items:center;width:28px;height:44px;cursor:pointer}.file-select-control input{position:absolute;opacity:0;pointer-events:none}.file-select-control span{display:block;width:18px;height:18px;border:1px solid #c9c9c3;border-radius:5px;background:#fff;transition:.18s var(--ease);position:relative}.file-select-control input:checked + span{border-color:var(--brand);background:var(--brand)}.file-select-control input:checked + span:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.file-select-control input:focus-visible + span{box-shadow:0 0 0 3px rgba(201,33,46,.18)}
.page-detail .file-row.has-select{grid-template-columns:28px 74px minmax(0,1fr) auto}.page-detail .file-row.is-selected{border-color:#d5afb2;background:#fffafa}
.process-status{min-height:0;margin:0 0 10px;color:#666660;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:flex-end;gap:8px}.process-status:empty{display:none}.process-status.is-loading{color:#555550}.process-status.is-success{color:#2f6d45}.process-status.is-error{color:#a3212c}
.inline-spinner{display:inline-block;flex:0 0 auto;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:detail-spin .72s linear infinite}.inline-status-check{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:rgba(47,109,69,.12);color:#2f6d45;font-size:10px;font-weight:900}.btn.is-process{pointer-events:none}.btn.is-muted-process{opacity:.5;pointer-events:none}
.page-timeline .pagination{flex-wrap:wrap;gap:6px;margin-top:40px}.page-timeline .page-nav{width:auto;min-width:40px;padding:0 12px;gap:7px;font-size:11px;font-weight:750}.page-timeline .page-prev .icon{transform:rotate(180deg)}.page-timeline .page-nav.disabled{opacity:.34;pointer-events:none;background:#f0f0ec;color:#85857f}.page-timeline .page-nav:not(.disabled):hover{border-color:#bdbdb7;background:#fff}.page-timeline .page-btn.active{box-shadow:0 6px 16px rgba(0,0,0,.08)}
@media(max-width:780px){.file-batch-toolbar{align-items:flex-start;flex-direction:column}.file-batch-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.page-detail .file-row.has-select{grid-template-columns:28px 62px minmax(0,1fr);gap:10px}.page-detail .file-row.has-select .file-actions{grid-column:3}.process-status{justify-content:flex-start}.page-timeline .page-nav span{display:none}.page-timeline .page-nav{width:38px;min-width:38px;padding:0}.page-timeline .pagination{gap:5px}.page-timeline .page-btn{width:38px;height:38px}}
@media(max-width:520px){.page-detail .file-row.has-select{grid-template-columns:28px 52px minmax(0,1fr)}.page-detail .file-row.has-select .file-preview{width:48px;height:44px}.page-detail .file-row.has-select .file-actions{grid-column:2/4}.file-batch-actions .btn{flex:1}.page-timeline .pagination{margin-top:30px}.page-timeline .page-ellipsis{width:20px}}

/* Etapa 02.8.1 — preview editorial para documentos PDF */
.card-media--placeholder.card-media--document,
.card-media--placeholder:has(.card-document-preview){
  background:#f1f1ee;
}
.card-document-preview{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:24px;
  overflow:hidden;
}
.card-document-preview:before{
  content:"";
  position:absolute;
  width:54%;
  height:62%;
  border-radius:50%;
  background:rgba(0,0,0,.035);
  filter:blur(24px);
  transform:translateY(18px);
}
.card-document-sheet{
  position:relative;
  z-index:1;
  width:min(43%,132px);
  aspect-ratio:.77;
  min-width:92px;
  max-height:76%;
  padding:18px 14px 13px;
  border:1px solid #ddddD7;
  border-radius:8px 8px 10px 10px;
  background:#fff;
  box-shadow:0 10px 26px rgba(24,24,22,.07);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.card-document-sheet:before{
  content:"";
  position:absolute;
  top:-1px;
  right:-1px;
  width:25px;
  height:25px;
  background:linear-gradient(225deg,#f1f1ee 0 49%,#d9d9d3 50% 52%,#fff 53%);
  border-bottom-left-radius:5px;
}
.card-document-mark{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:6px;
  background:#20201f;
  color:#fff;
  font-size:9px;
  line-height:1;
  font-weight:850;
  letter-spacing:.08em;
}
.card-document-lines{
  display:grid;
  gap:7px;
  margin-top:18px;
}
.card-document-lines i{
  display:block;
  height:3px;
  border-radius:999px;
  background:#e3e3de;
}
.card-document-lines i:nth-child(1){width:86%}
.card-document-lines i:nth-child(2){width:100%}
.card-document-lines i:nth-child(3){width:72%}
.card-document-lines i:nth-child(4){width:90%}
.card-document-caption{
  margin-top:auto;
  padding-top:12px;
  color:#8a8a84;
  font-size:7px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
@media(max-width:780px){
  .card-document-preview{padding:18px}
  .card-document-sheet{min-width:78px;padding:14px 11px 10px}
  .card-document-sheet:before{width:21px;height:21px}
  .card-document-lines{gap:5px;margin-top:13px}
  .card-document-caption{font-size:6px}
}

/* ======================================================================
   CMS integrado — administração sem painel separado
   ====================================================================== */
.btn-sm{min-height:36px;padding:0 14px;font-size:11px}.btn-admin-quick{min-height:38px;padding:0 14px;background:#20201f;color:#fff;border-radius:999px;font-size:11px}.btn-admin-quick:hover{background:#000;color:#fff}
.user-menu{position:relative}.user-menu>summary{list-style:none}.user-menu>summary::-webkit-details-marker{display:none}.user-menu-chevron{transition:transform .2s var(--ease);color:#777771}.user-menu[open] .user-menu-chevron{transform:rotate(180deg)}.user-menu-panel{position:absolute;right:0;top:calc(100% + 8px);width:220px;padding:8px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 18px 44px rgba(20,20,18,.14);z-index:60}.user-menu-meta{padding:10px 10px 9px;border-bottom:1px solid #ecece7;margin-bottom:5px}.user-menu-meta strong,.user-menu-meta span{display:block}.user-menu-meta strong{font-size:12px}.user-menu-meta span{margin-top:3px;color:#85857f;font-size:10px}.user-menu-panel>a,.user-menu-panel form button{width:100%;min-height:38px;padding:0 10px;border:0;border-radius:9px;background:transparent;display:flex;align-items:center;gap:9px;text-decoration:none;color:#3e3e3a;font-size:11px;font-weight:700;cursor:pointer;text-align:left}.user-menu-panel>a:hover,.user-menu-panel form button:hover{background:#f4f4f1}.user-menu-panel .logout-form{margin-top:4px;padding-top:4px;border-top:1px solid #ecece7}
.flash-seed{display:none}.toast.toast--success{background:#254f36}.toast.toast--error{background:#852632}
.admin-context-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:11px 13px;border:1px solid #deded8;border-radius:13px;background:#fff}.admin-context-bar>div:first-child{display:flex;align-items:center;gap:8px}.admin-context-bar strong{font-size:11px}.admin-context-bar small{color:#777771;font-size:10px}.admin-context-dot{width:8px;height:8px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px rgba(201,33,46,.09)}.admin-context-actions{display:flex;gap:8px}.chip--warning{background:#f4e7d7;color:#79542c}
.admin-dialog{width:min(1060px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:22px;background:transparent;overflow:visible}.admin-dialog::backdrop{background:rgba(18,18,17,.48);backdrop-filter:blur(4px)}.admin-dialog-card{width:100%;max-height:calc(100vh - 32px);overflow:auto;border:1px solid rgba(255,255,255,.45);border-radius:22px;background:#f8f8f6;box-shadow:0 28px 80px rgba(0,0,0,.24);padding:24px}.admin-dialog-card--small{max-width:620px;margin:auto}.admin-dialog-card--wide{max-width:1060px;margin:auto}.admin-dialog-head{position:sticky;top:-24px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:-24px -24px 22px;padding:22px 24px 17px;background:rgba(248,248,246,.94);border-bottom:1px solid #e3e3de;backdrop-filter:blur(12px)}.admin-dialog-head h2{margin:4px 0 0;font-size:26px;letter-spacing:-.04em}.admin-dialog-head .btn-square{min-height:38px;width:38px;font-size:21px}
.admin-editor-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:24px}.admin-page-title{align-items:flex-end}.admin-form-grid{display:grid;gap:14px}.admin-form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-field{display:flex;flex-direction:column;gap:7px;min-width:0}.admin-field>span{color:#5f5f5a;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.admin-field input,.admin-field select,.admin-field textarea{width:100%;border:1px solid #d8d8d2;border-radius:11px;background:#fff;padding:0 12px;outline:0;transition:.18s var(--ease)}.admin-field input,.admin-field select{height:44px}.admin-field textarea{min-height:92px;padding:11px 12px;resize:vertical;line-height:1.55;font:inherit}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:#aaa9a3;box-shadow:0 0 0 4px rgba(0,0,0,.035)}.admin-field--wide{grid-column:1/-1}.admin-field--block{margin-top:14px}.admin-date-parts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-check{display:inline-flex;align-items:center;gap:9px;min-height:42px;color:#565651;font-size:11px;font-weight:700}.admin-check input{width:16px;height:16px;accent-color:var(--brand)}.admin-status-check{margin-top:16px;padding:11px 13px;border:1px solid #deded8;border-radius:11px;background:#fff}.admin-advanced{margin-top:16px;border:1px solid #deded8;border-radius:13px;background:#fff}.admin-advanced>summary{padding:14px 16px;cursor:pointer;font-size:11px;font-weight:800}.admin-advanced[open]>summary{border-bottom:1px solid #e7e7e2}.admin-advanced>.admin-form-grid{padding:16px}.admin-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid #e3e3de}.admin-dialog-card.is-busy,.admin-editor-card.is-busy{opacity:.72;pointer-events:none}
.admin-upload-box{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:12px;margin:0 0 16px;padding:13px;border:1px dashed #cfcfc8;border-radius:14px;background:#fbfbf9}.admin-upload-box--create{margin-top:20px}.admin-upload-copy{min-width:0}.admin-upload-copy strong{display:block;margin-top:3px;font-size:13px}.admin-file-picker{position:relative;display:inline-flex}.admin-file-picker input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.admin-file-picker>span{min-height:38px;padding:0 13px;border:1px solid #d5d5cf;border-radius:999px;background:#fff;display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:750;cursor:pointer}.admin-upload-progress{grid-column:1/-1;height:5px;border-radius:999px;background:#e5e5df;overflow:hidden}.admin-upload-progress span{display:block;width:0;height:100%;background:var(--brand);transition:width .15s linear}.admin-upload-status{grid-column:1/-1;color:#73736d;font-size:10px;min-height:12px}.admin-empty-files{padding:22px;border:1px dashed #d7d7d1;border-radius:13px;color:#787872;font-size:12px;text-align:center}
.file-primary-label{display:inline-flex;margin-left:7px;padding:3px 6px;border-radius:999px;background:#20201f;color:#fff;font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;vertical-align:2px}.file-row--admin .file-actions{align-items:center}.file-admin-actions{display:flex;align-items:center;gap:4px;padding-left:5px;border-left:1px solid #e4e4de}.file-admin-actions form{margin:0}.icon-action{width:32px;height:32px;padding:0;border:1px solid #deded8;border-radius:9px;background:#fff;display:grid;place-items:center;color:#676761;cursor:pointer;transition:.18s var(--ease)}.icon-action:hover{border-color:#bdbdb7;color:#1f1f1d;background:#f7f7f4}.icon-action--danger:hover{border-color:#d8a5aa;background:#fff4f5;color:#a21e2b}
.filter-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.filter-group-head h4{margin-bottom:12px!important}.filter-admin-link{border:0;background:transparent;color:var(--brand);font-size:9px;font-weight:850;display:inline-flex;align-items:center;gap:4px;cursor:pointer;padding:0 0 12px}.filter-admin-link:hover{text-decoration:underline}.category-create-form{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;align-items:end;gap:10px;margin-bottom:16px;padding:14px;border:1px solid #deded8;border-radius:13px;background:#fff}.category-admin-list{display:grid;gap:8px}.category-admin-row{display:grid;grid-template-columns:minmax(220px,1fr) 120px 80px 82px auto auto;align-items:end;gap:8px;padding:10px;border:1px solid #e0e0da;border-radius:12px;background:#fff}.category-admin-usage{align-self:center}.category-admin-usage strong,.category-admin-usage span{display:block}.category-admin-usage strong{font-size:12px}.category-admin-usage span{color:#85857f;font-size:9px}
.users-list{display:grid;gap:10px}.user-admin-row{display:grid;grid-template-columns:minmax(200px,1.2fr) minmax(160px,1fr) minmax(190px,1.2fr) 150px 180px 80px auto;align-items:end;gap:10px;padding:12px;border:1px solid #deded8;border-radius:14px;background:#fff}.user-admin-identity{align-self:center;display:flex;align-items:center;gap:10px}.user-admin-identity strong,.user-admin-identity span{display:block}.user-admin-identity strong{font-size:12px}.user-admin-identity span{margin-top:3px;color:#7c7c76;font-size:10px}.user-active-check{align-self:center}.page-users .admin-field>span{font-size:9px}
@media(max-width:1100px){.category-admin-row{grid-template-columns:minmax(180px,1fr) 110px 70px 75px auto}.category-admin-row .btn:first-of-type{grid-column:4/5}.user-admin-row{grid-template-columns:repeat(3,minmax(0,1fr))}.user-admin-identity{grid-column:1/-1}}
@media(max-width:780px){.btn-admin-quick span{display:none}.btn-admin-quick{width:40px;padding:0}.admin-context-bar{align-items:flex-start;flex-direction:column}.admin-form-grid--2{grid-template-columns:1fr}.admin-field--wide{grid-column:auto}.admin-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.admin-dialog-card{max-height:calc(100vh - 16px);padding:18px;border-radius:17px}.admin-dialog-head{top:-18px;margin:-18px -18px 18px;padding:18px}.admin-upload-box{grid-template-columns:1fr}.admin-upload-progress,.admin-upload-status{grid-column:1}.category-create-form,.category-admin-row{grid-template-columns:1fr 1fr}.category-create-form .btn{grid-column:1/-1}.category-admin-row .category-admin-usage,.category-admin-row .admin-check{align-self:center}.category-admin-row .btn{width:100%}.user-admin-row{grid-template-columns:1fr}.user-admin-identity{grid-column:auto}.file-row--admin .file-actions{flex-wrap:wrap}.file-admin-actions{width:100%;padding:6px 0 0;border-left:0;border-top:1px solid #e7e7e2}.admin-page-title{align-items:flex-start}}
@media(max-width:520px){.user-name{display:none}.user-menu-panel{right:-6px}.category-admin-row,.category-create-form{grid-template-columns:1fr}.admin-form-actions{flex-direction:column-reverse}.admin-form-actions .btn{width:100%}.admin-date-parts{grid-template-columns:1fr 1fr}.page-detail .file-row--admin .file-actions{grid-column:2/4}.admin-upload-box .btn,.admin-file-picker,.admin-file-picker>span{width:100%}}

/* CMS integrado — refinamentos de alinhamento e cadastro rápido (Etapa 03.1) */
.admin-page-title{align-items:center;margin-bottom:26px}
.page-search .admin-page-title{align-items:flex-end}
.admin-editor-card{padding:26px}
.admin-form-grid{column-gap:18px;row-gap:15px}
.admin-field--select{min-width:0}
.admin-select-control{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center}
.admin-select-control select{min-width:0}
.admin-select-add{width:44px;height:44px;padding:0;border:1px solid #d8d8d2;border-radius:11px;background:#f8f8f6;color:#595954;display:grid;place-items:center;cursor:pointer;transition:.18s var(--ease)}
.admin-select-add:hover{background:#fff;border-color:#bdbdb6;color:var(--brand);transform:translateY(-1px)}
.admin-select-add:active{transform:none}
.admin-date-options{display:flex;align-items:flex-end;justify-content:flex-start;gap:28px;padding-top:1px}
.admin-date-options .admin-date-parts{width:min(470px,100%);flex:0 1 470px}
.admin-date-checks{display:flex;align-items:center;gap:22px;min-height:44px;flex-wrap:wrap}
.admin-date-checks .admin-check{min-height:44px}
.admin-context-bar{padding:12px 14px;margin-bottom:20px}
.admin-context-bar>div:first-child{flex-wrap:wrap;row-gap:5px}
.admin-context-actions .btn{min-height:38px}
.admin-upload-box{padding:14px 15px}
.admin-form-actions .btn{min-width:112px}
.admin-dialog-card--wide .admin-form-grid{column-gap:16px}
.admin-dialog--lookup{width:min(520px,calc(100vw - 32px))}
.admin-dialog--lookup .admin-dialog-card{max-width:520px}
.admin-lookup-card{padding-bottom:22px}
.admin-lookup-fields{display:grid;gap:14px}
.admin-lookup-status{min-height:18px;margin-top:10px;color:#6d6d67;font-size:11px}
.admin-lookup-card.is-busy .admin-lookup-status{color:#4f4f4a}
.admin-lookup-card [data-lookup-submit].is-loading{pointer-events:none}
.user-admin-row{padding:14px;column-gap:12px}
.user-admin-row .btn[type="submit"]{height:44px;min-height:44px;align-self:end}
.user-active-check{min-height:44px;justify-content:center;align-self:end;padding-bottom:1px}
.user-admin-identity{min-height:44px}
.page-users .admin-page-title{margin-bottom:24px}
.page-users .users-list{margin-top:2px}
.page-search .filter-group-head{min-height:24px}
.page-search .filter-admin-link{align-self:flex-start;white-space:nowrap}
.page-detail .admin-context-bar{max-width:none}

@media(max-width:900px){
  .admin-date-options{display:grid;grid-template-columns:1fr;gap:8px}
  .admin-date-options .admin-date-parts{width:100%;max-width:none}
  .admin-date-checks{gap:18px}
}
@media(max-width:780px){
  .admin-page-title{align-items:flex-start}
  .admin-editor-card{padding:18px}
  .admin-select-control{grid-template-columns:minmax(0,1fr) 42px}
  .admin-select-add{width:42px;height:44px}
  .admin-date-checks{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}
}
@media(max-width:520px){
  .admin-date-checks{grid-template-columns:1fr}
  .admin-form-actions .btn{min-width:0}
  .admin-dialog--lookup{width:calc(100vw - 16px)}
}
.admin-field>.admin-field-label{color:#5f5f5a;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}

/* CMS integrado — correções funcionais e refinamentos Etapa 03.2 */
.admin-field>span em,.admin-field>.admin-field-label em{font-style:normal;font-weight:700;letter-spacing:0;text-transform:none;color:#9a9a94;margin-left:4px}
.admin-field-help{display:block;margin-top:1px;color:#7d7d77;font-size:10px;line-height:1.45;font-weight:500;text-transform:none;letter-spacing:0}
.admin-field-help strong{color:#565651;font-weight:800}
.admin-upload-box--create{grid-template-columns:minmax(180px,1fr) auto}
.admin-upload-box--create .admin-upload-progress,.admin-upload-box--create .admin-upload-status{grid-column:1/-1}
.admin-upload-box--create .admin-upload-status{line-height:1.45;overflow-wrap:anywhere}
.user-admin-avatar{width:40px;height:40px;border-radius:50%;background:#20201f;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;font-size:11px;line-height:1;font-weight:850;letter-spacing:.02em;text-transform:uppercase;overflow:hidden}
.user-admin-identity>div{min-width:0}
.user-admin-identity strong,.user-admin-identity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-users .user-admin-row{align-items:end}
.page-users .user-admin-identity{align-self:end;min-height:44px;padding-bottom:2px}
@media(max-width:780px){.admin-upload-box--create{grid-template-columns:1fr}.user-admin-avatar{width:38px;height:38px;flex-basis:38px}}

/* CMS integrado — feedback de ações, seleção visual de arquivos e ordenação (Etapa 03.3) */
.toast{
  left:auto;
  right:24px;
  top:calc(var(--header) + 18px);
  bottom:auto;
  max-width:min(420px,calc(100vw - 32px));
  min-height:46px;
  padding:13px 17px 13px 38px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:#242422;
  box-shadow:0 16px 38px rgba(20,20,18,.17);
  color:#fff;
  font-size:12px;
  line-height:1.4;
  font-weight:720;
  opacity:0;
  transform:translateY(-9px);
  pointer-events:none;
  transition:opacity .22s var(--ease),transform .22s var(--ease);
  z-index:120;
}
.toast:before{
  content:"";
  position:absolute;
  left:17px;
  top:50%;
  width:9px;
  height:9px;
  margin-top:-4.5px;
  border-radius:50%;
  background:#b9b9b3;
  box-shadow:0 0 0 4px rgba(255,255,255,.07);
}
.toast.show{opacity:1;transform:none}
.toast.toast--success{background:#24382b}
.toast.toast--success:before{background:#76bd8a}
.toast.toast--error{background:#64242a}
.toast.toast--error:before{background:#f08089}
.toast.toast--info{background:#2b2b29}
.toast.toast--info:before{background:#c8c8c1}

.admin-selected-files{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr));
  gap:8px;
  width:100%;
  margin-top:2px;
}
.admin-selected-files[hidden]{display:none!important}
.admin-selected-file{
  min-width:0;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:7px;
  border:1px solid #e1e1db;
  border-radius:11px;
  background:#fff;
}
.admin-selected-file__visual{
  width:54px;
  height:44px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:8px;
  background:#f0f0ec;
  color:#5d5d58;
}
.admin-selected-file__visual img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#fff;
}
.admin-selected-file__visual b{
  max-width:48px;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
}
.admin-selected-file__copy{min-width:0}
.admin-selected-file__copy strong,
.admin-selected-file__copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-selected-file__copy strong{font-size:10px;color:#343431}
.admin-selected-file__copy small{margin-top:4px;color:#888881;font-size:8px;font-weight:700;letter-spacing:.03em}
.admin-selected-file--more{
  grid-template-columns:44px minmax(0,1fr);
  min-height:60px;
  color:#666660;
}
.admin-selected-file--more strong{
  width:44px;height:44px;display:grid;place-items:center;border-radius:8px;background:#f0f0ec;color:#333330;font-size:11px
}
.admin-selected-file--more span{font-size:9px;font-weight:750}
.admin-upload-box.is-busy .admin-selected-files{opacity:.66}

@media(max-width:780px){
  .toast{right:12px;top:calc(var(--header) + 10px);max-width:calc(100vw - 24px)}
  .admin-selected-files{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .admin-selected-files{grid-template-columns:1fr}
}

/* Etapa 3.4 — ações administrativas */
.btn-danger-ghost{background:#fff;border:1px solid #ead6d7;color:#b4232d}.btn-danger-ghost:hover{background:#fff5f5;border-color:#dfb8bb;color:#9e1d26}
.admin-context-actions form{display:inline-flex;margin:0}

.icon-action.is-primary,.icon-action.is-primary:disabled{color:#d3202e;border-color:#efc8cb;background:#fff5f6;opacity:1;cursor:default}

/* ETAPA 03.5 — confirmação destrutiva e usuários */
.admin-confirm-dialog{width:min(470px,calc(100vw - 28px));padding:0;border:0;background:transparent;overflow:visible}
.admin-confirm-dialog::backdrop{background:rgba(17,17,16,.52);backdrop-filter:blur(5px)}
.admin-confirm-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;padding:22px;border:1px solid rgba(255,255,255,.5);border-radius:20px;background:#f8f8f6;box-shadow:0 28px 80px rgba(0,0,0,.26)}
.admin-confirm-symbol{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fff0f1;color:#b4232d;border:1px solid #efd3d6;font-size:22px;font-weight:900;line-height:1}
.admin-confirm-copy{min-width:0}
.admin-confirm-copy h2{margin:5px 0 8px;font-size:23px;line-height:1.08;letter-spacing:-.035em}
.admin-confirm-copy p{margin:0;color:#66665f;font-size:13px;line-height:1.6}
.admin-confirm-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:4px;padding-top:16px;border-top:1px solid #e2e2dc}
.btn-danger{background:#c92532;border-color:#c92532;color:#fff}
.btn-danger:hover{background:#aa1e29;border-color:#aa1e29;color:#fff}
.btn-danger:focus-visible{outline:3px solid rgba(201,37,50,.18);outline-offset:2px}

.user-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;align-self:end;min-height:44px}
.user-admin-actions .btn{height:44px;min-height:44px}
.user-admin-actions .icon-action{width:44px;height:44px;flex:0 0 44px}
.user-admin-identity .user-admin-avatar{display:inline-flex;align-items:center;justify-content:center;margin-top:0;color:#fff!important;text-align:center;line-height:1}
.user-admin-identity>div span{display:block;margin-top:3px;color:#7c7c76;font-size:10px}
.user-admin-identity .user-admin-avatar span{color:#fff!important}

@media(max-width:780px){
  .admin-confirm-card{grid-template-columns:42px minmax(0,1fr);padding:18px;gap:13px;border-radius:17px}
  .admin-confirm-symbol{width:42px;height:42px;border-radius:12px}
  .admin-confirm-actions{flex-direction:column-reverse}
  .admin-confirm-actions .btn{width:100%}
  .user-admin-actions{justify-content:flex-start}
}

/* Etapa 03.6 — configuração integrada da Home */
.admin-home-strip{margin-bottom:14px}
.page-title--admin-home{align-items:flex-end}
.page-home-admin .page{max-width:1380px}
.admin-home-form{display:grid;gap:18px}
.admin-home-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px}
.admin-home-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.admin-home-card-head h2{margin:4px 0 0;font-size:24px;letter-spacing:-.035em}
.admin-home-hero-grid{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);gap:28px;align-items:start}
.admin-home-fields{display:grid;gap:14px}
.admin-label{color:#5f5f5a;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.admin-help{color:#85857f;font-size:10px;line-height:1.45}
.admin-file-control{display:flex;align-items:center;justify-content:center;height:44px;border:1px dashed #cacac4;border-radius:11px;background:#fafaf8;cursor:pointer;font-size:11px;font-weight:800;transition:.2s var(--ease)}
.admin-file-control:hover{border-color:#aaa9a3;background:#f5f5f2}
.admin-file-control input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.admin-file-control span{display:flex;align-items:center;gap:7px}
.admin-home-remove-image{margin-top:-2px}
.admin-home-preview-wrap{display:grid;gap:7px}
.admin-home-hero-preview{position:relative;overflow:hidden;min-height:360px;border-radius:18px;background:#1b1b1a;color:#fff;padding:34px;display:flex;align-items:flex-end}
.admin-home-hero-preview:before{content:"";position:absolute;inset:0;background:var(--preview-image,url('images/photo-6.webp')) center 44%/cover no-repeat;filter:grayscale(1);opacity:.56;transform:scale(1.02)}
.admin-home-hero-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,13,12,.9),rgba(13,13,12,.36) 72%,rgba(13,13,12,.14)),linear-gradient(0deg,rgba(201,33,46,.13),transparent 52%)}
.admin-home-hero-preview-copy{position:relative;z-index:1;max-width:560px}
.admin-home-hero-preview-copy .eyebrow{color:#ff6571}
.admin-home-hero-preview-copy h3{margin:10px 0 14px;font-size:clamp(28px,3vw,42px);line-height:.98;letter-spacing:-.055em;white-space:pre-line}
.admin-home-hero-preview-copy p{margin:0;max-width:520px;color:rgba(255,255,255,.76);font-size:13px;line-height:1.55}
.admin-home-count{font-size:11px;color:#777771;font-weight:750}
.admin-home-featured-note{border:1px dashed #d4d4ce;border-radius:12px;background:#fafaf8;padding:13px 14px;color:#6d6d67;font-size:11px;margin-bottom:14px}
.admin-home-featured-selected{display:grid;gap:8px}
.admin-home-featured-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e1e1dc;border-radius:13px;background:#fff;padding:8px}
.admin-home-featured-thumb{width:72px;height:54px;border-radius:9px;background:#f1f1ed;overflow:hidden;display:grid;place-items:center;color:#8c8c86}
.admin-home-featured-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}
.admin-home-featured-copy{min-width:0;display:grid;gap:3px}
.admin-home-featured-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-home-featured-copy small{color:#7e7e78;font-size:10px}
.admin-home-featured-actions{display:flex;gap:5px}
.admin-home-featured-actions .btn-icon{width:34px;height:34px;min-width:34px;padding:0;border-radius:9px}
.admin-home-search-block{margin-top:18px;padding-top:18px;border-top:1px solid #e7e7e2}
.admin-home-search-field{max-width:680px}
.admin-home-search-input{position:relative}
.admin-home-search-input>.icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#777771;pointer-events:none}
.admin-home-search-input input{padding-left:40px!important}
.admin-home-search-status{min-height:18px;color:#85857f;font-size:10px;margin-top:5px}
.admin-home-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.admin-home-search-result{appearance:none;border:1px solid #e0e0db;border-radius:12px;background:#fff;padding:8px;text-align:left;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:10px;align-items:center;cursor:pointer;transition:.2s var(--ease)}
.admin-home-search-result:hover:not(:disabled){border-color:#bdbdb7;background:#fafaf8}
.admin-home-search-result:disabled{opacity:.55;cursor:default}
.admin-home-search-thumb{width:64px;height:48px;border-radius:8px;background:#f0f0ed;overflow:hidden;display:block}
.admin-home-search-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}
.admin-home-search-copy{min-width:0;display:grid;gap:3px}
.admin-home-search-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-home-search-copy small{font-size:9px;color:#81817b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-home-search-add{font-size:10px;font-weight:800;color:var(--brand);white-space:nowrap}
.admin-home-actions{margin-top:0}

@media(max-width:980px){.admin-home-hero-grid{grid-template-columns:1fr}.admin-home-search-results{grid-template-columns:1fr}.admin-home-hero-preview{min-height:320px}}
@media(max-width:620px){.admin-home-card{padding:17px}.admin-home-card-head{align-items:flex-start;flex-direction:column}.admin-home-featured-item{grid-template-columns:58px minmax(0,1fr)}.admin-home-featured-thumb{width:58px;height:48px}.admin-home-featured-actions{grid-column:2;justify-content:flex-end}.admin-home-search-result{grid-template-columns:54px minmax(0,1fr)}.admin-home-search-thumb{width:54px;height:44px}.admin-home-search-add{grid-column:2}.admin-home-hero-preview{min-height:300px;padding:24px}}
