
:root{--green:#05653a;--dark:#073e2d;--deep:#042f22;--gold:#f4bb28;--goldlight:#fff5d8;--red:#e74748;--bg:#f5f8f8;--ink:#142c37;--muted:#6e8290;--line:#e6eef0;--shadow:0 6px 24px rgba(13,53,43,.055);--radius:15px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:14px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hide{display:none!important}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a4dcbf;outline-offset:2px}.app{display:flex;min-height:100vh}.sidebar{width:252px;flex:none;background:linear-gradient(160deg,#075737 0%,#063e30 60%,#052a21 100%);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto;z-index:10;scrollbar-width:thin}.brand{padding:22px 18px 17px;text-align:center;border-bottom:1px solid #ffffff25}.brand-logo{background:#fff;border-radius:12px;padding:5px 12px;display:flex;align-items:center;justify-content:center;height:76px;margin-bottom:12px}.brand-logo img{width:100%;height:100%;object-fit:contain}.brand h2{font-size:20px;margin:0;letter-spacing:.09em}.brand p{font-size:10px;margin:2px 0 0;color:#d8f5e6}.brand .inst{font-size:11px;margin-top:8px;color:#cbecdf}.nav-caption{font-size:10px;color:#a0cbba;text-transform:uppercase;letter-spacing:.12em;font-weight:800;padding:21px 24px 8px}.nav{padding:9px 11px;display:grid;gap:3px}.nav button{width:100%;display:flex;align-items:center;gap:12px;border:0;background:none;color:#e4f1ec;padding:11px 13px;border-radius:10px;text-align:left;font-weight:540;font-size:13px;position:relative}.nav button svg{flex:none;opacity:.93}.nav button:hover,.nav button.active{background:#ffffff1f;color:white}.nav button.active{background:#0f7548}.nav button.active:before{content:"";position:absolute;left:-11px;top:0;bottom:0;width:4px;background:var(--gold);border-radius:0 3px 3px 0}.nav .tiny{margin-left:auto;font-size:11px;background:#e5b72b;color:#243417;border-radius:30px;padding:0px 6px}.sidebar-bottom{margin-top:auto;padding:10px 15px 20px;border-top:1px solid #ffffff20}.mini-identity{display:flex;gap:10px;align-items:center;padding:6px}.avatar{width:37px;height:37px;border-radius:50%;background:linear-gradient(160deg,#d8e5e0,#fff);color:#0b5b3d;display:grid;place-items:center;font-weight:900}.sidebar-bottom b{display:block;font-size:12px}.sidebar-bottom small{display:block;font-size:11px;color:#c7e4d6}.main{min-width:0;flex:1}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;gap:18px;position:sticky;top:0;z-index:8}.icon-btn{width:37px;height:37px;display:grid;place-items:center;background:transparent;border:0;border-radius:10px;color:var(--ink);position:relative}.icon-btn:hover{background:#edf5f1}.search{display:flex;align-items:center;gap:10px;background:#f3f6f7;border-radius:11px;height:38px;max-width:450px;width:100%;padding:0 13px}.search input{border:0;background:transparent;outline:0;min-width:0;width:100%;font-size:12px;color:var(--ink)}.grow{flex:1}.top-profile{display:flex;align-items:center;gap:11px;border-left:1px solid var(--line);padding-left:18px;min-width:180px}.top-profile strong{display:block;font-size:12px}.top-profile small{color:var(--muted);font-size:10px}.badge-count{position:absolute;right:1px;top:0;background:#ed4848;color:white;font-size:10px;font-weight:800;min-width:17px;height:17px;border:2px solid white;border-radius:20px;display:grid;place-items:center}.content{padding:22px 24px 36px;max-width:1650px;margin:auto}.crumb{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.crumb small{color:var(--muted);font-size:12px}.crumb h1{font-size:23px;letter-spacing:-.6px;margin:0}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:20px;font-size:11px;font-weight:750;padding:5px 9px;white-space:nowrap}.pill.green{color:#087641;background:#dff6e8}.pill.gold{color:#a16a00;background:#fff1cc}.pill.red{color:#ba2d37;background:#ffe9e9}.pill.grey{color:#627783;background:#eef1f2}.pill.blue{color:#2566ad;background:#e6f1ff}.card{background:#fff;border:1px solid #ecf0f0;border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.card-pad{padding:21px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.card-title h3{font-size:15px;letter-spacing:-.3px;margin:0;display:flex;align-items:center;gap:9px}.card-title small{color:var(--muted)}.link{color:#067443;font-size:12px;font-weight:750;background:none;border:0;padding:0}.btn{border:0;border-radius:9px;padding:10px 15px;font-size:12px;font-weight:750;display:inline-flex;gap:8px;align-items:center;justify-content:center;white-space:nowrap;transition:.2s}.btn.primary{background:#007e45;color:#fff}.btn.primary:hover{background:#045c37}.btn.secondary{background:#e9f6ee;color:#09633c}.btn.ghost{background:#fff;border:1px solid #dce7e6;color:#34525a}.btn.gold{background:#f2b820;color:#28372f}.btn.danger{background:#ffe9e9;color:#c53a3a}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.small{padding:7px 10px;font-size:11px}.btn.block{width:100%}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.select,.field{min-height:37px;border:1px solid #dce7e6;background:white;border-radius:9px;padding:8px 10px;color:#334c56;font-size:12px}.field{width:100%;font-size:13px}.field:focus{border-color:#138854;outline:2px solid #ceebdc}.field-label{display:block;margin-bottom:6px;font-size:12px;font-weight:750}.field-help{font-size:11px;color:var(--muted);margin-top:4px}.form-group{margin-bottom:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hero{border-radius:15px;min-height:167px;padding:24px 32px;display:flex;align-items:center;position:relative;overflow:hidden;background:#e2f3e8;margin-bottom:16px;box-shadow:var(--shadow)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#e9f7ee 0%,#e6f4eb 38%,#e8f6ecab 57%,#0b7f3f29 100%),url('building-v1.1.webp') center center/cover no-repeat}.hero:after{content:"";position:absolute;right:4%;top:-30%;width:90px;height:160%;transform:skewX(-23deg);background:#f5bd34b8}.hero-content{position:relative;z-index:1;max-width:68%}.hero small{font-size:12px;letter-spacing:.15em;color:#057443;font-weight:900}.hero h1{font-size:34px;letter-spacing:-1.3px;margin:2px 0;font-weight:850}.hero p{margin:0;font-size:14px;color:#214955}.hero .minor{font-size:12px;color:#5f7e78;margin-top:3px}.hero .slogan{position:absolute;right:25px;z-index:2;top:50%;transform:translateY(-50%);font-family:Georgia,serif;font-style:italic;font-size:19px;color:#006036;line-height:1.25;text-align:right}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:16px}.stat{padding:20px 18px;display:flex;align-items:center;gap:15px;min-height:112px}.stat-icon{width:60px;height:60px;border-radius:14px;display:grid;place-items:center;flex:none;color:#fff;background:linear-gradient(145deg,#026838,#0a9e58);box-shadow:0 6px 14px #00834b25}.stat-icon.gold{background:linear-gradient(130deg,#e9a900,#ffc83e)}.stat-icon.red{background:linear-gradient(140deg,#ed3235,#ff7370)}.stat span{color:#365361;font-size:12px}.stat strong{display:block;font-size:27px;line-height:1.22;letter-spacing:-.5px;margin:2px 0}.stat small{font-size:11px;color:var(--muted)}.stat small.ok{color:#009b4f}.stat small.warn{color:#bf7800}.stat small.bad{color:#d74949}.grid-7-5{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-bottom:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chart{width:100%;height:250px}.chart svg{width:100%;height:100%;overflow:visible}.recent-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #f0f2f2}.file-icon{width:38px;height:38px;flex:none;border-radius:10px;display:grid;place-items:center;background:#e5f3ff;color:#168bd5}.file-icon.green{background:#e4f8ed;color:#068b43}.file-icon.red{background:#ffeaea;color:#e74a4a}.file-icon.gold{background:#fff5d8;color:#bf8507}.recent-row .detail{min-width:0;flex:1}.recent-row .detail b{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11.5px}.recent-row .detail small{color:var(--muted);font-size:10.5px}.recent-row time{font-size:10px;text-align:right;color:var(--muted)}.donut-wrap{display:flex;gap:25px;align-items:center}.donut{flex:none;width:144px;height:144px;border-radius:50%;background:conic-gradient(#007b40 0 72.4%,#f4bd2c 72.4% 89.6%,#d7dee2 89.6% 100%);display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:26px;background:white;border-radius:50%}.donut .donut-label{z-index:1;text-align:center;font-size:11px}.donut b{display:block;font-size:23px;line-height:1}.legend{min-width:0;flex:1}.legend-line{display:flex;justify-content:space-between;gap:14px;padding:7px 0;font-size:11px}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}.progress-item{margin:11px 0}.progress-head{display:flex;justify-content:space-between;font-size:11px;margin-bottom:5px}.progress-track{height:9px;border-radius:10px;background:#e9eff0;overflow:hidden}.progress-fill{height:100%;border-radius:10px;background:linear-gradient(90deg,#02763c,#2dbe67)}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick{min-height:67px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;background:#e9f6ee;border:0;border-radius:12px;font-weight:740;font-size:11px}.quick:nth-child(1){background:#07904b;color:white}.quick:nth-child(4){background:#fff2cf}.quick:hover{filter:brightness(.98)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.page-head h1{font-size:24px;letter-spacing:-.6px;margin:0}.page-head p{margin:2px 0;color:var(--muted);font-size:12px}.section-gap{margin-bottom:16px}.filter-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:15px;margin-bottom:16px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:12px}.table th{text-align:left;padding:12px 14px;background:#f7faf9;color:#647984;font-weight:760;white-space:nowrap;border-bottom:1px solid var(--line)}.table td{padding:12px 14px;border-bottom:1px solid #eef1f1;vertical-align:middle}.table tr:hover td{background:#fcfdfc}.table td:first-child{font-weight:650}.table .center{text-align:center}.table .click{color:var(--green);font-weight:800;cursor:pointer}.meta{color:var(--muted);font-size:11px}.bar-inline{display:flex;align-items:center;gap:9px;min-width:120px}.bar-inline .progress-track{width:88px}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.status-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-tile{border:1px solid #e6efed;border-radius:12px;padding:13px 15px;background:#fbfdfc}.status-tile b{font-size:23px;display:block}.status-tile span{font-size:11px;color:var(--muted)}.year-grid{border-collapse:collapse;width:100%;font-size:11px}.year-grid th,.year-grid td{border-bottom:1px solid #eef0f0;padding:13px 9px;text-align:center;white-space:nowrap}.year-grid th{background:#f8faf9;color:#647b81}.year-grid td:first-child,.year-grid th:first-child{text-align:left;position:sticky;left:0;background:#fff;font-weight:750;padding-left:18px}.year-grid th:first-child{background:#f8faf9}.month-cell{border-radius:6px;width:23px;height:23px;display:inline-grid;place-items:center;font-weight:900}.month-cell.good{background:#e0f6e7;color:#038043}.month-cell.partial{background:#fff3d4;color:#c68a00}.month-cell.none{background:#f1f3f5;color:#96a8ac}.month-cell.revise{background:#ffe7e6;color:#cf4848}.notification{display:flex;gap:13px;padding:15px 16px;border-bottom:1px solid #edf0ef;cursor:pointer}.notification:hover{background:#f9fcfa}.notification.unread{background:#effaf3}.notification b{font-size:12px}.notification p{margin:2px 0;font-size:11px;color:#526b76}.notification time{color:var(--muted);font-size:10px;display:block;margin-top:5px}.notification .unread-mark{width:8px;height:8px;border-radius:100%;background:#08a653;flex:none;align-self:center}.doc-slot{border:1.5px dashed #d6e5df;padding:17px;border-radius:13px;display:flex;gap:13px;align-items:center;margin-bottom:12px;background:#fcfefc}.doc-slot.ready{border-style:solid;border-color:#b6dec6;background:#f8fffa}.doc-slot .file-icon{width:48px;height:48px}.doc-slot-content{flex:1;min-width:0}.doc-slot-content b{font-size:13px;display:block}.doc-slot-content p{color:var(--muted);font-size:11px;margin:2px 0}.alert{border-radius:11px;background:#fff6e1;border:1px solid #f6e5bd;padding:13px 15px;color:#805f11;font-size:12px}.alert.info{background:#edf7ff;border-color:#d8eafb;color:#32647c}.alert.green{background:#ecfbf1;border-color:#ccebd6;color:#24713e}.detail-asset{display:flex;align-items:center;gap:10px;border:1px solid #ebefee;border-radius:10px;padding:12px;margin-bottom:9px}.detail-asset b{font-size:12px}.detail-asset small{font-size:11px;color:var(--muted);display:block}.comment{border-left:3px solid #e9b334;background:#fff9eb;padding:12px;border-radius:0 9px 9px 0;font-size:12px;margin-top:10px}.setting-grid{display:grid;grid-template-columns:220px 1fr;gap:18px}.setting-nav{padding:10px;align-self:start}.setting-nav button{border:0;background:transparent;width:100%;text-align:left;padding:12px 12px;border-radius:9px;display:flex;align-items:center;gap:10px;font-weight:700;color:#527079;font-size:12px}.setting-nav button.current{background:#e6f7ed;color:#02733d}.setting-card{padding:23px}.preview-photo{height:150px;border-radius:12px;background:url('building-v1.1.webp') center/cover;border:1px solid #dde7e2}.preview-logo{border:1px solid #e7eded;border-radius:10px;display:flex;justify-content:center;align-items:center;padding:10px;background:white;max-width:340px;height:130px}.preview-logo img{max-width:100%;max-height:100%;object-fit:contain}.drive-card{display:flex;gap:15px;align-items:center;padding:20px;border:1px solid #e4efea;border-radius:12px;background:#f9fdfb}.drive-card .big-logo{font-size:38px}.timeline{border-left:2px solid #d9ebe1;margin:15px 0 0 11px;padding-left:20px}.timeline-item{position:relative;padding:0 0 22px}.timeline-item:before{content:"";position:absolute;top:5px;left:-26px;background:#1f9854;width:10px;height:10px;border-radius:50%;border:2px solid white}.timeline-item b{font-size:12px}.timeline-item p{font-size:11px;color:var(--muted);margin:3px 0}.login-page{min-height:100vh;display:grid;grid-template-columns:47% 53%;background:#fff}.login-side{background:linear-gradient(135deg,rgba(0,70,42,.15),rgba(0,48,30,.22)),url('building-v1.1.webp') center/cover;position:relative;color:white;display:flex;flex-direction:column;justify-content:space-between;padding:46px 54px;overflow:hidden}.login-side:after{content:"";position:absolute;width:540px;height:540px;border:1px solid #ffffff22;border-radius:50%;left:-140px;bottom:-180px;box-shadow:0 0 0 90px #ffffff08,0 0 0 180px #ffffff08}.login-side>*{position:relative;z-index:2}.login-side h1{font-size:48px;line-height:1.08;letter-spacing:-2px;margin:15px 0}.login-side p{font-size:15px;color:#e7f5ee;max-width:480px}.login-side footer{font-size:12px;color:#d0e9dc}.login-side .topline{font-weight:900;letter-spacing:.16em;font-size:13px}.login-right{display:flex;justify-content:center;align-items:center;padding:40px}.login-form{width:100%;max-width:420px}.login-form .logo-main{width:100%;max-width:320px;height:145px;object-fit:contain;margin-bottom:5px}.login-form h2{margin:0;font-size:26px;letter-spacing:-.5px}.login-form>p{margin:5px 0 27px;color:var(--muted);font-size:13px}.login-actions{display:grid;gap:10px;margin-top:17px}.login-help{padding:13px;border:1px solid #e6efea;background:#f5fbf7;border-radius:10px;color:#477261;font-size:12px;margin-top:25px}.login-footer{color:#9dabae;font-size:11px;margin-top:26px}.modal-backdrop{position:fixed;inset:0;background:#0e2e2acc;backdrop-filter:blur(3px);z-index:30;display:grid;place-items:center;padding:20px}.modal{width:min(100%,490px);background:white;border-radius:17px;padding:27px;box-shadow:0 25px 100px #031c1973}.modal h2{margin:0 0 7px;font-size:20px;letter-spacing:-.3px}.modal p{color:var(--muted);font-size:12px;margin:0 0 16px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.demo-ribbon{font-size:10px;font-weight:800;border:1px solid #e8d6a5;background:#fff7e4;color:#a77b0b;border-radius:15px;padding:3px 9px}.mobile-toggle{display:none}.mobile-overlay{display:none}.toast{position:fixed;right:25px;bottom:20px;padding:14px 18px;border-radius:12px;background:#043f29;color:white;z-index:50;box-shadow:0 10px 35px #001e1166;font-size:12px;max-width:360px}.mock-space{border:1px dashed #b4d5c1;border-radius:10px;background:#f5fbf7;padding:16px;font-size:12px;color:#60806e;text-align:center}
@media(max-width:1150px){.stats{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}.grid-3>*:last-child{grid-column:span 2}.sidebar{width:226px}.hero .slogan{font-size:16px}.stat{min-height:105px}}
@media(max-width:840px){.sidebar{position:fixed;left:0;transform:translateX(-100%);transition:transform .2s;width:260px}.sidebar.open{transform:translateX(0)}.mobile-overlay.open{display:block;position:fixed;inset:0;background:#001f1b7c;z-index:9}.mobile-toggle{display:grid}.topbar{padding:0 13px}.top-profile small{display:none}.top-profile{min-width:0;padding-left:9px}.content{padding:15px}.grid-7-5,.grid-3,.grid-2,.setting-grid{grid-template-columns:1fr}.grid-3>*:last-child{grid-column:auto}.hero-content{max-width:80%}.hero .slogan{display:none}.login-page{grid-template-columns:1fr}.login-side{min-height:260px;padding:28px;justify-content:center}.login-side h1{font-size:33px}.login-side footer{display:none}.login-right{padding:35px 18px}.login-form .logo-main{max-width:270px;height:125px}}
@media(max-width:550px){.stats{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:12px;gap:9px;min-height:85px}.stat-icon{width:44px;height:44px}.stat strong{font-size:23px}.stat span,.stat small{font-size:10px}.topbar{gap:6px}.search{max-width:none}.top-profile strong,.top-profile small{display:none}.top-profile{border:none}.hero{padding:20px;min-height:145px}.hero h1{font-size:27px}.hero p{font-size:12px}.donut-wrap{gap:15px}.donut{width:120px;height:120px}.donut:after{inset:23px}.form-grid{grid-template-columns:1fr}.page-head{align-items:start;flex-direction:column}.card-pad{padding:15px}.doc-slot{flex-wrap:wrap}.doc-slot .toolbar{width:100%}}


.brand{padding:24px 20px 21px}
.brand-logo{height:100px;margin-bottom:0;padding:8px;background:#fff}
.login-side{background-position:center;background-size:cover}
.login-side:after{display:none}
.dashboard-identity{margin:0 0 14px;padding:2px 5px 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 15px}
.dashboard-identity-title{font-size:20px;font-weight:900;color:#045b35;letter-spacing:.02em}
.dashboard-identity-subtitle{font-size:12px;font-weight:650;color:#3b6260}
.dashboard-identity-institution{font-size:11px;color:#617b7d;display:flex;gap:8px;align-items:center;flex-basis:100%}
.dashboard-institution-logo{width:22px;height:22px;object-fit:contain}
.hero{margin-bottom:16px}
.hero-content{max-width:67%}
.hero h1{margin:4px 0 6px}
.recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.recent-grid>.recent-row:nth-child(-n+2){border-top:1px solid #f0f2f2}
.table th:first-child,.table td:first-child{width:67px;white-space:nowrap}
.year-grid th:first-child,.year-grid td:first-child{min-width:65px;width:65px;text-align:center;padding-left:10px;z-index:2}
.year-grid th:nth-child(2),.year-grid td:nth-child(2){position:sticky;left:65px;min-width:155px;text-align:left;padding-left:12px;background:#fff;z-index:1}
.year-grid th:nth-child(2){background:#f8faf9}
.institution-upload{margin-top:18px;display:grid;grid-template-columns:minmax(220px,1fr) 1fr;gap:18px;align-items:center}
.institution-upload .small-preview{height:105px;max-width:220px}
.institution-upload .small-preview img{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:1050px){.recent-grid{grid-template-columns:1fr}}
@media(max-width:840px){.dashboard-identity{gap:5px 8px}.dashboard-identity-subtitle{flex-basis:100%}.institution-upload{grid-template-columns:1fr}.hero-content{max-width:78%}}
@media(max-width:560px){.login-side{min-height:230px}.hero{padding:22px}.hero-content{max-width:86%}.hero .slogan{display:none}}
/* PELITA application layer, derived from approved v1.2. */
.nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:10px;font-size:13px;color:#e4f1ec;position:relative}.nav a:hover{background:#ffffff18}.nav a.active{background:#0f7548;color:#fff}.nav a.active:before{content:"";position:absolute;left:-11px;top:0;bottom:0;width:4px;background:var(--gold)}.hero:before{background:linear-gradient(90deg,#e9f7ee 0%,#e6f4eb 38%,#e8f6ecab 57%,#0b7f3f29 100%),var(--banner) center var(--focus,50%)/cover}.sidebar-bottom .btn{background:#ffffff18;color:white;border-color:#ffffff33}.app-footer{text-align:center;color:var(--muted);font-size:11px;margin-top:30px}.muted{color:var(--muted)}.narrow{max-width:680px}.section-top{margin-top:18px}.doc-list{margin:20px 0}.status-stack{display:flex;gap:4px;align-items:flex-start;flex-direction:column}.notice-button{width:100%;background:none;border:0;text-align:left;color:inherit}.notice-button.unread{background:#effaf3}.month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.month-tile{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;padding:17px;gap:7px}.month-tile:hover{background:#edf8f1}.month-tile small{color:var(--muted)}.filter-search{max-width:260px}.pagination{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:16px;font-size:12px}.pagination [aria-disabled=true]{opacity:.45}.inline-editor{min-width:240px;padding:12px;display:grid;gap:10px}.inline-editor+.btn{margin-top:10px}summary{cursor:pointer;font-weight:700}.asset-preview{height:160px;border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;place-items:center;margin:12px 0;background:#fafcfb}.asset-preview img{max-width:100%;max-height:130px;object-fit:contain}.banner-preview{aspect-ratio:16/5;height:auto;padding:0;overflow:hidden}.banner-preview img{width:100%;height:100%;max-height:none;object-fit:cover;aspect-ratio:16/5}.uuid-cell{font-size:10px;max-width:150px;overflow-wrap:anywhere}.preserve-lines{white-space:pre-line}pre{white-space:pre-wrap;max-width:420px;word-break:break-word}input[type=file]{max-width:100%;font-size:12px}dialog{border:0;border-radius:18px;padding:28px;max-width:520px;box-shadow:0 10px 80px #0004}dialog::backdrop{background:#062b25bb}#temporary-password{width:100%;padding:12px;margin:10px 0 20px;font-family:monospace}.sidebar-collapsed .sidebar{display:none}.sidebar-collapsed .main{width:100%}.topbar [data-icon]{display:grid}svg{flex:none}[hidden]{display:none!important}button:disabled{cursor:not-allowed}.btn:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #d1ac37;outline-offset:3px}.login-side{padding:0}.login-side:after{display:none}.mobile-overlay{border:0}.form-grid label{min-width:0}.card h3{margin-top:0}.setting-card .field-label{margin-bottom:14px}input[type=range]{width:100%}.table td{line-height:1.7}.table .pill{line-height:1.3}.sidebar{scrollbar-color:#52836d transparent}
@media(max-width:840px){.sidebar-collapsed .sidebar{display:flex}.sidebar.open{transform:translateX(0)}.month-grid{grid-template-columns:repeat(3,1fr)}.login-side{min-height:230px}.topbar .search{max-width:240px}.card-title{flex-wrap:wrap}.doc-slot-content{width:calc(100% - 65px)}}
@media(max-width:550px){.month-grid{grid-template-columns:repeat(2,1fr)}.stats .stat-icon{width:35px;height:35px}.donut-wrap{flex-wrap:wrap}.filter-panel>label{width:100%;display:flex;gap:10px;align-items:center}.filter-panel .select{flex:1;min-width:0}.topbar .search{max-width:none}.top-profile{display:none}.detail-asset{flex-wrap:wrap}.detail-asset>.grow{min-width:150px}.hero h1{font-size:24px}.doc-slot .toolbar{justify-content:flex-end}.form-grid{gap:8px}}

/* PELITA 1.1: contain preserves the entire text-free login illustration. */
.login-side{background:#edf4ed;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}
.login-side img{display:block;width:100%;height:calc(100vh - 48px);min-height:400px;max-height:900px;object-fit:contain}
.logo-main{object-fit:contain}
@media(max-width:840px){.login-side{min-height:0;padding:16px}.login-side img{height:240px;min-height:0;max-height:240px}.login-right{padding-top:24px}}
