:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.camera-preview-overlay{z-index:40;color:#fff;text-align:center;background:#000;border-radius:12px;width:min(28vw,360px);font:500 14px/1.3 system-ui,sans-serif;position:fixed;bottom:3vmin;right:3vmin;overflow:hidden;box-shadow:0 8px 32px #00000073}.camera-preview-overlay img{width:100%;display:block}.camera-preview-overlay p{background:#0009;margin:0;padding:8px 10px}.dashboard-layout{color:#e8e8ef;background:#0f1117;min-height:100vh;display:flex}.dashboard-layout__sidebar{background:#14161f;border-right:1px solid #ffffff14;flex-direction:column;flex-shrink:0;width:220px;padding:24px 16px;display:flex}.dashboard-layout__brand{padding:0 8px 24px;font-size:1.1rem;font-weight:700}.dashboard-layout__nav{flex-direction:column;flex:1;gap:4px;display:flex}.dashboard-layout__link{color:#b8bccb;border-radius:10px;padding:10px 12px;font-size:.95rem;text-decoration:none}.dashboard-layout__link:hover{background:#ffffff0d}.dashboard-layout__link.active{color:#fff;background:#5b8cff}.dashboard-layout__logout{color:#b8bccb;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:10px;margin-top:16px;padding:10px 12px;font-size:.9rem}.dashboard-layout__logout:hover{color:#fff;border-color:#ffffff4d}.dashboard-layout__content{flex:1;padding:32px;overflow-y:auto}.login-page{background:#0f1117;justify-content:center;align-items:center;min-height:100vh;display:flex}.login-page__card{background:#14161f;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;gap:14px;width:min(90vw,360px);padding:28px;display:flex}.login-page__title{color:#f5f6fa;margin:0 0 8px;font-size:1.3rem}.login-page__field{color:#b8bccb;flex-direction:column;gap:6px;font-size:.85rem;display:flex}.login-page__field input{color:#e8e8ef;background:#0f1117;border:1px solid #ffffff1f;border-radius:8px;padding:10px 12px;font-size:.95rem}.login-page__error{color:#f87171;font-size:.85rem}.login-page__submit{color:#fff;cursor:pointer;background:#5b8cff;border:none;border-radius:10px;margin-top:8px;padding:11px;font-weight:600}.login-page__submit:disabled{opacity:.6;cursor:default}.config-page{color:#e8e8ef;max-width:640px}.config-page__title{margin:0 0 24px;font-size:1.4rem}.config-page__section{margin-bottom:32px}.config-page__section h2{color:#b8bccb;margin-bottom:12px;font-size:1rem}.config-page__images{flex-wrap:wrap;gap:20px;display:flex}.config-page__image-slot{flex-direction:column;align-items:center;gap:8px;width:140px;display:flex}.config-page__image-preview{color:#6b7086;background:#14161f;border:1px solid #ffffff1f;border-radius:10px;justify-content:center;align-items:center;width:140px;height:100px;font-size:.8rem;display:flex;overflow:hidden}.config-page__image-preview img{object-fit:contain;width:100%;height:100%}.config-page__image-label{color:#b8bccb;font-size:.85rem}.config-page__image-slot button{color:#e8e8ef;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:8px;padding:6px 10px;font-size:.8rem}.config-page__field{color:#b8bccb;flex-direction:column;gap:6px;max-width:260px;font-size:.85rem;display:flex}.config-page__field input{color:#e8e8ef;background:#14161f;border:1px solid #ffffff1f;border-radius:8px;padding:8px 10px}.config-page__checkbox{color:#b8bccb;align-items:center;gap:8px;margin-bottom:10px;font-size:.85rem;display:flex}.config-page__checkbox input{width:16px;height:16px}.config-page__checkbox input:disabled+span{opacity:.4}.config-page__hint{color:#6b7086;max-width:480px;margin:0 0 12px;font-size:.8rem}.config-page__offset-fields{gap:16px;margin-bottom:12px;display:flex}.config-page__section button{color:#e8e8ef;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:8px;padding:6px 10px;font-size:.8rem}.config-page__status{color:#6b7086;font-size:.85rem}.avatar-player{background-color:#0b0b12;border-radius:12px;position:relative;overflow:hidden}.avatar-player__canvas-host{--avatar-x:0.6%;--avatar-y:0%;width:100%;height:100%;transform:translate(var(--avatar-x), var(--avatar-y)) scale(var(--avatar-scale));transform-origin:bottom}.avatar-player__overlay{color:#e8e8ef;text-align:center;background:#0b0b12b3;justify-content:center;align-items:center;padding:1rem;font-family:system-ui,sans-serif;font-size:.95rem;display:flex;position:absolute;inset:0}.avatar-player__overlay--error{color:#ff6b6b}.avatar-player__start-button{color:#fff;cursor:pointer;z-index:999;pointer-events:auto;background:#6a5cff;border:none;border-radius:999px;padding:.6rem 1.4rem;font-size:.95rem;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.avatar-player__start-button:hover{background:#7c6fff}.mic-status-icon{color:#2ecc71;justify-content:center;align-items:center;display:inline-flex}.mic-status-icon--blocked{color:#e74c3c}.map-overlay{z-index:50;display:flex;position:fixed;inset:0}.map-overlay__panel{background:#14161f;flex-direction:column;flex:1;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.map-overlay__timer{z-index:1;filter:drop-shadow(0 2px 6px #00000080);width:44px;height:44px;position:absolute;top:12px;right:12px}.map-overlay__timer-ring{width:100%;height:100%;transform:rotate(-90deg)}.map-overlay__timer-track{fill:none;stroke:#ffffff1f;stroke-width:3px}.map-overlay__timer-fill{fill:none;stroke:#5b8cff;stroke-width:3px;stroke-linecap:round;stroke-dasharray:100;transition:stroke-dashoffset 1s linear}.map-overlay__timer-label{color:#cfd3e0;justify-content:center;align-items:center;font-size:.65rem;display:flex;position:absolute;inset:0}.map-overlay__canvas{background:#1b1e29;flex:1;width:100%;min-height:0;position:relative}.map-overlay__status{color:#9aa0b4;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;inset:0}.map-overlay__svg{width:100%;height:100%}.map-overlay__floorplan{opacity:.55}.map-overlay__path{fill:none;stroke:#5b8cff;stroke-width:10px;stroke-linecap:round;stroke-linejoin:round}.map-overlay__node text{paint-order:stroke;stroke:#14161f;stroke-width:6px;font-size:22px;font-weight:600}.map-overlay__node--current circle{fill:#34d399;stroke:#0d3b2b;stroke-width:6px}.map-overlay__node--current text{fill:#34d399;font-weight:600}.map-overlay__node--target circle{fill:#f59e0b;stroke:#4a2e05;stroke-width:6px}.map-overlay__node--target text{fill:#f59e0b;font-weight:600}.map-overlay__extend{z-index:2;color:#fff;cursor:pointer;background:#5b8cff;border:none;border-radius:999px;padding:14px 28px;font-size:1rem;font-weight:600;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000073}.map-overlay__extend:hover{background:#4a7aef}.photo-showcase{z-index:20;justify-content:center;align-items:center;animation:.5s both photo-showcase-fade-in;display:flex;position:absolute;inset:0}@keyframes photo-showcase-fade-in{0%{opacity:0}to{opacity:1}}.photo-showcase__backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle,#06080e8c 0%,#040509e0 78%);position:absolute;inset:0}.photo-showcase__stage{text-align:center;flex-direction:column;align-items:center;gap:clamp(14px,2.2vh,28px);padding:clamp(24px,4vh,48px);animation:.6s cubic-bezier(.22,1,.36,1) both photo-showcase-rise;display:flex;position:relative}@keyframes photo-showcase-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.photo-showcase__ring{aspect-ratio:1;background:conic-gradient(#3a6df0e6,#7a5cf0e6,#3a6df0e6);border-radius:50%;justify-content:center;align-items:center;width:clamp(220px,28vw,420px);padding:8px;transition:filter .4s;animation:6s linear infinite photo-showcase-spin;display:flex}@keyframes photo-showcase-spin{to{transform:rotate(360deg)}}.photo-showcase__ring--searching{filter:saturate(.7)brightness(.85);animation-duration:6s}.photo-showcase__ring--aligning{filter:saturate(1.1)brightness(1.05);animation-duration:3s}.photo-showcase__ring--ready{filter:drop-shadow(0 0 28px #4caf7f8c);background:conic-gradient(#4caf7f,#7ee6ab,#4caf7f);animation-duration:1.1s}.photo-showcase__frame{background:#05070c;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;animation:6s linear infinite photo-showcase-spin-reverse;display:flex;overflow:hidden}@keyframes photo-showcase-spin-reverse{to{transform:rotate(-360deg)}}.photo-showcase__frame img{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.photo-showcase__frame-empty{background:linear-gradient(135deg,#14161f,#05070c);width:100%;height:100%}.photo-showcase__instruction{color:#f2f3f8;letter-spacing:.01em;margin:0;font-size:clamp(1.4rem,2.6vw,2.2rem);font-weight:600}.photo-showcase__hint{color:#a9adc1;margin:0;font-size:clamp(.95rem,1.3vw,1.15rem)}.photo-showcase__hint--error{color:#e69a9a}.photo-showcase__camera-arrow{z-index:1;filter:drop-shadow(0 0 10px #0009);animation:1.4s ease-in-out infinite photo-showcase-arrow-bob;position:absolute;top:clamp(16px,4vh,56px);left:50%;transform:translate(-50%)}@keyframes photo-showcase-arrow-bob{0%,to{opacity:.9;transform:translate(-50%)translateY(0)}50%{opacity:1;transform:translate(-50%)translateY(-10px)}}.photo-showcase__done-check{aspect-ratio:1;color:#06120c;filter:drop-shadow(0 0 28px #4caf7f8c);background:conic-gradient(#4caf7f,#7ee6ab,#4caf7f);border-radius:50%;justify-content:center;align-items:center;width:clamp(88px,11vw,140px);font-size:clamp(2.6rem,5vw,4rem);font-weight:800;animation:.45s cubic-bezier(.22,1,.36,1) both photo-showcase-pop;display:flex}.photo-showcase__dots{gap:14px;display:flex}.photo-showcase__dot{background:#ffffff24;border-radius:50%;width:14px;height:14px;transition:all .35s}.photo-showcase__dot.is-active{background:#3a6df0;box-shadow:0 0 0 6px #3a6df02e}.photo-showcase__dot.is-done{background:#4caf7f}.photo-showcase__gallery{gap:clamp(12px,2vw,24px);display:flex}.photo-showcase__thumb{aspect-ratio:3/4;background:#05070c;border:1px solid #ffffff1f;border-radius:16px;width:clamp(96px,12vw,160px);animation:.45s cubic-bezier(.22,1,.36,1) both photo-showcase-pop;position:relative;overflow:hidden}@keyframes photo-showcase-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.photo-showcase__thumb img{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.photo-showcase__thumb-check{color:#06120c;background:#4caf7f;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.85rem;font-weight:700;display:flex;position:absolute;bottom:8px;right:8px}.avatar-experience{position:relative;overflow:hidden}.avatar-experience--fullscreen{width:100vw;height:100dvh;position:fixed;inset:0}.avatar-experience--preview{border:1px solid #ffffff1a;border-radius:16px;width:360px;height:480px}.avatar-experience__avatar{z-index:0;position:absolute;inset:0}.avatar-experience__mic-corner{z-index:10;position:absolute;top:1rem;left:1rem}.preview-page{color:#e8e8ef}.preview-page__title{margin:0 0 24px;font-size:1.4rem}.modal{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0c14b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal__card{text-align:center;color:#e8e8ef;background:#14161f;border:1px solid #ffffff14;border-radius:20px;width:min(90vw,420px);padding:28px;box-shadow:0 20px 60px #00000080}.modal__title{margin:0 0 12px;font-size:1.3rem;font-weight:700}.modal__body{color:#b8bccb;margin:0;font-size:.95rem}.modal__countdown{color:#5b8cff;margin-top:16px;font-size:2rem;font-weight:700}.phone-prefix{position:relative}.phone-prefix__button{box-sizing:border-box;color:#e8e8ef;width:100%;font:inherit;cursor:pointer;background:#14161fe6;border:1px solid #ffffff24;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:13px 10px 13px 12px;font-size:.95rem;line-height:1.2;display:flex}.phone-prefix__button.is-open{border-color:#3a6df0}.phone-prefix__arrow{color:#8a8fa3;font-size:.75rem}.phone-prefix__pop{z-index:2147483000;background:#14161f;border:1px solid #ffffff29;border-radius:8px;position:fixed;overflow:hidden;box-shadow:0 16px 40px #0009}.phone-prefix__search{box-sizing:border-box;color:#e8e8ef;width:100%;font:inherit;background:0 0;border:none;border-bottom:1px solid #ffffff1f;outline:none;padding:10px 12px;font-size:.95rem}.phone-prefix__list{max-height:240px;margin:0;padding:4px;list-style:none;overflow-y:auto}.phone-prefix__item{color:#cdd1de;cursor:pointer;border-radius:6px;gap:10px;padding:9px 10px;font-size:.92rem;display:flex}.phone-prefix__item.is-active{background:#3a6df02e}.phone-prefix__item.is-selected{color:#fff}.phone-prefix__dial{color:#9aa0b4;flex:0 0 3.2rem}.phone-prefix__item.is-selected .phone-prefix__dial{color:#fff}.phone-prefix__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.phone-prefix__empty{text-align:center;color:#6b7086;padding:12px;font-size:.9rem}.ob{--paper:#fff;--ink:#000;--ink-2:#6e6e73;--ink-3:#aeaeb2;--hair:#e6e6e9;--ai-loop:linear-gradient(90deg, #007aff, #5856d6, #af52de, #ff2d55, #ff9500, #34c759, #30d9c8, #007aff);--track-w:min(620px, 80vw);--ease:cubic-bezier(.22, 1, .36, 1);--font:"Neue Haas Grotesk Display Pro", "Helvetica Neue", "Inter", Helvetica, Arial, sans-serif;z-index:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-weight:400;position:fixed;inset:0;overflow:hidden}.ob *,.ob :before,.ob :after{box-sizing:border-box;margin:0;padding:0}.ob button,.ob input{color:inherit;font-family:inherit}.ob :focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:2px}.ob-bg{z-index:0;filter:blur(90px)saturate(135%);opacity:.9;pointer-events:none;position:absolute;inset:-20%}.ob[data-scene=capture] .ob-bg,.ob[data-scene=confirm] .ob-bg,.ob[data-scene=photos] .ob-bg{opacity:.34}.ob-bg s{will-change:transform;border-radius:50%;display:block;position:absolute}.ob-bg .b1{opacity:.16;background:#007aff;width:44vw;height:44vw;animation:38s ease-in-out infinite alternate ob-drift1;top:-4vw;left:4vw}.ob-bg .b2{opacity:.14;background:#af52de;width:38vw;height:38vw;animation:46s ease-in-out infinite alternate ob-drift2;top:2vw;right:6vw}.ob-bg .b3{opacity:.11;background:#ff9500;width:42vw;height:42vw;animation:52s ease-in-out infinite alternate ob-drift3;bottom:-8vw;right:16vw}.ob-bg .b4{opacity:.1;background:#34c759;width:34vw;height:34vw;animation:44s ease-in-out infinite alternate ob-drift4;bottom:2vw;left:-4vw}@keyframes ob-drift1{to{transform:translate(16vw,10vh)scale(1.25)}}@keyframes ob-drift2{to{transform:translate(-14vw,14vh)scale(.82)}}@keyframes ob-drift3{to{transform:translate(-10vw,-12vh)scale(1.18)}}@keyframes ob-drift4{to{transform:translate(12vw,-9vh)scale(1.1)}}.tablet-page{text-align:center;color:#f4f4f6;background:#101114;justify-content:center;align-items:center;padding:32px;font:18px/1.5 -apple-system,Segoe UI,system-ui,sans-serif;display:flex;position:fixed;inset:0}.ob-scene-slot{z-index:1;position:absolute;inset:0}.ob-cancel{z-index:3;font-size:14px;position:absolute;bottom:clamp(16px,3vh,32px);left:50%;transform:translate(-50%)}.ob-scene{z-index:1;animation:ob-scene-in .5s var(--ease) both;flex-direction:column;padding:clamp(32px,5vh,64px) clamp(32px,6vw,96px);display:flex;position:absolute;inset:0}@keyframes ob-scene-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.ob-body{flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex}.ob-foot{flex:none;justify-content:space-between;align-items:center;gap:24px;display:flex}.ob-foot.fade{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(10px)}.ob-foot.fade.in{opacity:1;transform:none}.ob-foot--row{justify-content:center;gap:16px}.ob-progress{align-items:center;gap:18px;display:flex}.ob-hero{letter-spacing:-.045em;font-size:clamp(52px,10.5vw,168px);font-weight:500;line-height:.94}.ob-hero em{min-height:.94em;font-style:normal;display:block}.ob-title{letter-spacing:-.035em;font-size:clamp(34px,4.6vw,66px);font-weight:500;line-height:1.02}.ob-lede{letter-spacing:-.012em;color:var(--ink-2);max-width:40ch;min-height:1.45em;margin-top:24px;font-size:clamp(17px,1.5vw,23px);line-height:1.45}.ob-eyebrow{color:var(--ink-2);letter-spacing:-.01em;margin-bottom:clamp(18px,2.6vh,30px);font-size:15px}.ob-count{color:var(--ink-2);letter-spacing:-.01em;white-space:nowrap;font-size:14px}.ob-phrase{letter-spacing:-.028em;max-width:min(1100px,100%);color:var(--ink-2);font-size:clamp(26px,3.4vw,50px);line-height:1.34}.ob-tok{white-space:nowrap;color:var(--ink-3);transition:color .55s var(--ease), background-color .55s var(--ease);border-radius:.16em;padding:.02em .1em;position:relative}.ob-tok:before{content:"[";opacity:.45;font-weight:300}.ob-tok:after{content:"]";opacity:.45;font-weight:300}.ob-scene--lit .ob-tok{color:var(--c);background-color:color-mix(in srgb, var(--c) 9%, transparent)}.ob-scene--lit .ob-tok:first-of-type{transition-delay:.45s}.ob-scene--lit .ob-tok:nth-of-type(2){transition-delay:.6s}.ob-scene--lit .ob-tok:nth-of-type(3){transition-delay:.75s}.ob-scene--lit .ob-tok:nth-of-type(4){transition-delay:.9s}.ob-scene--lit .ob-tok:nth-of-type(5){transition-delay:1.05s}.ob-scene--lit .ob-tok:nth-of-type(6){transition-delay:1.2s}.ob-legend{flex-wrap:wrap;gap:10px 12px;max-width:min(1100px,100%);margin-top:clamp(28px,4vh,44px);display:flex}.ob-leg{border:1px solid var(--hair);letter-spacing:-.01em;color:var(--ink-2);opacity:0;transition:opacity .5s var(--ease), transform .5s var(--ease);background:#fff9;border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 12px;font-size:14px;display:inline-flex;transform:translateY(6px)}.ob-scene--lit .ob-leg{opacity:1;transform:none}.ob-leg s{background:var(--c);border-radius:50%;width:7px;height:7px;display:block}.ob-grid{grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px) clamp(28px,4vw,64px);margin-top:clamp(20px,3vh,36px);display:grid}.ob-field{padding-bottom:16px;position:relative}.ob-field:before,.ob-field:after{content:"";border-radius:2px;height:2px;position:absolute;bottom:0;left:0;right:0}.ob-field:before{background:var(--hair)}.ob-field:after{background:var(--c);transform-origin:0;transition:transform .6s var(--ease);transform:scaleX(0)}.ob-field.got:after,.ob-field:focus-within:after{transform:scaleX(1)}.ob-field .k{color:var(--ink-3);margin-bottom:10px;font-size:13px;transition:color .4s}.ob-field.got .k{color:var(--ink-2)}.ob-field .v{letter-spacing:-.03em;-webkit-user-select:text;user-select:text;background:0 0;border:0;width:100%;padding:0;font-size:clamp(20px,2.1vw,32px);font-weight:400;line-height:1.15}.ob-field .v:focus{outline:none}.ob-field .v::placeholder{color:var(--ink-3);opacity:.45}.ob-script{color:var(--ink-3);letter-spacing:-.015em;max-width:62ch;min-height:1.5em;margin-top:clamp(18px,3vh,30px);font-size:clamp(15px,1.35vw,19px);line-height:1.5}.ob-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.6vh,32px) clamp(32px,5vw,80px);max-width:1100px;margin-top:clamp(24px,4vh,44px);display:grid}.ob-row{padding-bottom:14px;position:relative}.ob-row--wide{grid-column:1/-1}.ob-row:before,.ob-row:after{content:"";border-radius:2px;height:1.5px;position:absolute;bottom:0;left:0;right:0}.ob-row:before{background:var(--hair)}.ob-row:after{background:var(--c);transform-origin:0;transition:transform .45s var(--ease);transform:scaleX(0)}.ob-row:focus-within:after{transform:scaleX(1)}.ob-row>label{color:var(--ink-3);margin-bottom:8px;font-size:13px;display:block}.ob-row input{letter-spacing:-.03em;-webkit-user-select:text;user-select:text;background:0 0;border:0;width:100%;padding:0;font-size:clamp(19px,1.9vw,28px);font-weight:400}.ob-row input:focus{outline:none}.ob-row input::placeholder{color:var(--ink-3);opacity:.5}.ob-phone{align-items:baseline;gap:12px;display:flex}.ob-consent{color:var(--ink-2);grid-column:1/-1;align-items:flex-start;gap:12px;font-size:15px;line-height:1.4;display:flex}.ob-consent input{width:20px;height:20px;accent-color:var(--ink);flex:none}.ob-retakes{flex-wrap:wrap;grid-column:1/-1;gap:10px;display:flex}.ob-retakes button{border:1px solid var(--hair);color:var(--ink-2);cursor:pointer;background:#fff9;border-radius:999px;padding:8px 16px;font-size:13px}.ob-retakes button:disabled{opacity:.4;pointer-events:none}.ob-error{color:#ff2d55;grid-column:1/-1;font-size:15px;line-height:1.45}.ob-error p{opacity:.8;font-size:13px}.ob-listen{flex:none;align-items:center;gap:18px;height:60px;display:flex}.ob-listen p{color:var(--ink-2);letter-spacing:-.01em;font-size:19px}.ob-orb{flex:none;width:52px;height:52px;position:relative}.ob-orb i{filter:blur(7px)saturate(150%);background:conic-gradient(#007aff,#5856d6,#af52de,#ff2d55,#ff9500,#fc0,#34c759,#007aff);border-radius:50%;animation:5.5s linear infinite ob-spin;position:absolute;inset:0}.ob-orb b{background:var(--paper);border-radius:50%;position:absolute;inset:14px}.ob-listen.live .ob-orb{animation:ob-breathe 2.4s var(--ease) infinite}@keyframes ob-spin{to{transform:rotate(360deg)}}@keyframes ob-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.ob-typing:after{content:"";vertical-align:baseline;background:currentColor;width:.06em;height:.82em;margin-left:.07em;animation:1.05s step-end infinite ob-blink;display:inline-block}@keyframes ob-blink{50%{opacity:0}}.ob-slider{width:var(--track-w);touch-action:none;cursor:grab;isolation:isolate;background:#f2f2f4;border-radius:999px;height:68px;position:relative}.ob-slider.grabbing{cursor:grabbing}.ob-slider .glow{background:var(--ai-loop);filter:blur(14px);opacity:0;pointer-events:none;z-index:0;background-size:200% 100%;border-radius:999px;width:0;transition:opacity .35s;animation:5.5s linear infinite ob-flow;position:absolute;top:8px;bottom:8px;left:6px}.ob-slider.hot .glow{opacity:.85}.ob-slider .fill{pointer-events:none;z-index:1;border-radius:999px;width:0;position:absolute;inset:0;overflow:hidden}.ob-slider .fill i{width:var(--track-w);background:var(--ai-loop);background-size:200% 100%;height:100%;animation:5.5s linear infinite ob-flow;display:block}@keyframes ob-flow{to{background-position:200% 0}}.ob-slider .lbl{letter-spacing:-.01em;color:var(--ink-2);pointer-events:none;z-index:2;justify-content:center;align-items:center;font-size:16px;transition:opacity .25s;display:flex;position:absolute;inset:0}.ob-slider .knob{z-index:3;background:var(--paper);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:6px;left:6px;box-shadow:0 1px 3px #00000029,0 10px 24px #0000001a}.ob-slider .knob svg{width:20px;height:20px}.ob-slider.snap .knob,.ob-slider.snap .fill,.ob-slider.snap .glow{transition:transform .5s var(--ease), width .5s var(--ease), opacity .4s}.ob-segs{gap:5px;width:min(420px,50vw);display:flex}.ob-segs s{background:var(--hair);border-radius:99px;flex:1;height:3px;position:relative;overflow:hidden}.ob-segs s:after{content:"";background:var(--c);transform-origin:0;transition:transform .5s var(--ease);position:absolute;inset:0;transform:scaleX(0)}.ob-segs s.on:after{transform:scaleX(1)}.ob-btn{letter-spacing:-.015em;background:var(--ink);color:#fff;cursor:pointer;transition:transform .3s var(--ease), opacity .3s;border:0;border-radius:999px;padding:19px 38px;font-size:17px;font-weight:400}.ob-btn:active{transform:scale(.975)}.ob-btn.ghost{color:var(--ink-2);background:0 0;padding:19px 8px}.ob-btn.ghost:hover{color:var(--ink)}.ob-btn[disabled]{opacity:.28;pointer-events:none}.ob-badge{border:1px solid var(--hair);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffa8;border-radius:22px;flex-direction:column;gap:6px;max-width:520px;margin-top:clamp(26px,4vh,44px);padding:26px 34px;display:inline-flex}.ob-badge b{letter-spacing:-.03em;font-size:clamp(19px,1.8vw,26px);font-weight:500}.ob-badge span{color:var(--ink-2);letter-spacing:-.012em;font-size:15px}.ob-badge .strip{background:var(--ai-loop);background-size:200% 100%;border-radius:99px;height:3px;margin-top:14px;animation:6s linear infinite ob-flow}.ob-wait{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.ob-wait p{color:var(--ink-2);letter-spacing:-.02em;max-width:24ch;font-size:clamp(18px,2vw,26px)}.ob-spinner{border:3px solid var(--hair);border-top-color:var(--ink);border-radius:50%;width:46px;height:46px;animation:.9s linear infinite ob-spin}@media (width<=900px){.ob-grid{grid-template-columns:repeat(2,1fr)}.ob-form{grid-template-columns:1fr}}@media (width<=620px){.ob-grid{grid-template-columns:1fr;gap:18px}.ob-segs{width:56vw}}@media (prefers-reduced-motion:reduce){.ob *,.ob :before,.ob :after{transition-duration:.12s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.fi-root{color:#e8ecf4;background:radial-gradient(120% 90% at 50% 0,#141a26 0%,#0a0d14 60%,#06080d 100%);flex-direction:column;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;position:fixed;inset:0;overflow:hidden}.fi-topbar{letter-spacing:.4px;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:10px 20px;font-size:13px;display:flex}.fi-brand{color:#cdd5e3;font-weight:700}.fi-conns{gap:10px;display:flex}.fi-conn{text-transform:uppercase;letter-spacing:.6px;color:#8b95a6;align-items:center;gap:6px;font-size:11px;display:inline-flex}.fi-conn:before{content:"";background:#64748b;border-radius:50%;width:8px;height:8px}.fi-conn-open:before{background:#34d399;box-shadow:0 0 8px #34d399aa}.fi-conn-connecting:before{background:#fbbf24}.fi-conn-closed:before{background:#f87171}.fi-camera{flex:58%;min-height:0;padding:16px 20px 8px}.fi-camera-frame{background:#05070c;border:1px solid #ffffff14;border-radius:16px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000080,inset 0 0 0 1px #ffffff05}.fi-camera-frame img{object-fit:contain;width:100%;height:100%}.fi-camera-empty{color:#5b6575;letter-spacing:.4px;font-size:15px}.fi-bracket{border:2px solid #5b8cffb3;width:26px;height:26px;position:absolute}.fi-bracket-tl{border-bottom:none;border-right:none;top:14px;left:14px}.fi-bracket-tr{border-bottom:none;border-left:none;top:14px;right:14px}.fi-bracket-bl{border-top:none;border-right:none;bottom:14px;left:14px}.fi-bracket-br{border-top:none;border-left:none;bottom:14px;right:14px}.fi-livedot{letter-spacing:1px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0d14b8;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:16px;left:50%;transform:translate(-50%)}.fi-livedot.is-live{color:#4ade80;border:1px solid #4ade8066}.fi-livedot.is-off{color:#f87171;border:1px solid #f8717166}.fi-faces{text-align:center;letter-spacing:.3px;color:#cbd3e1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap;text-overflow:ellipsis;background:#0a0d14b8;border-radius:999px;max-width:80%;padding:5px 16px;font-size:13px;position:absolute;bottom:16px;left:50%;overflow:hidden;transform:translate(-50%)}.fi-chat{background:#11151fe6;border:1px solid #ffffff12;border-radius:16px;flex-direction:column;flex:42%;min-height:0;margin:8px 20px 18px;display:flex}.fi-chat-head{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.fi-chat-who{align-items:center;gap:10px;display:flex}.fi-visitor{font-size:15px;font-weight:700}.fi-pill{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:2px 9px;font-size:11px}.fi-pill-active{color:#4ade80;background:#10331f}.fi-pill-away{color:#fbbf24;background:#3a2f12}.fi-pill-ended{color:#94a3b8;background:#232a38}.fi-chat-state{text-transform:uppercase;letter-spacing:.6px;color:#8b95a6;align-items:center;gap:12px;font-size:12px;display:flex}.fi-chat-scroll{flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 18px;display:flex;overflow-y:auto}.fi-muted{color:#7c8698;font-size:14px}.fi-turn{border-radius:12px;max-width:78%;padding:10px 14px}.fi-turn-user{background:#172033;border:1px solid #24314a;align-self:flex-start}.fi-turn-ai{background:#16221b;border:1px solid #244034;align-self:flex-end}.fi-turn-head{text-transform:uppercase;letter-spacing:.5px;color:#8b95a6;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:11px;display:flex}.fi-turn-text{white-space:pre-wrap;margin:0;font-size:15px;line-height:1.5}.fi-turn-text.is-partial{color:#aeb7c6}.fi-caret{margin-left:1px;animation:1s step-end infinite fi-blink}@keyframes fi-blink{50%{opacity:0}}.fi-pending{color:#fbbf24;text-transform:none;letter-spacing:0;align-items:center;gap:7px;font-size:12px;display:inline-flex}.fi-latency{color:#6ee7b7;text-transform:none;letter-spacing:0;font-size:12px}.fi-spinner{border:2px solid #fbbf2444;border-top-color:#fbbf24;border-radius:50%;width:11px;height:11px;animation:.7s linear infinite fi-spin}@keyframes fi-spin{to{transform:rotate(360deg)}}.test-audio-input{color:#e8e8ef;background:#16161f;align-items:center;gap:.75rem;padding:.75rem 1rem;font-family:system-ui,sans-serif;font-size:.9rem;display:flex}.test-audio-input button{color:#fff;cursor:pointer;background:#6a5cff;border:none;border-radius:6px;padding:.4rem .9rem}.test-audio-input button:disabled{opacity:.5;cursor:not-allowed}.test-audio-input__filename{opacity:.7}.test-audio-input__ok{color:#6fdc8c}.test-audio-input__error{color:#ff6b6b}.test-avatar-page{background:#0b0b12;flex-direction:column;height:100vh;display:flex}.test-avatar-page__avatar{flex:1;min-height:0}.avatar-llm-view{flex-direction:column;gap:16px;max-width:640px;margin:0 auto;padding:24px;display:flex}.avatar-llm-field{flex-direction:column;gap:4px;font-size:14px;display:flex}.avatar-llm-mic-button{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:8px;padding:12px 20px;font-weight:600}.avatar-llm-mic-button--listening{background:#dc2626}.avatar-llm-mic-button--connecting{cursor:wait;background:#6b7280}.avatar-llm-panel{border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px}.avatar-llm-error{color:#dc2626}.avatar-llm-status{color:#16a34a;font-size:14px}.avatar-session-view{flex-direction:column;gap:16px;height:100%;display:flex}.avatar-session-view__stage{flex:auto;min-height:320px;position:relative}.avatar-session-view__controls{flex-direction:column;gap:12px;width:100%;max-width:640px;margin:0 auto;padding:0 24px 24px;display:flex}.avatar-session-view__field{flex-direction:column;gap:4px;font-size:14px;display:flex}.avatar-session-view__toggle{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:8px;padding:12px 20px;font-weight:600}.avatar-session-view__toggle--connecting,.avatar-session-view__toggle--initializing-sdk,.avatar-session-view__toggle--loading-avatar{cursor:wait;background:#6b7280}.avatar-session-view__toggle--ready,.avatar-session-view__toggle--speaking{background:#dc2626}.avatar-session-view__logout{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:8px;align-self:flex-end;padding:6px 12px;font-size:13px}.avatar-session-view__logout:disabled{opacity:.5;cursor:not-allowed}.avatar-session-view__text-input{gap:8px;display:flex}.avatar-session-view__text-input input{border:1px solid #e5e7eb;border-radius:8px;flex:auto;padding:10px 12px}.avatar-session-view__text-input button{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:8px;padding:10px 16px;font-weight:600}.avatar-session-view__text-input button:disabled{cursor:not-allowed;background:#9ca3af}.avatar-session-view__panel{border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px}.avatar-session-view__error{color:#dc2626}.avatar-session-view__status{color:#16a34a;font-size:14px}.orchestrator-login-form{background:#0f1117;justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex}.orchestrator-login-form__card{background:#14161f;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;gap:14px;width:min(90vw,360px);padding:28px;display:flex}.orchestrator-login-form__title{color:#f5f6fa;margin:0 0 8px;font-size:1.3rem}.orchestrator-login-form__field{color:#b8bccb;flex-direction:column;gap:6px;font-size:.85rem;display:flex}.orchestrator-login-form__field input{color:#e8e8ef;background:#0f1117;border:1px solid #ffffff1f;border-radius:8px;padding:10px 12px;font-size:.95rem}.orchestrator-login-form__error{color:#f87171;font-size:.85rem}.orchestrator-login-form__submit{color:#fff;cursor:pointer;background:#5b8cff;border:none;border-radius:10px;margin-top:8px;padding:11px;font-weight:600}.orchestrator-login-form__submit:disabled{opacity:.6;cursor:default}
