@property --ang{syntax: "<angle>"; inherits: false; initial-value: 0deg;}:root{--font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--mono: "SF Mono", ui-monospace, Menlo, Consolas, monospace;--px: 0;--py: 0;--bg: #04050a;--text: #f5f5f7;--muted: rgba(235, 235, 245, .62);--a1: #a9c8ff;--a2: #cdb3ff;--a3: #ffffff;--panel: rgba(255, 255, 255, .075);--panel-b: rgba(255, 255, 255, .18);--glow: rgba(150, 180, 255, .45);--r: 34px;--blur: 44px;--btn-bg: linear-gradient(180deg, #ffffff, #dfe3ee);--btn-fg: #0b0b10;--btn-glow: 0 10px 40px rgba(170, 190, 255, .45);--ring-stops: transparent 0deg, rgba(255, 255, 255, 0) 40deg, #bcd2ff 120deg, #ffffff 160deg, #d6c2ff 200deg, transparent 280deg;--shimmer: linear-gradient(100deg, #9fb5d8 0%, #ffffff 30%, #c9d8ff 45%, #ffffff 55%, #a99ad6 75%, #ffffff 100%);--input: rgba(255, 255, 255, .06);--chip: rgba(255, 255, 255, .07);--ok: #34d399;--danger: #ff6b8a;--rail: 72px;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}html,body{margin:0;min-height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}img{max-width:100%}#app{position:relative;z-index:5;min-height:100dvh}#vision-bg{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;display:block;pointer-events:none}#vision-fx,.fx{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.par{transform:translate3d(calc(var(--px) * var(--d, 20px)),calc(var(--py) * var(--d, 20px)),0);transition:transform .25s ease-out}.v-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.7;mix-blend-mode:screen}.v-orb.o1{width:52vw;height:52vw;left:-12vw;top:-18vw;background:radial-gradient(circle,#3a4dff 0%,transparent 65%);animation:float1 18s ease-in-out infinite}.v-orb.o2{width:44vw;height:44vw;right:-10vw;bottom:-14vw;background:radial-gradient(circle,#9a5cff 0%,transparent 65%);animation:float2 22s ease-in-out infinite}.v-orb.o3{width:30vw;height:30vw;left:45vw;top:30vh;background:radial-gradient(circle,#2bd4ff 0%,transparent 65%);opacity:.35;animation:float1 26s ease-in-out infinite reverse}.v-beam{position:absolute;left:50%;top:-30vh;width:120vw;height:130vh;transform:translate(-50%);background:conic-gradient(from 180deg at 50% 0%,transparent 160deg,rgba(190,210,255,.13) 172deg,rgba(255,255,255,.22) 180deg,rgba(190,210,255,.13) 188deg,transparent 200deg);filter:blur(20px);animation:beam 9s ease-in-out infinite alternate}.v-slab{position:absolute;border-radius:36px;background:linear-gradient(145deg,#ffffff1a,#ffffff05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 40px 80px #0006,inset 0 1px #fff3}.v-slab.s1{width:220px;height:300px;left:6vw;top:18vh;--d: -40px;rotate:-8deg}.v-slab.s2{width:180px;height:180px;right:7vw;top:14vh;--d: -60px;rotate:10deg;border-radius:50%}.v-slab.s3{width:260px;height:150px;right:12vw;bottom:10vh;--d: -30px;rotate:-4deg}.v-floor{position:absolute;left:50%;bottom:-38vh;width:140vw;height:60vh;transform:translate(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(140,170,255,.28),transparent 60%);filter:blur(30px)}@keyframes float1{50%{transform:translate(6vw,5vh) scale(1.1)}}@keyframes float2{50%{transform:translate(-5vw,-6vh) scale(1.08)}}@keyframes beam{0%{opacity:.6;transform:translate(-52%) rotate(-3deg)}to{opacity:1;transform:translate(-48%) rotate(3deg)}}.panel{position:relative;background:var(--panel);border:1px solid var(--panel-b);border-radius:var(--r);backdrop-filter:blur(var(--blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--blur)) saturate(170%);box-shadow:0 30px 80px #00000073,inset 0 1px #ffffff29,inset 0 0 0 .5px #ffffff0a;transform-style:preserve-3d}.ring:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;background:conic-gradient(from var(--ang),var(--ring-stops));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:ang 6s linear infinite}.ring:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;pointer-events:none;z-index:-1;background:conic-gradient(from var(--ang),var(--ring-stops));filter:blur(22px);opacity:.25;animation:ang 6s linear infinite}@keyframes ang{to{--ang: 360deg}}.shimmer{background:var(--shimmer);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shim 6s linear infinite}@keyframes shim{to{background-position:-250% 0}}.boot{min-height:100dvh;display:grid;place-items:center;text-align:center;color:var(--muted);padding:24px}.boot .mark{width:56px;height:56px;margin:0 auto 12px;border-radius:16px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),transparent 40%),conic-gradient(from var(--ang),var(--a1),var(--a2),var(--a3),var(--a1));color:#0a0a10;font-weight:700;animation:ang 5s linear infinite}.login-page{min-height:100dvh;padding:48px 24px 64px;display:flex;align-items:center}.login-wrap{max-width:1160px;width:100%;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.hero h1{font-size:clamp(40px,6.2vw,84px);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;font-weight:800}.hero h1 .line2{display:block}.hero p{font-size:17px;line-height:1.65;color:var(--muted);max-width:30em;margin:0 0 28px}.stats{display:flex;gap:12px;flex-wrap:wrap}.stat{padding:14px 18px;border-radius:calc(var(--r) * .6);background:var(--chip);border:1px solid var(--panel-b);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);min-width:110px}.stat b{display:block;font-size:26px;letter-spacing:-.03em;font-weight:750;font-variant-numeric:tabular-nums}.stat span{font-size:12px;color:var(--muted)}.login-card{width:100%;max-width:420px;justify-self:end;padding:36px 32px 28px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.brand{display:flex;align-items:center;gap:14px;margin-bottom:28px;transform:translateZ(40px)}.logo{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;position:relative;flex:none;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),transparent 40%),conic-gradient(from var(--ang),var(--a1),var(--a2),var(--a3),var(--a1));box-shadow:0 0 30px var(--glow),inset 0 0 0 1px #fff6;animation:ang 5s linear infinite}.logo svg{width:26px;height:26px;color:#0a0a10}.brand h2{margin:0;font-size:22px;letter-spacing:-.02em;font-weight:750}.brand small{display:block;margin-top:3px;color:var(--muted);font-size:12.5px}.field{display:block;margin-bottom:14px;transform:translateZ(24px)}.field>span,.field>label{display:block;font-size:12.5px;color:var(--muted);margin:0 0 7px 4px;letter-spacing:.02em}.inp{position:relative;display:flex;align-items:center;border-radius:calc(var(--r) * .5);background:var(--input);border:1px solid var(--panel-b);transition:box-shadow .3s,border-color .3s,background .3s}.inp svg.ic{width:18px;height:18px;margin-left:14px;color:var(--muted);flex:none}.inp input,.inp select,.inp textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:14px 14px 14px 10px;font-size:15px;color:var(--text)}.inp textarea{resize:vertical;min-height:72px;padding-top:12px}.inp input::placeholder,.inp textarea::placeholder{color:#ffffff52}.inp:focus-within{border-color:var(--a1);box-shadow:0 0 0 4px color-mix(in srgb,var(--a1) 18%,transparent),0 0 28px var(--glow);background:color-mix(in srgb,var(--input) 60%,rgba(255,255,255,.06))}.inp:focus-within svg.ic{color:var(--a1)}.eye{border:0;background:transparent;padding:10px 14px;color:var(--muted);display:grid;place-items:center}.eye svg{width:18px;height:18px}.row{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--muted);margin:4px 4px 22px}.row a{color:var(--a1);text-decoration:none}.chk{display:flex;align-items:center;gap:8px;cursor:pointer}.chk input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:5px;border:1px solid var(--panel-b);background:var(--input);display:grid;place-items:center;margin:0}.chk input:checked{background:var(--a1);border-color:var(--a1);box-shadow:0 0 12px var(--glow)}.chk input:checked:after{content:"";width:8px;height:4px;border:2px solid #000;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.btns{display:grid;grid-template-columns:1.4fr 1fr;gap:10px;transform:translateZ(30px)}.btn{position:relative;overflow:hidden;border:0;border-radius:calc(var(--r) * .5);padding:14px 16px;font-size:15px;font-weight:700;letter-spacing:.02em;transition:transform .2s,box-shadow .3s,filter .3s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:var(--btn-bg);color:var(--btn-fg);box-shadow:var(--btn-glow)}.btn.primary:after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.75),transparent);transform:skew(-20deg);transition:left .7s}.btn.primary:hover:after{left:130%}.btn.primary:hover{box-shadow:var(--btn-glow),0 14px 32px #00000059;background:linear-gradient(180deg,#fff,#eef1f8)}.btn.ghost{background:var(--chip);color:var(--text);border:1px solid var(--panel-b)}.btn.ghost:hover{background:#ffffff1f;box-shadow:0 0 24px var(--glow)}.btn.danger{background:#ff6b8a29;color:#ffb3c3;border:1px solid rgba(255,107,138,.35)}.btn.small{padding:8px 12px;font-size:13px;min-height:36px;border-radius:12px}.btn:disabled{opacity:.6;cursor:progress}.btn:active{transform:scale(.97)}.btn .spin{display:none;width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}.btn.loading .spin{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;font-size:12px;color:var(--muted)}.note .led{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399}.shake{animation:shake .45s}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.banner{border-radius:12px;padding:10px 12px;margin:0 0 12px;font-size:13.5px}.banner.error{background:#ff6b8a24;color:#ffb3c3;border:1px solid rgba(255,107,138,.3)}.banner.info{background:#a9c8ff1f;color:var(--a1);border:1px solid rgba(169,200,255,.25)}.shell{min-height:100dvh;display:grid;grid-template-columns:var(--rail) 1fr}.rail{position:sticky;top:0;height:100dvh;z-index:20;display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 10px calc(18px + env(safe-area-inset-bottom));background:#080a1473;border-right:1px solid rgba(255,255,255,.1);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);box-shadow:inset -1px 0 #ffffff0a}.rail-logo{width:42px;height:42px;border-radius:14px;margin-bottom:8px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),transparent 40%),conic-gradient(from var(--ang),var(--a1),var(--a2),var(--a3),var(--a1));box-shadow:0 0 22px var(--glow);animation:ang 5s linear infinite}.rail-logo svg{width:20px;height:20px;color:#0a0a10}.rail-btn{width:46px;height:46px;border-radius:16px;border:1px solid transparent;background:transparent;color:var(--muted);display:grid;place-items:center;transition:all .25s;position:relative}.rail-btn svg{width:22px;height:22px}.rail-btn:hover{color:var(--text);background:#ffffff14;border-color:#ffffff1f}.rail-btn.on,.rail-btn[aria-pressed=true]{color:var(--btn-fg);background:var(--btn-bg);box-shadow:var(--btn-glow);border-color:transparent}.rail-btn .tip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);white-space:nowrap;padding:6px 10px;border-radius:10px;background:#141622eb;border:1px solid rgba(255,255,255,.14);font-size:12px;color:var(--text);opacity:0;pointer-events:none;transition:opacity .2s;z-index:30}.rail-btn:hover .tip,.rail-btn:focus-visible .tip{opacity:1}.rail-spacer{flex:1}.shell-main{min-width:0;padding:28px 28px 56px}.tb{max-width:1200px;margin:0 auto}.tb-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:4px 0 22px}.tb-head .hi{font-size:13px;color:var(--muted);letter-spacing:.05em;display:flex;gap:8px;align-items:center}.tb-head h1{margin:8px 0 0;font-size:clamp(32px,4.6vw,56px);letter-spacing:-.04em;font-weight:800;line-height:1.08}.tb-tools{display:flex;gap:12px;align-items:center;flex:1;justify-content:flex-end;min-width:260px}.search{flex:1;max-width:420px}.avatar{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:15px;color:var(--btn-fg);background:var(--btn-bg);box-shadow:var(--btn-glow);position:relative;overflow:hidden;border:0;padding:0}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar:after{content:"";position:absolute;right:1px;bottom:1px;width:11px;height:11px;border-radius:50%;background:#34d399;border:2px solid var(--bg)}.avatar.editing:after{display:none}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.chip{border:1px solid var(--panel-b);background:var(--chip);color:var(--muted);padding:8px 16px;border-radius:999px;font-size:13px;font-weight:600;transition:all .25s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chip:hover{color:var(--text);transform:translateY(-1px)}.chip.on{color:var(--btn-fg);background:var(--btn-bg);border-color:transparent;box-shadow:var(--btn-glow)}.chip .n{opacity:.6;margin-left:5px;font-size:11px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;perspective:1200px}.card{position:relative;padding:22px 20px 18px;min-height:196px;display:flex;flex-direction:column;cursor:pointer;border-radius:calc(var(--r) * .8);text-align:left;color:inherit;width:100%;border:1px solid var(--panel-b);background:var(--panel);backdrop-filter:blur(var(--blur)) saturate(170%);-webkit-backdrop-filter:blur(var(--blur)) saturate(170%);box-shadow:0 20px 50px #00000059,inset 0 1px #ffffff24;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s,border-color .4s;will-change:transform;--mx: 50%;--my: 50%;--hue: #a9c8ff;animation:cardin .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 45ms)}@keyframes cardin{0%{opacity:0;transform:translateY(24px) scale(.96)}}.card .spot{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx) var(--my),color-mix(in srgb,var(--hue) 30%,transparent),transparent 45%)}.card:hover .spot{opacity:1}.card:hover{box-shadow:0 30px 70px #0000008c,0 0 50px color-mix(in srgb,var(--hue) 40%,transparent),inset 0 1px #fff3}.card .ico{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;margin-bottom:18px;overflow:hidden;flex:none;background:linear-gradient(145deg,color-mix(in srgb,var(--hue) 90%,#fff 10%),color-mix(in srgb,var(--hue) 45%,#000));box-shadow:0 10px 30px color-mix(in srgb,var(--hue) 50%,transparent),inset 0 1px #ffffff80;transition:transform .4s}.card:hover .ico{transform:scale(1.08) rotate(-4deg)}.card .ico img{width:100%;height:100%;object-fit:cover}.card .ico svg{width:24px;height:24px;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.card h3{margin:0 0 7px;font-size:17px;font-weight:720;letter-spacing:-.01em}.card p{margin:0;font-size:13.2px;line-height:1.55;color:var(--muted);flex:1}.card .ft{margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.tag{padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--hue) 16%,transparent);color:color-mix(in srgb,var(--hue) 70%,#fff);border:1px solid color-mix(in srgb,var(--hue) 35%,transparent)}.go{display:flex;align-items:center;gap:6px;color:var(--muted);transition:color .3s,gap .3s}.card:hover .go{color:var(--text);gap:10px}.card-actions{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:2}.card-actions button{width:32px;height:32px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:#0a0c168c;color:var(--text);display:grid;place-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.card-actions button svg{width:14px;height:14px}.card-actions button:hover{background:#ffffff24}.empty-grid{grid-column:1 / -1;text-align:center;padding:60px 20px;color:var(--muted);font-size:15px;border:1px dashed rgba(255,255,255,.16);border-radius:24px;background:#ffffff08}.foot{text-align:center;color:var(--muted);font-size:12px;margin-top:36px;opacity:.75}.edit-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:12px 16px;border-radius:18px;background:#a9c8ff1a;border:1px solid rgba(169,200,255,.28)}.edit-banner strong{font-size:14px}.edit-banner span{color:var(--muted);font-size:12.5px}.edit-actions{display:flex;gap:8px;flex-wrap:wrap}.upload-btn{flex:none;white-space:nowrap;box-shadow:0 8px 28px #aabeff66}.upload-btn svg{flex:none}.modal-wide{width:min(620px,100%)}.file-row-stack{flex-direction:column;align-items:flex-start}.hint{font-size:12.5px;color:var(--muted);line-height:1.45}.tb-tools .upload-btn{min-height:40px;padding-inline:14px}@media(max-width:720px){.upload-btn span{display:none}.upload-btn{padding-inline:12px;border-radius:14px}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#02040c9e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:grid;place-items:center;padding:20px}.modal{width:min(560px,100%);max-height:min(88dvh,820px);overflow:auto;padding:28px 24px 22px;border-radius:28px;transform-style:flat;transform:translateZ(0);isolation:isolate}.modal .field,.modal .btns{transform:none}.modal .btn.primary:hover,.modal .btn.ghost:hover,.modal .btn:active{transform:none;filter:none}.modal h2{margin:0 0 6px;font-size:22px;letter-spacing:-.02em}.modal .lede{margin:0 0 18px;color:var(--muted);font-size:13.5px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px;position:relative;z-index:1;transform:translateZ(0)}.icon-preview{width:56px;height:56px;border-radius:16px;overflow:hidden;background:#ffffff14;border:1px solid var(--panel-b);display:grid;place-items:center;flex:none}.icon-preview img{width:100%;height:100%;object-fit:cover}.file-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.file-row input[type=file]{font-size:12px;color:var(--muted);max-width:100%}.cat-list,.tool-mini-list{display:flex;flex-direction:column;gap:8px;margin:12px 0 18px}.cat-item,.tool-mini{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:10px 12px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.cat-item strong,.tool-mini strong{font-size:14px}.cat-item span,.tool-mini span{font-size:12px;color:var(--muted)}.inline-actions{display:flex;gap:6px}.tool-view{height:100dvh;display:flex;flex-direction:column;background:#04050ab8}.tool-bar{flex:none;display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 16px calc(10px + env(safe-area-inset-top));background:#080a148c;backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);border-bottom:1px solid rgba(255,255,255,.1)}.tool-title{min-width:0;flex:1}.tool-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sync{font-size:12px;color:var(--muted)}.sync[data-kind=saved]{color:var(--ok)}.sync[data-kind=error]{color:var(--danger)}.sync[data-kind=saving]{color:var(--a1)}.storage-toggle{flex:none;display:inline-flex;padding:3px;gap:2px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.14)}.storage-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:600;padding:6px 10px;border-radius:999px;min-height:28px;line-height:1}.storage-opt.on{background:#ffffff24;color:var(--text);box-shadow:0 0 0 1px #ffffff14}.storage-pill{flex:none;font-size:12px;color:var(--muted);padding:6px 10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}@media(max-width:640px){.tool-bar{flex-wrap:wrap}.storage-toggle{margin-left:auto}}.frame-wrap{position:relative;flex:1;min-height:0}.frame-wrap iframe{width:100%;height:100%;border:0;background:#fff}.frame-status{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);background:#04050ab8}.missing{padding:48px 16px;text-align:center}.toast{position:fixed;left:50%;bottom:48px;z-index:90;transform:translate(-50%,30px) scale(.95);opacity:0;pointer-events:none;padding:12px 20px;border-radius:999px;background:#14141cb8;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);font-size:14px;font-weight:600;box-shadow:0 20px 50px #00000080,0 0 40px var(--glow);transition:all .45s cubic-bezier(.3,1.5,.5,1);white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%) scale(1)}@media(max-width:980px){.login-wrap{grid-template-columns:1fr;gap:28px}.login-card{justify-self:center}.hero{text-align:center}.hero p{margin-left:auto;margin-right:auto}.stats{justify-content:center}.v-slab{display:none}}@media(max-width:720px){.shell{grid-template-columns:1fr}.rail{position:fixed;left:0;right:0;bottom:0;top:auto;height:auto;flex-direction:row;justify-content:space-around;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid rgba(255,255,255,.1)}.rail-logo,.rail-spacer,.rail-btn .tip{display:none}.shell-main{padding:20px 16px 96px}.tb-tools{min-width:100%}.search{max-width:none}.grid{grid-template-columns:1fr 1fr;gap:12px}.card{min-height:170px;padding:16px 14px 14px}.card .go span{display:none}.chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-16px;margin-right:-16px;padding:0 16px 4px}.chip{flex:none}}@media(max-width:420px){.grid{grid-template-columns:1fr}.login-card{padding:28px 22px 22px}.hero h1{font-size:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
