/* ============================================================
   DastNET · ÓRBITA — painel administrativo
   Depende de orbita.css (variáveis + base). Mesma alma do site.
   ============================================================ */
.admin{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:var(--grad-deep)}

/* SIDEBAR */
.sidebar{border-right:var(--bd-hairline);padding:24px 0;position:sticky;top:0;height:100vh;overflow-y:auto;background:rgba(5,8,16,0.6)}
.sidebar-logo{padding:0 24px 24px;color:var(--c-off);display:flex;align-items:center}
.workspace{padding:0 24px 20px;border-bottom:var(--bd-hairline);margin-bottom:16px}
.workspace .l{font-family:var(--fm);font-size:9px;letter-spacing:.2em;color:var(--c-gray);text-transform:uppercase}
.workspace .v{font-family:var(--fm);font-size:12px;letter-spacing:.06em;color:var(--c-cyan);margin-top:4px}
.sb-group{padding:14px 0 6px}
.sb-group .gt{font-family:var(--fm);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--c-gray);padding:0 24px 8px}
.sb-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 24px;font-family:var(--fm);font-size:12.5px;letter-spacing:.03em;color:var(--c-gray-2);border-left:2px solid transparent;transition:all .2s var(--ease-out)}
.sb-item:hover{color:var(--c-off);background:rgba(244,241,234,0.03)}
.sb-item.active{color:var(--c-cyan);border-left-color:var(--c-cyan);background:rgba(0,217,255,0.05)}
.sb-item .ct{font-size:10px;letter-spacing:.04em;color:var(--c-gray);background:rgba(244,241,234,0.06);padding:2px 7px;border-radius:999px}
.sb-item.active .ct{color:var(--c-cyan)}
.sb-footer{margin-top:24px;padding:16px 24px;border-top:var(--bd-hairline);font-family:var(--fm);font-size:10px;letter-spacing:.06em;color:var(--c-gray)}
.sb-footer .dot{color:var(--c-success)}
.sb-footer div{margin-top:6px}

/* MAIN */
.main{display:flex;flex-direction:column;min-width:0}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 32px;border-bottom:var(--bd-hairline);position:sticky;top:0;background:rgba(5,8,16,0.72);backdrop-filter:blur(14px);z-index:50}
.topbar .search{flex:1;max-width:520px;display:flex;align-items:center;gap:10px;background:rgba(244,241,234,0.03);border:var(--bd-default);border-radius:4px;padding:10px 14px}
.topbar .search input{flex:1;background:none;border:none;color:var(--c-off);font-family:var(--fb);font-size:13px;outline:none}
.topbar .search .kbd{font-family:var(--fm);font-size:10px;color:var(--c-gray);border:var(--bd-default);border-radius:3px;padding:2px 6px}
.topbar .right{display:flex;align-items:center;gap:18px}
.topbar .status{font-family:var(--fm);font-size:11px;letter-spacing:.08em;color:var(--c-lima)}
.profile{display:flex;align-items:center;gap:10px}
.profile .ini{width:36px;height:36px;border-radius:999px;background:var(--c-graphite);border:var(--bd-brand-soft);display:flex;align-items:center;justify-content:center;font-family:var(--fm);font-weight:700;font-size:12px;color:var(--c-cyan)}
.profile .pm{font-family:var(--fm);font-size:12px;color:var(--c-off);line-height:1.3}
.profile .pm small{display:block;font-size:9px;letter-spacing:.14em;color:var(--c-gray)}
.logout-btn{background:none;border:var(--bd-default);color:var(--c-gray-2);font-family:var(--fm);font-size:11px;padding:7px 12px;border-radius:4px;cursor:pointer;transition:all .2s}
.logout-btn:hover{border-color:var(--c-error);color:var(--c-error)}

.content{padding:32px;max-width:1280px;width:100%}
.page-head{margin-bottom:32px}
.page-head .eyebrow{display:block;margin-bottom:10px}
.page-head h1{font-family:var(--fd);font-weight:500;font-size:34px;letter-spacing:-.02em}
.page-head p{color:var(--c-gray-2);font-size:14px;margin-top:8px}
.page-head .actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}

/* FLASH */
.flash{padding:14px 18px;border-radius:4px;font-family:var(--fm);font-size:12px;margin-bottom:24px}
.flash.ok{border:1px solid rgba(196,255,61,0.35);color:var(--c-lima);background:rgba(196,255,61,0.05)}
.flash.err{border:1px solid rgba(239,68,68,0.4);color:var(--c-error);background:rgba(239,68,68,0.05)}

/* METRIC STRIP */
.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(244,241,234,0.06);margin-bottom:32px}
.ms-card{background:var(--c-black);padding:24px}
.ms-card .n{font-family:var(--fm);font-size:9px;letter-spacing:.2em;color:var(--c-cyan)}
.ms-card .l{font-family:var(--fm);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--c-gray-2);margin:10px 0 8px}
.ms-card .v{font-family:var(--fd);font-weight:500;font-size:40px;line-height:1}

/* CARD / PANEL */
.panel{position:relative;border:var(--bd-subtle);border-radius:4px;background:var(--grad-card);padding:24px;margin-bottom:24px}
.panel .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.panel .ph .eyebrow{margin:0}
.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}
@media(max-width:1000px){.grid-2{grid-template-columns:1fr}}

