@font-face{font-family:Inter;src:url('/assets/fonts/Inter-Variable.ttf')}@font-face{font-family:Rajdhani;src:url('/assets/fonts/Rajdhani-Bold.ttf');font-weight:700}*{box-sizing:border-box} :root{color-scheme:dark;--bg:#090e17;--panel:#111a29;--panel2:#162236;--line:#2b3950;--muted:#adbbd0;--text:#edf3ff;--gold:#edc774;--blue:#7db9ff;--green:#86dfbb;--red:#ffb2a8}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 Inter,system-ui,sans-serif}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a.button{min-height:42px;padding:8px 16px;border:1px solid var(--line);border-radius:7px;background:#19263a;color:var(--text);cursor:pointer;font-weight:600;text-align:center;transition:background .15s}button:hover,a.button:hover{background:#253753;text-decoration:none}button:disabled{opacity:.55;cursor:not-allowed}button.primary,a.primary{background:var(--gold);border-color:var(--gold);color:#111722}button.primary:hover,a.primary:hover{background:#ffdb8e}button.danger{border-color:#a45e60;color:#ffc0b7}button.text-button{background:none;border-color:transparent;color:var(--muted)}button.small{font-size:13px;padding:5px 10px;min-height:34px}button.icon-button{font-size:26px;padding:0 12px;background:transparent;border:none}input,textarea,select{width:100%;background:#0b1321;border:1px solid #43516a;border-radius:6px;padding:10px 12px;color:var(--text);min-height:44px}textarea{resize:vertical}input[type=checkbox]{width:18px;min-height:18px;height:18px;accent-color:var(--gold);flex-shrink:0}input[type=range]{padding:0}input:read-only{color:var(--muted)}:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}.skip{position:fixed;left:16px;top:-80px;z-index:99;background:var(--gold);color:#101725;padding:12px}.skip:focus{top:12px}.gold{color:var(--gold)}.muted,small,.quiet{color:var(--muted)}small{font-size:12px}.brand{display:flex;gap:10px;align-items:center;color:var(--text);font-family:Rajdhani,sans-serif;font-size:23px;font-weight:700;line-height:1.1;letter-spacing:1px}.brand:hover{text-decoration:none}.brand img{object-fit:contain}.brand small{display:block;font:10px/1.8 Inter,sans-serif;letter-spacing:2.6px;margin-top:6px}.app-shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#0d1522}.nav-label{font-size:10px;color:#8e9db4;letter-spacing:2px;margin:40px 12px 12px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{padding:10px 14px;border-radius:6px;color:#bdcbe0;font-size:14px}.sidebar nav a:hover{background:#17263b;text-decoration:none}.sidebar nav a[aria-current=page]{background:#22324b;color:#f8d68f;border-left:3px solid var(--gold);padding-left:11px}.sidebar-bottom{margin-top:auto;padding-top:28px;font-size:12px}.sidebar-bottom p{color:#8293ac}.main-shell{min-width:0}.app-top{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid var(--line)}.workspace-name{color:var(--muted);font-size:13px}.toolbar,.actions,.dialog-actions,.section-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.section-heading{justify-content:space-between;margin-bottom:20px}.section-heading h2,.section-heading h3{margin:0}.toolbar input{width:auto}.toolbar .field{min-width:160px}.app-top .toolbar{font-size:13px}main{max-width:1640px;margin:auto;padding:32px 36px 60px;min-height:calc(100vh - 135px)}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin-bottom:12px;font-weight:650}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:17px}p{margin-bottom:16px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase;color:var(--gold);margin-bottom:10px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.page-heading p{color:var(--muted);max-width:700px;margin:0}.page-heading .actions{flex-shrink:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:22px}.panel.subtle{background:#0e1725}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metric{padding:20px;background:linear-gradient(135deg,#162338,#101a29);border:1px solid var(--line);border-radius:9px}.metric strong{display:block;font-size:34px;line-height:1.3;font-weight:600;letter-spacing:-1px}.metric span{color:#b9c7dc;font-size:12px}.metric small{display:block;font-size:10px;line-height:1.4;margin-top:5px}.notice{border:1px solid #5d5138;background:#252116;color:#ecd69e;border-radius:8px;padding:16px 18px;margin:18px 0;font-size:14px}.notice strong{display:block;margin-bottom:3px}.info{background:#122138;border-color:#314e74;color:#bcd9ff}.badge{display:inline-flex;align-items:center;border:1px solid #48546a;background:#1c293d;color:#ccd7e8;border-radius:20px;font-size:11px;line-height:1.5;padding:3px 10px;font-weight:600;white-space:nowrap}.badge.good{color:#9bf0c7;border-color:#376953;background:#132e27}.badge.warn{color:#f3d28a;border-color:#6c5830;background:#302716}.badge.bad{color:#ffc0b7;border-color:#704443;background:#342024}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;font-size:13px}.field>span{font-weight:600;color:#d8e2f2}.field small{line-height:1.5;font-size:12px}.check{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:14px}.check small{display:block;line-height:1.5}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.span-2{grid-column:1/-1}.role-list{max-height:300px;overflow:auto;padding:8px 14px;border:1px solid var(--line);border-radius:7px;background:#0c1523}.role-list .check{margin:12px 0}.role-list small{font-family:monospace;font-size:11px}.empty{text-align:center;padding:40px 20px;border:1px dashed #37465c;border-radius:9px;color:var(--muted)}.empty strong{color:var(--text);font-weight:600}.empty p{margin:8px auto 0;max-width:500px;font-size:13px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:normal;text-align:left;font-size:13px}th{font-size:10px;color:#a7b6cd;letter-spacing:1px;text-transform:uppercase;font-weight:600;border-bottom:1px solid var(--line);padding:12px 12px 15px}td{padding:16px 12px;border-bottom:1px solid #243146;vertical-align:middle}tr:last-child td{border-bottom:0}td small{display:block}td code{font-size:11px;color:#b9c9df}td .actions{gap:6px;flex-wrap:nowrap}td img{width:54px;height:46px;object-fit:cover;border-radius:5px}.title-cell{display:flex;align-items:center;gap:12px;min-width:160px}.title-cell strong{font-size:14px}.steps{display:flex;gap:6px;overflow:auto;margin:0 0 24px;padding-bottom:4px}.steps button{font-size:12px;white-space:nowrap;min-height:42px;background:transparent;color:#aabbd2;padding:8px 12px;border-color:transparent}.steps button span{display:inline-grid;place-items:center;border:1px solid #4b5b70;width:22px;height:22px;border-radius:50%;margin-right:6px;font-size:10px}.steps button[aria-current=step]{background:#25354b;color:var(--gold);border-color:#46536a}.editor-heading{margin-bottom:18px}.save-state{font-size:12px;color:var(--green)}.save-state.error{color:var(--red)}.editor-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.code-block{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 ui-monospace,monospace;padding:18px;background:#080f1c;border:1px solid #2b3d58;border-radius:7px;max-height:350px;overflow:auto}.source-text{font:12px/1.7 ui-monospace,monospace;min-height:250px}.display-preview{background:#080b0a;border:8px solid #263036;outline:1px solid #4c565c;border-radius:8px;min-height:150px;width:270px;max-width:100%;display:grid;place-items:center;text-align:center;padding:20px;margin:24px 0;box-shadow:0 10px 25px #0004;font:18px/1.6 monospace;color:#c5f8ee}.display-preview small{font:9px/1.5 monospace;color:#a5d3c9;display:block}.upload-zone{padding:35px;border:1px dashed #7083a0;border-radius:9px;background:#0c1728;text-align:center}.upload-zone.drag{background:#233852;border-color:var(--gold)}.upload-zone input{max-width:420px;display:block;margin:16px auto 0}.art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;margin-top:20px}.art-tile{border:1px solid var(--line);padding:12px;border-radius:8px;background:#0c1524}.art-tile img{width:100%;height:125px;object-fit:contain;background:#080d15;border-radius:4px}.art-tile label{font-size:12px}.art-tile .actions{gap:5px;margin-top:8px}.art-tile .small{font-size:11px;padding:4px 8px}.crop-canvas{display:block;max-width:100%;max-height:360px;margin:16px auto;background:#060b11;touch-action:none;cursor:move}.progress{width:100%;height:8px;accent-color:var(--gold)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.catalog-card{background:#111b2c;border:1px solid #31405a;border-radius:10px;overflow:hidden;min-width:0}.catalog-card>img,.no-art{width:100%;height:200px;object-fit:cover;background:#0c1422}.no-art{display:grid;place-items:center;border-bottom:1px solid #29374c;color:#8b9ab0;font-size:12px}.card-body{padding:20px}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:17px}.card-body h3{font-size:22px;margin-bottom:10px}.card-body p{font-size:13px;color:#b8c6db}.card-body .eyebrow{font-size:10px;color:#d8bc7d}.card-actions{padding:0 20px 20px;display:flex;gap:8px}.catalog-card.preview{max-width:390px}.preview-layout{display:grid;grid-template-columns:minmax(260px,390px) minmax(0,1fr);gap:28px}.validation-list{list-style:none;margin:0;padding:0}.validation-list li{padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:14px;align-items:flex-start}.validation-list p{margin:0;font-size:13px;color:var(--muted)}.validation-list strong{font-size:14px;display:block;color:var(--text)}.activity-list{list-style:none;padding:0;margin:0}.activity-list li{border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.activity-list small{display:block;font-size:11px}.avatar{border-radius:50%;width:48px;height:48px}.profile-heading{display:flex;gap:16px;align-items:center}.app-footer{margin:0 36px;padding:20px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:1px;color:#93a4bc}.app-footer>span:first-child{font-family:Rajdhani;font-size:15px;color:var(--gold)}dialog{width:min(700px,calc(100% - 30px));max-height:90vh;overflow:auto;background:#131e30;color:var(--text);border:1px solid #475c7e;border-radius:12px;padding:28px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#030813c9;backdrop-filter:blur(5px)}.dialog-actions{justify-content:flex-end;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.error-text{color:var(--red);font-size:13px}.toast{position:fixed;right:24px;bottom:24px;max-width:min(560px,calc(100% - 48px));padding:16px 20px;border:1px solid #56715f;background:#172e26;color:#bdebd1;border-radius:9px;box-shadow:0 12px 40px #0008;z-index:100;font-size:14px}.toast.error{background:#362526;border-color:#82545a;color:#ffd1c9}details{border:1px solid var(--line);border-radius:8px;padding:16px;margin:16px 0}summary{cursor:pointer;font-weight:600;font-size:14px}.key-values{display:grid;gap:0;margin:0}.key-values>div{display:grid;grid-template-columns:45% minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.key-values dt{color:var(--muted)}.key-values dd{margin:0;overflow-wrap:anywhere}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0}.filters .field{margin:0;min-width:150px}.filters .field:first-child{flex:1}.gallery{display:flex;gap:12px;overflow:auto}.gallery img{width:180px;height:120px;object-fit:cover;border-radius:6px}.library-top{height:80px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.library-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px}.library-layout .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-intro{padding:18px 0 26px;margin-bottom:18px}.member-intro h1{font-size:42px;max-width:700px}.member-intro p{max-width:700px;color:var(--muted)}.device-panel{position:sticky;top:20px;align-self:start;font-size:13px}.device-panel h2{font-size:18px}.device-panel details{padding:0;border:none}.device-panel .key-values>div{grid-template-columns:45% minmax(0,1fr);font-size:11px}.installation-receipt{border-left:3px solid var(--gold);background:#1e2633;padding:18px;font-size:13px;margin:16px 0}.history-list{list-style:none;padding:0}.history-list li{padding:16px 0;border-bottom:1px solid var(--line)}@media(min-width:1600px){.library-layout .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1200px){.app-shell{grid-template-columns:200px minmax(0,1fr)}.sidebar{padding:25px 14px}.brand{font-size:20px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:28px 24px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.library-layout{grid-template-columns:minmax(0,1fr) 290px}.library-layout .catalog-grid{grid-template-columns:1fr}}@media(max-width:850px){.app-shell{display:block}.sidebar{height:auto;position:static;padding:18px 20px;border-right:0;border-bottom:1px solid var(--line)}.sidebar nav{display:flex;overflow:auto;margin-top:18px}.sidebar nav a{white-space:nowrap}.nav-label,.sidebar-bottom{display:none}.app-top{height:60px;padding:0 20px}.grid-2,.preview-layout{grid-template-columns:1fr}.page-heading{flex-direction:column}.library-layout{grid-template-columns:1fr}.library-layout .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-panel{position:static}.member-intro h1{font-size:34px}}@media(max-width:560px){body{font-size:14px}main{padding:24px 16px 40px}.app-top .workspace-name{display:none}.app-top{justify-content:flex-end}.panel{padding:18px}.metrics{gap:10px}.metric{padding:16px}.metric strong{font-size:28px}.fields,.grid-3,.catalog-grid,.library-layout .catalog-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.app-footer{margin:0 16px;flex-direction:column}.library-top{height:auto;gap:15px;flex-wrap:wrap;padding:16px}.brand{font-size:21px}.section-heading{gap:12px}.page-heading h1{font-size:29px}.toolbar input{max-width:100%}.dialog-actions{flex-wrap:nowrap}.filters .field{min-width:120px}.editor-footer{align-items:flex-start;flex-direction:column}dialog{padding:20px}.member-intro h1{font-size:32px}.catalog-card>img,.no-art{height:210px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.detail-banner{width:100%;max-height:200px;object-fit:cover;border-radius:7px;margin-bottom:20px}.preserve-lines{white-space:pre-wrap}

/* Integrated administration: task-first navigation and guided editing. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.admin-body{--bg:#0b1018;--panel:#121b28;--panel2:#182333;--line:#2b384b;--muted:#b1bdd0;background:var(--bg)}
.admin-body .app-shell{grid-template-columns:240px minmax(0,1fr)}
.admin-body .sidebar{padding:30px 18px 22px;background:#0e1520;overflow-y:auto}
.sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-body .brand{font-size:22px;letter-spacing:.7px}
.admin-body .brand small{font-size:9px;letter-spacing:2.2px;color:#a4b3c8}
.admin-body .sidebar nav{gap:5px}
.admin-body .nav-label{margin:30px 13px 8px;font-size:10px;letter-spacing:1.8px;color:#a0adc0}
.admin-body .sidebar nav a{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 13px;font-size:14px;border:1px solid transparent}
.admin-body .sidebar nav a svg{width:19px;height:19px;flex:none;opacity:.85}
.admin-body .sidebar nav a[aria-current=page]{border:1px solid #5a4e37;background:#29271f;color:#f5d690;padding-left:13px}
.admin-body .sidebar nav a:hover{background:#1b2636}
.admin-body .sidebar-bottom{font-size:13px;border-top:1px solid var(--line);margin-top:auto;padding:22px 12px 0}
.admin-body .sidebar-bottom p{font-size:12px;line-height:1.6;margin:8px 0 0;color:#a5b3c8}
.mobile-menu{display:none}
.admin-body .app-top{height:72px;padding:0 36px;background:#0d141e;border-bottom:1px solid var(--line)}
.workspace-name{display:flex;align-items:center;gap:12px}
.workspace-name strong{color:#d4dfef;font-weight:500}
.account-dot{border:1px solid #47576e;background:#1b283a;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:10px;color:#f3d28a}
.admin-body main{padding:36px 36px 52px;max-width:1500px}
.admin-body .page-heading{align-items:center;margin-bottom:28px}
.admin-body .page-heading .eyebrow{display:none}
.admin-body h1{font-size:30px;letter-spacing:-.8px;margin-bottom:10px;line-height:1.25}
.admin-body h2{font-size:19px;line-height:1.4}
.admin-body h3{font-size:16px}
.admin-body .page-heading p{font-size:14px;line-height:1.7;max-width:620px}
.admin-body button,.admin-body a.button{border-radius:8px;font-size:14px;min-height:42px}
.admin-body button.small,.admin-body a.small{font-size:13px;min-height:36px;padding:7px 12px}
.admin-body .panel{border-radius:12px;box-shadow:0 4px 16px #00000012}
.admin-body .field{font-size:14px}
.admin-body .field small{font-size:12px}
.admin-body small{line-height:1.6}
.admin-body .badge{font-size:12px}
.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.task-card{display:flex;flex-direction:column;align-items:flex-start;padding:24px;background:linear-gradient(145deg,#182434,#121b28);border:1px solid #39465a;border-radius:12px;color:var(--text);transition:border-color .15s,background .15s}
.task-card:hover{border-color:#d3b46b;background:#1a2738;text-decoration:none}
.task-symbol{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#363022;color:#f4d78e;font-size:12px;font-weight:600;margin-bottom:18px}
.task-card strong{font-size:17px;margin-bottom:8px;line-height:1.4}
.task-card>span:not(.task-symbol){color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:18px}
.task-card b{font-size:13px;color:#f0cf86;margin-top:auto;font-weight:500}
.status-strip{display:flex;align-items:center;gap:14px;background:#211f19;border:1px solid #544932;border-radius:9px;padding:16px 20px;margin:24px 0}
.status-strip strong,.status-strip span:not(.status-dot){display:block;font-size:13px}
.status-strip strong{color:#eed08b;font-weight:600;margin-bottom:3px}
.status-strip span:not(.status-dot){color:#d5c8ad}
.status-strip>a{margin-left:auto;white-space:nowrap;color:#ecd096;font-size:13px}
.status-dot{width:8px;height:8px;background:#e4c173;border-radius:50%;flex:none}
.admin-body .metrics{gap:16px}
.admin-body .metric{padding:20px;background:#101924;border-radius:10px;display:flex;flex-direction:column}
.admin-body .metric>span{font-size:13px;color:#cad5e6}
.admin-body .metric strong{font-size:29px;margin:9px 0 6px;line-height:1.2}
.admin-body .metric small{font-size:12px;color:#a9b8ce}
.next-step{display:flex;gap:14px;padding:20px 0;border-top:1px solid var(--line)}
.next-step:first-of-type{border-top:0;padding-top:0}
.step-dot{width:27px;height:27px;display:grid;place-items:center;flex:none;border:1px solid #536176;border-radius:50%;font-size:12px;color:#f0d08a}
.next-step>div{min-width:0;flex:1}
.next-step strong{font-size:14px}
.next-step p{font-size:13px;color:var(--muted);margin:6px 0 10px}
.next-step a{font-size:13px}
.draft-link{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.draft-link span{color:var(--muted);font-size:12px;white-space:nowrap}
.record-summary{display:grid;gap:8px;padding-top:20px;font-size:12px}
.admin-body .activity-list li{font-size:13px;padding:14px 0}
.admin-body .activity-list small{font-size:12px;color:#aebbd0}
.admin-body th{font-size:11px;letter-spacing:.5px;color:#b1bed1;padding:12px 12px}
.admin-body td{padding:20px 12px;font-size:14px}
.admin-body td small{font-size:12px;max-width:320px;margin-top:4px}
.admin-body .title-cell strong{font-size:15px}
.admin-body .title-cell img{height:52px;width:64px;border:1px solid #3b4960}
.art-placeholder{display:grid;place-items:center;width:64px;height:52px;background:#1e2a3b;border:1px dashed #4b5a70;border-radius:6px;font-size:12px;color:#b1bfd2;flex:none}
.row-actions{display:flex;gap:8px;align-items:flex-start}
.row-actions>a{white-space:nowrap}
.row-menu{padding:0;margin:0;border:0;min-width:90px}
.row-menu summary{border:1px solid var(--line);padding:7px 12px;border-radius:7px;min-height:36px;font-size:13px;background:#19263a;white-space:nowrap}
.row-menu>div{display:grid;gap:4px;padding-top:8px;min-width:145px}
.row-menu>div a{font-size:13px;padding:8px}
.row-menu button{width:100%}
.empty-action{display:flex;justify-content:center;margin:20px}
.access-explainer{display:grid;grid-template-columns:1fr 1fr;gap:28px;border:1px solid var(--line);border-radius:10px;padding:22px;margin-bottom:24px;background:#101a28}
.access-explainer>div{display:flex;gap:14px}
.access-explainer p{margin:0;font-size:13px;color:var(--muted)}
.access-explainer strong{display:block;font-size:14px;color:var(--text);margin-bottom:6px}
.help-note{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0}
.customer-picker{padding:16px;border:1px solid var(--line);border-radius:8px;background:#0e1725;margin-bottom:18px}
.customer-picker .field{margin-bottom:0}
.customer-choice{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;text-align:left;margin-top:8px}
.customer-choice strong{font-size:13px}
.customer-choice small{font-size:11px}
#rule-customer-results:not(:empty){margin-top:10px;font-size:13px}
.settings-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:24px}
.settings-details>summary>span, .editor-panel details>summary>span{display:block;font-size:12px;font-weight:400;margin-top:3px}
.settings-details[open]>summary,.editor-panel details[open]>summary{margin-bottom:20px}
.settings-details{background:#101925;padding:20px 24px}
.settings-save{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;bottom:0;padding:18px 22px;background:#182332;border:1px solid #3e4f67;border-radius:10px;z-index:3}
.settings-save>span{font-size:13px;color:#c4d1e3}
.admin-body .role-list{max-height:280px;padding:10px 16px}
.admin-body .role-list .check{padding:5px 0;margin:5px 0}
.back-link{display:inline-block;font-size:13px;color:#b5c4da;margin:0 0 20px}
.editor-save{display:flex;gap:16px;align-items:center}
.editor-heading .toolbar{font-size:12px;gap:10px}
.admin-body .save-state{font-size:12px}
.editor-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}
.admin-body .steps{display:flex;flex-direction:column;margin:0;overflow:visible;position:sticky;top:24px;gap:5px;padding:0}
.admin-body .steps button{display:flex;align-items:center;gap:10px;text-align:left;padding:13px 10px;white-space:normal;border:1px solid transparent;color:#b4c2d5;border-radius:8px}
.admin-body .steps .step-number{margin:0;width:25px;height:25px;border:1px solid #4a5c75;font-size:11px;flex:none}
.admin-body .steps button strong{font-weight:500;font-size:14px;display:block}
.admin-body .steps button small{font-size:11px;display:block;color:#a8b9d0}
.admin-body .steps button[aria-current=step]{background:#27251f;border-color:#5b4e32;color:#f4d58f}
.admin-body .steps button[aria-current=step] .step-number{background:#e6c371;color:#111721;border-color:#e6c371;font-weight:700}
.admin-body .steps .help-note{padding:10px;font-size:11px}
.editor-panel{min-width:0;padding:28px!important}
.step-heading{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}
.step-heading .eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:8px}
.step-heading h2{font-size:23px;margin-bottom:6px}
.step-heading>p:last-child{margin:0;color:var(--muted);font-size:13px;max-width:650px}
.editor-panel details{background:#101925}
.editor-panel details summary{font-size:14px}
.editor-panel .fields{gap:0 20px}
.editor-panel .field{margin-bottom:20px}
.editor-panel .preview-layout{grid-template-columns:minmax(230px,310px) minmax(0,1fr);gap:24px}
.release-controls{margin-left:214px}
.release-controls details{background:#101925;padding:20px}
.release-controls details[open]>summary{margin-bottom:18px}
.upload-symbol{display:block;margin:0 auto 14px;font-size:26px;color:#eed18a}
.admin-body .upload-zone{padding:28px 20px;background:#101b2a;border:1px dashed #657996}
.admin-body .upload-zone strong{display:block;font-size:16px}
.admin-body .upload-zone p{font-size:13px;margin:8px 0}
.admin-body .upload-zone input{font-size:13px;max-width:100%;margin-top:18px}
.admin-body input[type=file]::file-selector-button{background:#28384e;color:#e9f1ff;border:1px solid #60738f;border-radius:6px;padding:8px 12px;margin-right:12px;cursor:pointer;font:inherit}
.source-summary{padding:16px 0;color:#c5d2e5;font-size:13px}
.admin-body .art-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.admin-body .art-tile{padding:14px}
.admin-body .art-tile>p{font-size:13px;margin:12px 0 4px}
.admin-body .art-tile>small{font-size:11px}
.admin-body .art-tile img{height:160px}
.admin-body .art-tile details{padding:12px;margin:12px 0 0}
.admin-body .art-tile details summary{font-size:12px}
.admin-body .art-tile .actions{flex-wrap:wrap}
.admin-body .art-tile .small{font-size:12px;padding:6px 10px}
.display-example{padding:22px;background:#0c141e;border:1px solid var(--line);border-radius:9px}
.display-example .display-preview{margin:20px auto;max-width:100%;width:250px;font-size:16px}
.inline-help{border-left:2px solid var(--gold);padding:6px 0 6px 18px;margin:24px 0;font-size:13px}
.inline-help p{color:var(--muted);margin:6px 0}
.validation-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;border-radius:8px;padding:15px 18px;margin:20px 0;font-size:13px}
.validation-summary.passed{background:#132b24;border:1px solid #3b6958;color:#adebcf}
.validation-summary.needs-work{background:#2c2519;border:1px solid #6f5a35;color:#f0d18e}
.validation-list li>div{flex:1;min-width:0}
.validation-list li small{display:block;font-size:11px;margin-top:5px}
.publish-summary{max-width:650px}
.publish-summary .key-values{margin-bottom:20px}
.publish-summary>.primary{margin-bottom:10px}
.admin-body .key-values>div{font-size:13px}
.admin-body .key-values dd small{display:block;margin-top:4px;font-size:12px}
.diagnostic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.diagnostic-grid .panel{min-width:0;font-size:13px;padding:22px}
.diagnostic-grid h2{font-size:18px}
.diagnostic-grid .badge{margin-bottom:14px}
.diagnostic-grid .key-values>div{grid-template-columns:1fr;font-size:12px;gap:6px}
.diagnostic-grid .key-values .badge{margin:0}
.admin-body .app-footer{font-size:11px;letter-spacing:.3px;border-top:1px solid var(--line)}
.admin-body .app-footer a{color:#b8c5d8}
@media(max-width:1200px){
 .admin-body .app-shell{grid-template-columns:218px minmax(0,1fr)}
 .admin-body .brand{font-size:20px}.admin-body .brand img{width:32px;height:32px}
 .admin-body main{padding:28px 24px 45px}.admin-body .app-top{padding:0 24px}
 .task-card{padding:20px}.task-card strong{font-size:15px}
 .editor-layout{grid-template-columns:168px minmax(0,1fr);gap:20px}.release-controls{margin-left:188px}
 .editor-panel .preview-layout{grid-template-columns:1fr}
 .diagnostic-grid{grid-template-columns:1fr}.diagnostic-grid .key-values>div{grid-template-columns:1fr 1fr}
 .settings-layout{grid-template-columns:1fr}
}
@media(max-width:1000px){
 .task-grid{grid-template-columns:1fr}.task-card{padding:20px;display:grid;grid-template-columns:40px 1fr;gap:4px 16px}
 .task-symbol{grid-row:1/4;margin:0}.task-card strong{margin:0;font-size:16px}.task-card>span:not(.task-symbol){margin:0}.task-card b{grid-column:2;margin-top:8px}
 .editor-layout{grid-template-columns:1fr}.release-controls{margin-left:0}
 .admin-body .steps{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .admin-body .steps button{padding:9px 7px;gap:6px}.admin-body .steps button strong{font-size:12px}.admin-body .steps button small,.admin-body .steps .help-note{display:none}
 .admin-body .steps .step-number{width:21px;height:21px}
}
@media(max-width:850px){
 .admin-body .app-shell{display:block}.admin-body .sidebar{height:auto;position:static;padding:16px 20px;overflow:visible}
 .admin-body .sidebar nav{display:none;margin:16px 0 0;overflow:visible}
 .admin-body .sidebar nav.mobile-open{display:grid;grid-template-columns:1fr 1fr}
 .admin-body .nav-label{display:block;grid-column:1/-1;margin:15px 12px 5px}
 .admin-body .sidebar nav a{white-space:normal;font-size:13px}
 .mobile-menu{display:inline-flex;align-items:center;min-height:40px;padding:7px 14px}
 .admin-body .sidebar-bottom{display:none}.admin-body .app-top{height:58px}
 .admin-body .page-heading{align-items:flex-start}
 .access-explainer{grid-template-columns:1fr;gap:20px}
 .status-strip{flex-wrap:wrap}.status-strip>div{flex:1}.status-strip>a{margin-left:22px}
 .editor-heading{gap:16px}.editor-save{width:100%;justify-content:space-between}
 .editor-panel .preview-layout{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .admin-body main{padding:24px 16px 36px}.admin-body .app-top{padding:0 16px;justify-content:space-between}
 .admin-body .workspace-name{display:block;font-size:0}.workspace-name strong{font-size:12px}
 .admin-body .app-top .toolbar{gap:6px}.account-dot{display:none}#account-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .admin-body .page-heading h1{font-size:27px}.admin-body .page-heading .actions{width:100%}
 .admin-body .metrics{grid-template-columns:1fr 1fr;gap:12px}.admin-body .metric{padding:16px}.admin-body .metric small{font-size:11px}
 .admin-body .metric>span{font-size:12px}.task-card{padding:18px}.task-card>span:not(.task-symbol){font-size:13px}
 .admin-body .panel{padding:18px}.admin-body .table-scroll table{min-width:560px}
 .status-strip{padding:14px 16px}.status-strip span:not(.status-dot){font-size:12px}
 .editor-panel{padding:20px 16px!important}.admin-body .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-body .steps button{padding:9px 10px}.admin-body .steps button strong{font-size:13px}
 .editor-panel .preview-layout{grid-template-columns:1fr}.release-controls details{padding:16px}
 .admin-body .editor-footer{align-items:stretch}.editor-footer .actions{justify-content:space-between}
 .settings-save{padding:14px}.settings-save span{font-size:12px}
 .admin-body .customer-choice{flex-direction:column;align-items:flex-start;gap:0}
 .validation-summary{align-items:flex-start;flex-direction:column;gap:5px}
 .validation-list li{gap:8px;flex-wrap:wrap}.validation-list .badge{font-size:10px}
 .admin-body .art-grid{grid-template-columns:1fr}.admin-body .upload-zone{padding:22px 12px}
}

.admin-body main:focus{outline:none}.admin-body .table-scroll{position:relative}.admin-body .row-menu summary{position:relative}

@media(max-width:560px){
 #catalog-table table{min-width:0}
 #catalog-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 #catalog-table tr{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding:20px 0;border-bottom:1px solid var(--line)}
 #catalog-table tr:last-child{border-bottom:0}
 #catalog-table td{padding:0;border:0;min-width:0}
 #catalog-table td:first-child,#catalog-table td:last-child{grid-column:1/-1}
 #catalog-table td:nth-child(3)::before{content:'Draft version';display:block;font-size:11px;color:var(--muted);margin-bottom:5px}
 #catalog-table .title-cell{min-width:0}
 #catalog-table .row-actions>a{flex:1}
 #catalog-table .row-actions .row-menu{min-width:100px}
 #catalog-table .title-cell strong{font-size:15px}
}

.toast{display:flex;align-items:flex-start;gap:14px}.toast>span{flex:1}.toast>button{background:transparent;color:inherit;border:0;min-height:28px;min-width:28px;padding:0;font-size:22px;line-height:1}.toast>button:hover{background:#ffffff15}

.admin-body p a:not(.button){text-decoration:underline;text-underline-offset:3px}

/* Existing device workspace: real selection, unknown contents, no simulated slot state. */
.memory-manager{padding:0;border:0;min-width:0;margin:24px 0 10px}
.memory-manager legend{font-size:15px;font-weight:600;margin-bottom:14px}
.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.memory-slot{position:relative;display:grid;grid-template-columns:30px 1fr;align-items:center;gap:4px 8px;min-height:85px;padding:12px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#ffffff05,#ffffff01);cursor:pointer;transition:border-color .15s,background .15s}
.memory-slot input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:inherit}
.memory-slot .slot-number{grid-row:1/3;color:var(--muted);font-size:18px;font-weight:600;letter-spacing:-.04em}
.memory-slot strong{font-size:14px}.memory-slot small{font-size:11px;color:var(--muted);line-height:1.4}
.memory-slot:has(input:checked){border-color:#d8b46b;background:#c9a95e12;box-shadow:inset 0 0 0 1px #d8b46b55}
.memory-slot:has(input:checked) .slot-number{color:#e8c98a}
.memory-slot:has(input:focus-visible){outline:3px solid #e8c98a;outline-offset:3px}
.memory-slot:has(input:disabled){opacity:.55;cursor:not-allowed}
.memory-slot:hover:not(:has(input:disabled)){border-color:#a29375}
.slot-selection{font-size:13px;line-height:1.6;color:#e3c48b;min-height:1.6em}
.release-scope{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#ffffff03}
.release-scope .field{margin-bottom:10px}.version-choices{border:0;padding:0;margin:12px 0;max-height:240px;overflow:auto}
.version-choices legend{font-size:13px;margin-bottom:10px}.version-choices .check{margin:8px 0;min-height:36px}
@media(prefers-reduced-motion:reduce){.memory-slot{transition:none}}

.diagnostics-panel{margin-top:24px}.diagnostics-panel summary{font-size:16px;font-weight:600}
.diagnostics-panel .key-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}
.diagnostics-panel .key-values>div{min-width:0;align-items:start}
.diagnostics-panel .key-values dd{white-space:pre-line;overflow-wrap:anywhere}
#diag-compilerMessages{max-height:180px;overflow:auto}
#diag-compilerMessages:focus-visible{outline:2px solid #e8c98a;outline-offset:3px}
@media(max-width:850px){.diagnostics-panel .key-values{grid-template-columns:1fr}}
