:root{color-scheme:dark;--bg:#0a0e0c;--surface:#121816;--surface2:#18201d;--surface3:#202a26;--ink:#f5f8f5;--muted:#9ba8a1;--line:#303c37;--lime:#58c8f5;--lime-soft:rgba(88,200,245,.12);--danger:#ff9a8a;--shadow:0 24px 80px rgba(0,0,0,.36)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button,a,input,textarea,select,[contenteditable]{-webkit-tap-highlight-color:transparent}a{color:var(--lime);text-underline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.15rem,4.5vw,4.3rem);line-height:.98;letter-spacing:-.045em}h2{font-size:clamp(1.35rem,2vw,1.75rem);letter-spacing:-.025em}h3{line-height:1.2}.muted{color:var(--muted)}.eyebrow,.mini-eyebrow{margin:0 0 8px;color:var(--lime);font-size:.72rem;font-weight:850;letter-spacing:.16em}
.login-shell{min-height:100vh;background:radial-gradient(circle at 18% 14%,#283723 0,transparent 33%),radial-gradient(circle at 90% 80%,#17251d 0,transparent 32%),var(--bg)}.login-stage{width:min(1120px,calc(100% - 40px));min-height:670px;margin:0 auto;padding:56px 0;display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch}.login-brand,.login-panel{position:relative;overflow:hidden;border:1px solid var(--line)}.login-brand{padding:clamp(38px,6vw,76px);border-radius:32px 0 0 32px;background:linear-gradient(145deg,#1b251f,#101613);display:flex;flex-direction:column;justify-content:flex-end}.login-brand:before{content:"";position:absolute;width:520px;aspect-ratio:1;top:-290px;left:-190px;border-radius:50%;border:1px solid rgba(88,200,245,.18);box-shadow:0 0 0 70px rgba(88,200,245,.025),0 0 0 140px rgba(88,200,245,.018)}.login-brand h1{max-width:540px;margin-bottom:22px}.login-lead{max-width:520px;color:#c5cec9;font-size:1.1rem}.brand-orbit{position:absolute;top:62px;left:clamp(38px,6vw,76px);width:112px;height:112px;border-radius:50%;display:grid;place-items:center;color:#101510;background:var(--lime);box-shadow:0 0 0 14px rgba(88,200,245,.08),0 20px 60px rgba(88,200,245,.16)}.brand-zero{font-size:2rem;font-weight:950;letter-spacing:-.08em}.brand-drop{position:absolute;right:-12px;bottom:6px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--lime);background:#0d120f;font-size:.75rem}.login-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.login-features span{padding:7px 11px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.035);color:#bec8c2;font-size:.74rem;font-weight:750}.login-panel{padding:clamp(34px,5vw,68px);border-left:0;border-radius:0 32px 32px 0;background:rgba(17,23,20,.94);display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}.login-panel-head{display:flex;align-items:center;gap:9px;margin-bottom:38px;color:var(--muted);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.secure-dot{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px var(--lime-soft)}.login-panel h2{margin-bottom:8px;font-size:2rem}.login-form{margin-top:24px}.input-shell{position:relative;display:block}.input-shell .field-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:var(--lime-soft);color:var(--lime);font-size:.76rem;font-weight:900}.input-shell input{min-height:56px;padding-left:54px}.login-button{min-height:56px;display:flex;justify-content:space-between;align-items:center;font-size:1rem}.login-foot{margin-top:25px;padding-top:20px;display:grid;gap:7px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}
.login-card{width:min(560px,calc(100% - 28px));margin:7vh auto;padding:clamp(28px,5vw,48px);border:1px solid var(--line);border-radius:26px;background:linear-gradient(160deg,var(--surface),#101613);box-shadow:var(--shadow)}.brand-mark{width:72px;height:72px;margin-bottom:22px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#101510;font-size:1.35rem;font-weight:950}.login-card h1{font-size:clamp(2rem,5vw,3rem)}.login-card code{display:block;overflow-wrap:anywhere;padding:12px;border-radius:10px;background:#090d0b;color:var(--lime)}button:disabled{cursor:not-allowed;opacity:.45}
form{display:grid;gap:16px}label{display:grid;gap:7px;color:#dfe7e3;font-size:.88rem;font-weight:700}label small{color:var(--muted);font-weight:500}input,textarea,select,.wysiwyg{width:100%;border:1px solid var(--line);border-radius:12px;background:#0d1310;color:var(--ink);padding:13px 14px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}input,select{min-height:48px}input:focus,textarea:focus,select:focus,.wysiwyg:focus{border-color:var(--lime);box-shadow:0 0 0 4px var(--lime-soft);background:#101713}.primary,.ghost,.small-button,.editor-toolbar button,.text-danger{border:0;border-radius:11px;padding:12px 16px;font-weight:800;cursor:pointer;text-decoration:none;transition:transform .15s,background .15s,border-color .15s}.primary{background:var(--lime);color:#101510}.primary:hover,.small-button:hover{transform:translateY(-1px)}.ghost,.small-button{color:#eff5f1;background:rgba(255,255,255,.055);border:1px solid var(--line)}.small-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;font-size:.78rem}.text-danger{padding:8px 5px;background:transparent;color:var(--danger)}.flash{padding:14px 16px;border-radius:12px;margin:0 0 18px}.flash.success{background:var(--lime-soft);border:1px solid rgba(88,200,245,.38)}.flash.error{background:rgba(255,154,138,.11);border:1px solid rgba(255,154,138,.36)}
.admin-shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh}.admin-shell aside{position:sticky;top:0;height:100vh;padding:24px 18px;background:#0e1411;border-right:1px solid var(--line);display:flex;flex-direction:column}.portal-logo{display:flex;align-items:center;gap:12px;padding:5px}.portal-logo>span{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--lime);color:#101510;font-size:1.1rem;font-weight:950}.portal-logo b,.portal-logo small{display:block}.portal-logo small{color:var(--muted)}nav{display:grid;gap:5px;margin:34px 0 auto}nav a{display:flex;align-items:center;gap:11px;padding:7px 9px;border-radius:12px;color:#cbd5cf;text-decoration:none;font-size:.9rem;font-weight:650;transition:background .18s ease,color .18s ease,transform .18s ease}nav a:hover{background:var(--lime-soft);color:var(--lime);transform:translateX(2px)}.sidebar-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border:1px solid rgba(88,200,245,.14);border-radius:10px;background:rgba(88,200,245,.055);color:var(--lime)}.sidebar-icon svg{width:19px;height:19px;display:block}.admin-shell nav a.active .sidebar-icon{border-color:rgba(16,21,16,.2);background:rgba(16,21,16,.12);color:#101510}.workspace{padding:36px clamp(20px,4vw,62px) 80px;min-width:0}.workspace>header,.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.workspace>header h1{font-size:clamp(2.15rem,4vw,3.5rem);margin-bottom:8px}.version-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.version-pills span,.badge,.status{padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid var(--line);font-size:.75rem;font-weight:780}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}.metric-grid article,.panel{background:linear-gradient(160deg,var(--surface),#101613);border:1px solid var(--line);box-shadow:0 14px 44px rgba(0,0,0,.15)}.metric-grid article{padding:21px;border-radius:17px}.metric-grid small,.metric-grid span{display:block;color:var(--muted)}.metric-grid strong{display:block;margin:5px 0;color:var(--lime);font-size:2rem}.panel{margin:18px 0;padding:clamp(20px,3vw,32px);border-radius:20px;scroll-margin-top:20px}.section-title{margin-bottom:18px}.inline-form{display:block}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.content-card{min-height:224px;padding:18px;display:flex;flex-direction:column;border-radius:15px;background:var(--surface2);border:1px solid var(--line)}.content-card-head{display:flex;align-items:center;justify-content:space-between}.content-card-head>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--lime-soft);color:var(--lime);font-weight:900}.content-card-head small{color:var(--muted)}.content-card h3{margin:15px 0 8px}.content-card p{color:var(--muted);font-size:.86rem}.card-actions{margin-top:auto;display:flex;align-items:center;gap:10px}.card-actions form,.news-actions form{display:block}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.wide,.form-grid .primary{grid-column:1/-1}.table-wrap{overflow:auto;max-height:510px;margin:18px 0;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;min-width:100%;white-space:nowrap}th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:.84rem}th{position:sticky;top:0;background:#252f2b;color:var(--lime)}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.image-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;background:var(--surface2)}.editor-toolbar{display:flex;flex-wrap:wrap;gap:7px}.editor-toolbar button{padding:8px 13px;color:#fff;background:var(--surface3)}.editor-toolbar button:hover{color:var(--lime)}.wysiwyg{min-height:260px;overflow:auto}.news-list{display:grid;gap:10px;margin-top:24px}.news-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.news-list small{display:block;color:var(--muted)}.news-list p{margin:5px 0 0;color:#c6d0ca}.news-actions{display:flex;align-items:center;gap:8px}.status.published{color:var(--lime)}.status.draft{color:#f9c96a}
.device-stage{display:flex;align-items:flex-start;justify-content:center;gap:36px;overflow:auto;padding:28px}.device{flex:none;padding:12px;background:#050706;border:1px solid #3c4743;box-shadow:var(--shadow)}.iphone{width:300px;height:610px;border-radius:42px}.ipad{width:510px;height:680px;border-radius:28px}.notch{width:96px;height:22px;margin:-1px auto 5px;border-radius:0 0 13px 13px;background:#000}.camera{width:8px;height:8px;margin:0 auto 7px;border-radius:50%;background:#333}.device-screen{height:calc(100% - 28px);overflow:auto;padding:25px;border-radius:28px;background:#f5f7f3;color:#1b211e}.ipad .device-screen{padding:36px;border-radius:17px}.device-screen h3{font-size:1.8rem}.device-screen .mini-eyebrow{color:#1689b8}.preview-card{margin-top:18px;padding:16px;border-radius:10px;background:#17201c;color:#fff}.preview-card b{color:var(--lime)}.preview-image{width:100%;max-height:190px;object-fit:cover;border-radius:12px}
@media(max-width:1080px){.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid{grid-template-columns:repeat(2,1fr)}.ipad{width:440px}.device-stage{justify-content:flex-start}}
@media(max-width:800px){.login-stage{width:min(560px,calc(100% - 28px));padding:28px 0;grid-template-columns:1fr}.login-brand{min-height:390px;border-radius:26px 26px 0 0}.login-panel{border-left:1px solid var(--line);border-top:0;border-radius:0 0 26px 26px}.admin-shell{display:block}.admin-shell aside{position:relative;height:auto}.admin-shell nav{grid-template-columns:repeat(2,1fr);margin:20px 0}.workspace>header,.section-title{display:block}.version-pills{margin:15px 0;justify-content:flex-start}.form-grid{grid-template-columns:1fr}.wide,.form-grid .primary{grid-column:auto}.workspace{padding:24px 14px 60px}.device-stage{padding:10px}}
@media(max-width:560px){.login-stage{width:100%;padding:0}.login-brand,.login-panel{border-radius:0;border-left:0;border-right:0}.login-brand{min-height:350px}.content-grid,.metric-grid{grid-template-columns:1fr}.content-card{min-height:200px}.news-list article{grid-template-columns:1fr}.news-actions{justify-content:flex-start}.iphone{width:280px}}
.login-help{margin:14px 0 0;text-align:right;font-size:.86rem}.account-layout{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(320px,1.15fr);gap:24px;align-items:start}.account-create{grid-template-columns:1fr;margin:0}.account-create .primary{grid-column:auto}.account-list{display:grid;gap:10px}.account-list article{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.account-list small{display:block;margin-top:3px;color:var(--muted)}
@media(max-width:800px){.account-layout{grid-template-columns:1fr}}
/* Visual list and block editors */
.json-source-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}.visual-list-editor{display:block;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}.visual-list-head,.builder-block>header,.block-library{display:flex;align-items:center;justify-content:space-between;gap:14px}.visual-list-head small,.block-library small{display:block;color:var(--muted)}.visual-list-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:start;margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2,#121916)}.drag-index{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#111;font-weight:900}.list-fields,.category-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.group-editor{grid-column:1/-1;padding:12px;border-radius:12px;background:rgba(255,255,255,.035)}.group-editor label{display:flex;flex-direction:row;gap:6px;margin-top:6px}.group-editor button,.list-row-actions button,.builder-block>header button,.block-format button{min-width:34px;min-height:34px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--ink);cursor:pointer}.list-row-actions{display:flex;gap:5px}.empty-list{margin:14px 0 0;color:var(--muted)}
.block-builder{display:grid;gap:16px}.block-library{align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(88,200,245,.09),rgba(255,255,255,.025))}.block-library-grid{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.block-library-grid button{min-height:42px;padding:8px 11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2,#121916);color:var(--ink);cursor:pointer}.block-library-grid button span{color:var(--lime);font-weight:900}.builder-block{margin-top:14px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}.builder-block>header{padding:12px 14px;background:rgba(255,255,255,.04)}.builder-block>header>div{display:flex;gap:5px}.builder-controls{display:grid;grid-template-columns:repeat(6,minmax(100px,1fr));gap:8px;padding:12px}.builder-controls label,.image-block-editor label,.button-editor label{font-size:.72rem}.builder-controls select{min-height:38px;padding:6px}.block-format{display:flex;gap:5px;padding:8px 12px;border-top:1px solid var(--line)}.block-rich{min-height:120px;margin:0 12px 12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--field,#0d1310);outline:none}.block-rich:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(88,200,245,.12)}.image-block-editor,.button-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}.image-drop{grid-column:1/-1;min-height:180px;display:grid;place-items:center;overflow:hidden;border:1px dashed var(--line);border-radius:14px;background:rgba(255,255,255,.03);color:var(--muted)}.image-drop img{width:100%;max-height:340px;object-fit:contain}.builder-mini-preview{margin:12px;padding:24px;border-radius:12px;background:rgba(255,255,255,.025);text-align:center;color:var(--muted)}.builder-block.is-uploading{opacity:.55;pointer-events:none}
.editor-form[data-block-editor]>.editor-toolbar,.editor-form[data-block-editor]>.wysiwyg{display:none}
@media(max-width:1050px){.builder-controls{grid-template-columns:repeat(3,1fr)}.image-block-editor{grid-template-columns:1fr 1fr}}@media(max-width:650px){.visual-list-row{grid-template-columns:1fr}.list-fields,.category-fields,.builder-controls,.image-block-editor{grid-template-columns:1fr}.list-row-actions{justify-content:flex-end}.block-library{display:block}.block-library-grid{justify-content:flex-start;margin-top:12px}}
 [hidden]{display:none!important}
/* Seasonal design planner */
/* Server-selected routes: the requested page is correct before JavaScript runs. */
.admin-shell .workspace>section{display:none}.admin-shell:not(.page-dashboard) .workspace>#preview{display:block}.admin-shell.page-dashboard .workspace>#overview{display:block}.admin-shell.page-data .workspace>#release,.admin-shell.page-data .workspace>#release-data{display:block}.admin-shell.page-configuration .workspace>#configuration,.admin-shell.page-knowledge .workspace>#knowledge-control,.admin-shell.page-contact .workspace>#contact-info,.admin-shell.page-news .workspace>#news,.admin-shell.page-update .workspace>#update,.admin-shell.page-settings .workspace>#settings,.admin-shell.page-accounts .workspace>#accounts,.admin-shell.page-accounts .workspace>#account-management,.admin-shell.page-backups .workspace>#backups{display:block}.admin-shell.role-admin.page-accounts .workspace>#accounts{display:none}
.original-design-reset{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:24px;align-items:start}.original-design-reset form{padding:18px;border:1px solid rgba(255,154,138,.3);border-radius:15px;background:rgba(255,154,138,.055)}.backup-upload{padding-top:22px;border-top:1px solid var(--line)}@media(max-width:800px){.original-design-reset{grid-template-columns:1fr}}
.factory-reset{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.release-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.release-checks article,.preview-release{padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}.release-checks b,.release-checks span{display:block}.release-checks span{margin-top:5px;color:var(--muted)}.preview-release{margin-top:24px}.draft-pill{color:#101510!important;background:var(--lime)!important;border-color:var(--lime)!important}@media(max-width:800px){.release-checks{grid-template-columns:1fr}}
.account-management-grid{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(360px,1.3fr);gap:24px}.owner-account-list{display:grid;gap:14px}.owner-account-list article{padding:16px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}.owner-account-list article>form+form{margin-top:8px}.owner-account-list .form-grid{margin-top:0}@media(max-width:900px){.account-management-grid{grid-template-columns:1fr}}
.page-accounts #accounts .account-list{display:none}.page-accounts #accounts .account-layout{grid-template-columns:minmax(280px,560px)}
.admin-shell.page-settings .workspace>#factory-zero{display:block}
.admin-shell.role-admin .workspace>#factory-zero,.admin-shell.role-admin .backup-actions form{display:none!important}
.admin-shell.page-configuration .workspace>#configuration{display:block!important;visibility:visible;min-height:240px}.admin-shell.page-configuration #configuration>.form-grid{display:grid!important}
.grouped-configuration,.contact-info-form{gap:18px}.config-group{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,var(--lime) 8%)}.config-group legend{padding:0 8px;color:var(--ink);font-size:1rem;font-weight:800}.config-group>.wide,.config-group .wide{grid-column:1/-1}.rich-field .wysiwyg{min-height:150px}@media(max-width:760px){.config-group{grid-template-columns:1fr}.config-group>label,.config-group>.wide,.config-group .wide{grid-column:1}}
.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.stats-grid article{min-height:142px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface2)}.stats-grid small,.stats-grid span{display:block;color:var(--muted)}.stats-grid strong{display:block;margin:7px 0;color:var(--lime);font-size:2.2rem;line-height:1}.statistics-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.statistics-columns>section,.statistics-activity{padding:19px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.stat-version-list{display:grid;gap:9px}.stat-version-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.stat-version-list div:last-child{border-bottom:0}.stat-version-list span{color:var(--muted)}.statistics-activity{margin-top:16px}.activity-list{display:grid}.activity-list article{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}.activity-list article:last-child{border-bottom:0}.activity-list small{display:block;color:var(--muted)}.activity-list time{flex:none;color:var(--muted);font-size:.8rem}.portal-navigation-error{position:sticky;top:12px;z-index:1000;box-shadow:var(--shadow)}nav a.active{background:var(--lime);color:#101510}@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.stats-grid,.statistics-columns{grid-template-columns:1fr}.activity-list article{display:block}.activity-list time{display:block;margin-top:5px}}
.admin-test-guide{margin:18px 0;padding:18px;border:1px solid rgba(88,200,245,.3);border-radius:14px;background:var(--lime-soft)}.admin-test-guide h4{margin:0 0 10px}.admin-test-guide ol{margin:0;padding-left:21px}.admin-test-guide li+li{margin-top:6px}.admin-test-guide p{margin:13px 0 0}
.image-exclusion-option{grid-template-columns:auto minmax(0,1fr);align-items:start;padding:16px;border:1px solid rgba(88,200,245,.32);border-radius:14px;background:var(--lime-soft)}.image-exclusion-option input{width:22px;height:22px;min-height:0;margin:2px 0 0}.image-exclusion-option span,.image-exclusion-option b,.image-exclusion-option small{display:block}.image-exclusion-option small{margin-top:4px}.import-choice-note{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:var(--muted)}.import-choice-note b{color:var(--ink)}.upload-progress{padding:16px;border:1px solid rgba(88,200,245,.32);border-radius:14px;background:rgba(88,200,245,.08)}.upload-progress-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.upload-progress-head strong{color:var(--lime);font-variant-numeric:tabular-nums}.upload-progress progress{width:100%;height:12px;margin:10px 0 6px;accent-color:var(--lime)}.upload-progress small{display:block;color:var(--muted)}
.news-symbol-palette{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}.news-symbol-palette b{margin-right:5px;font-size:.82rem}.news-symbol-palette button{width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface2);font-size:1.15rem;cursor:pointer}.news-symbol-palette button:hover{border-color:var(--lime);background:var(--lime-soft)}
.admin-shell aside{overflow-y:auto}.admin-shell nav a{display:flex;align-items:center;gap:11px}.sidebar-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border:1px solid rgba(88,200,245,.14);border-radius:10px;background:rgba(88,200,245,.055);color:var(--lime)}.sidebar-icon svg{width:19px;height:19px;display:block}.admin-shell nav a.active .sidebar-icon{border-color:rgba(16,21,16,.2);background:rgba(16,21,16,.12);color:#101510}
.portal-key-card{display:grid;gap:8px;margin:0 0 18px;padding:16px 18px;border:1px solid rgba(88,200,245,.28);border-radius:14px;background:var(--lime-soft)}.portal-key-card code{display:block;overflow-wrap:anywhere;color:var(--lime);font-size:.82rem}.portal-key-card small{color:var(--muted);overflow-wrap:anywhere}.portal-key-card p{margin:0;color:var(--muted);font-size:.84rem}
.version-pills .service-online{color:var(--lime);border-color:rgba(88,200,245,.35)}.version-pills .service-error{color:#ff8f8f;border-color:rgba(255,99,99,.4);background:rgba(255,69,69,.08)}
.release-history{display:none}.release-version{margin:12px 0;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.02);overflow:hidden}.release-version>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;cursor:pointer;list-style:none}.release-version>summary::-webkit-details-marker{display:none}.release-version>summary span:first-child,.release-version>summary b,.release-version>summary small{display:block}.release-version>summary small{margin-top:4px;color:var(--muted)}.release-summary-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.release-summary-badges em{padding:5px 8px;border:1px solid rgba(88,200,245,.28);border-radius:999px;color:var(--lime);font-size:.7rem;font-style:normal;font-weight:750}.release-summary-badges i{color:var(--lime);font-style:normal;transition:transform .2s ease}.release-version[open] .release-summary-badges i{transform:rotate(180deg)}.release-version-body{padding:0 18px 20px;border-top:1px solid var(--line)}.release-downloads{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.release-image-grid{max-height:430px;overflow:auto;padding:2px}.release-protected{padding:13px 15px;border:1px solid rgba(88,200,245,.25);border-radius:12px;background:var(--lime-soft);color:var(--ink)}.release-delete{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin-top:20px;padding:16px;border:1px solid rgba(255,99,99,.28);border-radius:13px;background:rgba(255,69,69,.055)}.release-delete b{color:#ffaaaa}@media(max-width:720px){.release-version>summary{align-items:flex-start;flex-direction:column}.release-summary-badges{justify-content:flex-start}.release-delete{grid-template-columns:1fr}}

/* Mobile portal: controls fit the device, tables scroll inside their own panel. */
.admin-shell>*{min-width:0}.workspace,.panel,fieldset,.form-grid>*,.config-group>*{min-width:0}
input,select,textarea{max-width:100%}.image-grid img,.release-image-grid img[data-portal-image]{background:var(--surface2);object-fit:contain}
.table-wrap{max-width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
@media(max-width:1100px){
 .admin-shell{display:block}.admin-shell aside{position:relative;height:auto;padding:16px;overflow:visible}
 .admin-shell nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin:16px 0}
 .admin-shell aside form{margin-top:10px}.workspace{padding:22px 16px max(32px,env(safe-area-inset-bottom))}
 .workspace>header{display:block}.version-pills{justify-content:flex-start;margin:12px 0;max-width:100%}
 .version-pills span{overflow-wrap:anywhere}.panel{padding:18px}
 .account-management-grid,.account-layout,.original-design-reset{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
 .workspace{padding-left:12px;padding-right:12px}.panel{padding:14px}.form-grid,.config-group,.statistics-columns,.content-grid{grid-template-columns:minmax(0,1fr)}
 .form-grid>.wide,.config-group>.wide{grid-column:auto}fieldset{padding:12px!important}
 input,select,textarea,[contenteditable=true]{font-size:16px}button,.small-button,nav a{min-height:44px}
 .card-actions,.news-actions,.release-downloads,.preview-controlbar{flex-wrap:wrap}.preview-controlbar label{min-width:0;flex-basis:100%}
 .release-version-body{padding:0 10px 14px}.image-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}
 .editor-toolbar{position:static}.login-stage{max-width:100%}.login-panel{padding:24px 18px}
 .activity-list article,.stat-version-list div{overflow-wrap:anywhere}.release-delete{min-width:0}
}

/* Event editor is an independent page. */
body:not(.page-events) #events{display:none}.page-events #events{display:block}
.event-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:24px}.event-catalog article{background:var(--surface2);border:1px solid var(--border);padding:20px;border-radius:16px}.event-catalog span{display:block;font-size:32px;margin-bottom:12px}.event-catalog strong{display:block}

.event-symbol-picker{display:flex;flex-wrap:wrap;gap:8px}
.event-symbol-picker button{min-width:44px;min-height:44px;font-size:22px;padding:8px}
.event-catalog button{display:flex;flex-direction:column;gap:8px;text-align:left;padding:16px;white-space:normal}
#event-designer input[type=color]{min-height:44px;width:100%}

.event-symbol-library{padding:16px;border:1px solid var(--border,#718096);border-radius:12px}
.event-symbol-library summary{cursor:pointer;font-weight:700;font-size:1rem}
.event-symbol-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.event-symbol-group h3{font-size:1rem;margin:18px 0 10px}
.event-symbol-group .event-symbol-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:8px}
.event-symbol-group button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:80px;white-space:normal}
.event-symbol-group button span{font-size:28px;line-height:1.2}
.event-symbol-group button small{font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.event-symbol-library [hidden]{display:none!important}
.event-page-selection{padding:16px;border:1px solid var(--border,#718096);border-radius:12px}
.event-page-selection legend{font-weight:700}
.event-page-options{display:flex;flex-wrap:wrap;gap:12px 24px;margin:12px 0}
.event-page-options label{min-height:44px;display:flex;align-items:center;gap:8px}
.campaign-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:16px 0}
.campaign-overview article{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;border:1px solid var(--border,#718096);border-radius:12px}
.event-symbol-library{max-height:660px;overflow:auto;overscroll-behavior:contain}
@media(max-width:600px){.event-symbol-controls{grid-template-columns:1fr}.event-symbol-group .event-symbol-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}


/* Portal 1.42 — responsive iPhone/iPad admin workspace. */
.mobile-nav-toggle,.mobile-nav-backdrop{display:none}
@media(max-width:1100px){
 body.admin-shell{display:block;min-width:0;overflow-x:hidden}
 .mobile-nav-toggle{position:fixed;z-index:1202;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:9px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(14,20,17,.96);color:var(--ink);box-shadow:0 12px 35px rgba(0,0,0,.3);backdrop-filter:blur(18px);font-weight:850;cursor:pointer}
 .mobile-nav-toggle>span:first-child{font-size:1.25rem;line-height:1}
 .mobile-nav-backdrop{position:fixed;z-index:1199;inset:0;display:block;background:rgba(0,0,0,.55);backdrop-filter:blur(3px)}
 .mobile-nav-backdrop[hidden]{display:none}
 .admin-shell aside{position:fixed;z-index:1200;inset:0 auto 0 0;width:min(360px,88vw);height:100dvh;padding:max(22px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;background:#0e1411;border-right:1px solid var(--line);box-shadow:24px 0 70px rgba(0,0,0,.5);transform:translateX(-105%);transition:transform .22s ease}
 body.mobile-nav-open aside{transform:translateX(0)}
 body.mobile-nav-open{overflow:hidden}
 .admin-shell nav{display:grid;grid-template-columns:1fr;gap:5px;margin:24px 0}
 .admin-shell nav a{min-height:48px;padding:7px 10px}
 .workspace{width:100%;max-width:100%;padding:max(78px,calc(env(safe-area-inset-top) + 64px)) 18px max(44px,env(safe-area-inset-bottom));overflow:hidden}
 .workspace>header,.section-title{display:block}
 .version-pills{justify-content:flex-start;margin-top:14px}
 .panel{max-width:100%;overflow:hidden}
 .table-wrap{overflow-x:auto;overflow-y:auto;max-width:100%;touch-action:pan-x pan-y}
 table{width:max-content;min-width:100%}
 .device-stage,.app-device-stage{max-width:100%}
}
@media(min-width:601px) and (max-width:1100px){
 .workspace{padding-left:22px;padding-right:22px}
 .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .form-grid>.wide,.form-grid .primary{grid-column:1/-1}
}
@media(max-width:600px){
 body{font-size:15px}
 h1{font-size:clamp(2rem,11vw,2.8rem)}
 .mobile-nav-toggle{right:12px;left:12px;justify-content:center}
 .admin-shell aside{width:min(332px,92vw)}
 .workspace{padding-left:10px;padding-right:10px}
 .panel{margin:12px 0;padding:13px;border-radius:15px}
 .workspace>header{padding:0 2px}
 .version-pills{gap:6px}
 .version-pills span,.badge,.status{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .metric-grid,.stats-grid,.content-grid,.form-grid,.config-group,.statistics-columns,.account-layout,.account-management-grid,.original-design-reset,.release-checks,.event-symbol-controls{grid-template-columns:minmax(0,1fr)!important}
 .section-title>*{max-width:100%}
 .card-actions,.news-actions,.release-downloads,.preview-controlbar,.event-page-options{align-items:stretch}
 .card-actions>*:not(.text-danger),.news-actions>*:not(.text-danger),.release-downloads>a,.release-downloads>button,.preview-controlbar>button{width:100%}
 .primary,.ghost,.small-button{min-height:46px}
 .editor-toolbar{gap:6px}.editor-toolbar button{min-width:44px;min-height:44px}
 .table-wrap{margin-left:0;margin-right:0;border-radius:10px}
 th,td{padding:9px 10px;font-size:.8rem}
 .release-version>summary{padding:14px 12px}
 .release-version-body{padding-left:10px;padding-right:10px}
 .campaign-overview{grid-template-columns:minmax(0,1fr)}
 .event-symbol-group .event-symbol-picker{grid-template-columns:repeat(2,minmax(0,1fr))}
 .login-card{width:calc(100% - 20px);margin:12px auto;padding:22px 16px}
 .login-stage{min-height:100dvh}
 .login-brand{padding:28px 20px;min-height:300px}
 .brand-orbit{top:34px;left:24px;width:92px;height:92px}
 .login-panel{padding:26px 18px max(28px,env(safe-area-inset-bottom))}
}
@media(max-width:390px){
 .workspace{padding-left:8px;padding-right:8px}
 .panel{padding:11px}
 .event-symbol-group .event-symbol-picker{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){.admin-shell aside{transition:none}}
