.admin-body,.login-body { background: #0b0c0f; }
.admin-shell { display: grid; grid-template-columns: 240px minmax(0,1fr); min-height: 100vh; }
.admin-sidebar { position: sticky; top: 0; display: flex; flex-direction: column; height: 100vh; padding: 1.2rem; background: #101216; border-right: 1px solid var(--line); }
.admin-brand { padding-bottom: 1.2rem; border-bottom: 1px solid var(--line); }.admin-brand img { width: 42px; height: 42px; }.admin-brand .brand-name { font-size: 1rem; }
.admin-sidebar nav { display: grid; gap: .3rem; margin-top: 1.4rem; }.admin-sidebar nav a { padding: .72rem .8rem; color: var(--muted); border-radius: 5px; font-size: .75rem; font-weight: 700; }.admin-sidebar nav a:hover,.admin-sidebar nav a.active { color: var(--ink); background: rgba(244,197,66,.08); }.admin-sidebar nav a.active { box-shadow: inset 2px 0 var(--gold); }
.admin-sidebar-bottom { display: grid; gap: .7rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--line); }.admin-sidebar-bottom a,.admin-sidebar-bottom button { color: var(--muted); background: none; border: 0; cursor: pointer; font-size: .7rem; text-align: left; }
.admin-main { min-width: 0; }.admin-topbar { display: flex; align-items: center; justify-content: flex-end; min-height: 72px; padding: 0 2rem; border-bottom: 1px solid var(--line); }.admin-topbar div { text-align: right; }.admin-topbar span,.admin-topbar strong { display: block; }.admin-topbar span { color: var(--dim); font-size: .55rem; text-transform: uppercase; }.admin-topbar strong { font-size: .75rem; }.admin-menu-toggle { display: none; }
.admin-content { width: min(calc(100% - 3rem),1400px); margin: 0 auto; padding: 3rem 0 6rem; }.admin-page-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2.2rem; }.admin-page-heading h1 { margin-bottom: .4rem; font-family: var(--display); font-size: clamp(2.7rem,5vw,5rem); font-style: italic; line-height: .9; text-transform: uppercase; }.admin-page-heading p { margin-bottom: 0; color: var(--muted); }.admin-page-heading .eyebrow { margin-bottom: .8rem; color: var(--gold); }
.admin-button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: .65rem .85rem; color: var(--ink); background: rgba(255,255,255,.04); border: 1px solid var(--line); border-radius: 5px; cursor: pointer; font-size: .68rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }.admin-button.primary { color: #0b0c0e; background: var(--gold); border-color: var(--gold); }.admin-button.danger { color: var(--danger); background: rgba(255,156,141,.05); border-color: rgba(255,156,141,.22); }.admin-button.wide { width: 100%; margin-top: .7rem; }
.stat-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; margin-bottom: 1rem; }.stat-grid article { display: flex; flex-direction: column; min-height: 170px; padding: 1.2rem; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.stat-grid article.attention { border-color: var(--gold-line); }.stat-grid span { color: var(--muted); font-size: .67rem; font-weight: 700; }.stat-grid strong { margin: auto 0; color: var(--gold); font-family: var(--display); font-size: 3.5rem; font-style: italic; }.stat-grid a,.stat-grid small { color: var(--dim); font-size: .62rem; }
.admin-grid-two { display: grid; grid-template-columns: 1.2fr .8fr; gap: 1rem; margin-bottom: 1rem; }.admin-panel { padding: 1.2rem; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.panel-title { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }.panel-title h2 { margin: 0; font-family: var(--display); font-size: 1.45rem; font-style: italic; text-transform: uppercase; }.panel-title > a { color: var(--gold); font-size: .65rem; font-weight: 800; }
.admin-list { display: grid; }.admin-list > a { display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: .8rem; padding: .7rem 0; border-top: 1px solid var(--line); }.list-thumb { display: grid; width: 52px; height: 42px; overflow: hidden; background: #090a0c; place-items: center; }.list-thumb img { width: 100%; height: 100%; object-fit: cover; }.admin-list strong,.admin-list small { display: block; }.admin-list strong { font-size: .75rem; }.admin-list small { color: var(--dim); font-size: .6rem; }.admin-list b { color: var(--gold); }
.connection-row { display: flex; justify-content: space-between; padding: .75rem 0; border-top: 1px solid var(--line); font-size: .7rem; }.connection-row strong { color: var(--dim); }.connection-row strong.good { color: var(--success); }.panel-note { color: var(--dim); font-size: .68rem; }.quick-actions > div:last-child { display: grid; grid-template-columns: repeat(4,1fr); gap: .7rem; }.quick-actions a { padding: .9rem; background: rgba(255,255,255,.025); border: 1px solid var(--line); }.quick-actions b,.quick-actions span { display: block; }.quick-actions b { color: var(--gold); font-size: .7rem; }.quick-actions span { margin-top: .3rem; color: var(--dim); font-size: .6rem; }
.admin-table-wrap { overflow-x: auto; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.admin-table { width: 100%; border-collapse: collapse; }.admin-table th,.admin-table td { padding: .8rem; border-bottom: 1px solid var(--line); text-align: left; white-space: nowrap; }.admin-table th { color: var(--dim); font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; }.admin-table td { color: var(--muted); font-size: .7rem; }.table-video { display: flex; align-items: center; gap: .7rem; min-width: 280px; }.table-video > span { display: grid; width: 62px; height: 45px; overflow: hidden; background: #090a0c; place-items: center; }.table-video img { width: 100%; height: 100%; object-fit: cover; }.table-video strong,.table-video small { display: block; }.table-video strong { color: var(--ink); }.table-video small { color: var(--dim); }.row-action { color: var(--gold); font-weight: 800; }
.status-chip.published,.status-chip.verified { color: var(--success); border-color: rgba(183,236,130,.2); }.status-chip.private,.status-chip.not_connected,.status-chip.pending { color: var(--dim); }.status-chip.queued { color: var(--gold); border-color: var(--gold-line); }.status-chip.failed,.status-chip.rejected { color: var(--danger); border-color: rgba(255,156,141,.2); }.status-chip.planned,.status-chip.draft { color: #a9b9f5; border-color: rgba(169,185,245,.2); }
.admin-empty,.admin-empty-small { padding: 3rem; text-align: center; }.admin-empty h2 { font-family: var(--display); font-size: 2.5rem; font-style: italic; text-transform: uppercase; }.admin-empty p,.admin-empty-small p { color: var(--muted); }.admin-empty-small { padding: 2rem; }
.admin-form-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: start; gap: 1rem; }.admin-form-main,.admin-form-side { display: grid; gap: 1rem; }.admin-form-section { display: grid; gap: 1rem; padding: 1.2rem; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.admin-form-section h2 { margin: 0; padding-bottom: .7rem; border-bottom: 1px solid var(--line); font-family: var(--display); font-size: 1.5rem; font-style: italic; text-transform: uppercase; }.admin-form label { display: grid; gap: .4rem; color: #c5c3bb; font-size: .68rem; font-weight: 700; }.admin-form label small { color: var(--dim); font-weight: 400; }.admin-form input,.admin-form textarea,.admin-form select,.review-form input,.review-form textarea,.review-form select,.media-slot-admin input { width: 100%; padding: .75rem; color: var(--ink); background: #090a0c; border: 1px solid var(--line); border-radius: 4px; outline: 0; }.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus { border-color: var(--gold); }.field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }.check-row { display: flex!important; align-items: flex-start; gap: .7rem; }.check-row input { width: 18px!important; margin-top: .2rem; accent-color: var(--gold); }.check-row span,.check-row strong,.check-row small { display: block; }.check-row small { margin-top: .2rem; }.form-help { margin: 0; color: var(--dim); font-size: .65rem; }.sticky-section { position: sticky; top: 1rem; }.danger-zone { border-color: rgba(255,156,141,.2); }.danger-zone p { color: var(--muted); font-size: .68rem; }
.current-media { display: grid; gap: .5rem; }.current-media video { width: 100%; max-height: 420px; background: #000; }.current-media span { color: var(--dim); font-size: .6rem; text-transform: uppercase; }
.account-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; max-width: 920px; }.account-form > button { justify-self: start; }
.media-slot-admin-grid { display: grid; gap: 1rem; }.media-slot-admin { display: grid; grid-template-columns: 300px 1fr; overflow: hidden; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.media-preview { position: relative; display: grid; min-height: 250px; background: #090a0c; place-items: center; }.media-preview img { width: 100%; height: 100%; object-fit: cover; }.media-preview span { position: absolute; bottom: 1rem; color: var(--dim); font-size: .6rem; }.media-slot-admin > div:last-child { padding: 1.2rem; }.media-slot-admin h2 { margin-bottom: .3rem; font-family: var(--display); font-size: 1.6rem; font-style: italic; text-transform: uppercase; }.media-slot-admin code { color: var(--gold); font-size: .65rem; }.media-slot-admin form { display: grid; gap: .7rem; margin-top: 1rem; }.media-slot-admin label { display: grid; gap: .35rem; color: var(--muted); font-size: .65rem; }.media-slot-admin .admin-button { justify-self: start; }.inline-delete { display: inline-grid!important; margin-left: .5rem!important; }
.moderation-list { display: grid; gap: 1rem; }.moderation-card { display: grid; grid-template-columns: 330px 1fr; overflow: hidden; background: var(--panel); border: 1px solid var(--line); border-radius: 7px; }.moderation-media { display: grid; align-content: start; background: #090a0c; }.moderation-media img,.moderation-media video { width: 100%; max-height: 330px; object-fit: cover; }.moderation-media > span { padding: 1rem; color: var(--dim); font-size: .65rem; }.moderation-copy { padding: 1.2rem; }.moderation-copy h2 { margin: .6rem 0 0; font-family: var(--display); font-size: 2rem; font-style: italic; text-transform: uppercase; }.moderation-copy time,.moderation-copy > small { color: var(--dim); font-size: .65rem; }.moderation-copy dl { display: flex; flex-wrap: wrap; gap: .6rem; }.moderation-copy dl div { padding: .5rem; border: 1px solid var(--line); }.moderation-copy dt { color: var(--dim); font-size: .52rem; text-transform: uppercase; }.moderation-copy dd { margin: 0; font-size: .68rem; }.moderation-copy > p { color: var(--muted); font-size: .78rem; }.review-form { display: grid; gap: .8rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }.review-form label { display: grid; gap: .3rem; color: var(--muted); font-size: .65rem; }.review-form .admin-button { justify-self: start; }
.login-body { display: grid; min-height: 100vh; padding: 1rem; place-items: center; }.login-card { width: min(100%,440px); padding: clamp(1.5rem,5vw,3rem); background: var(--panel); border: 1px solid var(--gold-line); border-radius: 10px; box-shadow: 0 30px 80px rgba(0,0,0,.5); }.login-card .brand { margin-bottom: 3rem; }.login-card .brand img { width: 48px; height: 48px; }.login-card h1 { margin-bottom: .5rem; font-family: var(--display); font-size: 3.5rem; font-style: italic; text-transform: uppercase; }.login-card > p { color: var(--muted); }.login-card form { display: grid; gap: 1rem; margin-top: 1.5rem; }.login-card label { display: grid; gap: .4rem; color: var(--muted); font-size: .7rem; }.login-card input { padding: .8rem; color: var(--ink); background: #090a0c; border: 1px solid var(--line); border-radius: 4px; }.login-back { display: inline-block; margin-top: 1.4rem; color: var(--dim); font-size: .65rem; }

@media (max-width: 1050px) { .stat-grid { grid-template-columns: repeat(2,1fr); }.admin-grid-two { grid-template-columns: 1fr; }.quick-actions > div:last-child { grid-template-columns: repeat(2,1fr); }.admin-form-layout { grid-template-columns: 1fr; }.sticky-section { position: static; }.moderation-card { grid-template-columns: 250px 1fr; } }
@media (max-width: 760px) { .admin-shell { grid-template-columns: 1fr; }.admin-sidebar { position: fixed; z-index: 100; width: 250px; transform: translateX(-105%); transition: transform .2s ease; }.admin-menu-open .admin-sidebar { transform: translateX(0); }.admin-topbar { justify-content: space-between; padding: 0 1rem; }.admin-menu-toggle { display: inline-flex; color: var(--ink); background: transparent; border: 1px solid var(--line); padding: .5rem .7rem; }.admin-content { width: min(calc(100% - 1.5rem),1400px); padding-top: 2rem; }.admin-page-heading { align-items: flex-start; flex-direction: column; }.media-slot-admin,.moderation-card { grid-template-columns: 1fr; }.account-form { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .stat-grid,.quick-actions > div:last-child,.field-grid { grid-template-columns: 1fr; }.stat-grid article { min-height: 140px; }.admin-table th,.admin-table td { padding: .6rem; }.media-slot-admin > div:last-child { padding: .9rem; } }

.instagram-admin-grid { grid-template-columns: 1fr 1fr; }
.admin-action-row { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1rem; }
.admin-action-row form { margin: 0; }
.cron-command { display: block; margin-top: 1rem; padding: .8rem; overflow-wrap: anywhere; color: var(--gold); background: #090a0c; border: 1px solid var(--line); border-radius: 4px; font-size: .63rem; }
.instagram-admin-grid .global-message { margin: 1rem 0; }
.instagram-admin-grid code { color: var(--gold); }
@media (max-width: 900px) { .instagram-admin-grid { grid-template-columns: 1fr; } }
