:root{--navy: #13244a;--ink: #1d2433;--muted: #5d6b7c;--lime: #9cc63b;--lime-soft: #f2fadf;--glass: rgba(255, 255, 255, .86);--edge: rgba(19, 36, 74, .08);--shadow: 0 24px 60px -20px rgba(22, 64, 58, .35), 0 4px 14px rgba(22, 64, 58, .08);--spring: cubic-bezier(.2, 1.25, .35, 1);color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;overflow:hidden}body{font-family:Plus Jakarta Sans,Noto Sans Devanagari,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#e9f3f0;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:linear-gradient(160deg,#f4faf8,#e3f1ec 45%,#d3ebe4)}.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.75;will-change:transform}.b1{width:60vmax;height:60vmax;left:-15vmax;top:-20vmax;background:#c9ecdf;animation:drift1 22s ease-in-out infinite alternate}.b2{width:50vmax;height:50vmax;right:-18vmax;top:10vh;background:#e6f4bf;animation:drift2 26s ease-in-out infinite alternate}.b3{width:45vmax;height:45vmax;left:20vw;bottom:-25vmax;background:#dcdcfb;opacity:.55;animation:drift3 30s ease-in-out infinite alternate}@keyframes drift1{to{transform:translate(8vw,6vh) scale(1.1)}}@keyframes drift2{to{transform:translate(-10vw,8vh) scale(.9)}}@keyframes drift3{to{transform:translate(6vw,-8vh) scale(1.15)}}.aura{position:fixed;left:0;top:0;width:78vmin;height:78vmin;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(255,255,255,.5) 30%,rgba(214,235,140,.28) 48%,transparent 70%);transition:background .6s ease;will-change:transform}.aura[data-mood=notice],.aura[data-mood=listen]{background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(214,240,150,.6) 34%,rgba(156,198,59,.25) 52%,transparent 72%)}.aura[data-mood=think]{background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(190,210,255,.55) 34%,rgba(120,150,255,.22) 52%,transparent 72%)}.aura[data-mood=talk]{background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(255,228,196,.55) 34%,rgba(255,190,140,.2) 52%,transparent 72%)}.aura[data-mood=sleep]{background:radial-gradient(circle,rgba(255,255,255,.7) 0%,rgba(200,220,230,.35) 40%,transparent 68%)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}#stage{position:fixed;top:0;right:0;bottom:0;left:0;touch-action:manipulation}#stage canvas{display:block}.lang{border:0;height:30px;min-width:38px;padding:0 8px;border-radius:999px;background:#13244a14;color:var(--navy);font:700 13px Noto Sans Devanagari,Plus Jakarta Sans,sans-serif;cursor:pointer;flex:none}.brand{position:fixed;top:max(14px,env(safe-area-inset-top));left:16px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--navy);letter-spacing:.01em;background:#ffffff8c;padding:7px 12px;border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.brand b{font-weight:800}.brand .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px #9cc63b40}.status{position:fixed;top:max(14px,env(safe-area-inset-top));left:50%;transform:translate(-50%);font-size:13px;font-weight:600;color:var(--navy);background:var(--glass);padding:7px 14px;border-radius:999px;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px;z-index:5;white-space:nowrap}.status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime);animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{transform:scale(.5);opacity:.5}}.panel{position:fixed;z-index:4;right:3vw;top:50%;width:min(46vw,640px);max-height:80vh;display:flex;flex-direction:column;background:var(--glass);border:1px solid rgba(255,255,255,.7);backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2);border-radius:26px;box-shadow:var(--shadow);transform:translate(115%,-50%) rotate(4deg);opacity:0;transition:transform .75s var(--spring),opacity .35s ease;-webkit-user-select:text;user-select:text}.panel.open{transform:translateY(-50%) rotate(0);opacity:1}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 10px}.panel-source{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5f8a17;display:flex;align-items:center;gap:6px}.panel-source:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime)}.panel h2{margin:4px 0 0;font-size:22px;line-height:1.2;font-weight:800;color:var(--navy);letter-spacing:-.01em}.icon-btn{border:0;background:#13244a0f;color:var(--navy);width:32px;height:32px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer;flex:none}.panel-body{overflow:auto;padding:4px 12px 16px;overscroll-behavior:contain}.panel-body section{padding:10px 12px;border-radius:16px;margin-bottom:4px;border-left:4px solid transparent;transition:background .35s ease,border-color .35s ease,transform .35s var(--spring);opacity:0;transform:translateY(10px);animation:rise .5s var(--spring) forwards}@keyframes rise{to{opacity:1;transform:none}}.panel-body section.active{background:var(--lime-soft);border-left-color:var(--lime);transform:translate(3px)}.panel-body h3{margin:0 0 6px;font-size:14px;font-weight:800;color:var(--navy)}.panel-body p,.panel-body li{font-size:14.5px;line-height:1.55;color:var(--ink)}.panel-body p{margin:0 0 8px}.panel-body ul,.panel-body ol{margin:0 0 6px;padding-left:20px}.panel-body strong{color:var(--navy)}.tbl{overflow-x:auto;margin:6px 0 4px;border-radius:12px;border:1px solid var(--edge);background:#fff}.tbl table{border-collapse:collapse;width:100%;font-size:12.5px}.tbl th{text-align:left;font-weight:700;color:var(--muted);background:#f6f8fb;padding:8px 10px;white-space:nowrap;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.tbl td{padding:8px 10px;border-top:1px solid var(--edge);white-space:nowrap;font-variant-numeric:tabular-nums}.tbl tr:nth-child(2n) td{background:#fbfcfd}.you{position:fixed;z-index:3;left:50%;bottom:168px;transform:translate(-50%);max-width:min(560px,86vw);padding:9px 14px;border-radius:16px 16px 4px;background:var(--navy);color:#fff;font-size:14px;line-height:1.4;box-shadow:var(--shadow);animation:pop .4s var(--spring)}.you.dim{background:#13244a8c}.caption{position:fixed;z-index:3;left:50%;bottom:112px;transform:translate(-50%);max-width:min(640px,90vw);padding:10px 16px;border-radius:16px;background:var(--glass);color:var(--navy);font-size:16px;font-weight:600;line-height:1.4;text-align:center;box-shadow:var(--shadow);animation:pop .35s var(--spring);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@keyframes pop{0%{opacity:0;transform:translate(-50%,8px) scale(.96)}}.wake{position:fixed;left:0;right:0;bottom:120px;display:flex;justify-content:center;pointer-events:none;z-index:3}.wake-pill{background:var(--navy);color:#fff;font-weight:700;font-size:15px;padding:12px 20px;border-radius:999px;box-shadow:var(--shadow);animation:bob 1.6s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-6px)}}body.awake .wake{display:none}.dock{position:fixed;left:0;right:0;bottom:0;z-index:4;padding:10px 16px max(14px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:8px}.chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.chips button{border:1px solid rgba(255,255,255,.8);background:#fff9;color:var(--navy);font:600 13px inherit;font-family:inherit;padding:7px 12px;border-radius:999px;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chips button:hover{background:#fff}.ask{width:min(560px,100%);display:flex;align-items:center;gap:8px;background:var(--glass);border-radius:999px;padding:6px 6px 6px 10px;box-shadow:var(--shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.ask input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:500 15px inherit;font-family:inherit;color:var(--ink);padding:8px 4px;-webkit-user-select:text;user-select:text}.send{border:0;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;font-size:15px;cursor:pointer;flex:none}.mic{position:relative;width:30px;height:30px;border-radius:50%;background:#13244a14;flex:none;display:grid;place-items:center}.mic i{width:10px;height:10px;border-radius:50%;background:#c3cad4;transition:transform .08s linear,background .2s}.mic.on i{background:var(--lime)}.mic.off i{background:#e08a8a}.mic.hearing{background:#9cc63b38}@media(max-width:759px){.panel{left:10px;right:10px;top:max(10px,env(safe-area-inset-top));width:auto;max-height:54vh;transform:translateY(-115%);border-radius:22px}.panel.open{transform:translateY(0)}.panel h2{font-size:19px}.panel-head{padding:16px 16px 6px}.panel-body{padding:2px 6px 12px}body.panel-open .brand,body.panel-open .status{display:none}.caption{bottom:104px;font-size:15px}.you{bottom:160px}body.panel-open .chips{display:none}}.photo-card{position:absolute;left:50%;top:46%;height:min(70vh,640px);aspect-ratio:736 / 1103;border-radius:30px;overflow:hidden;transform:translate(-50%,-50%) scale(var(--scale, 1));transition:left .9s var(--spring),top .9s var(--spring),height .9s var(--spring);box-shadow:0 30px 70px -25px #16403a73,0 0 0 calc(var(--glow, 0) * 4px) #9cc63b8c,0 0 calc(var(--glow, 0) * 40px) #9cc63b73}.photo-card canvas{width:100%!important;height:100%!important;display:block}.photo-card.aside{left:25%}@media(max-width:759px){.photo-card{height:min(58vh,560px);top:44%;border-radius:24px}.photo-card.aside{left:50%;top:76%;height:34vh}}.beam{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:3;opacity:0;transition:opacity .35s ease}.beam.on{opacity:1}.beam path{fill:none;stroke:#9cc63b;stroke-width:3;stroke-linecap:round;stroke-dasharray:8 10;filter:drop-shadow(0 0 6px rgba(156,198,59,.9));animation:beam .8s linear infinite}@keyframes beam{to{stroke-dashoffset:-36}}.photo-card.cutout{aspect-ratio:var(--ar, 686 / 1024);height:min(78vh,720px);top:47%;border-radius:0;overflow:visible;box-shadow:none;filter:drop-shadow(0 26px 40px rgba(22,64,58,.28)) drop-shadow(0 0 calc(var(--glow, 0) * 22px) rgba(156,198,59,.8))}@media(max-width:759px){.photo-card.cutout{height:min(72vh,640px);top:50%}.photo-card.cutout.aside{top:75%;height:33vh}}html,body{height:100dvh}@media(max-width:759px){.photo-card.cutout{height:min(70vh,640px);height:min(70dvh,640px);top:48%;top:48dvh}.panel{max-height:calc(60vh - 16px);max-height:calc(60dvh - 16px)}.photo-card.cutout.aside{height:calc(40vh - 92px);height:calc(40dvh - 92px);top:calc(60vh + (40vh - 80px)/2);top:calc(60dvh + (40dvh - 80px)/2)}body.panel-open .caption{bottom:78px;font-size:13.5px;padding:7px 12px;max-width:92vw}body.panel-open .you{display:none}}@media(max-width:759px){.tbl table{font-size:11.5px}.tbl th{padding:6px 7px;font-size:10px;letter-spacing:.02em;white-space:normal}.tbl td{padding:6px 7px}.panel-body p,.panel-body li{font-size:13.5px}}.caption{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.35;padding:8px 14px;max-width:min(560px,90vw)}body.asked .chips{display:none}.stop{display:none;border:0;width:38px;height:38px;border-radius:50%;background:#e2574c;color:#fff;font-size:13px;cursor:pointer;flex:none}body.speaking .stop{display:block}@media(max-width:759px){.caption{bottom:80px;font-size:13.5px;padding:6px 12px}body:not(.asked) .caption{bottom:128px}.chips button{font-size:12.5px;padding:6px 10px}}.caption{display:block}.caption>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mic{cursor:pointer;border:0}.mic.muted{background:#e2574c24}.mic.muted i{background:#e2574c;transform:none!important}.mic.muted:after{content:"";position:absolute;width:20px;height:2px;background:#e2574c;transform:rotate(-45deg);border-radius:2px}.chart{background:#fff;border:1px solid var(--edge);border-radius:14px;padding:10px 8px 6px}.chart svg{width:100%;height:auto;display:block;font-family:inherit}.chart-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:0 6px 6px}.chart-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.chart-unit{font-size:11px;color:var(--muted);text-align:right;padding:2px 8px 0}
