:root{--brand-linzess-dark-purple: #422e83;--brand-linzess-purple: #60579e;--brand-linzess-light-purple: #d9d7f9;--brand-linzess-orange: #faa633;--brand-linzess-gray: #4d4d4f;--brand-linzess-off-white: #f4f6fb;--brand-linzess-white: #fff;--color-text-primary: var(--brand-linzess-gray);--color-page-background: #0b729c;--color-stage-background-start: var(--brand-linzess-dark-purple);--color-stage-background-end: var(--brand-linzess-purple);--color-stage-glow: rgba(250, 166, 51, .28);--color-menu-background-start: rgba(242, 234, 231, .34);--color-menu-background-end: rgba(220, 224, 225, .42);--color-text-on-dark: var(--brand-linzess-white);--color-tracking-panel-border: rgba(255, 255, 255, .18);--color-tracking-panel-background: linear-gradient(100deg, #00638d 0%, #00a7bd 100%);--color-tracking-panel-shadow: rgba(0, 38, 68, .26);--color-secondary-control-border: rgba(255, 255, 255, .9);--color-secondary-control-background: rgba(0, 100, 143, .25);--color-focus-ring: #ffffff;--color-splash-background-start: #5262ad;--color-splash-background-end: #0098c8;--color-splash-decoration: rgba(255, 255, 255, .18);--color-loading-message: rgba(255, 255, 255, .86);--color-primary-button-border: transparent;--color-primary-button-background: #3b007d;--color-primary-button-text: #ffffff;--color-primary-button-shadow: rgba(43, 0, 83, .22);--color-primary-button-text-shadow: transparent;--color-loading-spinner: var(--brand-linzess-orange);--color-modal-backdrop: rgba(66, 46, 131, .38);--color-modal-surface: var(--brand-linzess-off-white);color:var(--color-text-primary);font-family:bebas-neue-pro-semiexpanded,sans-serif;overscroll-behavior:none}html,body{width:100%;height:100%;min-height:100dvh;margin:0;overflow:hidden;background:var(--color-page-background)}body{display:flex;justify-content:center;touch-action:pan-x pan-y}button{font-family:bebas-neue-pro-expanded,sans-serif}[hidden]{display:none!important}#experience-shell{position:relative;width:100vw;height:100svh;min-height:100dvh;overflow:hidden;background:linear-gradient(180deg,var(--color-stage-background-start) 0%,var(--color-stage-background-end) 100%)}#app-stage,#camera-background,#intro-model-canvas,#ui-overlay,.app-state{position:absolute;inset:0}#app-stage{background:radial-gradient(circle at 50% 42%,var(--color-stage-glow),transparent 42%),linear-gradient(180deg,var(--color-stage-background-start) 0%,var(--color-stage-background-end) 100%)}#camera-background{z-index:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .22s ease}#camera-background.camera-active{opacity:1}#intro-model-canvas{z-index:1}#intro-model-canvas canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;touch-action:none}#world-tracking-canvas{visibility:hidden;opacity:0}.world-tracking-active #world-tracking-canvas{visibility:visible;opacity:1}.world-tracking-active #camera-background{display:none}#ui-overlay{z-index:2;pointer-events:none}.ar-state{display:flex;align-items:flex-end;justify-content:center;box-sizing:border-box;padding:24px max(27px,env(safe-area-inset-right)) max(62px,env(safe-area-inset-bottom));pointer-events:none}.ar-state .glassmorphic-button{pointer-events:auto}.menu-state{display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,var(--color-menu-background-start),var(--color-menu-background-end));color:var(--brand-linzess-dark-purple);pointer-events:auto;-webkit-backdrop-filter:blur(20px) saturate(.75);backdrop-filter:blur(20px) saturate(.75)}.menu-placeholder{position:relative;display:flex;width:100%;height:100%;align-items:center;flex-direction:column;justify-content:center;box-sizing:border-box;padding:24px;font-family:bebas-neue-pro-expanded,sans-serif;font-size:clamp(28px,7.4vw,34px);font-weight:700;line-height:1.05;text-align:center}.menu-placeholder>div{position:absolute;top:17%;display:grid;width:min(77%,305px);height:47%;min-height:270px;place-items:center;box-sizing:border-box;padding:30px;border:2px solid rgba(255,255,255,.72);border-radius:28px;background:#ffffffdb;box-shadow:0 18px 50px #4b35361a;color:#3b007d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.menu-placeholder .glassmorphic-button{position:absolute;bottom:max(62px,env(safe-area-inset-bottom));width:min(68%,244px);min-height:58px;padding:11px 20px;font-size:28px}.world-tracking-controls{position:absolute;z-index:4;top:max(20px,env(safe-area-inset-top));left:50%;display:flex;width:min(calc(100% - 36px),460px);align-items:center;justify-content:space-between;gap:16px;box-sizing:border-box;min-height:82px;padding:15px 24px;transform:translate(-50%);border:1px solid var(--color-tracking-panel-border);border-radius:999px;background:var(--color-tracking-panel-background);box-shadow:0 8px 24px var(--color-tracking-panel-shadow);color:var(--color-text-on-dark);font-size:17px;font-weight:700;line-height:1.08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#world-tracking-icon{width:61px;height:45px}#world-tracking-message{flex:1;text-align:left}.world-tracking-controls:has(#world-tracking-place-again:not([hidden])){top:max(116px,calc(env(safe-area-inset-top) + 116px));min-height:70px;padding:13px 20px 13px 28px}.world-tracking-controls:has(#world-tracking-place-again:not([hidden])):before{position:absolute;right:0;bottom:calc(100% + 14px);left:0;display:flex;min-height:82px;align-items:center;box-sizing:border-box;padding:14px 24px 14px 102px;border:1px solid var(--color-tracking-panel-border);border-radius:999px;background:url(/assets/images/Place-Icon.svg) no-repeat 28px center / 61px 45px,var(--color-tracking-panel-background);box-shadow:0 8px 24px var(--color-tracking-panel-shadow);color:var(--color-text-on-dark);content:"Point your phone toward a flat surface (tabletop or floor) and tap the screen.";font-size:17px;font-weight:700;line-height:1.08;text-align:left}.world-tracking-controls:has(#world-tracking-place-again:not([hidden])) #world-tracking-icon{display:none}.world-tracking-actions{display:flex;flex:0 0 auto}#world-tracking-place-again{flex:0 0 auto;min-width:116px;padding:9px 13px;border:1px solid var(--color-secondary-control-border);border-radius:999px;background:var(--color-secondary-control-background);color:var(--color-text-on-dark);font:700 16px/1 bebas-neue-pro-semiexpanded,sans-serif;text-transform:uppercase;cursor:pointer}#world-tracking-place-again:focus-visible,.glassmorphic-button:focus-visible,.camera-status-close:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.splash{position:fixed;z-index:2000;inset:0;display:flex;width:100vw;height:100dvh;align-items:stretch;justify-content:stretch;overflow:hidden;background:linear-gradient(90deg,var(--color-splash-background-start) 0%,var(--color-splash-background-end) 100%);text-align:center;pointer-events:auto}.splash-header-shape{position:absolute;z-index:0;top:0;left:0;width:100%;height:105px;overflow:hidden;pointer-events:none}.splash-header-shape:after{position:absolute;bottom:0;left:50%;width:550%;aspect-ratio:1;transform:translate(-50%);border-radius:50%;background:var(--color-splash-decoration);content:""}.splash:after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,38,118,.12),transparent 52%);content:"";pointer-events:none}.splash-box{position:relative;z-index:1;display:flex;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}.splash-image{width:min(49%,194px);height:auto;object-fit:contain}.splash h1{position:absolute;top:max(38px,calc(env(safe-area-inset-top) + 18px));left:50%;width:min(88%,360px);margin:0;transform:translate(-50%);color:#3b007d;font-family:bebas-neue-pro-expanded,sans-serif;font-size:clamp(26px,7.1vw,31px);font-weight:700;line-height:1}.loading-message{position:absolute;top:61%;margin:0;color:var(--color-loading-message);font-family:Arial,sans-serif;font-size:14px}.glassmorphic-button{width:243px;min-height:58px;box-sizing:border-box;padding:11px 20px;border:1px solid var(--color-primary-button-border);border-radius:60px;background:var(--color-primary-button-background);box-shadow:0 4px 30px var(--color-primary-button-shadow);color:var(--color-primary-button-text);font-size:30px;font-weight:700;line-height:1.1;text-shadow:none;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.splash .glassmorphic-button{position:absolute;bottom:max(62px,env(safe-area-inset-bottom))}.ar-state .glassmorphic-button{width:min(100%,344px);min-height:82px;padding:12px 24px 10px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(105deg,#4b2a8994,#280068ad);box-shadow:0 12px 34px #1f004442;color:#fff;font-size:clamp(25px,7vw,30px);line-height:.98;-webkit-backdrop-filter:blur(13px) saturate(1.08);backdrop-filter:blur(13px) saturate(1.08)}.glassmorphic-button:disabled{width:48px;padding:0;border:0;background:transparent;visibility:hidden}.glassmorphic-button:disabled:before{display:block;width:48px;height:48px;box-sizing:border-box;border:5px solid transparent;border-right-color:var(--color-loading-spinner);border-left-color:var(--color-loading-spinner);border-radius:50%;content:"";visibility:visible;animation:loading 1.2s linear infinite}.camera-status-modal{position:fixed;z-index:5000;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:var(--color-modal-backdrop);box-sizing:border-box;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.camera-status-modal-content{position:relative;width:min(88%,420px);padding:24px;border-radius:28px;background:var(--color-modal-surface);box-sizing:border-box;color:var(--color-text-primary)}.camera-status-modal-content h2{margin:0 46px 18px 0;font-size:24px;line-height:1.1}.camera-status-modal-content p{margin:0;font-family:Arial,sans-serif;font-size:16px;line-height:1.45}.camera-status-close{position:absolute;top:20px;right:20px;width:30px;height:30px;padding:0;border:0;background:transparent;cursor:pointer}.camera-status-close img{display:block;width:100%;height:100%}@keyframes loading{to{transform:rotate(360deg)}}@media(min-width:700px){.splash-header-shape{left:50%;width:400px;height:94px;transform:translate(-50%)}.splash-header-shape:after{width:550%}.splash h1{font-size:24px}.menu-placeholder>div{width:min(48vw,420px)}}@media(max-height:560px){.splash h1{top:max(24px,calc(env(safe-area-inset-top) + 12px))}.splash-header-shape{height:84px}.splash .glassmorphic-button,.menu-placeholder .glassmorphic-button{bottom:max(24px,env(safe-area-inset-bottom))}.menu-placeholder>div{top:15%;height:50%;min-height:210px}}@media(min-width:700px)and (max-height:560px){.splash-header-shape{height:62px}}
