:root {
  color-scheme: light;
  --ink:#171717; --muted:#6c6963; --paper:#f3efe7; --surface:#fff;
  --line:#d9d2c7; --accent:#9b711d; --accent-dark:#6d4d11; --danger:#a62d2d;
  --success:#286b40; --shadow:0 12px 30px rgba(20,18,15,.08);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box} html{background:var(--paper);color:var(--ink)} body{margin:0;min-height:100vh}
button,input,select{font:inherit} a{color:inherit}
.topbar{position:sticky;top:0;z-index:20;min-height:72px;display:flex;align-items:center;gap:20px;padding:10px 22px;color:#fff;background:#151515;border-bottom:1px solid #302f2d}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d6b56d;border-radius:50%;color:#d6b56d;font-family:Georgia,serif;font-size:24px}
.brand strong,.brand small{display:block}.brand small{color:#c7c3bb}.session{margin-left:auto;display:flex;align-items:center;gap:10px}
.layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 72px)}
.sidebar{padding:20px 12px;background:#252422;border-right:1px solid #363431}.sidebar a{display:block;padding:11px 14px;margin-bottom:4px;border-radius:7px;color:#e9e6df;text-decoration:none}.sidebar a:hover,.sidebar a.active{background:#3c3935;color:#fff}
.content{padding:28px;min-width:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:24px}.panel+.panel{margin-top:20px}
.page-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.page-header h1{margin:0 0 4px;font-family:Georgia,serif;font-weight:500}.page-header p{margin:0;color:var(--muted)}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.toolbar label{display:grid;gap:5px;color:var(--muted);font-size:.85rem}.toolbar input,.toolbar select{min-height:40px;border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:#fff}
.search{min-width:min(420px,100%);flex:1}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric{padding:18px;background:#faf8f4;border:1px solid var(--line);border-radius:10px}.metric small{display:block;color:var(--muted)}.metric strong{display:block;margin-top:8px;font-size:1.65rem}
.watch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px}.watch-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.watch-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#ece7dd}.watch-card-body{padding:15px}.watch-card h3{margin:0 0 4px;font-size:1.05rem}.watch-card p{margin:4px 0;color:var(--muted)}.watch-meta{display:flex;justify-content:space-between;gap:10px;margin-top:12px;font-size:.85rem}
.empty{padding:36px;text-align:center;color:var(--muted)}
.button{border:1px solid var(--accent-dark);border-radius:7px;padding:9px 14px;background:var(--accent);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}.button.secondary{background:transparent;border-color:#77736c;color:inherit}.topbar .button.secondary{color:#fff}.icon-button{border:0;background:transparent;color:inherit;font-size:1.4rem;cursor:pointer}#menuButton{display:none}
.badge{padding:5px 9px;border-radius:999px;background:#3a3835;font-size:.8rem}.hidden{display:none!important}.error{min-height:1.2em;color:var(--danger)}
.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.filter-grid label{display:grid;gap:5px;color:var(--muted);font-size:.85rem}.filter-grid select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:7px;padding:8px 10px;background:#fff}
.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px}.pagination-actions{display:flex;gap:8px}
dialog{width:min(430px,calc(100% - 30px));border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(0,0,0,.48)}.dialog-form header,.dialog-form footer{display:flex;align-items:center;gap:12px}.dialog-form header{justify-content:space-between}.dialog-form footer{justify-content:flex-end;margin-top:20px}.dialog-form label{display:grid;gap:6px;margin-top:16px;color:var(--muted)}.dialog-form input,.dialog-form select{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#fff}
.status-list{display:grid;gap:10px}.status-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.status-ok{color:var(--success)}.status-error{color:var(--danger)}
.toast-region{position:fixed;right:20px;bottom:20px;z-index:50}.toast{background:#151515;color:#fff;padding:12px 16px;border-radius:8px;box-shadow:var(--shadow)}
.timeline{border-left:2px solid var(--line);padding-left:20px}.timeline-item{position:relative;padding:0 0 22px}.timeline-item::before{content:"";position:absolute;left:-27px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--accent)}.timeline-item h3{margin:0}.timeline-item p{color:var(--muted)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.topbar{min-height:62px;padding:8px 12px}.brand small{display:none}#menuButton{display:inline-block;order:-1}.layout{display:block}.sidebar{display:none;position:fixed;inset:62px auto 0 0;z-index:15;width:240px}.sidebar.open{display:block}.content{padding:16px}.cards,.filter-grid{grid-template-columns:1fr}.status-row{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column}.watch-grid{grid-template-columns:1fr 1fr}}
@media(max-width:470px){.watch-grid{grid-template-columns:1fr}}

.detail-layout{display:grid;grid-template-columns:minmax(280px,44%) minmax(0,1fr);gap:24px}
.detail-hero{width:100%;aspect-ratio:1/1;object-fit:contain;background:#eee9df;border:1px solid var(--line);border-radius:12px}
.thumbnail-strip{display:flex;gap:8px;overflow:auto;margin-top:10px}
.thumbnail-strip button{border:1px solid var(--line);padding:0;border-radius:7px;background:#fff;cursor:pointer}
.thumbnail-strip img{display:block;width:72px;height:72px;object-fit:cover;border-radius:6px}
.detail-title{margin:0;font-family:Georgia,serif;font-size:2rem;font-weight:500}
.detail-subtitle{color:var(--muted);font-size:1.05rem}
.definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.definition-grid div{padding:10px 0;border-bottom:1px solid var(--line)}
.definition-grid dt{color:var(--muted);font-size:.82rem}.definition-grid dd{margin:4px 0 0}
.value-history{width:100%;border-collapse:collapse}
.value-history th,.value-history td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}
.value-history th{color:var(--muted);font-weight:500}
.card-link{display:block;text-decoration:none}
.card-link:focus .watch-card,.card-link:hover .watch-card{transform:translateY(-2px);box-shadow:0 16px 34px rgba(20,18,15,.13)}
.watch-card{transition:.18s ease}.back-link{display:inline-block;margin-bottom:14px;color:var(--accent-dark)}
@media(max-width:820px){.detail-layout{grid-template-columns:1fr}.definition-grid{grid-template-columns:1fr}}
/* Import Wizard */
.wizard-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;list-style:none;padding:0;margin:0 0 20px}.wizard-step{padding:10px;border:1px solid var(--border,#d8dee8);border-radius:8px;color:#667085;background:#f8fafc}.wizard-step.current{border-color:#2563eb;color:#174ea6;background:#eff6ff}.wizard-step.complete{color:#166534;background:#f0fdf4}.wizard-step span{display:block;font-size:.75rem}.dropzone{display:grid;place-items:center;gap:8px;min-height:150px;padding:24px;border:2px dashed #94a3b8;border-radius:12px;text-align:center;cursor:pointer;background:#f8fafc}.dropzone:focus,.dropzone.dragging{outline:3px solid #bfdbfe;border-color:#2563eb;background:#eff6ff}.wizard-option{display:block;margin-top:12px}.wizard-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.wizard-summary{padding:14px;border:1px solid var(--border,#d8dee8);border-radius:8px;background:#fff}.wizard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:18px 0}.wizard-metrics>div{padding:12px;border-radius:8px;background:#f1f5f9}.wizard-metrics strong{display:block;font-size:1.25rem}.wizard-metrics .metric-danger{background:#fef2f2;color:#991b1b}.wizard-metrics .metric-warning{background:#fffbeb;color:#92400e}.wizard-table-wrap{overflow:auto}.wizard-table{width:100%;border-collapse:collapse;min-width:720px}.wizard-table th,.wizard-table td{padding:9px;border-bottom:1px solid var(--border,#e5e7eb);text-align:left;vertical-align:top}.wizard-table th{font-size:.8rem;color:#475467;background:#f8fafc}.action-pill{display:inline-block;padding:3px 8px;border-radius:999px;font-size:.75rem;font-weight:600;background:#e2e8f0}.action-pill.new,.action-pill.action-new{background:#dcfce7;color:#166534}.action-pill.update,.action-pill.action-update{background:#dbeafe;color:#1e40af}.action-pill.invalid,.action-pill.duplicate,.action-pill.action-invalid,.action-pill.action-duplicate{background:#fee2e2;color:#991b1b}.action-pill.skipped,.action-pill.action-skipped{background:#fef3c7;color:#92400e}.wizard-messages{margin-top:14px}.message-list{margin:6px 0;padding-left:20px}.validation-row.error{color:#991b1b}.validation-row.warning{color:#92400e}.validation-row.information{color:#475467}.image-status-group{margin-top:16px}.image-result-list{display:grid;gap:6px;padding:0;list-style:none}.image-result-list li{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:4px 12px;padding:10px;border:1px solid var(--border,#e5e7eb);border-radius:8px}.image-result-list small{grid-column:1/-1}.confirmation{display:flex;gap:8px;align-items:flex-start;padding:14px;border:1px solid #f59e0b;border-radius:8px;background:#fffbeb}.wizard-links{display:flex;gap:16px;flex-wrap:wrap}.upload-progress{display:grid;gap:6px;margin-top:16px}.upload-progress progress{width:100%}.indeterminate{height:5px;overflow:hidden;background:#dbeafe;border-radius:3px}.indeterminate::after{content:"";display:block;width:35%;height:100%;background:#2563eb;animation:wizard-progress 1.2s infinite ease-in-out}@keyframes wizard-progress{from{transform:translateX(-100%)}to{transform:translateX(300%)}}@media(max-width:700px){.wizard-progress{grid-template-columns:1fr 1fr}.wizard-step:last-child{grid-column:1/-1}.wizard-actions{justify-content:stretch}.wizard-actions .button{flex:1}}

/* Administrator Console */
.admin-section-nav{position:sticky;top:82px;z-index:5;display:flex;gap:8px;overflow:auto;padding:10px;margin-bottom:20px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.admin-section-nav a{white-space:nowrap;padding:7px 10px;border-radius:6px;color:var(--accent-dark)}.admin-section-nav a:focus,.admin-section-nav a:hover{outline:2px solid var(--accent);outline-offset:1px}.admin-section{scroll-margin-top:150px}.admin-section h2{margin-top:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-heading p,.source-freshness{color:var(--muted)}.health-badge{padding:6px 10px;border:1px solid currentColor;border-radius:999px;text-transform:capitalize}.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:16px}.admin-metrics>div{min-width:0;padding:13px;border:1px solid var(--line);border-radius:9px;background:#faf8f4}.admin-metrics small{display:block;color:var(--muted);text-transform:capitalize}.admin-metrics strong{display:block;margin-top:6px;overflow-wrap:anywhere;font-size:1.08rem}.admin-toolbar{margin:16px 0}.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px}.admin-table{width:100%;min-width:760px;border-collapse:collapse}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{position:sticky;top:0;background:#f7f3ec;color:var(--muted);font-size:.82rem}.admin-table td:last-child{min-width:180px}.admin-diagnostic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.diagnostic-list{display:grid;gap:8px;padding:0;list-style:none}.diagnostic-list li{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:8px}.diagnostic-list span{color:var(--muted);overflow-wrap:anywhere}.empty.compact{padding:14px}.admin-section button:focus-visible,.admin-section a:focus-visible,.admin-section input:focus-visible,.admin-section select:focus-visible{outline:3px solid #d6b56d;outline-offset:2px}@media(max-width:900px){.admin-diagnostic-grid{grid-template-columns:1fr}.admin-section-nav{top:70px}}@media(max-width:700px){.admin-section-nav{top:66px}.admin-metrics{grid-template-columns:1fr 1fr}.section-heading{align-items:flex-start;flex-direction:column}}@media(max-width:470px){.admin-metrics{grid-template-columns:1fr}}

/* Watch Editor */
.watch-editor{display:grid;gap:18px}.editor-sticky{position:sticky;top:72px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.editor-nav{display:flex;gap:8px;overflow:auto}.editor-nav a{white-space:nowrap}.watch-editor fieldset,.editor-related{scroll-margin-top:145px;border:1px solid var(--line);border-radius:10px;padding:18px;background:var(--surface)}.watch-editor legend{padding:0 7px;font-weight:700}.editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.editor-grid label{display:grid;gap:6px}.editor-grid textarea{min-height:90px}.child-form{margin-bottom:18px}.editor-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.editor-images article{padding:10px;border:1px solid var(--line);border-radius:9px}.editor-images img{width:100%;aspect-ratio:1;object-fit:cover}.editor-images article div{display:flex;flex-wrap:wrap;gap:5px}.audit-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.audit-compare pre{overflow:auto;max-height:320px;padding:10px;background:#f7f3ec}.warning-list{color:#805b00}.button.danger{background:#8b2525;color:white}.detail-actions{display:flex;justify-content:flex-end;margin-bottom:10px}@media(max-width:850px){.editor-grid{grid-template-columns:1fr 1fr}.audit-compare{grid-template-columns:1fr}}@media(max-width:560px){.editor-grid{grid-template-columns:1fr}.editor-sticky{top:62px;align-items:flex-start;flex-direction:column}}

/* Reports and Analytics */
.analytics-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;align-items:end}.analytics-filters label{display:grid;gap:5px}.analytics-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0}.analytics-metrics article{padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.analytics-metrics small{display:block;color:var(--muted);text-transform:capitalize}.analytics-metrics strong{display:block;margin-top:7px;font-size:1.25rem}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.analytics-chart>div>div{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,3fr) auto;gap:10px;align-items:center;margin:9px 0}.analytics-chart i{display:block;width:var(--bar);height:12px;border-radius:3px;background:var(--accent)}.analytics-chart b{font-size:.82rem}.report-form{display:grid;gap:18px}.report-job{margin-top:20px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#faf8f4}@media(max-width:760px){.analytics-grid{grid-template-columns:1fr}.analytics-chart>div>div{grid-template-columns:minmax(80px,1fr) minmax(80px,2fr) auto}}

:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.watch-card img,.detail-hero,.editor-images img{background:linear-gradient(110deg,#eee 8%,#f7f7f7 18%,#eee 33%);object-fit:contain}.responsive-table{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
