:root{color-scheme:dark;--bg:#090909;--card:#141414;--text:#f3f3f3;--muted:#999;--line:#2a2a2a;--radius:20px}*{box-sizing:border-box}body{min-width:0;margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid #eee;outline-offset:6px}[hidden]{display:none!important}.wrap{width:min(1000px,calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:0;left:20px;transform:translateY(-150%);padding:12px;background:#fff;color:#111;z-index:10}.skip:focus{top:10px;transform:none}.route-loading{min-height:50vh;display:grid;place-items:center;color:var(--muted);font-size:14px}.wordmark-tech{width:calc(100% - 24px);height:30vh;min-height:130px;margin:34px auto 0;color:var(--text)}.wordmark-tech .tech-text{font-family:SF Mono,SFMono-Regular,ui-monospace,Cascadia Mono,JetBrains Mono,Menlo,Consolas,Liberation Mono,monospace}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;width:min(680px,calc(100% - 40px));margin:56px auto 80px;animation:appear 1.1s .12s cubic-bezier(.22,1,.36,1) both}.card{display:flex;flex-direction:column;gap:10px;padding:26px 24px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);text-decoration:none;transition:background .35s,border-color .35s,transform .35s}.card:hover{background:#1c1c1c;border-color:#555;transform:translateY(-3px)}.card:focus-visible{outline:2px solid #ddd;outline-offset:4px}.card-title{font-size:19px;font-weight:500}.card-desc{font-size:14px;font-weight:400;color:var(--muted);line-height:1.5}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:19px}.vault-home,.resource-home{font-size:12px;color:#aaa}.vault-home:hover,.resource-home:hover{color:#fff}.page-intro{text-align:center;margin-top:34px}.page-intro h1{font-size:40px;font-weight:500;margin:0;letter-spacing:-.035em}#emotion-ball{position:fixed;left:0;top:0;width:72px;height:72px;z-index:60;pointer-events:auto;cursor:pointer;will-change:transform}.ball-tip{position:fixed;z-index:61;transform:translate(-50%,-100%);background:#222;color:#fff;font-size:13px;line-height:1;padding:8px 12px;border-radius:999px;border:1px solid #3a3a3a;pointer-events:none;opacity:0;transition:opacity .3s;white-space:nowrap;max-width:70vw}.ball-tip.show{opacity:1}.toast{position:fixed;right:20px;bottom:20px;padding:11px 16px;border-radius:12px;color:#fff;background:#20242d;font-size:14px;opacity:0;pointer-events:none;transform:translateY(8px);transition:.18s ease;z-index:50}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#c94c4c}@keyframes appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.slats-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.slats-bg canvas{pointer-events:none}body>*{position:relative}#root{position:relative;z-index:1}.page-intro,.app,.cards,.page-footer,.resource-footer,.fx-footer,.site-header,.room-diag,.room-status{position:relative;z-index:2}@media (max-width:600px){.cards{width:calc(100% - 32px);margin:40px auto 48px}.card{padding:22px 20px}#emotion-ball{width:56px;height:56px}.page-intro{margin-top:34px}.page-intro h1{font-size:32px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