/* TABLE */
.tbl-wrap{overflow-x:auto;border:var(--bd-subtle);border-radius:4px}
table.tbl{width:100%;border-collapse:collapse;min-width:560px}
table.tbl th{font-family:var(--fm);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gray);text-align:left;padding:14px 18px;border-bottom:var(--bd-subtle);background:rgba(244,241,234,0.02)}
table.tbl td{padding:14px 18px;border-bottom:var(--bd-hairline);font-size:13px;color:var(--c-off);font-family:var(--fb)}
table.tbl tr:last-child td{border-bottom:none}
table.tbl tr:hover td{background:rgba(0,217,255,0.03)}
table.tbl td.mono,table.tbl td .mono{font-family:var(--fm);font-size:12px;color:var(--c-gray-2)}
.badge{font-family:var(--fm);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:var(--bd-default)}
.badge.cyan{color:var(--c-cyan);border-color:rgba(0,217,255,0.3)}
.badge.lima{color:var(--c-lima);border-color:rgba(196,255,61,0.3)}
.badge.gray{color:var(--c-gray-2)}
.badge.on{color:var(--c-success);border-color:rgba(16,185,129,0.3)}
.badge.off{color:var(--c-gray)}
.row-actions{display:flex;gap:8px;justify-content:flex-end}
.row-actions a,.row-actions button{font-family:var(--fm);font-size:11px;padding:6px 10px;border-radius:3px;border:var(--bd-default);color:var(--c-gray-2);background:none;cursor:pointer;transition:all .2s}
.row-actions a:hover{border-color:var(--c-cyan);color:var(--c-cyan)}
.row-actions button:hover{border-color:var(--c-error);color:var(--c-error)}

/* ADMIN FORM */
.aform{max-width:760px}
.aform .field{margin-bottom:22px}
.aform label{font-family:var(--fm);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-gray-2);display:block;margin-bottom:8px}
.aform input[type=text],.aform input[type=email],.aform input[type=password],.aform input[type=number],.aform textarea,.aform select{width:100%;background:rgba(244,241,234,0.03);border:var(--bd-default);border-radius:3px;padding:12px 14px;color:var(--c-off);font-family:var(--fb);font-size:14px}
.aform input:focus,.aform textarea:focus,.aform select:focus{border-color:var(--c-cyan);outline:none}
.aform textarea{min-height:120px;resize:vertical}
.aform .toggle{display:flex;align-items:center;gap:10px}
.aform .toggle input{width:18px;height:18px;accent-color:var(--c-cyan)}
.aform .hint{font-family:var(--fm);font-size:10px;color:var(--c-gray);margin-top:6px;letter-spacing:.04em}
.aform .form-actions{display:flex;gap:12px;margin-top:28px}
.field-err{color:var(--c-error);font-family:var(--fm);font-size:11px;margin-top:6px}

/* MEDIA GRID */
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}
.media-item{position:relative;border:var(--bd-subtle);border-radius:4px;overflow:hidden;background:var(--c-graphite-2)}
.media-item .thumb{height:130px;display:flex;align-items:center;justify-content:center;background:var(--c-black)}
.media-item .thumb img,.media-item .thumb video{width:100%;height:100%;object-fit:cover}
.media-item .mi-foot{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.media-item .mt{font-family:var(--fm);font-size:10px;color:var(--c-gray-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.media-item .del{background:none;border:none;color:var(--c-gray);cursor:pointer;font-size:14px}
.media-item .del:hover{color:var(--c-error)}
.uploader{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:24px}
.uploader .field{margin:0}

/* LOGIN */
.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}
.login-visual{position:relative;overflow:hidden;border-right:var(--bd-hairline);display:flex;flex-direction:column;justify-content:space-between;padding:40px}
.login-visual canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.login-visual .lv-top,.login-visual .lv-mid,.login-visual .lv-bot{position:relative;z-index:2}
.login-visual .lv-hud{font-family:var(--fm);font-size:10px;letter-spacing:.14em;color:var(--c-gray-2);line-height:1.7;text-align:right}
.login-visual .lv-hud .sig{color:var(--c-cyan)}
.login-visual h2{font-family:var(--fd);font-weight:500;font-size:clamp(28px,3vw,40px);line-height:1.1;letter-spacing:-.02em;max-width:460px}
.login-visual h2 .g{color:var(--c-gray)}
.login-visual .selos{display:flex;gap:24px;margin-top:28px;flex-wrap:wrap}
.login-visual .selo{font-family:var(--fm);font-size:11px;color:var(--c-gray-2)}
.login-visual .selo .t{color:var(--c-cyan);letter-spacing:.1em}
.login-form{display:flex;flex-direction:column;justify-content:center;padding:48px clamp(28px,5vw,80px);max-width:560px}
.login-form .back{font-family:var(--fm);font-size:11px;letter-spacing:.1em;color:var(--c-gray-2);margin-bottom:40px}
.login-form .back:hover{color:var(--c-cyan)}
.login-form h1{font-family:var(--fd);font-weight:500;font-size:40px;letter-spacing:-.02em;margin:10px 0 12px}
.login-form .desc{font-size:13.5px;color:var(--c-gray-2);line-height:1.55;margin-bottom:32px}
.login-form .ff{display:block;font-family:var(--fm);font-size:9px;letter-spacing:.1em;color:var(--c-gray);margin-top:6px}
@media(max-width:900px){.admin{grid-template-columns:1fr}.sidebar{display:none}.login{grid-template-columns:1fr}.login-visual{display:none}.metric-strip{grid-template-columns:repeat(2,1fr)}}
