.admin-root{min-height:100vh;background:#f5f7f7;color:#172536;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.admin-root *{box-sizing:border-box}
.admin-gate{min-height:100vh;background:radial-gradient(ellipse at 85% 0%,rgba(64,135,127,.16),transparent 42%),#f5f7f7;display:grid;place-items:center;padding:28px}
.admin-gate-card{width:min(100%,560px);background:#fff;border:1px solid #e3e9e8;border-radius:22px;padding:36px;box-shadow:0 24px 70px rgba(4,22,65,.09)}
.admin-brand{display:flex;align-items:center;gap:12px;color:#041641;text-decoration:none;font-weight:800;line-height:1.12;margin-bottom:34px}
.admin-brand img{height:52px;width:52px;object-fit:contain;border-radius:10px;background:#fff}
.admin-brand small{font-size:11px;font-weight:600;color:#72818c;letter-spacing:.08em;text-transform:uppercase}
.admin-kicker{display:block;color:#40877f;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.admin-gate-card h1{color:#041641;font-size:clamp(27px,5vw,38px);line-height:1.12;margin:9px 0 12px}
.admin-gate-card p{color:#65747f;line-height:1.65;margin:0 0 20px}
.admin-gate-card ol{color:#3f4d58;line-height:1.65;padding-left:21px}
.admin-gate-card li{padding:4px 0}
.admin-gate-card code{background:#f0f4f3;border-radius:5px;padding:2px 5px;color:#174d49;word-break:break-word}
.admin-note{font-size:13px;border-left:3px solid #fc8f4d;padding:8px 12px;background:#fff8f2;border-radius:0 9px 9px 0}
.admin-form{display:grid;gap:16px;margin:24px 0 18px}
.admin-form label,.admin-settings-form label,.admin-record-form label,.admin-upload-form>label:not(.admin-upload-target),.admin-media-meta label{display:grid;gap:7px;color:#263b4a;font-size:13px;font-weight:700}
.admin-form input,.admin-fields input,.admin-fields textarea,.admin-fields select,.admin-upload-form select,.admin-media-meta select{width:100%;border:1px solid #d9e1e2;border-radius:10px;background:#fff;padding:11px 12px;color:#162536;font:inherit;font-size:14px;outline:none}
.admin-form input:focus,.admin-fields input:focus,.admin-fields textarea:focus,.admin-fields select:focus{border-color:#40877f;box-shadow:0 0 0 3px rgba(64,135,127,.12)}
.admin-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;border:0;border-radius:10px;background:#041641;color:#fff;padding:12px 18px;font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .15s ease,background .15s ease}
.admin-button:hover{background:#123269;transform:translateY(-1px)}
.admin-button.secondary{background:#e9f2f1;color:#245b56}.admin-button.secondary:hover{background:#d9e9e7}.admin-button.ghost{background:transparent;color:#53646f;border:1px solid #d9e1e2}
.admin-text-link,.admin-back{display:block;color:#40877f;font-size:13px;font-weight:700;text-decoration:none;margin-top:12px}.admin-back{color:#82909a}
.admin-alert{border:1px solid #f3c3b1;background:#fff4ef;color:#9b3a20;padding:11px 13px;border-radius:9px;font-size:13px;line-height:1.45}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}
.admin-sidebar{background:#041641;color:#e8f0f2;display:flex;flex-direction:column;min-height:100vh;padding:24px 14px 18px;position:sticky;top:0;height:100vh;overflow:auto}
.admin-sidebar .admin-brand{color:#fff;margin:0 8px 32px}.admin-sidebar .admin-brand img{background:#fff}
.admin-sidebar nav{display:grid;gap:4px}.admin-nav-label{font-size:9px;letter-spacing:.18em;color:#8295b0;font-weight:800;padding:20px 13px 7px}
.admin-nav-item{width:100%;border:0;background:transparent;border-radius:9px;color:#c8d5e0;display:flex;align-items:center;gap:11px;padding:10px 12px;text-align:left;font:inherit;font-size:13px;font-weight:650;cursor:pointer}
.admin-nav-item span{width:20px;font-size:16px;text-align:center;color:#90beb7}.admin-nav-item:hover,.admin-nav-item.active{background:#102950;color:#fff}.admin-nav-item.active{box-shadow:inset 3px 0 #fc8f4d}
.admin-sidebar-bottom{margin-top:auto;padding:18px 10px 4px;border-top:1px solid rgba(255,255,255,.14)}.admin-user{display:block;color:#fff;font-size:12px;font-weight:700;overflow-wrap:anywhere;margin-bottom:11px}.admin-logout{border:0;background:transparent;color:#ffbd9a;font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:0}
.admin-sidebar-bottom .admin-back{color:#9eb2c8;font-size:11px;margin-top:17px}
.admin-main{min-width:0}.admin-topbar{display:flex;align-items:center;justify-content:space-between;padding:26px clamp(20px,4vw,56px);background:#fff;border-bottom:1px solid #e5ebeb}.admin-topbar h1{font-size:clamp(24px,3vw,32px);color:#041641;margin:4px 0 0;line-height:1.2}.admin-status-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #d9e9e7;background:#f2faf8;color:#286b62;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:750}.admin-status-pill i{width:7px;height:7px;border-radius:50%;background:#54ad79}
.admin-content{max-width:1440px;margin:0 auto;padding:clamp(18px,3.2vw,42px) clamp(18px,4vw,56px) 64px;display:grid;gap:22px}
.admin-toast{padding:12px 15px;border-radius:10px;background:#eaf6f1;color:#176447;border:1px solid #cce8da;font-size:13px;font-weight:700}
.admin-welcome{background:linear-gradient(110deg,#041641,#153a63);border-radius:18px;padding:26px 30px;color:#fff}.admin-welcome .admin-kicker{color:#a8d9d0}.admin-welcome h2{font-size:clamp(23px,3vw,32px);margin:8px 0}.admin-welcome p{color:#d5e0e8;margin:0;line-height:1.6}
.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-stat{background:#fff;border:1px solid #e5ebeb;border-radius:14px;padding:18px 20px;display:grid;gap:5px}.admin-stat span{font-size:12px;color:#6e7d86;font-weight:700}.admin-stat strong{font-size:31px;color:#041641;line-height:1.1}.admin-stat small{font-size:11px;color:#97a2a8}
.admin-panel{background:#fff;border:1px solid #e4eaea;border-radius:15px;min-width:0;overflow:hidden}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 23px;border-bottom:1px solid #edf0f0}.admin-panel-head h2{font-size:18px;color:#041641;margin:5px 0 0}.admin-panel-head p{font-size:12px;color:#75838c;margin:5px 0 0}.admin-icon-button{border:0;background:#f1f4f4;border-radius:9px;width:34px;height:34px;font-size:22px;color:#50616c;cursor:pointer}
.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:680px}.admin-table th{text-align:left;background:#f9fbfb;color:#85939b;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:12px 16px}.admin-table td{padding:14px 16px;border-top:1px solid #eef1f1;color:#4a5a64;font-size:12px;vertical-align:middle}.admin-table td strong,.admin-table td small{display:block}.admin-table td strong{color:#1a3042;font-size:13px}.admin-table td small{color:#93a0a7;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px}.admin-row-actions{display:flex;gap:12px;white-space:nowrap}.admin-row-actions button,.admin-media-actions button,.admin-media-meta button{border:0;background:transparent;color:#337b72;font:inherit;font-size:12px;font-weight:750;cursor:pointer;padding:3px 0}.admin-row-actions .danger-text,.danger-text{color:#b74e37!important}.admin-publish{display:inline-block;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.admin-publish.published{background:#e8f6ee;color:#21744d}.admin-publish.draft{background:#fff1e8;color:#a45d30}.admin-empty{padding:24px!important;color:#87949b!important;text-align:center}
.admin-record-form,.admin-settings-form{padding:22px 23px}.admin-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-field.wide{grid-column:1/-1}.admin-fields label{display:grid;gap:7px;color:#263b4a;font-size:12px;font-weight:750}.admin-fields textarea{resize:vertical;min-height:92px;line-height:1.5}.admin-fields label small{font-weight:500;color:#96a1a6}.admin-check{display:flex!important;align-items:center;gap:9px!important;padding-top:12px}.admin-check input,.admin-inline-check input{width:17px;height:17px;accent-color:#40877f}.admin-form-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.admin-hint{font-size:11px;color:#8a979c;margin:12px 0 0}.admin-image-field{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.admin-image-field select{font-size:12px}.admin-image-preview{width:min(100%,260px);max-height:155px;object-fit:cover;border-radius:9px;border:1px solid #e1e8e7}
.admin-activity{list-style:none;padding:0 22px;margin:0}.admin-activity li{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #eef1f1;font-size:12px;color:#77858c}.admin-activity li:last-child{border-bottom:0}.admin-activity li span strong,.admin-activity li span small{display:block}.admin-activity li strong{color:#203647}.admin-activity li small{margin-top:4px;color:#98a3a8}.admin-activity time{white-space:nowrap;font-size:11px}
.admin-upload-form{display:grid;grid-template-columns:minmax(200px,1fr) 210px auto;align-items:end;gap:14px;padding:20px 22px}.admin-upload-target{min-height:118px;border:1px dashed #a9c8c4;border-radius:12px;background:#f7fbfa;display:grid!important;place-items:center;text-align:center;padding:18px;cursor:pointer}.admin-upload-target>span{width:32px;height:32px;border-radius:50%;background:#e5f2f0;color:#2d766d;display:grid;place-items:center;font-size:21px}.admin-upload-target strong{color:#264354;font-size:13px}.admin-upload-target small{color:#85939a;font-size:11px;font-weight:500}.admin-upload-target input{max-width:230px;font-size:11px}.admin-upload-preview{display:flex;gap:9px;overflow:auto;grid-column:1/-1}.admin-upload-preview figure{margin:0;width:90px;flex:0 0 90px}.admin-upload-preview img{width:90px;height:65px;object-fit:cover;border-radius:7px}.admin-upload-preview figcaption{font-size:10px;color:#687780;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px;padding:20px}.admin-media-card{border:1px solid #e5ebeb;border-radius:12px;overflow:hidden}.admin-media-card>img{width:100%;height:160px;object-fit:cover;background:#f3f5f5}.admin-media-info{padding:12px}.admin-media-info>strong,.admin-media-info>small{display:block}.admin-media-info>strong{color:#203647;font-size:12px;overflow-wrap:anywhere}.admin-media-info>small{font-size:10px;color:#849197;margin:5px 0 8px}.admin-media-actions{display:flex;gap:14px}.admin-media-meta{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:9px;padding-top:9px;border-top:1px solid #eef1f1}.admin-media-meta label{font-size:10px;flex:1;min-width:95px}.admin-media-meta select{font-size:11px;padding:7px}.admin-media-meta button{align-self:end}.admin-inline-check{display:flex!important;align-items:center;gap:5px!important;white-space:nowrap}.admin-upload-form select{font-size:12px}
@media(max-width:920px){.admin-shell{grid-template-columns:210px minmax(0,1fr)}.admin-sidebar{padding-inline:10px}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-upload-form{grid-template-columns:1fr 180px}.admin-upload-form>.admin-button{grid-column:1/-1}}
@media(max-width:650px){.admin-shell{display:block}.admin-sidebar{position:relative;height:auto;min-height:0;padding:14px 14px 12px;overflow:visible}.admin-sidebar .admin-brand{margin:0 4px 13px}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.admin-sidebar nav .admin-nav-label{grid-column:1/-1;padding:12px 8px 3px}.admin-nav-item{font-size:11px;padding:9px 8px;gap:6px}.admin-sidebar-bottom{display:flex;align-items:center;gap:12px;padding:11px 5px 0;margin-top:12px}.admin-user{margin:0;flex:1}.admin-sidebar-bottom .admin-back{display:none}.admin-topbar{padding:17px 18px}.admin-topbar h1{font-size:23px}.admin-content{padding:16px 12px 36px;gap:14px}.admin-panel-head{padding:16px;align-items:flex-start}.admin-panel-head .admin-button{font-size:11px;padding:10px}.admin-record-form,.admin-settings-form{padding:16px}.admin-fields{grid-template-columns:1fr;gap:12px}.admin-field.wide{grid-column:auto}.admin-stat-grid{gap:9px}.admin-stat{padding:13px}.admin-stat strong{font-size:26px}.admin-welcome{padding:20px}.admin-upload-form{grid-template-columns:1fr;padding:16px}.admin-upload-form>.admin-button{grid-column:auto}.admin-gate{padding:16px}.admin-gate-card{padding:23px;border-radius:16px}.admin-gate-card .admin-brand{margin-bottom:25px}}
