:root{--bg:#0d1117;--panel:#131a24;--panel-2:#1a2330;--line:#243041;--text:#e6edf3;--muted:#8b98a9;--cyan:#2ee6ff;--blue:#1f6bff;--good:#3ddc97;--warn:#ffc857;--bad:#ff6b6b;--font:ui-sans-serif, -apple-system, "Inter", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);margin:0}body{flex-direction:column;display:flex}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.topbar{border-bottom:1px solid var(--line);background:linear-gradient(#111823,#0d1117);flex-wrap:wrap;flex:none;align-items:center;gap:10px 16px;min-height:60px;padding:12px 18px;display:flex}.logo{white-space:nowrap;align-items:baseline;gap:10px;font-size:18px;font-weight:800;display:flex}.logo span{color:var(--muted);font-size:13px;font-weight:500}.conn{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.conn input{background:var(--panel);border:1px solid var(--line);min-width:160px;max-width:420px;height:36px;font-family:var(--mono);border-radius:10px;flex:1;padding:0 12px;font-size:13px}.btn{border:1px solid var(--line);background:var(--panel-2);white-space:nowrap;border-radius:10px;height:36px;padding:0 14px;font-size:13px;font-weight:600}.btn.primary{background:linear-gradient(#2b7bff,#1f5fe0);border-color:#3d86ff}.btn.nudge{animation:.8s ease-in-out 4 nudge;box-shadow:0 0 0 4px #2ee6ff73}@keyframes nudge{50%{transform:scale(1.08);box-shadow:0 0 0 8px #2ee6ff40}}.btn:disabled{opacity:.5;cursor:default}.chip{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px}.chip.ok{color:var(--good);border-color:#3ddc9766}.chip.err{color:var(--bad);border-color:#ff6b6b66}select{background:var(--panel);border:1px solid var(--line);border-radius:10px;height:36px;padding:0 10px;font-size:13px}.layout{flex:1;grid-template-columns:1fr 420px;min-height:0;display:grid}.stage{background:radial-gradient(900px 500px at 50% 40%,#1a2333 0%,#0d1117 70%);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:20px;display:flex;position:relative;overflow:hidden}.device-wrap{flex:1;place-items:center;width:100%;min-height:0;display:grid;position:relative}.device{transform-origin:50%;position:absolute;top:50%;left:50%}.bezel{background:linear-gradient(160deg,#26282c,#111214 60%,#0a0a0b);border-radius:46px;padding:46px;position:relative;box-shadow:0 50px 120px #000000a6,inset 0 0 0 2px #2d3036,inset 0 2px #ffffff0f}.camera{background:#050505;border-radius:50%;width:12px;height:12px;margin-left:-6px;position:absolute;top:18px;left:50%;box-shadow:inset 0 0 0 3px #1a1c20}.screen{--k:1;background:#000;border-radius:8px;position:relative;overflow:hidden}.app-frame{z-index:2;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.home{z-index:1;padding:calc(64px * var(--k)) calc(72px * var(--k));background:radial-gradient(900px 500px at 80% 10%,#5078ff59,#0000 60%),radial-gradient(700px 500px at 10% 90%,#ff8c5a38,#0000 60%),linear-gradient(160deg,#0f1c3a,#0a1022 60%,#070a14);flex-direction:column;justify-content:space-between;transition:padding-top .35s;display:flex;position:absolute;inset:0}.screen.has-app .home{visibility:hidden}.home{transition:opacity .35s}.screen.captioned:not(.has-app) .home{opacity:.16}.screen:not(.has-app) .captions{top:auto;bottom:calc(70px * var(--k));padding:calc(20px * var(--k)) calc(34px * var(--k));border-radius:calc(30px * var(--k));left:9%;right:9%}.screen:not(.has-app) .captions .you{font-size:max(14px, calc(26px * var(--k)));-webkit-line-clamp:5}.screen:not(.has-app) .captions .alexa{font-size:max(16px, calc(32px * var(--k)))}.clock{font-size:calc(140px * var(--k));letter-spacing:calc(-4px * var(--k));font-weight:300;line-height:1}.date{font-size:calc(34px * var(--k));color:#b9c6e4;margin-top:calc(10px * var(--k))}.try{font-size:calc(26px * var(--k));color:#c9d5f2;margin-bottom:calc(18px * var(--k))}.suggestions{gap:calc(14px * var(--k));flex-wrap:wrap;display:flex}.suggestion{border-radius:calc(22px * var(--k));padding:calc(18px * var(--k)) calc(24px * var(--k));text-align:left;max-width:calc(540px * var(--k));font-size:calc(24px * var(--k));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#ffffff1a;border:0;line-height:1.3;transition:background .2s}.suggestion:hover{background:#ffffff2e}.suggestion b{font-size:calc(15px * var(--k));letter-spacing:.12em;text-transform:uppercase;color:var(--cyan);margin-bottom:calc(4px * var(--k));display:block}.captions{top:calc(16px * var(--k));z-index:5;width:-moz-fit-content;width:fit-content;padding:calc(10px * var(--k)) calc(24px * var(--k)) calc(12px * var(--k));border-radius:calc(26px * var(--k));text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(14px)saturate(1.2);opacity:0;background:#080a16b3;margin:0 auto;transition:opacity .35s,transform .35s;position:absolute;left:24%;right:24%;transform:translateY(-6px);box-shadow:0 10px 30px #00000059,inset 0 0 0 1px #ffffff14}.captions.on{opacity:1;transform:none}.captions .you,.captions .alexa{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.captions .you:empty,.captions .alexa:empty{display:none}.captions .you{font-size:max(12px, calc(17px * var(--k)));color:#c7d2e4;-webkit-line-clamp:4;line-height:1.35}.captions .alexa{font-size:max(14px, calc(21px * var(--k)));color:#fff;-webkit-line-clamp:4;font-weight:650;line-height:1.32}.captions .you:not(:empty)+.alexa{margin-top:calc(4px * var(--k))}.lightbar{z-index:6;opacity:0;height:12px;transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.lightbar.listening{opacity:1;background:linear-gradient(90deg, var(--blue), var(--cyan) 40%, var(--blue) 60%, var(--cyan));background-size:200% 100%;animation:1.1s linear infinite sweep}.lightbar.thinking{opacity:1;background:linear-gradient(90deg, var(--blue), var(--cyan), var(--blue));background-size:300% 100%;animation:.6s linear infinite sweep}.lightbar.speaking{opacity:1;background:var(--cyan);animation:.9s ease-in-out infinite pulse}@keyframes sweep{0%{background-position:0 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:.55}50%{opacity:1}}.controls{align-items:center;gap:14px;width:min(760px,100%);display:flex}.mic{background:radial-gradient(circle at 50% 40%,#2a3342,#141a23);border:0;border-radius:50%;flex:none;width:64px;height:64px;position:relative;box-shadow:0 8px 24px #00000080}.mic:before{content:"";border:4px solid #3b4658;border-radius:50%;transition:border-color .2s,box-shadow .2s;position:absolute;inset:5px}.mic.listening:before,.mic:hover:before{border-color:var(--cyan);box-shadow:0 0 18px #2ee6ff99}.mic svg{width:24px;height:24px;position:relative}.say{flex:1;gap:8px;display:flex}.say input{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex:1;height:44px;padding:0 14px;font-size:15px}.hint{color:var(--muted);white-space:nowrap;font-size:12px}.panel{border-left:1px solid var(--line);background:var(--panel);flex-direction:column;min-height:0;display:flex}.tabs{border-bottom:1px solid var(--line);display:flex}.tab{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:13px 8px;font-size:13px;font-weight:600}.tab.on{color:var(--text);border-bottom-color:var(--cyan)}.tab .count{background:var(--panel-2);border-radius:999px;margin-left:4px;padding:1px 6px;font-size:11px}.tabpane{flex:1;padding:14px;display:none;overflow:auto}.tabpane.on{display:block}.msg{margin-bottom:12px}.msg .who{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:700}.msg .bubble{background:var(--panel-2);border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.45}.msg.alexa .bubble{background:#2ee6ff14;border:1px solid #2ee6ff40}.toolchip{border:1px solid var(--line);font-family:var(--mono);background:#0f151e;border-radius:10px;align-items:center;gap:8px;margin:2px 0 10px;padding:6px 10px;font-size:12px;display:inline-flex}.ms{font-family:var(--mono);border-radius:999px;padding:1px 7px;font-size:11px}.ms.fast{color:var(--good);background:#3ddc971f}.ms.slow{color:var(--bad);background:#ff6b6b1f}.ms.model{color:#b59cff;background:#b59cff1f}.wire{border-bottom:1px solid var(--line);font-size:12px}.wire summary{cursor:pointer;align-items:center;gap:8px;padding:8px 4px;list-style:none;display:flex}.wire summary::-webkit-details-marker{display:none}.wire .dir{font-family:var(--mono);color:var(--muted);width:14px}.wire .method{font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.wire pre{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;color:#c5d1df;background:#0b1017;border-radius:8px;max-height:320px;margin:0 0 8px;padding:10px;font-size:11px;line-height:1.45;overflow:auto}.check{border-bottom:1px solid var(--line);gap:10px;padding:10px 4px;display:flex}.check .ico{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:grid}.check.pass .ico{color:var(--good);background:#3ddc9726}.check.warn .ico{color:var(--warn);background:#ffc85726}.check.fail .ico{color:var(--bad);background:#ff6b6b26}.check.pending .ico{background:var(--panel-2);color:var(--muted)}.check b{font-size:13.5px;display:block}.check small{color:var(--muted);word-break:break-word;font-size:12px}.score{background:var(--panel-2);color:var(--muted);border-radius:12px;margin-bottom:10px;padding:12px;font-size:13px}.score strong{color:var(--text);margin-right:6px;font-size:22px}.empty{color:var(--muted);text-align:center;padding:40px 10px;font-size:13px;line-height:1.6}@media (max-width:1100px){.layout{grid-template-columns:1fr}.panel{display:none}}@media (max-width:760px){.logo span{display:none}.conn{flex-basis:100%;order:3}.conn input{max-width:none}}
