*,:before,:after{box-sizing:border-box}*{margin:0}html,body,#root{min-height:100%}img,picture,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}@font-face{font-family:UnderLayer Inter;src:url(/fonts/Inter-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:UnderLayer Inter;src:url(/fonts/Inter-Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:UnderLayer Inter;src:url(/fonts/Inter-SemiBold.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:UnderLayer Inter;src:url(/fonts/Inter-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{min-width:320px;min-height:100vh;color:var(--color-text);background:radial-gradient(circle at 50% -20%, #7c7ce01a, transparent 35rem), var(--color-background);font-family:var(--font-family-main);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}h1,h2,h3{font-weight:600}button,input{color:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-background:#0b0d12;--color-surface:#11141b;--color-surface-raised:#171b24;--color-text:#f5f7fa;--color-text-muted:#949baa;--color-text-subtle:#666e7d;--color-border:#252a35;--color-border-strong:#343b49;--color-primary:#7c7ce0;--color-primary-strong:#c070e8;--color-primary-soft:#7c7ce01f;--brand-gradient:linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));--color-success:#55d6a5;--color-success-soft:#55d6a51f;--color-danger:#ff6b7a;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1.25rem;--radius-panel:1.5rem;--font-family-main:"UnderLayer Inter", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-page-title:clamp(2.2rem, 7vw, 2.6rem);--page-title-letter-spacing:-.03em;--page-title-line-height:1.12;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--transition-fast:.16s ease;--transition-default:.24s ease;--content-width:1200px}.button{color:#fff;background:var(--brand-gradient);border-radius:var(--radius-md);cursor:pointer;width:100%;min-height:52px;font:inherit;letter-spacing:-.01em;transition:transform var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast);border:1px solid #ffffff1a;padding:1rem 1.25rem;font-weight:700;position:relative;overflow:hidden;box-shadow:0 8px 24px #7c7ce033,inset 0 1px #ffffff1f}.button:before{content:"";pointer-events:none;background:linear-gradient(#ffffff14,#0000 50%);position:absolute;inset:0}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #7c7ce04d,inset 0 1px #ffffff29}.button:active:not(:disabled){transform:translateY(0);box-shadow:0 5px 16px #7c7ce02e,inset 0 1px #ffffff1a}.button:focus-visible{outline:3px solid var(--color-primary-soft);outline-offset:3px}.button:disabled{color:var(--color-text-subtle);background:var(--color-surface-raised);border-color:var(--color-border);box-shadow:none;cursor:not-allowed;opacity:.65}.button:disabled:before{display:none}.backButton{min-height:52px;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font:inherit;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);background:0 0;padding:1rem 1.25rem;font-weight:600}.backButton:hover{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.backButton:focus-visible{outline:2px solid var(--color-success);outline-offset:3px}.appHeader{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;min-height:64px;padding:max(.75rem, env(safe-area-inset-top)) 1.25rem .75rem;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b0d12cc;display:flex}.appHeader__controls{z-index:3;align-items:center;gap:var(--space-sm);flex:none;display:flex;position:relative}.appHeader__brand{align-items:center;height:52px;display:flex}.appHeader__brand:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}.appHeader__logo{object-fit:contain;width:auto;height:52px}.appHeader__languageSwitcherSlot{--language-switcher-collapsed-width:5.7rem;flex:0 0 var(--language-switcher-collapsed-width);width:var(--language-switcher-collapsed-width);height:2.75rem;position:relative}.appHeader__languageSwitcher{z-index:2;max-width:var(--language-switcher-collapsed-width);background:var(--color-surface);border:1px solid var(--color-border);transition:max-width .24s cubic-bezier(.22, 1, .36, 1), border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:999px;align-items:center;gap:.2rem;padding:.25rem;display:inline-flex;position:absolute;top:0;right:0;overflow:hidden;box-shadow:0 8px 24px #0000}.appHeader__languageSwitcher--expanded{border-color:var(--color-border-strong);max-width:20rem;box-shadow:0 8px 24px #00000059}.appHeader__languageButton{min-width:2.5rem;min-height:2.25rem;color:var(--color-text-muted);cursor:pointer;font:inherit;transition:max-width var(--transition-fast), padding var(--transition-fast), opacity var(--transition-fast), color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:0;border-radius:999px;padding-inline:.65rem;font-size:.75rem;font-weight:700}.appHeader__languageButton:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.appHeader__languageButton--active{color:#fff;background:var(--brand-gradient);box-shadow:0 2px 8px #7c7ce040}.appHeader__languageButton--hidden{display:none}.appHeader__logout{min-height:2.75rem;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;font:inherit;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);border-radius:999px;padding:.65rem .9rem;font-size:.75rem;font-weight:700}.appHeader__logout:hover{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.appHeader__logout:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (width<=27rem){.appHeader{flex-wrap:wrap;padding-inline:.75rem}.appHeader__controls{gap:var(--space-xs)}.appHeader__languageSwitcherSlot{--language-switcher-collapsed-width:4.9rem}.appHeader__languageButton{min-width:2.1rem;padding-inline:.45rem}.appHeader__logout{padding-inline:.7rem}}@media (width>=48rem){.appHeader{min-height:72px;padding:0 clamp(2rem,4vw,3rem)}.appHeader__languageSwitcherSlot{--language-switcher-collapsed-width:6.2rem}.appHeader__languageButton{min-width:2.75rem}}@media (width>=48rem) and (hover:hover){.appHeader__languageButton:hover:not(.appHeader__languageButton--active){color:var(--color-text);background:var(--color-surface-raised)}}.demoProgress{width:100%;padding:max(1rem, env(safe-area-inset-top)) 1.25rem 1rem}.demoProgress__list{margin:0;padding:0;list-style:none;display:grid}.demoProgress__item{min-width:0;position:relative}.demoProgress__item:not(:last-child):after{content:"";background:var(--color-border);width:calc(100% - 2rem);height:1px;position:absolute;top:.875rem;left:calc(50% + 1rem)}.demoProgress__item--completed:not(:last-child):after{background:var(--brand-gradient)}.demoProgress__step{z-index:1;width:100%;min-width:0;color:var(--color-text-subtle);font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:.4rem;padding:0;display:flex;position:relative}.demoProgress__step:not(:disabled){cursor:pointer}.demoProgress__step:disabled{opacity:1}.demoProgress__step:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius-sm)}.demoProgress__marker{color:#fff;border:1px solid var(--color-border);background:#000;border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;font-size:.7rem;font-weight:700;display:grid}.demoProgress__label{color:var(--color-text-muted);text-align:center;font-size:.7rem;font-weight:600;line-height:1.25;display:block}.demoProgress__item--current .demoProgress__marker{box-shadow:0 0 0 4px var(--color-primary-soft);background:#8347da}.demoProgress__item--completed .demoProgress__marker{color:#fff;background:#8347da}@media (width>=48rem){.demoProgress{max-width:720px;padding:var(--space-lg) var(--space-xl);margin-inline:auto}.demoProgress__label{font-size:.75rem}.demoProgress__marker{width:2rem;height:2rem}.demoProgress__item:not(:last-child):after{top:1rem}.demoProgress__item--current .demoProgress__label,.demoProgress__item--completed .demoProgress__label{color:var(--color-text)}}.appShell{isolation:isolate;min-height:100svh;position:relative}.appShell__content{z-index:1;position:relative}.particlesBackground{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.particlesBackground canvas{display:block}.loginPage{flex-direction:column;min-height:100svh;display:flex}.loginPage--checking{color:var(--color-text-muted);justify-content:center;align-items:center}.loginPage__panel{gap:var(--space-lg);width:min(100% - 2rem,460px);padding:var(--space-2xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);margin:auto;display:grid;box-shadow:0 24px 80px #00000040}.loginPage__panel h1{font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing)}.loginPage__panel>p{color:var(--color-text-muted);line-height:1.6}.loginPage__panel label{gap:var(--space-xs);display:grid}.loginPage__panel label span{color:var(--color-text-muted);font-size:.82rem;font-weight:600}.loginPage__panel label input{background:var(--color-background);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);width:100%;min-height:52px;font:inherit;padding:.85rem 1rem}.loginPage__panel label input:focus-visible{border-color:var(--color-primary);outline:3px solid var(--color-primary-soft)}.loginPage__eyebrow{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.loginPage__error{padding:var(--space-sm) var(--space-md);color:var(--color-danger);border-radius:var(--radius-md);background:#ff6b7a1a;border:1px solid #ff6b7a3d}.adminPage{background:radial-gradient(circle at 50% 0,#7c7ce014,#0000 28rem);min-height:100svh}.adminPage__main{width:100%;max-width:var(--content-width);padding:var(--space-xl) 1.25rem var(--space-2xl);margin-inline:auto}.adminPage__intro{max-width:720px}.adminPage__eyebrow{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.adminPage__title{margin-top:var(--space-sm);font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing);line-height:var(--page-title-line-height)}.adminPage__description{margin-top:var(--space-lg);color:var(--color-text-muted);line-height:1.6}.adminPage__sessions{margin-top:var(--space-2xl)}.adminPage__sessionsHeader{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.adminPage__sessionsHeader h2{font-size:1.25rem}.adminPage__sessionsHeader span{color:var(--color-text-muted);font-size:.875rem}.adminPage__createButton{padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:0 0;justify-content:center;display:flex}.adminPage__createButton .button{max-width:256px}.adminPage__grid{margin-top:var(--space-2xl);gap:var(--space-lg);align-items:start;display:grid}@media (width>=48rem){.adminPage__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.adminPage__empty{padding:var(--space-2xl);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}@media (width>=48rem){.adminPage__main{padding:var(--space-2xl) var(--space-xl)}.adminPage__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sessionCard{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;transition:border-color var(--transition-fast), background var(--transition-fast);align-self:start;overflow:hidden}.sessionCard[open]{border-color:var(--color-border-strong)}.sessionCard[open] .sessionCard__chevron{transform:rotate(180deg)}.sessionCard[open] .sessionCard__details{animation:.26s cubic-bezier(.22,1,.36,1) session-details-open}.sessionCard--removing{pointer-events:none;animation:.16s cubic-bezier(.4,0,1,1) both session-card-remove}.sessionCard__summary{padding:var(--space-lg);cursor:pointer;list-style:none}.sessionCard__summary::-webkit-details-marker{display:none}.sessionCard__summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.sessionCard__header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.sessionCard__identity{min-width:0}.sessionCard__eyebrow{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700}.sessionCard__title{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem;font-size:1.25rem;overflow:hidden}.sessionCard__headerRight{align-items:center;gap:var(--space-sm);flex:none;display:flex}.sessionCard__status{color:var(--color-primary);background:var(--color-primary-soft);border-radius:999px;padding:.35rem .6rem;font-size:.7rem;font-weight:700}.sessionCard__chevron{width:1.75rem;height:1.75rem;color:var(--color-text-muted);transition:color var(--transition-fast), transform .26s cubic-bezier(.22, 1, .36, 1);place-items:center;display:grid}.sessionCard__meta{gap:var(--space-sm);margin-top:var(--space-md);color:var(--color-text-muted);flex-wrap:wrap;font-size:.75rem;display:flex}.sessionCard__details{padding:0 var(--space-lg) var(--space-lg);border-top:1px solid var(--color-border);transform-origin:top;overflow:hidden}.sessionCard__rename{padding-top:var(--space-lg)}.sessionCard__rename label{margin-bottom:var(--space-sm);color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700;display:block}.sessionCard__renameRow{gap:var(--space-sm);flex-direction:column;display:flex}.sessionCard__renameRow input{width:100%;min-height:52px;color:var(--color-text);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;padding:.85rem 1rem}.sessionCard__renameRow input:focus{border-color:var(--color-primary);outline:2px solid var(--color-primary-soft);outline-offset:2px}.sessionCard__renameRow .button{flex:none}.sessionCard__renameError{margin-top:var(--space-sm);color:var(--color-danger);display:block}.sessionCard__sectionLabel{margin-bottom:var(--space-sm);color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700;display:block}.sessionCard__collection{margin-top:var(--space-lg)}.sessionCard__emptyLine{padding:var(--space-md);color:var(--color-text-muted);background:var(--color-background);border:1px dashed var(--color-border);border-radius:var(--radius-md);margin:0;font-size:.85rem}.sessionCard__userList,.sessionCard__analysisList{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.sessionCard__userList li,.sessionCard__analysisList li{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.sessionCard__userList div,.sessionCard__analysisList div{flex-direction:column;gap:.2rem;min-width:0;display:flex}.sessionCard__userList small,.sessionCard__analysisList small{color:var(--color-text-muted)}.sessionCard__userList a,.sessionCard__analysisList a{color:var(--color-primary);text-align:right;font-size:.75rem;font-weight:650}.sessionCard__userDecodeStatus{border:1px solid;border-radius:999px;align-self:flex-start;align-items:center;gap:.35rem;margin-top:.2rem;padding:.25rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.sessionCard__userDecodeStatus--success{color:var(--color-success);background:var(--color-success-soft);border-color:#55d6a54d}.sessionCard__userDecodeStatus--pending{color:var(--color-danger);background:#ff6b7a1f;border-color:#ff6b7a4d}.sessionCard__analysisList img{object-fit:cover;background:var(--color-surface);border-radius:var(--radius-sm);width:56px;height:42px}.sessionCard__analysisList li{justify-content:flex-start}.sessionCard__analysisList li.sessionCard__analysisItem--identified{background:var(--color-success-soft);border-color:#55d6a54d}.sessionCard__analysisList li.sessionCard__analysisItem--unidentified{background:#ff6b7a1f;border-color:#ff6b7a4d}.sessionCard__data{gap:var(--space-sm);margin:var(--space-lg) 0 0;display:grid}.sessionCard__data div{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:1px solid var(--color-border);display:flex}.sessionCard__data dt{color:var(--color-text-muted);font-size:.8rem}.sessionCard__data dd{text-align:right;margin:0;font-weight:600}.sessionCard__share{margin-top:var(--space-lg)}.sessionCard__shareContent{align-items:stretch;gap:var(--space-md);flex-direction:column;display:flex}.sessionCard__qr{width:fit-content;max-width:100%;padding:var(--space-sm);border-radius:var(--radius-md);background:#fff;align-self:center;place-items:center;display:grid}.sessionCard__qr svg{max-width:100%;height:auto;display:block}.sessionCard__shareRow{gap:var(--space-sm);padding:var(--space-sm);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.sessionCard__url{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.sessionCard__copy{min-height:40px;color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font:inherit;transition:background var(--transition-fast), border-color var(--transition-fast);padding:.65rem .9rem;font-size:.8rem;font-weight:700}.sessionCard__copy:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sessionCard__actions{padding-top:var(--space-lg);justify-content:center;display:flex}@media (width>=48rem){.sessionCard__summary{padding:var(--space-xl)}.sessionCard__details{padding:0 var(--space-xl) var(--space-xl)}.sessionCard__renameRow{flex-direction:row}.sessionCard__renameRow input{flex:1;min-width:0}.sessionCard__renameRow .button{width:auto;min-width:8rem}.sessionCard__data{gap:var(--space-lg);grid-template-columns:minmax(0,1fr)}.sessionCard__data div{border-bottom:0;display:block}.sessionCard__data dd{text-align:left;margin-top:.35rem}.sessionCard__shareContent{flex-direction:row;align-items:center}.sessionCard__qr{flex:none}.sessionCard__shareRow{flex-direction:row;flex:1;align-items:center;min-width:0}.sessionCard__url{flex:1}.sessionCard__copy{flex:none}.sessionCard__copy:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}}@keyframes session-details-open{0%{opacity:0;transform:translateY(-.6rem)scaleY(.97)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes session-details-close{0%{opacity:1;transform:translateY(0)scaleY(1)}to{opacity:0;transform:translateY(-.45rem)scaleY(.97)}}@keyframes session-card-remove{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-.75rem)scale(.98)}}@media (prefers-reduced-motion:reduce){.sessionCard__details,.sessionCard--removing{animation:none}.sessionCard__chevron{transition:none}}.createDemoPanel{width:100%;margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transform-origin:top;animation:.36s cubic-bezier(.16,1,.3,1) both create-demo-panel-enter;overflow:hidden;box-shadow:0 1.25rem 3rem #0000001f}.createDemoPanel__header{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);display:flex}.createDemoPanel__eyebrow{margin-bottom:var(--space-xs);color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700;display:block}.createDemoPanel__title{color:var(--color-text);margin:0;font-size:clamp(1.35rem,5vw,1.75rem);line-height:1.15}.createDemoPanel__description{max-width:42rem;margin:var(--space-sm) 0 0;color:var(--color-text-muted);line-height:1.6}.createDemoPanel__close{width:2.5rem;height:2.5rem;color:var(--color-text-muted);cursor:pointer;font:inherit;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.6rem;line-height:1;display:grid}.createDemoPanel__close:hover{color:var(--color-text);background:var(--color-background);border-color:var(--color-border);transform:rotate(6deg)}.createDemoPanel__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.createDemoPanel__share{gap:var(--space-md);margin-top:var(--space-xl);display:grid}.createDemoPanel__qr{width:fit-content;max-width:100%;padding:var(--space-md);border-radius:var(--radius-md);background:#fff;place-items:center;margin-inline:auto;animation:.42s cubic-bezier(.16,1,.3,1) .1s both create-demo-qr-enter;display:grid;box-shadow:0 .75rem 2rem #0000001a}.createDemoPanel__qr svg{max-width:100%;height:auto;display:block}.createDemoPanel__url{min-width:0;padding:var(--space-sm) var(--space-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.createDemoPanel__url span{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;display:block;overflow:hidden}.createDemoPanel__session{gap:var(--space-xs);margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.createDemoPanel__session>div{gap:var(--space-xs);flex-direction:column;display:flex}.createDemoPanel__session span{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.createDemoPanel__session code{max-width:100%;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.createDemoPanel--closing{pointer-events:none;animation:.14s cubic-bezier(.4,0,1,1) both create-demo-panel-exit}@media (width>=48rem){.createDemoPanel{padding:var(--space-xl)}.createDemoPanel__share{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.createDemoPanel__qr{grid-row:1/span 2;margin-inline:0}.createDemoPanel__url{align-self:end}.createDemoPanel__session{display:flex}}@keyframes create-demo-panel-enter{0%{opacity:0;transform:translateY(-.75rem)scaleY(.92)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes create-demo-qr-enter{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes create-demo-panel-exit{0%{opacity:1;transform:translateY(0)scaleY(1)}to{opacity:0;transform:translateY(-.5rem)scaleY(.94)}}@media (prefers-reduced-motion:reduce){.createDemoPanel,.createDemoPanel__qr{animation:none}.createDemoPanel__close{transition:none}}.demoPage{background:radial-gradient(circle at 50% 0,#7c7ce01f,#0000 22rem);flex-direction:column;width:100%;min-height:100svh;display:flex;overflow-x:hidden}.demoPage__viewport{flex:1;width:100%;display:flex;position:relative;overflow:hidden}.demoPage__content{justify-content:center;align-items:center;display:flex}.demoPage__stage{width:100%;min-width:0;padding:2rem max(1.5rem, env(safe-area-inset-bottom));flex-direction:column;flex:1;display:flex}.demoPage__stage--forward{animation:.28s cubic-bezier(.22,1,.36,1) demo-slide-forward}.demoPage__stage--backward{animation:.28s cubic-bezier(.22,1,.36,1) demo-slide-backward}.demoPage__invalidSession{padding:var(--space-2xl);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}@media (width>=48rem){.demoPage__stage{padding:var(--space-xl) var(--space-xl) var(--space-2xl);justify-content:center;align-items:center}}@keyframes demo-slide-forward{0%{opacity:0;transform:translate(2.5rem)}to{opacity:1;transform:translate(0)}}@keyframes demo-slide-backward{0%{opacity:0;transform:translate(-2.5rem)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.demoPage__stage{animation:none}}.fullscreenImage{z-index:1000;width:100vw;height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.fullscreenImage__image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.fullscreenImage__close{top:max(1rem, env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:2.75rem;height:2.75rem;transition:background var(--transition-fast), transform var(--transition-fast);background:#0000008c;border:1px solid #fff3;border-radius:50%;place-items:center;padding:0;font-size:1.6rem;line-height:1;display:grid;position:absolute}.fullscreenImage__close:hover{background:#000000bf;transform:scale(1.05)}.fullscreenImage__close:focus-visible{outline-offset:3px;outline:2px solid #fff}.fullscreenImage__hint{bottom:max(1rem, env(safe-area-inset-bottom));color:#ffffffa6;pointer-events:none;background:#00000073;border-radius:999px;padding:.4rem .75rem;font-size:.75rem;position:absolute}.preparingContent{flex:1;align-items:center;width:100%;max-width:480px;margin-inline:auto;display:flex}.preparingContent__content{width:100%;padding-block:var(--space-xl);text-align:center}.preparingContent__loader{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:3rem;height:3rem;margin-inline:auto;animation:.8s linear infinite preparing-spin}.preparingContent__title{margin-top:var(--space-xl);font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing);line-height:var(--page-title-line-height)}.preparingContent__description{max-width:400px;margin:var(--space-lg) auto 0;color:var(--color-text-muted);font-size:.95rem;line-height:1.65}@media (width>=48rem){.preparingContent{max-width:540px}.preparingContent__loader{width:3.5rem;height:3.5rem}.preparingContent__description{font-size:1rem}}@keyframes preparing-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.preparingContent__loader{animation:none}}.protectedContent{width:100%;max-width:480px;margin-inline:auto}.protectedContent__title{font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing);line-height:var(--page-title-line-height)}.protectedContent__description{margin-top:var(--space-lg);color:var(--color-text-muted);font-size:.95rem;line-height:1.6}.protectedContent__description strong{color:var(--color-text)}.protectedContent__instruction{align-items:flex-start;gap:var(--space-md);margin-top:var(--space-lg);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:left;display:flex}.protectedContent__instruction strong{color:var(--color-text);display:block}.protectedContent__instruction p{color:var(--color-text-muted);margin-top:.25rem;font-size:.875rem;line-height:1.5}.protectedContent__instructionNumber{color:#fff;background:#8347da;border:1px solid #8f8f8f;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:700;display:grid}.protectedContent__imageWrapper{width:100%;min-height:220px;margin-block:var(--space-lg);color:inherit;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:zoom-in;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.protectedContent__imageWrapper:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.protectedContent__imageWrapper:disabled{cursor:default}.protectedContent__fullscreenHint{color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;border:1px solid #ffffff26;border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-size:1.1rem;display:grid;position:absolute;bottom:.75rem;right:.75rem}.protectedContent__image{object-fit:contain;opacity:0;width:100%;max-height:50svh;transition:opacity var(--transition-default);display:block}.protectedContent__image--loaded{opacity:1}.protectedContent__imageLoader{z-index:1;background:var(--color-surface);place-items:center;display:grid;position:absolute;inset:0}.protectedContent__imageLoader span{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:2.5rem;height:2.5rem;animation:.8s linear infinite viewer-loading-spin}.protectedContent__buttonContainer{gap:var(--space-sm);margin-top:var(--space-sm);flex-direction:column;display:flex}.protectedContent__back,.protectedContent__next{width:100%}.protectedContent__back{order:2}.protectedContent__next{order:1}@media (width>=48rem){.protectedContent{max-width:560px}.protectedContent__description{font-size:1rem}.protectedContent__instruction{margin-top:var(--space-xl)}.protectedContent__imageWrapper{min-height:280px}.protectedContent__imageWrapper:hover:not(:disabled){border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 8px 28px #7c7ce01f}.protectedContent__image{max-height:60svh}.protectedContent__buttonContainer{flex-direction:row}.protectedContent__back,.protectedContent__next{flex:1 1 0;width:0;min-width:0}.protectedContent__back{order:1}.protectedContent__next{order:2}}@keyframes viewer-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.protectedContent__image{transition:none}.protectedContent__imageLoader span{animation:none}}.screenshotUpload{width:100%;max-width:480px;margin-inline:auto}.screenshotUpload__header{margin-bottom:var(--space-xl)}.screenshotUpload__title{font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing);line-height:var(--page-title-line-height)}.screenshotUpload__description{margin-top:var(--space-lg);color:var(--color-text-muted);font-size:.95rem;line-height:1.6}.screenshotUpload__panel{padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 18px 56px #0000002e}.screenshotUpload__dropzone{cursor:pointer;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-md);min-height:220px;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);place-items:center;display:grid;position:relative;overflow:hidden}.screenshotUpload__dropzone:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.screenshotUpload__dropzone--dragging{border-color:var(--color-primary);transform:translateY(-1px)}.screenshotUpload__dropOverlay{z-index:2;color:#fff;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 2px var(--color-primary);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b0d12e0;place-items:center;display:grid;position:absolute;inset:0}.screenshotUpload__dropOverlay strong{padding:var(--space-md) var(--space-lg);background:var(--brand-gradient);border-radius:999px;box-shadow:0 12px 32px #7c7ce04d}.screenshotUpload__result{z-index:1;top:var(--space-md);right:var(--space-md);left:var(--space-md);color:#fff;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#188754f0;border:1px solid #ffffff3d;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex;position:absolute;box-shadow:0 10px 30px #0000003d}.screenshotUpload__result--unidentified{background:#a6303af0}.screenshotUpload__result--analysing{background:var(--brand-gradient)}.screenshotUpload__resultIcon{background:#ffffff29;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:1.25rem;font-weight:800;display:grid}.screenshotUpload__resultText{flex-direction:column;min-width:0;display:flex}.screenshotUpload__resultText small{opacity:.82}.screenshotUpload__resultText strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.screenshotUpload__input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.screenshotUpload__placeholder{width:100%;padding:var(--space-lg);text-align:center;flex-direction:column;gap:.5rem;display:flex}.screenshotUpload__placeholder span,.screenshotUpload__placeholder small{color:var(--color-text-muted)}.screenshotUpload__placeholder strong{color:var(--color-text)}.screenshotUpload__preview{object-fit:contain;width:100%;max-height:300px;display:block}.screenshotUpload__filename{margin-top:var(--space-md);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.screenshotUpload__error{margin-top:var(--space-md);color:var(--color-danger);font-size:.875rem}.screenshotUpload__buttonContainer{gap:var(--space-sm);margin-top:var(--space-lg);flex-direction:column;display:flex}.screenshotUpload__back{order:2;width:100%}.screenshotUpload__button{order:1;width:100%}@media (width>=48rem){.screenshotUpload{max-width:560px}.screenshotUpload__description{font-size:1rem}.screenshotUpload__panel{padding:var(--space-lg)}.screenshotUpload__dropzone{min-height:260px}.screenshotUpload__dropzone:hover{border-color:var(--color-primary);background:linear-gradient(180deg, var(--color-primary-soft), transparent), var(--color-surface);transform:translateY(-1px)}.screenshotUpload__placeholder{padding:var(--space-xl)}.screenshotUpload__preview{max-height:360px}.screenshotUpload__buttonContainer{flex-direction:row;justify-content:center;align-items:center}.screenshotUpload__back{flex:1 1 0;order:1;width:0;min-width:0}.screenshotUpload__back:hover{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.screenshotUpload__button{flex:1 1 0;order:2;width:0;min-width:0}}.viewerIdentity{width:100%;max-width:480px;margin-inline:auto}.viewerIdentity__content{padding-block:var(--space-xl)}.viewerIdentity__title{font-size:var(--font-size-page-title);letter-spacing:var(--page-title-letter-spacing);line-height:var(--page-title-line-height)}.viewerIdentity__description{margin-top:var(--space-lg);color:var(--color-text-muted);font-size:.95rem;line-height:1.65}.viewerIdentity__users{gap:var(--space-sm);margin-top:var(--space-lg);flex-direction:column;display:flex}.viewerIdentity__users>span{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.viewerIdentity__userList{gap:var(--space-sm);flex-wrap:wrap;display:flex}.viewerIdentity__userList button{color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-strong);cursor:pointer;font:inherit;border-radius:999px;padding:.65rem .9rem;font-size:.85rem;font-weight:650}.viewerIdentity__userList button:hover:not(:disabled){border-color:var(--color-primary)}.viewerIdentity__form{gap:var(--space-sm);margin-top:var(--space-xl);flex-direction:column;display:flex}.viewerIdentity__label{font-size:.875rem;font-weight:600}.viewerIdentity__input{width:100%;min-height:48px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.875rem 1rem;font-size:1rem}.viewerIdentity__input::placeholder{color:var(--color-text-subtle)}.viewerIdentity__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.viewerIdentity__submit{margin-top:.5rem}.viewerIdentity__error{margin-top:var(--space-sm);color:var(--color-danger);font-size:.875rem}@media (width>=48rem){.viewerIdentity{max-width:520px}.viewerIdentity__content{padding-block:var(--space-2xl)}.viewerIdentity__description{font-size:1rem}}
