:root{color-scheme:dark;--bg:#121420;--panel:#1b1d2d;--panel2:#161925;--line:#292d40;--text:#f3f5fa;--muted:#a3a8bb;--blue:#08a9f4;--teal:#00c9ab;--yellow:#e5cc3b;--red:#ee6974;--radius:7px;font-family:'HOF Sans',Arial,Helvetica,sans-serif;font-size:14px}
@font-face{font-family:'HOF Sans';src:url('/assets/azo-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:'HOF Sans';src:url('/assets/azo-medium.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:'HOF Sans';src:url('/assets/azo-bold.woff2') format('woff2');font-weight:600 800;font-display:swap}@font-face{font-family:'HOF Sans';src:url('/assets/azo-black.woff2') format('woff2');font-weight:900;font-display:swap}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue)}a{color:var(--blue);text-decoration:none}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button,.button{border:0;border-radius:5px;padding:10px 16px;background:#242839;color:var(--text);font-weight:600;display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px}button:hover,.button:hover{filter:brightness(1.12)}button:active{transform:translateY(1px)}.primary{background:#078edf;color:#fff}.secondary{background:transparent;border:1px solid var(--line)}.success{background:#073e37;color:#6ae5c3}.danger{background:#41232b;color:#ff9da7}.subtle{background:rgba(8,169,244,.1);color:#59c7ff}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.button-row.end{justify-content:flex-end}
#sidebar{width:252px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);padding:20px 9px 14px;overflow-y:auto;display:flex;flex-direction:column;background:#121420;z-index:20}.brand{display:flex;gap:11px;align-items:center;padding:0 10px 22px;color:#fff;font-size:19px;font-weight:750}.brand img{width:42px;height:42px;border-radius:11px}.brand small{display:block;font-size:8px;letter-spacing:2.1px;color:var(--muted);margin-top:2px}.server{display:flex;align-items:center;gap:9px;background:#132b38;padding:10px 12px;border-radius:5px;border:1px solid #163e53}.server img{width:25px;height:25px;border-radius:6px}.server small{display:block;font-size:11px;color:var(--blue)}.server-arrow{margin-left:auto;color:#788c9b}.connection{margin:12px 0 16px;padding:8px 12px;border:1px solid #214736;background:#132821;color:#75d9ae;border-radius:5px;font-size:12px;display:flex;align-items:center;gap:8px}.connection i{width:6px;height:6px;border-radius:100%;background:currentColor}.connection.offline{background:#34232b;border-color:#65333f;color:#ff9da7}nav section{margin:14px 0}nav h2{font-size:13px;margin:0 7px 6px;display:flex;align-items:center;gap:9px;color:#f0f2f7}nav h2 img{width:18px;height:18px;object-fit:contain}.nav-icon{font-size:17px;width:18px;text-align:center;color:#b1b7c9;font-weight:400}nav a{display:flex;gap:10px;color:#a9adbd;padding:6px 10px;margin:2px 0 2px 24px;border-radius:5px;font-size:13px;align-items:center}.nav-top{margin-left:0;padding:8px}.nav-top .nav-icon{margin-left:3px}nav a:hover{color:white;background:#1d2330}nav a.active{background:#18343d;color:#f7fcff;box-shadow:inset 0 -1px #236175}.nav-count{margin-left:auto;font-size:10px;background:#263344;border-radius:4px;padding:0 5px;color:#86d7ff}.sidebar-bottom{margin-top:auto;padding:28px 12px 0;font-size:11px;color:#c7cdd9}.sidebar-bottom small{display:block;color:#68758c;font-size:10px;margin-top:4px}.local-indicator{color:#00bd9a;margin-right:5px}
main{margin-left:252px;padding:24px 25px 60px;min-height:100dvh;max-width:1800px}.page-header{background:var(--panel);border:1px solid #212538;border-bottom:2px solid #303448;border-radius:var(--radius);padding:18px;display:flex;align-items:center;gap:14px;margin-bottom:18px}.page-header .header-icon{width:48px;height:48px;display:grid;place-items:center;background:#263451;color:#6eacff;border-radius:8px;font-size:24px}.page-header img{width:36px;height:36px;object-fit:contain}.page-header h1{font-size:23px;line-height:1.25;margin:0 0 5px;font-weight:750;letter-spacing:-.5px}.page-header p{color:var(--muted);margin:0;font-size:13px}.page-header>.button-row{margin-left:auto}.banner{width:100%;aspect-ratio:2048/628;object-fit:cover;border-radius:8px;display:block;margin:0 0 24px;border:1px solid #376a8b}.banner.compact{max-height:230px;object-position:center}.eyebrow{color:var(--blue);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700}.page-intro{margin:26px 0}.page-intro h2{font-size:22px;margin:4px 0 7px}.page-intro p{margin:0;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}.stat{display:flex;align-items:center;gap:12px;padding:15px;border-radius:5px;border:1px solid #252c46;background:#1b2339}.stat .symbol{color:#76aaff;font-size:26px;width:24px}.stat p{font-size:12px;font-weight:650;margin:0 0 2px}.stat strong{display:block;color:#b9c6db;font-size:22px;line-height:1.2}.stat.accepted{background:#123432;border-color:#17463e}.stat.accepted .symbol,.stat.accepted strong{color:#5ad8be}.stat.pending{background:#302f1e;border-color:#43412b}.stat.pending .symbol,.stat.pending strong{color:#e7d25e}.stat.denied{background:#33212a;border-color:#442635}.stat.denied .symbol,.stat.denied strong{color:#ed9da6}
.search-box{position:relative}.search-box input{padding-left:38px;width:100%}.search-box:before{content:'⌕';position:absolute;left:14px;top:6px;font-size:23px;color:var(--muted)}input,textarea,select{background:#0f111b;border:1px solid #282d40;color:var(--text);border-radius:5px;padding:11px 12px;width:100%;min-width:0}input::placeholder,textarea::placeholder{color:#747d92}textarea{resize:vertical;min-height:110px;line-height:1.6}select{cursor:pointer;min-height:42px}.helper{font-size:11px;color:var(--muted);margin:6px 0 16px}.filters{display:grid;grid-template-columns:minmax(140px,1fr) repeat(4,minmax(100px,.6fr));gap:10px;align-items:end;margin:18px 0 16px}.filters .count{font-weight:650;padding-bottom:11px;font-size:13px}.filters label{font-size:12px;color:var(--muted);display:block}.filters select{margin-top:5px}.submission{margin-bottom:9px;border:1px solid transparent;background:var(--panel);border-radius:6px;overflow:hidden}.submission[open]{border-color:#3b4e6c}.submission summary{display:flex;align-items:center;gap:12px;padding:17px 16px;cursor:pointer;list-style:none}.submission summary::-webkit-details-marker{display:none}.submission summary:after{content:'⌄';margin-left:auto;color:#a7b2c8}.submission[open] summary:after{content:'⌃'}.avatar{width:38px;height:38px;background:#253b55;flex-shrink:0;border-radius:100%;display:grid;place-items:center;font-size:12px;color:#8ad8ff;font-weight:700}.submission-title{font-size:13px;font-weight:650;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.submission-meta{font-size:11px;color:#a8afc1;margin-top:3px}.badge{font-size:9px;font-weight:750;padding:2px 6px;border-radius:3px;display:inline-block;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap}.badge.pending{color:#e6d15a;background:#3e3b20}.badge.accepted,.badge.open{color:#43d8b0;background:#143c34}.badge.denied,.badge.closed,.badge.ended{color:#f9909e;background:#47232d}.badge.import{background:#23324b;color:#8dbaf2}.submission-body{padding:0 20px 20px 66px}.answer{border-top:1px solid var(--line);padding:15px 0}.answer h3{font-size:12px;color:#cdd5e9;margin:0 0 7px}.answer p{margin:0;color:#b8c0d5;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.review-box{background:#121722;border:1px solid var(--line);padding:15px;border-radius:6px;margin-top:10px}.review-box label{display:block;font-size:12px;margin-bottom:7px;color:#b7c5da}.review-box textarea{min-height:65px}.checkbox-label{display:flex!important;align-items:center;gap:9px;color:var(--muted);font-size:12px!important;margin:10px 0!important}.checkbox-label input{width:16px;height:16px;accent-color:var(--blue)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:20px;color:var(--muted);font-size:12px}.pagination button{padding:6px 12px;min-height:34px}
.card{padding:22px;background:var(--panel);border:1px solid #272c3e;border-radius:7px;margin-bottom:18px}.card h2{font-size:18px;letter-spacing:-.2px;margin:0 0 7px}.card h3{font-size:14px;margin:0 0 6px}.card>p{color:var(--muted);font-size:13px;margin:0 0 20px}.card .card-head{display:flex;align-items:center;gap:10px;margin-bottom:20px}.card-head h2{margin:0}.card-head img{width:27px;height:27px;object-fit:contain}.card-head .badge{margin-left:auto}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid-2>.card{margin-bottom:0}.grid-2{margin-bottom:18px}.form-field{margin:18px 0}.form-field>label{font-size:13px;font-weight:650;display:block;margin-bottom:4px}.form-field>.helper{margin:0 0 9px}.form-field input,.form-field textarea,.form-field select{margin-top:5px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.setting-row h3{margin:0 0 4px;font-size:13px}.setting-row p{font-size:12px;color:var(--muted);margin:0}.switch{width:38px!important;height:20px;accent-color:var(--blue);flex-shrink:0}.savebar{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:18px;margin-top:20px;gap:10px;align-items:center}.savebar span{font-size:11px;color:var(--muted);margin-right:auto}.tabs{display:flex;gap:4px;padding:5px;background:#0e111b;border:1px solid #222637;border-radius:6px;margin:20px 0;flex-wrap:wrap}.tabs button{background:transparent;color:var(--muted);padding:7px 14px;min-height:34px;font-weight:500;font-size:12px}.tabs button.active{background:#253345;color:#f7faff}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 30px}.module-card{display:flex;flex-direction:column;align-items:flex-start;padding:20px;background:var(--panel);border:1px solid #2b3041;border-radius:7px;color:var(--text);transition:border-color .15s,background .15s}.module-card:hover{border-color:#285f80;background:#1d2637}.module-card img{height:32px;width:32px;object-fit:contain;margin-bottom:14px}.module-card .module-symbol{font-size:25px;color:#79caff;margin-bottom:10px}.module-card h3{font-size:15px;margin:0 0 4px}.module-card p{font-size:12px;color:var(--muted);margin:0 0 20px}.module-card .configure{font-size:12px;color:var(--blue);margin-top:auto}.empty{padding:50px 20px;text-align:center;border:1px dashed #343b51;border-radius:7px;background:#141824}.empty img{width:42px;height:42px;object-fit:contain;opacity:.7;margin-bottom:10px}.empty h3{font-size:17px;margin:5px 0 8px}.empty p{color:var(--muted);font-size:13px;margin:0 0 18px}.notice{background:#142c3e;border:1px solid #204760;color:#abdaf6;border-radius:5px;padding:12px 15px;font-size:12px;margin:16px 0}.notice.warning{background:#342e1c;border-color:#574a25;color:#e7d4a0}.notice.good{background:#15392e;border-color:#27553e;color:#a6e2c5}.preview{background:#2b2d31;padding:18px;border-radius:7px;font-size:13px}.preview-header{display:flex;align-items:center;gap:10px;font-size:13px;margin-bottom:13px}.preview-header img{width:34px;height:34px;border-radius:100%}.preview-header small{font-size:9px;background:#5865f2;padding:1px 4px;border-radius:3px}.preview-embed{border-left:4px solid var(--blue);border-radius:4px;background:#232428;padding:15px;max-width:550px}.preview-embed img{width:100%;border-radius:4px;margin-top:12px}.preview-embed h3{margin:0 0 10px;font-size:16px}.preview-embed p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;margin:0;line-height:1.7}.preview-embed small{font-size:10px;color:#b0b6c4;display:block;margin-top:12px}.preview .fake-select{background:#1e1f22;color:#b8bac1;margin-top:8px;padding:10px;border-radius:5px;font-size:12px;max-width:550px}.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.asset-grid figure{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:7px;overflow:hidden}.asset-grid figure img{width:100%;display:block;aspect-ratio:3.2;object-fit:cover}.asset-grid figcaption{display:flex;align-items:center;padding:13px;gap:10px;font-size:13px}.asset-grid figcaption a{margin-left:auto;font-size:11px}.icon-assets{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0}.icon-assets img{width:64px;height:64px;object-fit:contain}.log-row{display:grid;grid-template-columns:170px 220px 1fr;gap:15px;padding:14px 5px;border-bottom:1px solid var(--line);font-size:12px}.log-row time,.log-row .detail{color:var(--muted);overflow-wrap:anywhere}.log-row strong{font-weight:550}.activity{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.activity-dot{width:7px;height:7px;border-radius:100%;background:var(--blue);flex-shrink:0}.activity strong{font-size:12px}.activity small{display:block;color:var(--muted);font-size:11px}.activity time{margin-left:auto;font-size:10px;color:var(--muted)}.chart{display:flex;gap:10px;align-items:end;height:190px;padding-top:20px}.chart .bar{flex:1;background:linear-gradient(#17aff7,#1671b5);min-height:3px;position:relative;border-radius:3px 3px 0 0}.chart .bar span{position:absolute;top:-20px;width:100%;text-align:center;font-size:11px;color:#9dcff4}.chart-labels{display:flex;font-size:9px;color:var(--muted);margin-top:7px}.chart-labels span{flex:1;text-align:center}.record{padding:16px;background:var(--panel2);border:1px solid var(--line);border-radius:6px;margin:12px 0}.record-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.record-head strong{flex:1;min-width:100px}.record p{color:var(--muted);font-size:12px;margin:8px 0}.record .button-row{margin-top:12px}.requirements-copy{white-space:pre-wrap;color:#c5cee2;font-size:13px;line-height:1.8}.mobile-menu{display:none}.skip{position:fixed;left:270px;top:-70px;z-index:200;background:var(--blue);color:white;padding:10px}.skip:focus{top:8px}#toast{position:fixed;bottom:25px;right:25px;z-index:100;background:#183a31;border:1px solid #2b6e55;padding:14px 20px;color:#ceffe8;border-radius:6px;max-width:430px;box-shadow:0 6px 30px #0007;display:none}#toast.show{display:block}#toast.error{background:#41252e;border-color:#814450;color:#ffd2d9}dialog{background:var(--panel);border:1px solid #43526c;border-radius:10px;color:var(--text);max-width:440px;width:calc(100% - 40px);padding:26px}dialog::backdrop{background:#030815bc;backdrop-filter:blur(3px)}dialog h2{font-size:21px;margin:12px 0}dialog p{color:var(--muted);line-height:1.7}.dialog-icon{color:var(--blue);font-size:25px}dialog .button-row{justify-content:flex-end;margin-top:25px}.initial-loading{padding:50px;color:var(--muted)}.muted{color:var(--muted)}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.narrow{max-width:850px}.font-mono{font-family:Consolas,monospace}.small{font-size:12px}.long-id{overflow-wrap:anywhere}.section-title{font-size:17px;margin:28px 0 14px}.quick-row{display:grid;grid-template-columns:160px 1fr 40px;gap:10px;margin:12px 0;align-items:start}.quick-row textarea{min-height:65px}.quick-row button{padding:7px;color:var(--red)}
@media(min-width:1700px){main{padding-left:40px;padding-right:40px}.banner.compact{max-height:280px}}
@media(max-width:1100px){.stats{gap:10px}.stat{padding:12px;gap:8px}.stat p{font-size:10px}.filters{grid-template-columns:repeat(4,1fr)}.filters .count{grid-column:1/-1;padding-bottom:0}.module-grid{grid-template-columns:1fr 1fr}.log-row{grid-template-columns:140px 1fr}.log-row .detail{grid-column:2}.grid-2{grid-template-columns:1fr}.page-header>.button-row{margin-left:0}.page-header{flex-wrap:wrap}}
@media(max-width:760px){#sidebar{transform:translateX(-100%);transition:transform .2s}body.nav-open #sidebar{transform:translateX(0);box-shadow:10px 0 50px #0009}.mobile-menu{display:flex;position:fixed;right:15px;top:12px;z-index:30;background:#1e354b;border:1px solid #345370;font-size:18px;min-height:36px;padding:3px 11px}main{margin-left:0;padding:60px 14px 40px}.page-header{padding:15px}.page-header h1{font-size:20px}.page-header .header-icon{width:39px;height:39px}.stats{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:14px}.stat p{font-size:11px}.filters{grid-template-columns:1fr 1fr}.filters .count{font-size:12px}.submission summary{padding:14px 12px;gap:9px}.submission-title{font-size:12px}.submission-meta{font-size:10px}.submission-body{padding:0 15px 15px}.avatar{width:30px;height:30px}.module-grid{gap:10px}.module-card{padding:15px}.module-card h3{font-size:13px}.asset-grid{grid-template-columns:1fr}.inline-fields{grid-template-columns:1fr}.card{padding:17px}.log-row{grid-template-columns:1fr;gap:4px}.log-row .detail{grid-column:1}.quick-row{grid-template-columns:1fr 40px}.quick-row textarea{grid-column:1}.quick-row button{grid-column:2;grid-row:1}.banner.compact{max-height:none}.page-header p{font-size:12px}.skip{left:20px}.stat strong{font-size:23px}.preview{padding:12px}.tabs button{padding:6px 10px}.page-header>.button-row{width:100%}#toast{left:15px;right:15px;bottom:15px}.chart{gap:5px}.chart-labels{font-size:8px}.grid-2{gap:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.nav-icon img,.symbol img{width:20px;height:20px;object-fit:contain}.header-icon img{width:27px;height:27px}.stat .symbol{display:flex;align-items:center;justify-content:center}.stat .symbol img{width:25px;height:25px}.stat.pending .symbol img{filter:sepia(1) saturate(3)}[hidden]{display:none!important}

.avatar{overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}

.banner.compact{max-height:none;aspect-ratio:auto;object-fit:contain}

/* HOF workspace: a single, crisp icon family and a quieter operating surface. */
:root{--radius:12px;--muted:#abb6ca;--line:#2b3447}
::selection{background:#126889;color:#fff}
*{scrollbar-width:thin;scrollbar-color:#35445d #121420}
input,textarea{caret-color:#55ceff}
input::placeholder,textarea::placeholder{color:#939fb6}
.hof-icon{display:block;flex:none;object-fit:contain;width:32px;height:32px}
button>.hof-icon,.button>.hof-icon{width:18px;height:18px}
#sidebar{padding:22px 12px 18px;background:#10131e}
.brand{padding:0 6px 22px}
.server{border-radius:9px;background:#172536;border-color:#243e55}
.connection{margin-bottom:12px;border-radius:7px}
nav section{margin:21px 0}
nav h2{font-size:11px;font-weight:600;color:#8c9db5;letter-spacing:0;text-transform:none;margin:0 12px 8px}
nav a{margin:2px 0;padding:9px 12px;gap:11px;border-radius:7px;color:#afbdd1;font-size:13px;line-height:1.3;min-height:38px}
nav a>.hof-icon{width:18px;height:18px;opacity:.8}
nav a.active{background:#183147;box-shadow:none;color:#e8f7ff}
nav a.active>.hof-icon{opacity:1}
.nav-top{margin:2px 0}
.sidebar-bottom{padding:20px 8px 0}
.sidebar-bottom button{width:100%;font-size:12px}
main{padding:30px 32px 64px}
.page-header{background:none;border:0;border-radius:0;padding:0 0 23px;margin-bottom:22px;border-bottom:1px solid var(--line);gap:13px}
.page-header .header-icon{background:none;width:43px;height:43px;border-radius:0;flex:none}
.page-header .header-icon img{width:43px;height:43px}
.page-header h1{font-size:25px;letter-spacing:-.7px;margin-bottom:5px}
.page-header>div:nth-child(2){min-width:0;flex:1}
.page-header p{line-height:1.6;max-width:70ch}
.card,.record,.preview,.asset-grid figure{border-radius:12px}
button,.button{border-radius:7px;transition:background .16s ease,border-color .16s ease;letter-spacing:0;font-size:12px}
.primary{background:#0875b6}.primary:hover{background:#0877b9;filter:none}
.secondary:hover{background:#1e2a3c;border-color:#526783;filter:none}
.stat{border-radius:10px}.stat strong{font-variant-numeric:tabular-nums}
.search-box:before{content:'';width:18px;height:18px;top:13px;left:13px;background:url('/assets/hof-icons/search-line.svg') center/contain no-repeat}
.overview-welcome{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.9fr);gap:22px;margin:0 0 34px;align-items:stretch}
.welcome-copy{padding:17px 0 8px;display:flex;flex-direction:column;justify-content:center}
.welcome-copy h2{font-size:clamp(25px,2.5vw,37px);line-height:1.2;letter-spacing:-1px;margin:0 0 11px;max-width:17ch}
.welcome-copy>p{color:#b5c2d8;margin:0 0 24px;max-width:44ch;font-size:13px;line-height:1.75}
.welcome-copy .button-row{gap:9px}
.button-count{font-size:11px;background:#ffffff24;border-radius:4px;padding:1px 6px;font-variant-numeric:tabular-nums}
.welcome-status{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:#9fadc4;font-size:11px;margin-top:20px}
.status-dot{width:6px;height:6px;border-radius:50%;background:#59d6b3;flex:none}.status-dot.offline{background:#ee8994}
.welcome-art{display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:12px;background:#192637;color:#d9edff;min-width:0;align-self:center}
.welcome-art>img{display:block;width:100%;aspect-ratio:2048/628;object-fit:cover}
.welcome-art>span{display:flex;align-items:center;gap:9px;font-size:11px;padding:12px 14px}
.welcome-art>span>.hof-icon{width:16px;height:16px}.welcome-art>span>.hof-icon:last-child{margin-left:auto}
.welcome-art:hover{background:#21364c}
.directory-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:19px}
.directory-heading h2{font-size:21px;letter-spacing:-.5px;margin:0 0 4px}.directory-heading p{font-size:12px;color:var(--muted);margin:0}
.directory-heading .search-box{width:290px;flex:none}
.directory-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line)}
.directory-filters{display:flex;gap:5px;flex-wrap:wrap}
.directory-filters button{min-height:32px;padding:6px 10px;background:transparent;font-size:11px;color:#acbad0;font-weight:500;border:1px solid transparent;white-space:nowrap}
.directory-filters button.active{background:#19364a;color:#8edbff;border-color:#24516c}.directory-filters button:hover{background:#223047;filter:none}
#module-result-count{white-space:nowrap;color:#94a6c1;font-size:11px;font-variant-numeric:tabular-nums}
.module-section{margin:26px 0 32px}
.module-section-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.module-section-heading h3{font-size:14px;margin:0;font-weight:650}.module-section-heading>span{font-size:11px;color:#8e9db7}
.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.module-card{display:grid;grid-template-columns:43px minmax(0,1fr) 18px;align-items:center;gap:15px;padding:18px;background:#191e2c;border:1px solid #2b3446;border-radius:11px;min-height:109px;transition:background .15s ease,border-color .15s ease}
.module-card>.hof-icon{width:43px;height:43px;margin:0;align-self:start;margin-top:2px}
.module-card:hover{background:#1d293c;border-color:#476583}
.module-card h4{font-size:13px;font-weight:650;margin:0 0 6px;line-height:1.4;color:#f0f5ff}
.module-card p{font-size:12px;line-height:1.6;color:#abbad1;margin:0;max-width:44ch}
.module-open>.hof-icon{width:17px;height:17px;opacity:.65;margin:0;transition:transform .15s ease}
.module-card:hover .module-open>.hof-icon{transform:translateX(3px);opacity:1}
.directory-empty{padding:45px 15px;text-align:center}.directory-empty>.hof-icon{width:42px;height:42px;margin:0 auto 14px}.directory-empty h3{margin:0 0 6px}.directory-empty p{color:var(--muted);font-size:12px;margin:0 0 18px}
.overview-utilities{border-top:1px solid var(--line);padding-top:25px;margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.overview-utilities>div:first-child{display:flex;align-items:center;gap:13px}.overview-utilities h2{font-size:15px;margin:0 0 4px}.overview-utilities p{color:var(--muted);font-size:11px;margin:0;max-width:60ch}
.overview-utilities .button{font-size:11px;min-height:34px;padding:8px 11px}
.icon-assets{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:18px}.icon-assets a{display:grid;place-items:center;padding:7px;border-radius:9px}.icon-assets a:hover{background:#28364a}.icon-assets .hof-icon{width:46px;height:46px}
.mobile-menu>.hof-icon{width:20px;height:20px}
.submission summary:after{content:'';width:18px;height:18px;flex:none;background:url('/assets/hof-icons/chevron-line.svg') center/contain no-repeat}
.submission[open] summary:after{content:'';transform:rotate(180deg)}
.editor-tools button>.hof-icon{width:23px;height:23px}
.layer-symbol>.hof-icon,.layer-row button>.hof-icon{width:15px;height:15px}
.canvas-controls button>.hof-icon,.back-library>.hof-icon{width:17px;height:17px}
@media(max-width:760px){.editor-left>h3:nth-of-type(2){display:none}.editor-layout.mobile-layers .editor-tools,.editor-layout.mobile-layers .editor-left>h3{display:none}.editor-layout.mobile-layers .editor-left>.divider{display:none}}
@media(min-width:1600px){.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){main{padding:25px 22px 50px}.overview-welcome{grid-template-columns:1fr}.welcome-art{display:none}.welcome-copy{padding:0}.welcome-copy h2{max-width:none}.directory-toolbar{align-items:flex-start;gap:10px}.module-card{padding:15px;grid-template-columns:37px minmax(0,1fr) 15px;gap:12px}.module-card>.hof-icon{width:37px;height:37px}.directory-heading .search-box{width:240px}}
@media(max-width:760px){main{padding:66px 16px 40px}.page-header{gap:12px;padding-bottom:18px;margin-bottom:24px}.page-header h1{font-size:23px}.page-header .header-icon,.page-header .header-icon img{width:38px;height:38px}.page-header>.button-row{width:auto;margin-left:0}.page-header>.button-row .button{min-height:35px}.overview-welcome{margin-bottom:29px}.welcome-copy h2{font-size:29px;max-width:16ch}.welcome-copy>p{font-size:12px;max-width:40ch}.welcome-copy .button-row{align-items:stretch}.welcome-copy .button{min-height:43px;font-size:11px}.welcome-status{line-height:1.8;gap:7px}.directory-heading{align-items:stretch;flex-direction:column;gap:15px}.directory-heading .search-box{width:100%}.directory-toolbar{flex-direction:column;gap:9px}.directory-filters{gap:5px}.directory-filters button{font-size:11px;padding:7px 9px;min-height:36px}.module-grid{grid-template-columns:1fr;gap:9px}.module-section{margin:24px 0 28px}.module-card{min-height:98px;padding:17px;grid-template-columns:40px minmax(0,1fr) 17px;gap:14px}.module-card>.hof-icon{width:40px;height:40px}.module-card h4{font-size:13px}.module-card p{font-size:12px}.overview-utilities{align-items:stretch}.overview-utilities .button-row{gap:7px}.mobile-menu{padding:9px;min-height:40px}.page-header p{max-width:44ch}.savebar{flex-wrap:wrap}.savebar span{flex-basis:100%}}

.brand small{font-size:10px;letter-spacing:1px}.sidebar-bottom small{color:#95a5bd;font-size:11px}.skip{background:#0875b6}

/* Editing, recovery and keyboard states are part of the interface. */
.nav-backdrop{position:fixed;inset:0;background:#050b16a6;border:0;border-radius:0;z-index:19;cursor:default}
.nav-backdrop:hover{filter:none}
.switch-hit{display:flex;align-items:center;justify-content:center;min-width:48px;min-height:44px;flex:none;cursor:pointer}
.switch-hit input.switch{margin:0}
.preview-embed code{background:#14161d;padding:2px 5px;border-radius:4px;font-size:.95em}
body.nav-open .session-notice{display:none}
body.nav-open{overflow:hidden}
main:focus{outline:0}
.savebar [data-save-state]{color:#a5c5b8}
.savebar [data-save-state].dirty{color:#f2d18a;display:flex;align-items:center;gap:8px}
.savebar [data-save-state].dirty:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.session-notice{position:fixed;bottom:18px;left:calc(252px + 20px);right:20px;z-index:90;display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:16px 18px;background:#342c1b;border:1px solid #8e7040;border-radius:10px;color:#f4ddb5;box-shadow:0 12px 30px #0005;font-size:12px}
.session-notice span{flex:1}.session-notice a{color:#b5e6ff;text-decoration:underline;text-underline-offset:3px}.session-notice button{background:#6b552c;color:#fff}
.helper,.setting-row p,.record p,.card>p,.preview-embed p,.answer p{font-size:12px;line-height:1.75}
.form-field>label,.setting-row h3{font-size:13px}
.form-field{margin:22px 0}.form-field>.helper{max-width:70ch}
.settings-form:invalid .savebar{opacity:1}
.tabs button{font-size:12px;min-height:40px}
.badge{font-size:10px;padding:3px 7px}.submission-meta{font-size:11px;line-height:1.6}
.card>h2{line-height:1.4}.preview-header{flex-wrap:wrap;row-gap:6px}
.preview-embed{overflow-wrap:anywhere}.preview-embed h3{line-height:1.5}.preview-embed small{line-height:1.6}
.submission-body{max-width:100%}.answer p{max-width:75ch}
.log-row time,.log-row .detail{line-height:1.7}.log-row strong{overflow-wrap:anywhere}
.record-head a{overflow-wrap:anywhere}
.initial-loading{display:flex;gap:12px;align-items:center;min-height:180px;padding:35px;color:#c2d2e7}
.initial-loading:before{content:'';width:18px;height:18px;border:2px solid #31455d;border-top-color:#67d4ff;border-radius:50%;animation:hof-spin .8s linear infinite;flex:none}
@keyframes hof-spin{to{transform:rotate(360deg)}}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#5aa8d1}
.brand small{font-size:11px}.badge{font-size:11px}.chart-labels{font-size:11px}.activity time,.activity small{font-size:11px}
@media(max-width:760px){.session-notice{left:12px;right:12px;bottom:12px;gap:10px}.session-notice span{flex-basis:100%}.session-notice button{min-height:44px}.tabs{gap:4px}.tabs button{min-height:44px;padding:8px 12px}.savebar{gap:12px}.savebar button,.pagination button,.review-box button,.applied-image-card .button-row button,.applied-image-card .button-row a{min-height:44px}.card{padding:20px 17px}.submission summary{min-height:74px}.preview-header small{font-size:10px}.preview-embed small{font-size:11px}.log-row{padding:16px 4px}.form-field input,.form-field select{min-height:46px}.switch{min-height:24px!important}.brand small{font-size:11px}}
/* Membership desk: the review queue anchors the workspace. */
.overview-welcome{grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:28px;margin-bottom:38px}
.review-desk{padding:25px 28px 0;background:#191e2c;border:1px solid #304258;border-radius:14px;overflow:hidden}
.desk-heading{display:flex;align-items:center;gap:9px;color:#c0d0e4;font-size:12px}.desk-heading>.hof-icon{width:19px;height:19px}
.desk-live{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:11px;color:#abb6ca}
.review-desk h2{font-size:clamp(27px,2.6vw,39px);letter-spacing:-1.1px;line-height:1.15;margin:27px 0 13px;font-weight:700;color:#eaf5ff}
.review-desk>p{color:#abb6ca;font-size:13px;margin:0 0 22px;line-height:1.6;max-width:60ch}.review-desk .button-row{gap:10px}.review-desk .button{min-height:42px}
.desk-summary{display:flex;gap:0;border-top:1px solid #304258;margin:26px -28px 0;padding:18px 28px;background:#161c29}.desk-summary>div{flex:1;padding:0 15px;border-right:1px solid #304258}.desk-summary>div:first-child{padding-left:0}.desk-summary>div:last-child{border:0}
.desk-summary dt{font-size:11px;color:#abb6ca;margin-bottom:5px}.desk-summary dd{margin:0;font-size:19px;font-weight:600;font-variant-numeric:tabular-nums;color:#eaf5ff}
.desk-shortcuts{padding:16px 0}.desk-shortcuts h2{font-size:18px;letter-spacing:-.3px;margin:0 0 6px}.desk-shortcuts>p{color:#abb6ca;font-size:12px;margin:0 0 18px}
.desk-shortcuts>a{display:flex;gap:13px;align-items:center;padding:16px 0;border-top:1px solid #2b3447;color:#eaf5ff}.desk-shortcuts>a>.hof-icon{width:35px;height:35px}.desk-shortcuts strong{display:block;font-size:13px;font-weight:600;margin-bottom:5px}.desk-shortcuts small{display:block;color:#abb6ca;font-size:11px;line-height:1.5}.desk-shortcuts>a:hover strong{color:#7ed6ff}
.module-grid{gap:0 24px}.module-card{border:0;border-bottom:1px solid #2b3447;border-radius:0;background:transparent;min-height:97px;padding:17px 9px;grid-template-columns:35px minmax(0,1fr) 18px;gap:14px}.module-card>.hof-icon{width:35px;height:35px}.module-card:hover{background:#191e2c;border-color:#476583}.module-section-heading{margin-bottom:3px}.module-section-heading h3{font-size:16px}.module-section{margin-bottom:29px}
.brand small{letter-spacing:0;text-transform:none}.card>h2:first-child{font-size:18px;letter-spacing:-.3px}.form-field label{font-size:13px}.form-field .helper{max-width:70ch;line-height:1.6}.card{border-color:#2b3447;box-shadow:none}.preview>h2{font-size:18px}
@media(max-width:1100px){.overview-welcome{grid-template-columns:1fr}.desk-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.desk-shortcuts h2,.desk-shortcuts>p{grid-column:1/-1}}
@media(max-width:760px){.overview-welcome{gap:14px;margin-bottom:30px}.review-desk{padding:20px 19px 0}.review-desk h2{font-size:30px;margin-top:23px}.desk-heading{flex-wrap:wrap}.desk-live{font-size:10px}.desk-summary{margin:22px -19px 0;padding:17px 19px}.desk-summary>div{padding:0 12px}.desk-shortcuts{display:block;padding:14px 0}.desk-shortcuts>a{padding:14px 0}.module-card{padding:17px 6px;min-height:96px}.module-grid{gap:0}.review-desk .button-row{align-items:stretch}.review-desk .button{font-size:12px}.desk-summary dd{font-size:18px}}
@media(max-width:760px){.page-header>.button-row{width:100%;margin-top:4px}.review-desk .button-row>.button{width:100%}}
/* Shape rules: 12px grouped surfaces, 7px controls, circular avatars/status. */
.card,.record,.asset-grid figure,.review-desk{border-radius:12px}
button,.button,input,select,textarea{border-radius:7px}
button,.button{white-space:nowrap}
@media(max-width:420px){.button-row{gap:8px}button,.button{max-width:100%;white-space:normal}}
/* Accessible native checkboxes with an explicit switch treatment. */
input.switch{appearance:none;-webkit-appearance:none;position:relative;width:42px!important;height:24px;min-height:24px!important;padding:0;border:1px solid #64738b;border-radius:999px;background:#253044;cursor:pointer;flex:none}
input.switch:before{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#eaf5ff;transition:transform .15s ease}
input.switch:checked{background:#0875b6;border-color:#238ecb}input.switch:checked:before{transform:translateX(18px)}
input.switch:disabled{opacity:.5;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){input.switch:before{transition:none}}
.catalog-controls{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;gap:14px;align-items:center;margin-bottom:22px;padding:18px}.catalog-controls label{font-weight:600;color:#c7d6e9}.review-history{margin:18px 0;color:#abb6ca}.review-history p{font-size:12px;overflow-wrap:anywhere}.auto-role-rule label{display:block;margin-bottom:12px;font-size:13px}.auto-role-rule>.danger{margin-top:10px}
@media(max-width:760px){.catalog-controls{grid-template-columns:1fr;gap:10px}.catalog-controls>.button-row{flex-wrap:wrap}.catalog-controls select{width:100%}}
.preview-embed img.embed-thumbnail{width:72px;height:72px;object-fit:cover;float:right;margin:0 0 12px 15px}.preview-embed:after{content:'';display:block;clear:both}
/* Discord identities remain separate from community branding. */
.account-initial{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#262b40;color:#c9d7ef;flex:none}
.server img,.member-row img{border-radius:50%;object-fit:cover;flex:none}.server>span:last-child{min-width:0;overflow-wrap:anywhere}
.stat small{display:block;color:var(--muted,#a7b3cc);font-size:11px;margin-top:5px}
.member-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.member-row{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid #2b3041;min-width:0}.member-row>div{min-width:0;overflow-wrap:anywhere}.member-row p{margin:4px 0;color:#a7b3cc}.member-row small{color:#a7b3cc;line-height:1.6}.member-row a{color:inherit;text-decoration:none}.member-row a:hover{text-decoration:underline}.discord-login{width:100%;margin:12px 0}
@media(max-width:700px){.member-directory{grid-template-columns:1fr}}
.member-row>.manage-member{margin-left:auto;align-self:center;flex:none;padding:8px 12px}.member-row>div{flex:1}.member-dialog{width:min(760px,calc(100vw - 24px));max-height:90dvh;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);overflow:auto}.member-dialog::backdrop{background:rgba(5,8,17,.78)}.member-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:-24px;background:var(--panel);padding:12px 0;z-index:2}.member-identity{display:flex;align-items:center;gap:14px;min-width:0}.member-identity img{border-radius:50%;object-fit:cover}.member-identity h2{margin:0;overflow-wrap:anywhere}.member-identity p{margin:3px 0;color:var(--muted)}.member-section{border-top:1px solid var(--line);padding:20px 0}.member-section h3{margin-top:0}.member-section label{display:block;margin:10px 0}.member-section input:not([type=checkbox]),.member-section select,.member-section textarea,.moderation-entry input{display:block;width:100%;margin:7px 0;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:5px;padding:10px}.member-section textarea{min-height:88px}.member-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}.member-role-tags{display:flex;flex-wrap:wrap;gap:7px}.member-section details{margin-top:18px}.member-section summary{cursor:pointer;font-weight:600}.permission-row{display:flex!important;justify-content:space-between;align-items:center;gap:16px;text-transform:capitalize}.permission-row select{max-width:150px}.member-confirm{padding:18px;border:1px solid var(--blue);border-radius:7px;background:var(--bg)}.moderation-entry{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.moderation-entry small{display:block;color:var(--muted);margin-top:5px}.moderation-entry p{white-space:pre-wrap}.member-dialog #member-feedback:empty{display:none}.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}@media(max-width:700px){.member-control-grid{grid-template-columns:1fr;gap:4px}.member-row{flex-wrap:wrap}.member-row>.manage-member{margin-left:58px}.member-dialog{padding:16px}.member-dialog-top{top:-16px}.member-identity h2{font-size:20px}}
.member-dialog{max-width:calc(100vw - 24px)}.member-dialog #member-reason{min-height:64px}@media(max-width:700px){.member-dialog-top{flex-wrap:wrap;align-items:flex-start}.member-dialog-top>.button-row{width:100%;justify-content:flex-end}.member-dialog-top .member-identity{width:100%}}
