:root{--bg:#10141b;--text:#f4f2ed;--muted:#a2a9b5;--panel:#1b222d;--line:rgba(255,255,255,.11);--warm:#ffc983}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:radial-gradient(ellipse 105% 50% at 0% -10%,#273148 0%,transparent 70%),var(--bg);-webkit-font-smoothing:antialiased}
button{font:inherit}button:focus-visible{outline:2px solid var(--warm);outline-offset:4px}
.app-shell{max-width:660px;margin:0 auto;padding:0 18px env(safe-area-inset-bottom)}
.topbar{padding:20px 0 22px;display:flex;align-items:center;justify-content:space-between;gap:8px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:#293344;border:1px solid #46536c;border-radius:13px;font-size:25px;box-shadow:0 4px 16px #0003}.brand-name{font-weight:900;letter-spacing:.095em;font-size:14px}.brand-subtitle{font-size:11px;letter-spacing:.015em;color:var(--muted);margin-top:3px}.edition{border:1px solid #414858;background:#202734;border-radius:20px;font-size:10px;letter-spacing:.04em;padding:6px 10px;color:#d9deea;white-space:nowrap;font-weight:800}
.hero{background:linear-gradient(120deg,#39324c 0%,#252f42 56%,#1b2533 100%);border:1px solid #4b4864;border-radius:23px;padding:24px 21px 18px;position:relative;overflow:hidden;box-shadow:0 12px 28px #0003}.hero:after{content:'✱';font-size:176px;color:#ffffff0a;position:absolute;top:-65px;right:-28px;transform:rotate(-12deg);pointer-events:none}.hero-kicker{position:relative;z-index:1;font-size:10px;font-weight:800;letter-spacing:.11em;color:#cfc3f0;display:flex;gap:9px;align-items:center}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#d9c0ff;box-shadow:0 0 0 4px #e7bfff20}.hero h1{position:relative;z-index:1;margin:19px 0 9px;font-size:clamp(27px,6.5vw,38px);letter-spacing:-.055em;line-height:1.07;font-weight:900}.hero h1 em{font-style:normal;color:var(--warm)}.hero p{position:relative;z-index:1;color:#cbd1e1;font-size:13px;line-height:1.5;max-width:310px;margin:0}.hero-footer{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px;position:relative;z-index:1}.hero-footer span{background:#151b287d;border:1px solid #ffffff1b;color:#d3dbe9;font-size:10px;padding:6px 9px;border-radius:8px}
.context-panel{display:flex;align-items:center;gap:12px;margin-top:14px;background:#1c2430;border:1px solid #384357;border-radius:16px;padding:13px 12px}.context-icon{font-size:20px;width:41px;height:41px;flex:none;display:grid;place-items:center;border-radius:12px;background:#343d4d}.context-copy{display:flex;flex:1;flex-direction:column;gap:4px}.context-copy strong{font-size:13px}.context-copy span{font-size:11px;color:var(--muted);line-height:1.35}.lock{filter:grayscale(1);opacity:.6}
.module-section{margin-top:28px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:15px}.eyebrow{font-size:10px;color:#adbacd;font-weight:850;letter-spacing:.13em}.section-heading h2{font-size:24px;letter-spacing:-.04em;margin:5px 0 0}.section-count{font-size:10px;color:var(--muted);white-space:nowrap;padding-bottom:4px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.module{position:relative;display:flex;flex-direction:column;min-height:170px;text-align:left;border-radius:19px;border:1px solid var(--line);padding:16px 13px 14px;color:var(--text);overflow:hidden;cursor:pointer;transition:transform .14s,border-color .14s,filter .14s}.module:active{transform:scale(.97)}.module:hover{filter:brightness(1.09);border-color:#ffffff50}.module-number{position:absolute;right:12px;top:12px;font-size:10px;font-weight:900;opacity:.55;letter-spacing:.04em}.module-icon{width:51px;height:51px;display:grid;place-items:center;font-size:30px;background:#ffffff17;border:1px solid #ffffff20;border-radius:15px;margin-bottom:auto}.module-name{font-size:16px;font-weight:850;letter-spacing:-.03em;margin-top:14px}.module-desc{font-size:11px;color:#d6d6df;opacity:.82;margin-top:4px;line-height:1.3;padding-right:8px}.module-arrow{position:absolute;right:12px;bottom:14px;font-size:15px;color:#f3e9d5;opacity:.75}.module-violet{background:linear-gradient(143deg,#56446b,#292439)}.module-orange{background:linear-gradient(143deg,#6b493a,#322827)}.module-blue{background:linear-gradient(143deg,#35526d,#243343)}.module-green{background:linear-gradient(143deg,#365449,#23352f)}.module-red{background:linear-gradient(143deg,#6a3e4d,#382932)}.module-slate{background:linear-gradient(143deg,#454e65,#282e3d)}
.status-note{display:flex;gap:12px;margin:19px 0 0;padding:17px;border:1px dashed #475166;border-radius:15px;background:#171e28}.status-symbol{font-size:22px}.status-note strong{font-size:12px}.status-note p{font-size:11px;line-height:1.55;color:#a7b0c1;margin:6px 0 0}.footer{font-size:10px;color:#738095;letter-spacing:.03em;text-align:center;padding:27px 0 29px}.footer span{margin:0 5px}
.feature-dialog{position:fixed;inset:0;border:none;max-width:min(92vw,420px);width:100%;background:#222a37;color:var(--text);border:1px solid #4b566c;border-radius:21px;padding:26px 24px 23px;box-shadow:0 25px 90px #0009}.feature-dialog::backdrop{background:#03070bbd;backdrop-filter:blur(5px)}.feature-dialog form:first-child{position:absolute;top:11px;right:11px}.close-dialog{width:30px;height:30px;border-radius:10px;border:1px solid #47556a;background:#344051;color:#e0e5f0}.dialog-symbol{font-size:43px;margin-bottom:18px}.feature-dialog h2{font-size:25px;letter-spacing:-.04em;margin:8px 0}.feature-dialog p{font-size:13px;line-height:1.6;color:#c6d0dc}.dialog-warning{padding:12px;background:#151b26;border-radius:10px;border:1px solid #414b5c}.dialog-button{margin-top:9px;border:0;border-radius:12px;background:#eec38b;color:#27202a;font-weight:800;padding:13px;width:100%;cursor:pointer}
@media (max-width:360px){.app-shell{padding-left:12px;padding-right:12px}.module{min-height:165px;padding:13px 10px}.module-name{font-size:14px}.module-desc{font-size:10px}.edition{font-size:9px}.hero{padding:20px 16px}.brand-name{font-size:12px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* V0.2: branded mini app and custom illustrated assets. */
.topbar{justify-content:flex-start;padding:17px 0 20px}
.brand{min-width:0;align-items:center;gap:12px}
.brand>div:last-child{min-width:0}
.brand-mark{width:48px;height:48px;flex:0 0 48px;padding:0;overflow:hidden;border-radius:13px;background:#161c2a}
.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}
.brand-name{font-size:18px;letter-spacing:.005em;text-transform:none;line-height:1.15}
.brand-subtitle{font-size:11px;line-height:1.35;letter-spacing:0;max-width:34em;color:#c2b8da;margin-top:4px}
.hero{padding-top:27px}
.hero h1{margin-top:0}
.hero p{font-size:13px;max-width:380px}
.module{min-height:190px}
.module-icon{width:69px;height:69px;flex:0 0 69px;overflow:hidden;padding:0;font-size:0;border-radius:17px;background:#14182a;border-color:#ffffff30}
.module-icon img{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}
.module-name{margin-top:11px}
.module-desc{padding-right:12px;overflow-wrap:break-word}
.dialog-symbol{width:76px;height:76px;margin-bottom:16px;overflow:hidden;border-radius:19px}
.dialog-symbol img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:360px){.brand-name{font-size:16px}.brand-subtitle{font-size:10px}.module{min-height:188px}.module-icon{width:61px;height:61px;flex-basis:61px}}

/* V0.4 group selector only; approved V0.2 cards and layout unchanged. */
.context-copy{min-width:0}
.susliche-group-controls{display:flex;align-items:center;gap:7px;margin-top:7px;width:100%;max-width:100%}
.susliche-group-controls[hidden],.susliche-group-refresh[hidden]{display:none!important}
.susliche-group-select{font:inherit;font-size:12px;line-height:1.3;min-width:0;flex:1;max-width:100%;padding:9px 30px 9px 10px;color:var(--text);background:#151b28;border:1px solid #46546a;border-radius:10px;outline-offset:2px;text-overflow:ellipsis}
.susliche-group-select:disabled{opacity:.65}
.susliche-group-select option{background:#151b28;color:var(--text)}
.susliche-group-refresh{flex:0 0 35px;width:35px;height:35px;border-radius:10px;background:#263345;border:1px solid #46546a;color:#e4e8f1;cursor:pointer;font-size:21px;line-height:1}
.susliche-group-refresh:disabled{opacity:.5;cursor:wait}
.susliche-group-refresh:focus-visible,.susliche-group-select:focus-visible{outline:2px solid var(--warm)}

/* Susliche Mini App V0.5 read-only rankings — scoped; V0.2 cards unchanged. */
.susliche-rankings[hidden]{display:none!important}
.susliche-rankings{width:100%;margin-top:14px}
.susliche-rankings-tabs{display:flex;gap:7px;flex-wrap:wrap}
.susliche-rankings-tabs button{flex:1 1 120px;min-width:0;font:inherit;font-size:12px;font-weight:750;color:#c5d1e3;background:#1a2230;border:1px solid #4b576c;border-radius:11px;padding:11px 7px;cursor:pointer}
.susliche-rankings-tabs button[aria-pressed="true"]{border-color:#eec38b;color:#ffdfb5;background:#39313a}
.susliche-rankings-status{font-size:13px;line-height:1.5;color:#c6d0dc;min-height:40px;margin:16px 0!important}
.susliche-rankings-status[hidden]{display:none!important}
.susliche-rankings-list{padding:0 0 0 31px;margin:15px 0 6px;max-height:min(43vh,350px);overflow-y:auto;scrollbar-width:thin}
.susliche-rankings-list li{padding:10px 6px;border-bottom:1px solid #46516480;font-size:12px;line-height:1.5}
.susliche-rankings-list li::marker{color:#eec38b;font-weight:800}
.susliche-rankings-name{display:block;overflow-wrap:anywhere;font-size:13px}
.susliche-rankings-value{display:block;color:#d6bd99;margin-top:3px}
.susliche-rankings-refresh{display:block;width:100%;background:#344051;border:1px solid #57677c;border-radius:10px;color:#ecf0f6;cursor:pointer;font:inherit;font-size:12px;font-weight:700;padding:11px;margin-top:15px}
.susliche-rankings-refresh:disabled{opacity:.55;cursor:wait}
.susliche-rankings-tabs button:focus-visible,.susliche-rankings-refresh:focus-visible{outline:2px solid #eec38b;outline-offset:2px}
/* Susliche Mini App V0.6: snake publication controls; original cards unchanged. */
.susliche-snake-action[hidden]{display:none!important}
.susliche-snake-action{display:flex;flex-direction:column;gap:12px;margin:6px 0 2px}
.feature-dialog .susliche-snake-explanation{margin:0;color:#d4dbe6;font-size:13px;line-height:1.5}
.feature-dialog .susliche-snake-status{margin:0;border:1px solid #46546a;border-radius:11px;padding:12px;background:#161e2b;color:#e0e8f3;font-size:12px;line-height:1.5}
.susliche-snake-submit{width:100%;background:#eec38b;color:#27202a;border:0;border-radius:12px;padding:14px 12px;font-weight:800;font-size:14px;cursor:pointer}
.susliche-snake-submit:disabled{opacity:.55;cursor:default}
.susliche-snake-submit:focus-visible{outline:2px solid #f5d2a1;outline-offset:3px}
