:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d10;--surface:#12161b;--surface-2:#1a1f26;--border:#262d36;--text:#e8edf2;--muted:#8b96a3;--accent:#5ee0ff;--accent-ink:#00222b;--good:#6dff9c;--warn:#ffcc4d;--danger:#ff6b6b;--radius:12px;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace}*{box-sizing:border-box}body.app-body{background:var(--bg);min-height:100dvh;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}a{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:13px}.center{text-align:center}.mono{font-family:var(--mono)}.grow{flex:1}[hidden]{display:none!important}.brand{letter-spacing:.01em;color:var(--text);align-items:center;gap:10px;font-size:17px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{border:3px solid var(--accent);border-radius:5px;width:26px;height:14px;position:relative}.brand-mark:after{content:"";background:var(--bg);width:3px;margin-left:-1.5px;position:absolute;top:-3px;bottom:-3px;left:50%}.btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:#3a4552}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{background:0 0}.btn.small{padding:6px 11px;font-size:13px}.btn.big{border-radius:12px;padding:14px 26px;font-size:17px}.btn.icon{width:46px;padding:0}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:7px;padding:4px 10px;font-size:13px;display:inline-flex}.chip.presence i{background:var(--muted);border-radius:50%;width:8px;height:8px}.chip.presence:not([data-glasses="0"]) i{background:var(--good)}.chip.scenario{font:inherit;cursor:pointer;white-space:nowrap;padding:8px 14px;font-size:14px}.chip.scenario:hover{border-color:var(--accent)}.op{flex-direction:column;height:100dvh;display:flex}.co-top{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;display:flex}.co-main{flex:1;grid-template-columns:340px minmax(0,1fr);min-height:0;display:grid}.co-side{border-right:1px solid var(--border);padding:16px;overflow:auto}.co-preview-wrap{width:100%;height:calc(600px * var(--scale,.5));background:#000;border-radius:16px;overflow:hidden;box-shadow:0 0 0 6px #1b2027,0 10px 40px #00000080}.co-preview{width:600px;height:600px;transform:scale(var(--scale,.5));transform-origin:0 0}.co-preview-cap{text-align:center;margin:12px 0 0}.co-chat{flex-direction:column;min-height:0;display:flex}.co-memory{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:10px 16px 0;padding:0 12px}.co-memory summary{cursor:pointer;padding:8px 0;font-size:14px;font-weight:600;list-style-position:inside}.co-memory .count{background:var(--surface-2);min-width:20px;color:var(--accent);text-align:center;border-radius:10px;margin-left:4px;padding:0 6px;font-size:12px;display:inline-block}.mem-list{margin:0 0 8px;padding-left:20px}.mem-list li{padding:3px 0;font-size:14px}.mem-list li span{margin-right:6px}.mem-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px;line-height:1}.mem-x:hover{color:var(--danger)}.co-memory .btn{margin:0 0 10px}.co-log{flex-direction:column;flex:1;gap:10px;min-height:0;padding:16px;display:flex;overflow-y:auto}.log-empty{text-align:center;max-width:420px;color:var(--muted);margin:auto}.log-empty h2{color:var(--text);margin:0 0 6px;font-size:20px}.log-empty p{margin:0}.msg{flex-direction:column;max-width:85%;display:flex}.msg .bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;padding:9px 13px}.msg time{color:var(--muted);margin-top:2px;font-size:11px}.msg.me{align-self:flex-end;align-items:flex-end}.msg.me .bubble{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}.msg.agent{align-self:flex-start}.msg.agent .who{color:var(--accent);margin-bottom:2px;font-size:12px;font-weight:700}.msg.agent .bubble{background:var(--surface-2);border-bottom-left-radius:4px}.msg.me .who{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:700}.msg.direct .bubble{border:1px solid var(--accent);color:var(--text);background:0 0}.msg.wearer{align-self:flex-start}.msg.wearer .who{color:var(--good);margin-bottom:2px;font-size:12px;font-weight:700}.msg.wearer .bubble{background:#6dff9c1f;border:1px solid #6dff9c59;border-bottom-left-radius:4px}.feed{color:var(--text);align-items:baseline;gap:8px;font-size:14px;display:flex}.feed time{color:var(--muted);margin-left:auto;font-size:11px}.feed .tag{background:var(--surface-2);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;flex:none;padding:1px 7px;font-size:11px;font-weight:700}.feed.wearer .tag{color:var(--good)}.feed.spoken .tag{color:var(--warn)}.feed.memory .tag{color:var(--accent)}.feed.error,.feed.error .tag{color:var(--danger)}.feed.system{color:var(--muted);justify-content:center;font-size:13px}.log-busy{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.dots{gap:4px;display:inline-flex}.dots i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1s infinite bounce}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}.co-bar{align-items:center;gap:8px;padding:8px 0 8px 16px;display:flex}.co-mode{flex:none}.co-scenarios{scrollbar-width:none;gap:8px;padding-right:16px;display:flex;overflow-x:auto}.co-attachments.off{display:none}.seg{border:1px solid var(--border);border-radius:10px;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:7px 12px;font-size:13px;font-weight:600}.seg button+button{border-left:1px solid var(--border)}.seg button.on{background:var(--surface-2);color:var(--text)}.co-scenarios::-webkit-scrollbar{display:none}.co-compose{padding:10px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);align-items:flex-end;gap:8px;display:flex}.co-compose textarea{resize:none;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:46px;max-height:160px;color:var(--text);font:inherit;flex:1;padding:12px 14px;font-size:16px;line-height:1.35}.co-compose textarea:focus{border-color:var(--accent);outline:none}.co-compose .btn{height:46px}.co-attachments{gap:8px;padding:8px 16px 0;display:flex;overflow-x:auto}.att{flex:none;position:relative}.att img{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:64px;height:64px;display:block}.att-x{background:var(--surface-2);width:22px;height:22px;color:var(--text);cursor:pointer;border:0;border-radius:50%;padding:0;line-height:22px;position:absolute;top:-6px;right:-6px}.msg-photos{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.msg-photos img{object-fit:cover;border-radius:10px;width:84px;height:84px;display:block}.send:disabled{opacity:.7;cursor:progress}.mic.rec{background:var(--danger);border-color:var(--danger);color:#fff;animation:1.2s infinite pulse}.mic.wait{opacity:.6;cursor:progress}body[data-conn=connecting] .co-top:after,body[data-conn=offline] .co-top:after{content:"Reconnecting…";color:var(--warn);font-size:12px}@media (max-width:760px){.co-main{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.co-side{border-right:0;border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:10px 16px;display:flex}.co-preview-wrap{border-radius:10px;flex:0 0 150px;width:150px;box-shadow:0 0 0 3px #1b2027}.co-preview-cap{text-align:left;margin:0}.co-top .brand{gap:0;font-size:0}.sim-btn{display:none}.pairing .pop-body{width:auto;position:fixed;top:54px;left:12px;right:12px}}.join{text-align:center;max-width:420px;margin:0 auto;padding:48px 20px}.join h1{margin:40px 0 6px;font-size:28px}.join>p{margin:0 0 28px}.join .btn.big{width:100%}.join .btn.continue{margin-top:12px}.join-code summary{cursor:pointer}.join-form{gap:10px;margin-top:12px;display:flex}.join-form input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--accent);font:700 26px var(--mono);letter-spacing:.2em;text-align:center;text-transform:uppercase;flex:1;padding:12px}.join-form input:focus{border-color:var(--accent);outline:none}.join-error{color:var(--danger);min-height:1.5em}.landing{max-width:1160px;margin:0 auto;padding:0 24px 40px}.land-top{align-items:center;gap:12px;padding:18px 0;display:flex}.hero{text-align:center;max-width:760px;margin:0 auto;padding:40px 0 8px}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:700}.hero h1{letter-spacing:-.025em;margin:0 0 18px;font-size:clamp(32px,5.4vw,56px);line-height:1.06}.lede{color:#c3ccd5;max-width:600px;margin:0 auto 28px;font-size:18px}.lede b{color:var(--text)}.cta{flex-direction:column;align-items:center;gap:10px;display:flex}.cta p{margin:0}.show{grid-template-columns:240px 110px minmax(0,1fr);align-items:center;margin-top:48px;display:grid}.phone{background:#0e1116;border:1px solid #2a323c;border-radius:34px;flex-direction:column;gap:10px;height:460px;padding:16px 12px 12px;display:flex;box-shadow:0 0 0 7px #181d24,0 30px 80px #0000008c}.ph-head{align-items:center;gap:8px;padding:0 6px;font-size:13px;font-weight:700;display:flex}.ph-head .brand-mark{transform:scale(.75)}.ph-head .brand-mark:after{background:#0e1116}.ph-log{flex-direction:column;flex:1;justify-content:flex-end;gap:7px;min-height:0;display:flex;overflow:hidden}.pb{border-radius:12px;max-width:88%;padding:7px 10px;font-size:12.5px;line-height:1.35;animation:.3s ease-out pb-in}.pb.me{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px;align-self:flex-end}.pb.agent{background:var(--surface-2);border-bottom-left-radius:4px;align-self:flex-start}.pb.msg{border:1px solid var(--accent);border-bottom-right-radius:4px;align-self:flex-end}.pb.them{background:#6dff9c1f;border:1px solid #6dff9c59;border-bottom-left-radius:4px;align-self:flex-start}.ph-mode{gap:6px;font-size:11px;font-weight:700;display:flex}.ph-mode span{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:3px 8px;transition:color .3s,border-color .3s}.ph-mode span.on{border-color:var(--accent);color:var(--accent)}.pb.feed{color:var(--good);background:#6dff9c1a;align-self:flex-start;padding:3px 9px;font-weight:600}@keyframes pb-in{0%{opacity:0;transform:translateY(8px)}}.ph-compose{border:1px solid var(--border);border-radius:16px;align-items:flex-end;gap:8px;min-height:42px;padding:8px 8px 8px 12px;font-size:12.5px;line-height:1.35;display:flex}.ph-text{flex:1;align-self:center}.ph-text:after{content:"";vertical-align:text-bottom;background:var(--accent);width:1.5px;height:1.1em;margin-left:1px;animation:1s step-end infinite blink;display:inline-block}.ph-compose.empty .ph-text:before{content:"Type here";color:var(--muted)}.ph-compose.empty .ph-text:after{display:none}.ph-send{background:var(--accent);width:26px;height:26px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;transition:transform .15s;display:grid}.ph-send.pressed{transform:scale(.8)}.beam{background:linear-gradient(90deg, var(--border), #33404d, var(--border));height:2px;margin:0 6px;position:relative}.muse{border:1px solid var(--border);background:var(--bg);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;transition:color .3s,border-color .3s,box-shadow .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.muse.on{color:var(--accent);border-color:var(--accent);box-shadow:0 0 28px #5ee0ff73}.spark{background:var(--accent);width:10px;height:10px;box-shadow:0 0 14px var(--accent);opacity:0;border-radius:50%;position:absolute;top:-4px;left:0}.spark.to-muse{animation:.65s ease-in forwards spark-a}.spark.to-lens{animation:.65s ease-out forwards spark-b}.spark.direct{animation:.9s ease-in-out forwards spark-direct}.spark.back{background:var(--good);box-shadow:0 0 14px var(--good);animation:.9s ease-in-out forwards spark-back}@keyframes spark-a{0%{opacity:0;left:0}20%{opacity:1}to{opacity:.2;left:calc(50% - 5px)}}@keyframes spark-b{0%{opacity:1;left:calc(50% - 5px)}80%{opacity:1}to{opacity:0;left:calc(100% - 10px)}}@keyframes spark-back{0%{opacity:0;left:calc(100% - 10px)}15%,85%{opacity:1}to{opacity:0;left:0}}@keyframes spark-direct{0%{opacity:0;left:0}15%,85%{opacity:1}to{opacity:0;left:calc(100% - 10px)}}.show-stage{aspect-ratio:3/2;width:100%}.show-steps{grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0 0;padding:0;list-style:none;display:grid}.show-steps li{border-top:2px solid var(--border);color:var(--muted);padding:14px 4px 0;transition:border-color .4s,color .4s}.show-steps li b{color:var(--text);margin-bottom:2px;font-size:16px;display:block}.show-steps li span{font-size:14px}.show-steps li.on{border-color:var(--accent)}.show-steps li.on b{color:var(--accent)}.install{text-align:center;max-width:640px;margin:64px auto 0}.install h3{margin:0 0 6px}.install p{color:#b6c0ca;margin:0}.land-foot{text-align:center;margin-top:48px}@media (max-width:820px){.hero{padding-top:20px}.show{grid-template-columns:minmax(0,1fr);margin-top:32px}.phone{border-radius:24px;justify-self:center;width:min(340px,100%);height:290px}.beam{background:linear-gradient(var(--border), #33404d, var(--border));justify-self:center;width:2px;height:72px;margin:6px 0}.spark{top:0;left:-4px}@keyframes spark-a{0%{opacity:0;top:0}20%{opacity:1}to{opacity:.2;top:calc(50% - 5px)}}@keyframes spark-b{0%{opacity:1;top:calc(50% - 5px)}80%{opacity:1}to{opacity:0;top:calc(100% - 10px)}}@keyframes spark-back{0%{opacity:0;top:calc(100% - 10px)}15%,85%{opacity:1}to{opacity:0;top:0}}@keyframes spark-direct{0%{opacity:0;top:0}15%,85%{opacity:1}to{opacity:0;top:calc(100% - 10px)}}.show-steps{grid-template-columns:minmax(0,1fr);gap:10px}.show-steps li{padding-top:8px}}.stage{background:#000;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 30px 90px #0009}.world-bg{filter:brightness(.55)saturate(.9);background:50%/cover no-repeat;animation:22s ease-in-out infinite alternate head-sway;position:absolute;top:-4%;bottom:-4%;left:-4%;right:-4%}@keyframes head-sway{0%{transform:translate(-1.2%,.6%)rotate(-.4deg)}50%{transform:translate(.8%,-.4%)rotate(.3deg)}to{transform:translate(1.4%,.8%)rotate(-.2deg)}}.stage .lens-shell{width:calc(600px * var(--s,.5));height:calc(600px * var(--s,.5));mix-blend-mode:screen;filter:brightness(1.25)contrast(1.1)blur(.25px);background:#000;position:absolute;top:14%;left:52%;overflow:hidden}.stage .lens-frame{width:600px;height:600px;transform:scale(var(--s,.5));transform-origin:0 0;pointer-events:none}.world-frame{pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}@media (prefers-reduced-motion:reduce){.world-bg{animation:none}}.pop{position:relative}.pop summary{list-style:none}.pop summary::-webkit-details-marker{display:none}.pop-body{z-index:10;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:250px;padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 50px #00000080}.pop-body p{color:#b6c0ca;margin:10px 0 6px}.pop-body a{overflow-wrap:anywhere}.pop summary.chip{cursor:pointer}.pairing .pop-body{width:320px}.pairing .pop-body p:first-child{margin-top:0}.pattern-big{grid-template-columns:repeat(8,1fr);gap:5px;min-height:46px;margin:10px 0;display:grid}.pattern-big span{background:var(--surface-2);height:46px;color:var(--accent);border-radius:8px;place-items:center;font-size:26px;font-weight:800;display:grid}.chip.presence[data-glasses="0"]{border-color:var(--accent);color:var(--accent)}.pairing [data-act=sim]{width:100%;margin-top:4px}@keyframes pulse{50%{box-shadow:0 0 0 6px #ff6b6b40}}@keyframes bounce{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}:root{--l-bg:#000;--l-text:#fff;--l-soft:#d5dce3;--l-muted:#8f9aa6;--l-accent:#5ee0ff;--l-good:#6dff9c;--l-warn:#ffcc4d;--l-line:#ffffff47;--l-focus-bg:#5ee0ff29}html:has(body.glasses-body){background:#000;overflow:hidden}body.glasses-body{background:#000;width:100vw;height:100vh;margin:0;overflow:hidden}body.glasses-body #app{width:600px;height:600px;transform:scale(var(--fit,1));margin:-300px 0 0 -300px;position:fixed;top:50%;left:50%}.lens{background:var(--l-bg);width:600px;height:600px;color:var(--l-text);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;box-sizing:border-box;flex-direction:column;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:flex;position:relative;overflow:hidden}.lens *,.lens :before,.lens :after{box-sizing:border-box}.lens-head{flex:0 0 52px;align-items:center;gap:12px;padding:0 24px;display:flex}.lens-title{min-width:0;color:var(--l-soft);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:20px;font-weight:700;overflow:hidden}.lens-status{align-items:center;gap:10px;display:flex}.lens-dot{background:var(--l-muted);border-radius:50%;width:12px;height:12px}.lens-dot.online{background:var(--l-good)}.lens-dot.connecting{background:var(--l-warn);animation:1s infinite blink}.lens-dot.offline{background:#ff6b6b}.lens-busy{gap:5px;display:none}.lens-busy.on{display:inline-flex}.lens-busy i{background:var(--l-accent);border-radius:50%;width:8px;height:8px;animation:1s infinite bounce}.lens-busy i:nth-child(2){animation-delay:.15s}.lens-busy i:nth-child(3){animation-delay:.3s}.lens-view{flex:1;min-height:0;position:relative;overflow:hidden}.lens-content{padding:4px 24px 24px;transition:transform .18s ease-out;position:relative}.lens-foot{color:var(--l-muted);flex:0 0 32px;justify-content:space-between;align-items:center;padding:0 24px 4px;font-size:16px;display:flex}.lens-dots{gap:8px;display:flex}.lens-dots i{border:2px solid var(--l-muted);border-radius:50%;width:10px;height:10px}.lens-dots i.on{background:var(--l-accent);border-color:var(--l-accent)}.lens-banner{border:2px solid var(--l-warn);color:var(--l-warn);background:#000;border-radius:12px;padding:12px 16px;font-size:18px;display:none;position:absolute;bottom:40px;left:16px;right:16px}.lens-banner.on{display:block}.lens-toast{z-index:4;border:2px solid var(--l-accent);opacity:0;pointer-events:none;background:#000;border-radius:16px;flex-direction:column;gap:4px;padding:14px 18px;font-size:24px;line-height:1.3;transition:opacity .25s,transform .25s;display:flex;position:absolute;top:10px;left:16px;right:16px;transform:translateY(-24px)}.lens-toast.on{opacity:1;transform:none}.lens-toast b{letter-spacing:.12em;text-transform:uppercase;color:var(--l-accent);font-size:15px}.lens-toast span{-webkit-line-clamp:6;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lens-toast.update{border-color:var(--l-good);font-size:22px}.lens-toast.update b{color:var(--l-good)}.comp{border-radius:14px;margin:0 0 10px}.c-heading{letter-spacing:.05em;text-transform:uppercase;color:var(--l-accent);margin:14px 0 6px;font-size:21px;font-weight:800}.c-heading:first-child{margin-top:4px}.c-text{color:var(--l-soft);font-size:22px;line-height:1.35}.tone-muted{color:var(--l-muted)}.tone-accent{color:var(--l-accent)}.tone-good{color:var(--l-good)}.tone-warn{color:var(--l-warn)}.row{min-height:64px;color:var(--l-text);cursor:pointer;border:3px solid #0000;border-radius:14px;outline:none;align-items:center;gap:16px;padding:10px 16px;font-size:24px;line-height:1.2;display:flex}.row+.row{margin-top:4px}.row.focused{border-color:var(--l-accent);background:var(--l-focus-bg)}.row .label{flex:1;min-width:0}.row small{color:var(--l-muted);margin-top:2px;font-size:17px;display:block}.check .box{border:3px solid var(--l-muted);border-radius:8px;flex:0 0 30px;height:30px;transition:background .2s,border-color .2s;position:relative}.check .box:after{content:"";border:4px solid #000;border-width:0 4px 4px 0;width:9px;height:17px;transition:transform .25s cubic-bezier(.3,1.6,.5,1);position:absolute;top:1px;left:7px;transform:rotate(45deg)scale(0)}.check.done .box{background:var(--l-good);border-color:var(--l-good)}.check.done .box:after{transform:rotate(45deg)scale(1)}.check .label{transition:color .25s}.check.done .label{color:var(--l-muted);text-decoration:line-through;text-decoration-thickness:2px}.row.pbtn{text-align:center;border:3px solid var(--l-line);justify-content:center;font-weight:700}.row.pbtn.focused{border-color:var(--l-accent)}.row.pbtn.pressed{background:var(--l-accent);color:#000}.c-buttons.side{grid-template-columns:1fr 1fr;gap:10px;display:grid}.c-buttons.side .row+.row{margin-top:0}.c-buttons.side .row{padding:10px;font-size:22px}.c-choice .question{color:var(--l-soft);margin:2px 0 8px;font-size:22px;line-height:1.3}.opt .radio{border:3px solid var(--l-muted);border-radius:50%;flex:0 0 30px;height:30px;position:relative}.opt.selected .radio{border-color:var(--l-accent)}.opt.selected .radio:after{content:"";background:var(--l-accent);border-radius:50%;position:absolute;top:5px;bottom:5px;left:5px;right:5px}.opt.selected .label{color:var(--l-accent);font-weight:700}.row.steps{border:3px solid var(--l-line);flex-direction:column;align-items:stretch;gap:10px;min-height:250px;padding:16px 20px}.row.steps.focused{border-color:var(--l-accent)}.steps .progress{color:var(--l-muted);justify-content:space-between;align-items:center;font-size:17px;display:flex}.steps .bar{background:#ffffff2e;border-radius:4px;width:170px;height:8px;overflow:hidden}.steps .bar i{background:var(--l-accent);height:100%;transition:width .3s;display:block}.step-text{font-size:30px;font-weight:700;line-height:1.22}.step-detail{color:var(--l-soft);font-size:21px;line-height:1.35}.steps .hint{color:var(--l-muted);margin-top:auto;font-size:16px}.steps.finished .step-text{color:var(--l-good)}.steps.finished .bar i{background:var(--l-good)}.c-input{display:block}.c-input .label{color:var(--l-muted);margin:0 0 6px 4px;font-size:18px;display:block}.row.field{width:100%;font:inherit;color:var(--l-text);border:3px dashed var(--l-line);cursor:text;-webkit-user-select:text;user-select:text;background:0 0;font-size:22px}.row.field::placeholder{color:var(--l-muted)}.row.field.focused{border-style:solid;border-color:var(--l-accent)}.row.field.sent{border-color:var(--l-good)}.c-talk{margin-top:14px}.row.field.talk{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%235ee0ff' d='M12 15a3 3 0 0 0 3-3V6a3 3 0 1 0-6 0v6a3 3 0 0 0 3 3Zm5-3a5 5 0 0 1-10 0H5a7 7 0 0 0 6 6.92V21h2v-2.08A7 7 0 0 0 19 12h-2Z'/%3E%3C/svg%3E") 18px/20px no-repeat;padding-left:52px}.row.timer{border:3px solid var(--l-line);flex-wrap:wrap;row-gap:0}.row.timer.focused{border-color:var(--l-accent)}.timer .time{font-variant-numeric:tabular-nums;font-size:42px;font-weight:800}.timer .hint{color:var(--l-muted);flex-basis:100%;font-size:16px}.timer.running .time{color:var(--l-accent)}.timer.done .time{color:var(--l-good)}.c-status{align-items:baseline;gap:14px;padding:2px 4px;display:flex}.c-status .value{color:var(--l-accent);font-size:54px;font-weight:800;line-height:1.05}.c-status.tone-good .value{color:var(--l-good)}.c-status.tone-warn .value{color:var(--l-warn)}.c-status.tone-muted .value{color:var(--l-muted)}.c-status.tone-normal .value{color:var(--l-text)}.c-status .label{color:var(--l-muted);font-size:20px}.c-image{text-align:center;margin-left:0;margin-right:0}.c-image img{border-radius:12px;max-width:100%;max-height:230px;margin:0 auto;display:block}.c-image .img-wait{border:2px dashed var(--l-line);height:150px;color:var(--l-muted);border-radius:12px;justify-content:center;align-items:center;font-size:18px;animation:1.6s infinite blink;display:flex}.c-image figcaption{color:var(--l-muted);margin-top:6px;font-size:16px}.row.link{border:3px solid var(--l-line)}.row.link.focused{border-color:var(--l-accent)}.link .chev{color:var(--l-accent);font-size:36px;line-height:1}.row .thumb{flex:0 0 52px;height:52px;margin-left:auto;position:relative}.row .thumb img{object-fit:cover;border:2px solid var(--l-line);border-radius:9px;width:100%;height:100%;display:block}.row .thumb i{background:var(--l-accent);color:#000;text-align:center;border-radius:50%;width:24px;height:24px;font:700 12px/24px system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:none;position:absolute;bottom:-6px;right:-6px}.row.focused .thumb img{border-color:var(--l-accent)}.row.focused .thumb i{display:block}.step-photo{border-radius:10px;max-width:100%;max-height:150px;margin-top:6px;display:block}.lens-photo{opacity:0;pointer-events:none;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px;transition:opacity .2s,transform .2s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;transform:scale(.94)}.lens-photo.open{opacity:1;pointer-events:auto;transform:none}.lens-photo img{object-fit:contain;border-radius:14px;max-width:560px;max-height:470px}.lens-photo .caption{font-size:22px;font-weight:700}.lens-photo .hint{color:var(--l-muted);font-size:15px}.lens .enter{animation:.6s ease-out lens-enter}@keyframes lens-enter{0%{opacity:0;background:#6dff9c4d;transform:translate(28px)}55%{opacity:1;background:#6dff9c38;transform:none}to{background:0 0}}.lens .leave{pointer-events:none;animation:.28s ease-in forwards lens-leave;overflow:hidden}@keyframes lens-leave{0%{opacity:1;max-height:300px}to{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translate(-28px)}}.lens .changed{animation:1s ease-out lens-changed}@keyframes lens-changed{0%{color:var(--l-good);text-shadow:0 0 14px #6dff9ce6}to{text-shadow:none}}.c-status .value.changed{animation:.6s ease-out lens-pop}@keyframes lens-pop{0%{color:var(--l-good);transform:scale(1.25)}to{transform:none}}.lens .step-body.enter{animation:.35s ease-out step-in}@keyframes step-in{0%{opacity:0;transform:translate(40px)}}.lens-content.page-in{animation:.4s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:scale(.97)}}.lens-content.slide-right{animation:.3s ease-out slide-right}.lens-content.slide-left{animation:.3s ease-out slide-left}@keyframes slide-right{0%{opacity:0;transform:translate(60px)}}@keyframes slide-left{0%{opacity:0;transform:translate(-60px)}}.pair{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;height:480px;display:flex}.pair-label{letter-spacing:.2em;text-transform:uppercase;color:var(--l-muted);font-size:18px}.pair-help{color:var(--l-soft);font-size:21px;line-height:1.4}.pair-help b{color:var(--l-text)}.pair-status{min-height:1.4em;color:var(--l-muted);font-size:19px}.pair-status.ok{color:var(--l-good)}.pair-status.bad{color:var(--l-warn)}.pattern{gap:10px;margin:6px 0 4px;display:flex}.pattern span{border:2px solid var(--l-line);width:52px;height:66px;color:var(--l-accent);border-radius:12px;place-items:center;font-size:38px;font-weight:800;display:grid}.pattern span.on{border-color:var(--l-accent)}.pattern span.new{animation:.25s ease-out lens-pop}.pattern.wrong{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-12px)}40%,80%{transform:translate(12px)}}.lens.preview .row{cursor:default}.lens-more.new{color:var(--l-good);font-weight:700}@keyframes blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.lens-content,.steps .bar i{transition:none}.lens *,.lens-content{transition:none!important;animation:none!important}}
