:root{color-scheme:dark;--bg:#070b16;--panel:#0d1424;--line:rgba(146,164,214,.15);--text:#f7f8ff;--muted:#8f9bb9;--blue:#4b7cff;--violet:#8b5cf6;--green:#4ee6a8}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at 8% 12%,rgba(68,98,196,.22),transparent 25%),radial-gradient(circle at 86% 15%,rgba(93,58,189,.18),transparent 24%),linear-gradient(135deg,#080c17,#0a1020 50%,#070b13);color:var(--text)}button{font:inherit;color:inherit;cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:170px 320px minmax(500px,1fr) 250px;grid-template-rows:74px 1fr;overflow:hidden}.topbar{grid-column:1/-1;z-index:5;display:flex;align-items:center;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:#080c17cc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand,.mobile-brand{display:flex;align-items:center;gap:13px}.brand{min-width:360px}.brand strong,.mobile-brand strong{display:block;font-size:20px;letter-spacing:.2px}.brand small,.mobile-brand small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.logo{width:44px;height:44px;flex:none;border-radius:14px;background:linear-gradient(135deg,#9457ff,#2b84ff 68%,#40dbff);box-shadow:0 0 30px #5f5cff6b;display:grid;place-items:center}.logo:after{content:"";border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:14px solid #fff;margin-left:4px}.search{width:min(440px,34vw);height:42px;border:1px solid var(--line);border-radius:12px;background:#0b1324;color:#7f8aa6;display:flex;align-items:center;gap:10px;padding:0 15px}.connection{margin-left:auto;padding:8px 13px;border:1px solid var(--line);border-radius:12px;background:#0f182c;font-size:10px}.connection b{display:block;color:var(--green);font-size:12px}.connection small{color:var(--muted)}.avatar{margin-left:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:linear-gradient(135deg,#6575bf,#7e62b8)}.sidebar{grid-row:2;padding:22px 14px;border-right:1px solid var(--line);background:#080d1873;display:flex;flex-direction:column}.sidebar nav{display:grid;gap:8px}.sidebar button{border:0;border-radius:12px;padding:12px 14px;background:transparent;color:#9aa8c7;text-align:left;display:flex;gap:12px;font-size:14px}.sidebar button.active{color:#fff;background:linear-gradient(90deg,#4765e357,#3c50aa24);box-shadow:inset 0 0 0 1px #607ae729}.sidebar p{margin:auto 10px 10px;color:#65718d;font-size:11px;line-height:1.5}.sidebar p i{display:block;width:26px;height:2px;margin-bottom:18px;background:#6a5cff}.status-panel{grid-row:2;padding:22px 16px;overflow:auto}.status-card,.engine-card{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#121b2ff5,#0c1423f5);box-shadow:0 18px 50px #00000042}.status-card{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:12px}.status-card>span{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:linear-gradient(135deg,#854fff59,#4b7cff33)}.status-card b{display:block;font-size:14px}.status-card small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.status-card em{margin-left:auto;border-radius:999px;background:#18233d;padding:5px 8px;font-size:10px;color:#aeb9d1;font-style:normal}.status-card em.ok{background:none;color:var(--green);padding:0}.archive p{border-top:1px solid var(--line);padding-top:10px;margin:12px 0 0;font-size:10px;color:var(--green)}.archive time{float:right;color:#7987a6}.engine-card{padding:14px}.engine-card .status-card{box-shadow:none;border:0;background:none;padding:0;margin:0}.engine-card p{margin:9px 0 0;font-size:11px;color:#aab6d0}.engine-card p i,.engine-float i{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px #4ee6a8cc}.stage{grid-row:2;position:relative;display:flex;align-items:center;justify-content:center;padding:18px 76px 90px 16px;overflow:hidden}.phone-frame{position:relative;height:min(74vh,690px);aspect-ratio:9/16;border:1px solid rgba(135,154,217,.32);border-radius:18px;overflow:hidden;background:#10131d;box-shadow:0 30px 90px #0000008c}.feed{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:scroll;scroll-snap-type:y mandatory;scrollbar-width:none}.feed::-webkit-scrollbar{display:none}.feed-card{height:100%;scroll-snap-align:start;position:relative;overflow:hidden;background:#08101f}.media-slot{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.poster{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:linear-gradient(to top,rgba(1,5,14,.96) 0%,rgba(1,5,14,.1) 48%,transparent 70%),radial-gradient(circle at 71% 26%,var(--accent) 0 3px,transparent 4px),linear-gradient(145deg,var(--tint),#101426 58%,#070a13)}.poster:before{content:"";position:absolute;left:-12%;bottom:0;width:78%;height:58%;transform:skewY(-18deg);background:linear-gradient(140deg,#0b101f1a,#0c1629e0);border-top:2px solid color-mix(in srgb,var(--accent) 65%,transparent)}.poster:after{content:"";position:absolute;right:8%;top:23%;width:17%;height:38%;background:linear-gradient(var(--accent),rgba(255,255,255,.1));clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);opacity:.9}.poster span{position:absolute;left:10%;top:28%;z-index:1;max-width:130px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 60%,transparent);border-radius:6px;color:#fff3dc;font-size:13px;font-weight:800;letter-spacing:.08em;background:#070c1673}.poster i,.poster b,.poster em{position:absolute;display:block;border-radius:3px;background:color-mix(in srgb,var(--accent) 72%,#fff)}.poster i{width:3px;height:38%;right:26%;bottom:18%}.poster b{width:2px;height:28%;right:12%;bottom:18%}.poster em{width:2px;height:18%;right:37%;bottom:18%}.safe-head{position:absolute;z-index:3;top:0;left:0;right:0;padding:14px;pointer-events:none}.mobile-brand,.mobile-connect,.ghost,.mode-row{display:none}.scribble{position:absolute;z-index:2;right:18px;top:110px;color:#7667cc;font-family:Segoe Script,Bradley Hand,cursive;font-size:16px;font-style:italic;line-height:1.25;transform:rotate(-8deg);text-align:right}.action-rail{position:absolute;z-index:4;right:-62px;top:48%;display:grid;gap:14px;transform:translateY(-50%)}.round{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:linear-gradient(180deg,#151e31,#0f1728);box-shadow:0 10px 28px #00000040;font-size:20px;display:grid;place-items:center}.round small{display:block;font-size:9px;color:#bec8dd;margin-top:-5px}.round.selected{border-color:#7a58ff;box-shadow:0 0 25px #7c52ff66;color:#bc9eff}.tap-layer{position:absolute;z-index:2;top:110px;right:65px;bottom:120px;left:0;border:0;background:transparent}.pause-indicator{position:absolute;z-index:5;left:50%;top:47%;width:62px;height:62px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:#090e1aa6;display:grid;place-items:center;opacity:0;transform:translate(-50%,-50%) scale(.8);transition:.2s}.pause-indicator.show{opacity:1;transform:translate(-50%,-50%)}.clip-info{position:absolute;z-index:4;left:18px;right:18px;bottom:20px}.clip-info h1{font-size:17px;margin:0 0 4px}.clip-info p{font-size:11px;color:#c8cfdf;margin:0 0 14px}.progress{height:5px;border-radius:999px;background:#cbd9ff47;overflow:hidden}.progress i{display:block;width:25%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#55a8ff,#9a62ff)}.timeline{display:flex;justify-content:space-between;margin-top:7px;font-size:10px}.engine-float{display:none}.up-next{position:absolute;bottom:16px;left:50%;z-index:5;transform:translate(-50%);width:min(720px,86%);height:70px;border:1px solid var(--line);border-radius:15px;background:#0d1527eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;gap:10px;padding:9px 12px}.up-next>div{width:120px}.up-next b{display:block;font-size:12px}.up-next small{font-size:9px;color:var(--muted)}.up-next button{height:50px;aspect-ratio:1.3;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:linear-gradient(135deg,var(--tint),var(--accent));position:relative;overflow:hidden}.up-next button:after{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;background:linear-gradient(0deg,#0b1320 0 38%,transparent 39%),linear-gradient(135deg,transparent 20%,rgba(255,255,255,.18) 22% 25%,transparent 27%)}.up-next em{display:grid;place-items:center;height:50px;aspect-ratio:1;border-radius:9px;background:#172138;font-size:10px;color:#aeb7cf;font-style:normal}.mood{grid-row:2;position:relative;background:radial-gradient(circle at 20% 25%,rgba(97,71,180,.08),transparent 33%)}.mood p{position:absolute;right:22px;color:#6556a9;font-family:Segoe Script,Bradley Hand,cursive;font-style:italic;font-size:19px;line-height:1.25;transform:rotate(-7deg);opacity:.75}.mood p:nth-child(2){top:45%;left:28px;font-size:23px}.mood small{position:absolute;right:24px;bottom:26px;text-align:right;color:#697391;font-size:10px}.diagnostic{position:fixed;z-index:12;bottom:10px;left:12px;padding:5px 8px;border-radius:6px;background:#02050ebf;color:#8494b9;font:10px ui-monospace,SFMono-Regular,Menlo,monospace;pointer-events:none}.toast{position:fixed;z-index:20;right:24px;top:88px;opacity:0;transform:translateY(-8px);padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:#10192b;color:#dce4f6;font-size:11px;box-shadow:0 18px 50px #00000061;transition:.2s}.toast.show{opacity:1;transform:none}.bottom-nav{display:none}@media(max-width:1180px){.app-shell{grid-template-columns:150px 280px minmax(440px,1fr)}.mood,.search{display:none}}@media(max-width:760px){html,body,#app{background:#03060c}.app-shell{display:block;min-height:100%;height:100%;overflow:hidden}.topbar,.sidebar,.status-panel,.mood,.up-next{display:none}.stage{padding:0;height:100dvh;display:block;overflow:hidden}.phone-frame{height:100dvh;width:100vw;max-width:none;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}.safe-head{padding:max(16px,env(safe-area-inset-top)) 18px 0;pointer-events:auto}.mobile-brand{display:flex}.mobile-brand strong{font-size:19px}.mobile-connect{display:block;margin-left:auto;padding:7px 9px;border:1px solid rgba(82,139,255,.26);border-radius:11px;background:#0b1426b3;font-size:9px;color:#b7c3dd;line-height:1.35}.mobile-connect b{font-size:10px;color:var(--green)}.ghost{display:block;border:0;background:transparent;font-size:22px;padding:6px}.mode-row{display:flex;gap:10px;margin-top:18px}.mode-row button{pointer-events:none;border:1px solid rgba(147,86,255,.9);border-radius:12px;background:#0e0d1fad;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#c2a3ff;padding:10px 13px;font-size:12px;font-weight:700}.mode-row button+button{border-color:#4b82ff;color:#79a9ff}.scribble{top:122px;right:23px;font-size:17px}.action-rail{right:15px;top:47%;gap:13px}.round{width:52px;height:52px;font-size:22px;background:linear-gradient(180deg,#1d273ded,#0e1524f2)}.round small{font-size:9px}.clip-info{left:18px;right:80px;bottom:176px}.clip-info h1{font-size:20px}.clip-info p,.timeline{font-size:12px}.engine-float{display:block;position:absolute;z-index:4;left:17px;bottom:260px;padding:9px 12px;border:1px solid rgba(161,175,214,.17);border-radius:12px;background:#0d1524bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:10px;color:#c2cbe1;line-height:1.3}.engine-float p{margin:4px 0}.bottom-nav{position:absolute;z-index:8;left:0;right:0;bottom:0;height:76px;padding-bottom:max(8px,env(safe-area-inset-bottom));border-top:1px solid rgba(152,168,209,.13);background:#080d18eb;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);display:grid;grid-template-columns:repeat(4,1fr)}.bottom-nav button{border:0;background:transparent;color:#99a6c3;font-size:23px;display:grid;place-items:center;align-content:center;gap:2px}.bottom-nav small{font-size:10px}.bottom-nav button.active{color:#7fa5ff;text-shadow:0 0 14px rgba(79,120,255,.75)}.diagnostic{bottom:80px;font-size:8px;max-width:calc(100vw - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast{top:185px;right:auto;left:50%;transform:translate(-50%,-8px);white-space:nowrap}.toast.show{transform:translate(-50%)}}
