@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";.instrument-thumbnail{display:block;width:64px;height:64px;flex:0 0 64px;object-fit:contain;border-radius:10px;background:#243d39;pointer-events:none;user-select:none}.drawer-items button,.tray-items>div{min-width:0;gap:12px}.drawer-items button>span:not(.instrument-tag),.tray-items>div>span{min-width:0;overflow-wrap:anywhere}.drawer-items button>svg,.tray-items>div>button{flex-shrink:0;margin-left:auto}.chair-item-list .instrument-thumbnail{width:58px;height:58px;flex-basis:58px;margin:0 auto 6px}.instrument-action-icon{width:32px;height:32px;flex-shrink:0}.chair-drag-ghost .instrument-thumbnail{width:44px;height:44px;flex-basis:44px}.tray-button>.instrument-thumbnail{width:42px;height:42px;flex-basis:42px}@media(max-width:420px){.drawer-items .instrument-thumbnail,.tray-items .instrument-thumbnail{width:56px;height:56px;flex-basis:56px}}.chair-item-cell{position:relative;flex:0 0 110px;display:flex}.chair-item-cell>button[data-chair-item]{width:100%;padding-bottom:42px}.chair-item-list .chair-item-zoom{position:absolute;bottom:1px;right:1px;width:44px;min-height:44px;height:44px;padding:4px;flex:none;border:0;background:#e4f1e8}.instrument-pick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.instrument-pick-grid article.drawer-instrument-row,.instrument-pick-grid article{display:block;position:relative;min-width:0;border:1px solid #c1d8cd;border-radius:11px;background:#eff7f1;overflow:hidden}.instrument-pick-grid .instrument-pick{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;height:100%;min-height:120px;padding:8px 8px 40px;border:0;border-radius:10px;color:#153e34;background:transparent;cursor:pointer;white-space:normal}.instrument-pick-grid .instrument-pick img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:8px;background:#243d39;max-height:none;max-width:none}.instrument-pick-grid .instrument-pick strong{font-size:12px}.instrument-pick-grid .instrument-pick[aria-pressed=true]{background:#d3e9dc;outline:2px solid #25866b;outline-offset:-2px}.instrument-pick-grid .instrument-zoom{position:absolute;bottom:2px;right:3px;width:44px;height:38px;min-height:38px;border:0;background:#deeee4;color:#174c3e;border-radius:7px;font-size:25px;cursor:pointer}.pick-check,.variant-badge{position:absolute;left:9px;top:8px;color:#fff;background:#26775e;padding:3px 6px;border-radius:5px}.variant-badge{top:auto;bottom:8px}.forceps-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.forceps-menu-heading button{min-height:44px}.extraction-target{display:flex;flex-direction:column;gap:4px;padding:10px 12px;margin:8px 0;border-left:4px solid #279886;border-radius:8px;background:#e0f2e9;color:#153e34;font-size:13px;line-height:1.45}.extraction-target strong{font-size:11px;text-transform:uppercase}.game-top .extraction-target{max-width:520px;margin:4px 0;padding:5px 8px;font-size:11px}.game-top .extraction-target strong{display:none}.game-top:has(.extraction-target)~.objective{top:155px}.game-top:has(.extraction-target)~.chairside-ui .chair-request{top:155px}.anonymous-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.anonymous-tray>div{min-width:0}.anonymous-tray img{width:100%;height:85px;object-fit:contain}@media(max-width:600px){.instrument-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.instrument-pick-grid .instrument-pick strong{font-size:11px}.anonymous-tray{grid-template-columns:repeat(3,minmax(0,1fr))}.game-top .extraction-target{max-width:250px;font-size:10px}.forceps-menu-heading{font-size:12px}.drawer-dialog{max-height:90dvh}}body:has(.frontpage){background:#eef1e8 url(/frontpage/desktop.webp) center center/cover fixed no-repeat;color:#062b27}body:has(.frontpage) .world,body:has(.frontpage) .vignette{visibility:hidden}body:has(.frontpage):before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#f6f9f1b8,transparent 65%);z-index:0}body:has(.frontpage) .brand-bar{position:relative;z-index:2;width:calc(100% - 80px);max-width:1400px;margin:0 auto;padding:28px 0;align-items:center;color:#082b28}body:has(.frontpage) .brand .dentabay-wordmark{color:#062b27;font-size:27px;line-height:1.1}body:has(.frontpage) .dentabay-wordmark small{display:block;font-size:11px;font-weight:450;letter-spacing:.6px;margin-top:6px}body:has(.frontpage) .header-actions{gap:16px;color:#062b27}body:has(.frontpage) .library-launch,body:has(.frontpage) .header-actions .icon-button{background:#fafff1cc;color:#082b28;border:1px solid #ffffffb3;border-radius:18px;backdrop-filter:blur(14px);min-height:48px}body:has(.frontpage) .language{color:#082b28;border-bottom:2px solid #315f4c;border-radius:0;background:transparent}body:has(.frontpage) .brand .game-brand-logo{width:54px;height:54px}.frontpage.lobby{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:0;width:calc(100% - 80px);max-width:1400px;margin:0 auto;min-height:calc(100dvh - 114px);padding:24px 0 34px}.frontpage .lobby-heading{color:#002e28;margin:0 0 42px;width:60%}.frontpage .lobby-heading h1{font-size:clamp(56px,6vw,92px);font-weight:750;letter-spacing:-4px;line-height:1.02;margin:8px 0 24px}.frontpage .lobby-heading h1 br{display:block}.frontpage .lobby-heading h1 em{display:block;font-style:normal;background:linear-gradient(105deg,#8aa365,#36685f);background-clip:text;color:transparent;overflow-wrap:anywhere}.frontpage .lobby-heading p{color:#626d69;text-transform:uppercase;letter-spacing:3px;font-size:12px;line-height:1.9;max-width:260px}.frontpage .lobby-heading p:before{content:"";display:block;width:32px;height:3px;background:#8fae79;border-radius:3px;margin-bottom:16px}.frontpage .mode-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:none;box-shadow:none;border:0;padding:0;margin:0;width:min(690px,100%);border-radius:0}.frontpage .resume-button{grid-column:1/-1;display:flex;flex-wrap:nowrap;gap:24px;min-height:132px;padding:22px 28px;margin:0 0 2px;border:9px solid #e7f5e080;border-radius:26px;background:radial-gradient(ellipse at 0 0,#a9dab4aa,transparent 65%),linear-gradient(115deg,#427857e8,#153f35f0 65%,#448f72db);box-shadow:0 9px 26px #17382a25,inset 0 0 0 1px #ffffffa1;backdrop-filter:blur(18px);color:#f5fff0;text-align:left;overflow:hidden}.frontpage .resume-button .resume-play{display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;border-radius:50%;background:linear-gradient(120deg,#d7f6ce,#ecffe6);border:1px solid white;box-shadow:0 0 22px #b7f4b744;color:#246342}.frontpage .resume-play svg{width:28px;height:28px;fill:currentColor}.frontpage .resume-button .resume-copy{width:auto;min-width:0;flex:1}.frontpage .resume-copy strong{font-size:24px;font-weight:650;display:block}.frontpage .resume-copy small{display:block;font-size:12px;opacity:.78;margin-top:5px}.frontpage .mode{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:16px;min-width:0;min-height:164px;padding:23px 20px;border:1px solid #ffffffdf;border-radius:22px;background:linear-gradient(125deg,#fffffff2,#eff7edba);box-shadow:0 8px 26px #4d64551a;backdrop-filter:blur(18px);color:#082b35;text-align:left;margin:0}.frontpage .mode:hover{background:#fffffff5;transform:translateY(-2px)}.frontpage .mode-symbol{width:54px;height:54px;flex:0 0 54px;border-radius:50%;background:#d5e7cc;display:grid;place-items:center;color:#07372e}.frontpage .mode-symbol svg{width:27px;height:27px}.frontpage .mode h2{font-size:20px;letter-spacing:-.5px;margin:0;line-height:1.2;color:#092b38}.frontpage .mode>svg,.frontpage .mode small,.frontpage .mode p{display:none}.frontpage .lobby-links{grid-column:1/-1;display:flex;align-items:stretch;gap:0;border:1px solid #ffffffdc;background:#f8fff5cf;border-radius:22px;padding:16px 12px;margin:0;backdrop-filter:blur(18px)}.frontpage .lobby-links button{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:12px;color:#092d38;font-size:13px;line-height:1.3;padding:0 8px;min-height:44px}.frontpage .lobby-links button+button{border-left:1px solid #b8caba80}.frontpage .lobby-links svg{box-sizing:content-box;flex:0 0 22px;width:22px;height:22px;padding:12px;border-radius:50%;background:#dbe9d3}.frontpage .lobby-foot{display:none}@media(max-width:700px){body:has(.frontpage){background-image:url(/frontpage/mobile.webp);background-position:center top}body:has(.frontpage):before{background:linear-gradient(90deg,#ffffff9e,transparent 75%)}body:has(.frontpage) .brand-bar{width:calc(100% - 32px);padding:28px 0 16px;gap:8px}body:has(.frontpage) .brand{gap:6px}body:has(.frontpage) .brand .game-brand-logo{width:37px;height:42px}body:has(.frontpage) .brand .dentabay-wordmark{font-size:20px;letter-spacing:-.4px}body:has(.frontpage) .dentabay-wordmark small{font-size:8px;letter-spacing:0;margin-top:3px}body:has(.frontpage) .header-actions{gap:8px}body:has(.frontpage) .library-launch{padding:10px;font-size:11px;min-height:38px;border-radius:13px}body:has(.frontpage) .header-actions .icon-button{min-width:36px;width:36px;min-height:38px;border-radius:12px}body:has(.frontpage) .language{font-size:12px;padding:6px;min-width:26px}.frontpage.lobby{width:calc(100% - 32px);min-height:calc(100svh - 86px);padding:36px 0 28px}.frontpage .lobby-heading{width:80%;margin:0 0 88px;padding-left:10px}.frontpage .lobby-heading h1{font-size:clamp(44px,11.8vw,74px);letter-spacing:-2.8px;line-height:1.03;margin:8px 0 18px}.frontpage .lobby-heading p{max-width:190px;font-size:9px;letter-spacing:2px;line-height:1.8}.frontpage .mode-menu{width:100%;gap:10px;margin-top:auto}.frontpage .resume-button{min-height:106px;border-width:8px;border-radius:23px;padding:16px 20px;gap:18px}.frontpage .resume-button .resume-play{width:54px;height:54px;flex-basis:54px}.frontpage .resume-copy strong{font-size:19px}.frontpage .resume-copy small{font-size:10px}.frontpage .mode{padding:14px;gap:12px;min-height:116px;border-radius:19px}.frontpage .mode-symbol{width:43px;height:43px;flex-basis:43px}.frontpage .mode-symbol svg{width:24px;height:24px}.frontpage .mode h2{font-size:15px;letter-spacing:-.5px}.frontpage .lobby-links{padding:12px 4px;border-radius:20px}.frontpage .lobby-links button{font-size:10px;gap:7px;padding:0 7px}.frontpage .lobby-links svg{width:18px;height:18px;flex-basis:18px;padding:9px}}@media(prefers-reduced-motion:reduce){.frontpage .mode:hover{transform:none}}body:has(.menu-background){background:#edf3ed url(/frontpage/desktop.webp) center/cover fixed no-repeat;color:#0c332a}body:has(.menu-background) .world,body:has(.menu-background) .vignette{visibility:hidden}body:has(.menu-background) .brand-bar{position:relative;z-index:2}body:has(.menu-background) .brand .dentabay-wordmark,body:has(.menu-background) .header-actions,body:has(.menu-background) .language{color:#103a30}body:has(.menu-background) .header-actions button{background:#f4faf0de;color:#153c31;border-color:#edf8e9;backdrop-filter:blur(12px)}.menu-background.sheet-page{position:relative;background:#f2f8f2ef;border:1px solid #ffffffc9;border-radius:28px;box-shadow:0 20px 65px #264d3520;backdrop-filter:blur(18px);color:#123a30;max-width:880px;padding:32px;margin:20px auto 48px;width:calc(100% - 48px)}.dental-library .page-title{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:12px}.dental-library .page-title>.icon-button{background:#e4efe6;color:#214c3b;border-radius:14px;min-width:46px;min-height:46px}.dental-library .page-title h2{font-size:clamp(28px,4vw,40px);line-height:1.12;letter-spacing:-1.4px;margin:0;font-weight:750}.dental-library>.muted,.dental-library .muted{color:#6b7971;line-height:1.55;font-size:16px}.dental-library .library-tabs{background:#e4eee4;border:1px solid #d0ded0;box-shadow:inset 0 0 0 3px #f6faf2;border-radius:22px;padding:5px;gap:5px;margin:24px 0}.dental-library .library-tabs button{min-height:56px;border-radius:17px;font-size:16px;color:#315f49}.dental-library .library-tabs button[aria-selected=true]{color:#f8fff5;background:linear-gradient(110deg,#245540,#2c6349);box-shadow:0 3px 10px #26492a25}.dental-library .treatment-list{display:grid;grid-template-columns:1fr;gap:10px}.dental-library .treatment-list>button{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:18px;border:1px solid #ffffffd9;border-radius:20px;background:#fbfef9d9;box-shadow:0 8px 22px #49674e09;padding:14px 16px;min-width:0;width:100%;min-height:88px;margin:0}.dental-library .treatment-list>button:hover{background:#fff;box-shadow:0 5px 20px #315e3914}.dental-library .treatment-icon{display:block;width:58px;height:58px;flex:0 0 58px;padding:9px;border-radius:18px;background:linear-gradient(135deg,#e9f2e8,#deebdd);object-fit:contain}.dental-library .treatment-list>button>span{display:block;min-width:0;flex:1}.dental-library .treatment-list strong{display:block;font-size:17px;line-height:1.3;font-weight:650;color:#17382f;overflow-wrap:anywhere}.dental-library .treatment-list small{display:block;font-size:13px;color:#718175;margin-top:5px}.dental-library .instrument-thumbnail-grid button{background:#fbfef9d9;border-color:#ffffffdb;border-radius:20px}.dental-library button:focus-visible{outline:3px solid #587c58;outline-offset:3px}@media(max-width:700px){body:has(.menu-background){background-image:url(/frontpage/mobile.webp);background-position:center top}.menu-background.sheet-page{width:calc(100% - 28px);padding:22px 16px;border-radius:24px;margin:12px auto 28px}.dental-library .page-title{gap:20px}.dental-library .page-title h2{font-size:30px;letter-spacing:-1px}.dental-library .library-tabs{margin:22px 0 18px}.dental-library .library-tabs button{font-size:14px;min-height:52px}.dental-library .treatment-list>button{padding:12px;gap:12px;min-height:80px;border-radius:18px}.dental-library .treatment-icon{width:52px;height:52px;flex-basis:52px;padding:8px;border-radius:16px}.dental-library .treatment-list strong{font-size:15px}.dental-library .treatment-list small{font-size:12px}}.chair-request.guide-closed{padding:12px 16px;width:min(350px,calc(100vw - 44px));max-height:32dvh;overflow-y:auto}.doctor-dialogue p{font-size:15px;line-height:1.5;margin:7px 0 10px}.doctor-dialogue .eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;color:#32634e}.doctor-dialogue small{display:block;line-height:1.4;margin:7px 0}.doctor-positive{color:#357552}.doctor-correction{color:#9a4932}.chair-guide-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;color:#244d3c;font-size:13px;font-weight:700;min-height:40px;padding:4px;text-align:left}.chair-guide-toggle span{font-size:22px;margin-left:14px}#chair-guide-content[hidden]{display:none}.chair-request.guide-open{max-height:40dvh;overflow-y:auto}.chair-item-list,.chair-item-list button{touch-action:pan-x!important}.chair-item-list{pointer-events:auto;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.chair-item-list img[role=button]{touch-action:pan-x!important}.login.menu-background .login-intro,.login.menu-background .login-intro h1{color:#14382d}.login.menu-background .login-intro p{color:#4b685a}.login.menu-background .login-form{background:#f7fbf1e8;backdrop-filter:blur(18px);border:1px solid #fff9;border-radius:24px;padding:26px}.login.menu-background .scene-credit{display:none}.forceps-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px}.forceps-catalogue-card{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px;border:1px solid #a6cac2;border-radius:14px;background:#fff;color:#173f38;text-align:left;min-width:0}.forceps-catalogue-card img{width:100%;height:270px;object-fit:contain;background:#f7f7f7}.forceps-catalogue-card small{font-size:12px;line-height:1.6}.photo-age-tabs,.photo-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.photo-age-tabs button{padding:10px 12px;border:1px solid #9fc8be;border-radius:9px;background:#edf5ef!important;color:#173f38!important;line-height:1.35}.photo-age-tabs button[aria-selected=true]{background:#176f65!important;color:#fff!important}.photo-age-tabs button:focus-visible{outline:3px solid #58bbae;outline-offset:2px}.photo-toolbar button{min-height:42px;min-width:42px}.photo-stage{height:min(62vh,620px);min-height:260px;overflow:hidden;background:#f7f7f7;border:1px solid #c1d7d0;border-radius:12px;touch-action:none;cursor:grab;display:flex;align-items:center;justify-content:center}.photo-stage:active{cursor:grabbing}.photo-stage img{width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none;transform-origin:center}.forceps-photo-viewer{min-width:0}.forceps-photo-viewer>small{display:block;padding:10px 0;line-height:1.5}.forceps-photo-viewer details,.extraction-lessons details{padding:12px;border:1px solid #b4d1c8;border-radius:10px;margin:10px 0}.lesson-forceps{display:flex;flex-wrap:wrap;gap:10px}.lesson-forceps button{display:flex;flex-direction:column;align-items:center;max-width:155px;gap:6px}.lesson-forceps img{height:180px;width:100%;object-fit:contain}.extraction-lessons select{margin:8px;padding:10px}.forceps-catalogue h3{margin-top:20px}@media(max-width:520px){.forceps-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forceps-catalogue-card img{height:215px}.forceps-catalogue-card{padding:9px;font-size:13px}.photo-stage{height:48vh}.photo-toolbar{gap:5px}.photo-toolbar button{font-size:12px}}.drawer-instrument-row{display:flex;align-items:center;gap:10px;padding:8px;background:#e4ecda;border-radius:10px;margin-bottom:6px;min-width:0}.drawer-instrument-row>button{flex:1;min-width:0;margin:0;padding:8px;background:transparent}.drawer-instrument-row>button>span{flex:1}.instrument-thumbnail[role=button]{pointer-events:auto;cursor:zoom-in;touch-action:manipulation}.instrument-thumbnail[role=button]:focus-visible{outline:3px solid #d9b56c;outline-offset:3px}.instrument-inspect-backdrop{position:fixed;inset:0;z-index:250;background:#071e18cc;display:grid;place-items:center;padding:16px;overscroll-behavior:contain}.instrument-inspect{width:min(720px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;background:#f1f7eb;color:#173d30;border-radius:20px;padding:20px;box-shadow:0 24px 80px #0006;min-width:0;overflow-wrap:anywhere}.instrument-inspect header{display:flex;align-items:center;gap:12px}.instrument-inspect h2{flex:1;margin:0;font-size:22px}.instrument-inspect header button{flex:0 0 44px;min-height:44px;border-radius:50%;font-size:26px}.instrument-inspect [data-instrument-preview]{height:min(480px,55dvh)!important;touch-action:none!important}.instrument-inspect p,.instrument-inspect li{line-height:1.6}.instrument-inspect figcaption{font-size:13px}.drawer-items button[aria-disabled=true]{background:#d3e5cb}.learning-points{list-style:disc;margin:.5rem 0;padding-left:1.25rem;line-height:1.55;text-align:left}.learning-points li{padding:.15rem 0;overflow-wrap:anywhere}.treatment-checklist{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.75rem}.treatment-checklist>li{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.65rem;padding:.8rem;border:1px solid #ffffff21;border-radius:12px;background:#ffffff06}.treatment-checklist .step-number{width:1.8rem;height:1.8rem;display:grid;place-items:center;border-radius:50%;background:#ffffff15;font-size:.8rem;font-weight:700}.treatment-checklist details{margin-top:.55rem;font-size:.85rem;color:inherit}.treatment-checklist summary{cursor:pointer;opacity:.8}.treatment-checklist .is-current{border-color:#8cd8ca;background:#8cd8ca12}.treatment-checklist .is-done .step-number{background:#8cd8ca30;color:#b6f3d7}.treatment-checklist .learning-points{margin:0}.next-task{padding:.6rem 0}.next-task .learning-points{font-size:1rem}.chair-request>.learning-points{font-size:.85rem;margin:.4rem 0}.chair-checklist{max-height:38vh;overflow:auto;margin-top:.6rem}.chair-checklist summary{cursor:pointer}.chair-checklist .treatment-checklist,.chair-explanation .learning-points{font-size:.8rem}.asset-warning{position:fixed;z-index:900;bottom:18px;left:12px;right:12px;padding:12px;border-radius:10px;background:#fff1cf;color:#493917;font:13px Arial;box-shadow:0 4px 15px #0002}.asset-warning button{min-height:44px;margin-left:10px;padding:8px 14px;cursor:pointer}.model-library{position:fixed;inset:18px;z-index:1000;background:#f1f6f2;color:#183f35;border:1px solid #b5c8bd;border-radius:20px;box-shadow:0 24px 80px #112b3b80;display:flex;flex-direction:column;padding:20px;gap:12px;max-width:1200px;margin:auto;overflow:auto}.model-library header{display:flex;justify-content:space-between;align-items:center;gap:12px}.model-library h2{font-size:clamp(20px,3vw,29px);margin:3px 0}.model-library small{font-size:11px;letter-spacing:.1em}.model-library button,.model-library select,.model-library summary{min-height:44px}.model-library button{background:#175c4e;color:#fff;border:0;border-radius:10px;padding:10px 16px;cursor:pointer;white-space:nowrap}.model-library button:focus-visible,.model-library select:focus-visible,.model-library summary:focus-visible{outline:3px solid #d19c45;outline-offset:3px}.model-selectors{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2.4fr);gap:12px}.model-selectors label{font-size:12px;display:flex;flex-direction:column;gap:5px;min-width:0}.model-selectors select{width:100%;min-width:0;border:1px solid #afc5b9;border-radius:9px;padding:8px;background:#fff;color:#183f35;font-size:14px}.model-viewport{position:relative;flex:1;min-height:220px;border-radius:14px;overflow:hidden;background:#e7efeb;touch-action:none}.model-viewport canvas{display:block;width:100%;height:100%}.model-message{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#e7efebd9;text-align:center;padding:20px}.model-message small{letter-spacing:0}.model-library footer{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:12px}.model-library details{font-size:12px;border-top:1px solid #ccdad2;flex-shrink:0}.model-library summary{display:flex;align-items:center;cursor:pointer}.model-library summary:before{content:"▸";margin-right:8px}.model-library details[open] summary:before{content:"▾"}.model-library details>div{max-height:140px;overflow:auto}.model-library p{margin:5px 0;line-height:1.5}.library-launch{min-height:44px;border-radius:12px;border:1px solid #a9c6b7;background:#f1f7ed;color:#183f35;padding:8px 13px;font-weight:600;cursor:pointer}@media(max-width:600px){.model-library{inset:6px;padding:12px;border-radius:14px;gap:9px}.model-selectors{grid-template-columns:1fr;gap:7px}.model-library header small{font-size:9px}.model-library footer{align-items:flex-start;gap:8px}.model-library footer span{max-width:65%;font-size:11px}.model-viewport{min-height:210px}.library-launch{font-size:12px;padding:7px 9px}.header-actions{gap:6px}}.adult-forceps-browser{margin:16px 0;padding:16px;border:1px solid #bfd7c9;border-radius:14px;background:#f3f8f4;color:#183f35}.forceps-family-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.forceps-family-heading>span,.forceps-family-count{font-size:12px;color:#286957}.forceps-family-count{display:block;margin-top:4px;line-height:1.4}.forceps-filters{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(160px,1.6fr) minmax(130px,1fr);gap:10px}.forceps-filters label,.forceps-variant-label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px;font-weight:600}.forceps-filters select,.forceps-variant-label select{width:100%;min-width:0;max-width:100%;min-height:44px;border:1px solid #a9c6b6;border-radius:8px;background:#fff;color:#183f35;padding:8px;font:14px Arial}.forceps-variant-label{margin-top:12px}.forceps-filters select:disabled{opacity:.65}.forceps-selected-title{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;margin:16px 0 0}.forceps-selected-title small{font-size:12px;font-weight:500;color:#46665c}.forceps-classification-note{font-size:12px;background:#fff2d6;padding:9px 12px;border-radius:8px;line-height:1.5}.forceps-all-types{border-top:1px solid #c9dcd1;margin-top:12px}.forceps-all-types summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600}.forceps-all-types h4{margin:12px 0 5px}.forceps-all-types button{display:block;width:100%;min-height:44px;text-align:left;padding:9px 12px;border:1px solid #cfdfd5;border-radius:7px;background:#fff;color:#183f35;margin:5px 0;white-space:normal;cursor:pointer}.forceps-all-types button[aria-pressed=true]{background:#dcefe4;border-color:#40856d}.adult-gallery-filters{flex-shrink:0}.adult-forceps-browser select:focus-visible,.forceps-all-types button:focus-visible{outline:3px solid #c18b36;outline-offset:2px}@media(max-width:650px){.adult-forceps-browser{padding:12px}.forceps-filters{grid-template-columns:1fr 1fr}.forceps-filters label:nth-child(2){grid-row:2;grid-column:1/-1}.forceps-selected-title{font-size:17px}.adult-gallery-filters .forceps-filters{gap:6px}}.brand .game-brand-logo{width:64px;height:64px;object-fit:contain}.brand .dentabay-wordmark{font-size:22px;font-weight:700;letter-spacing:-.5px;text-transform:none;color:#f0f6ed}@media(max-width:600px){.brand-bar{gap:8px}.brand{gap:5px}.brand .game-brand-logo{width:48px;height:48px}.brand .dentabay-wordmark{font-size:18px}}.library-tabs{display:flex;gap:6px;background:#dde7d6;padding:6px;border-radius:16px;margin:20px 0}.library-tabs button{flex:1;min-height:48px;border:0;border-radius:12px;background:transparent;color:#305647;font-weight:700;padding:12px 8px}.library-tabs button[aria-selected=true]{background:#214d3d;color:#fff;box-shadow:0 3px 10px #173e3220}.library-tabs button:focus-visible{outline:3px solid #c3994a;outline-offset:2px}.library-grid.instrument-thumbnail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.library-grid.instrument-thumbnail-grid button{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0;padding:10px;overflow:hidden;border:1px solid #d1dfd2;border-radius:16px;background:#f7faf4}.instrument-thumbnail-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#243d39;border-radius:10px}.instrument-thumbnail-grid strong{font-size:14px;line-height:1.4;text-align:left}.instrument-thumbnail-grid button>svg{align-self:flex-end}@media(max-width:600px){.library-grid.instrument-thumbnail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.chairside-ui{position:fixed;inset:0;z-index:12;pointer-events:none;color:#183d35}.chairside-ui button,.chairside-ui input,.chairside-ui label{pointer-events:auto}.chair-request{position:absolute;top:105px;left:22px;width:min(350px,calc(100vw - 44px));padding:16px 20px;border:1px solid #f3fff4b3;border-radius:18px;background:#eef3e8ef;backdrop-filter:blur(18px);box-shadow:0 10px 45px #132f3320;pointer-events:auto}.chair-overline{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;font-weight:800;color:#58736a}.chair-progress{height:3px;background:#ccdbd2;border-radius:4px;margin:10px 0}.chair-progress i{display:block;height:100%;background:#4b8571;transition:width .4s}.chair-request p{font-size:15px;line-height:1.45;margin:6px 0}.chair-request strong{font-size:12px;color:#426c60}.chair-explanation{font-size:12px;line-height:1.55;max-height:110px;overflow:auto;border-top:1px solid #c3d4c7;margin-top:10px;padding-top:8px}.chair-feedback{font-size:12px;color:#943b28;background:#f3e0ce;border-radius:8px;padding:8px;margin-top:8px}.chair-target{width:44px;height:44px;border-radius:50%;position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;min-width:44px;padding:0;justify-content:center;color:#153c32;font:600 10px/1.2 inherit;pointer-events:auto}.chair-target:active{transform:translate(-50%,-50%)}.chair-target>span:last-child{position:absolute;top:44px;width:max-content;pointer-events:none;background:#f3f5eae8;padding:5px 7px;border:1px solid #fff9;border-radius:6px;max-width:100px;font-size:10px;box-shadow:0 2px 10px #14382924}.chair-target[data-chair-target=doctor]>span:last-child{right:42px;top:0}.chair-target[data-chair-target=mouth]>span:last-child{left:42px;top:0}.chair-target[data-chair-target=chest]>span:last-child{left:42px;top:15px}.target-ring{display:grid;place-items:center;width:38px;height:38px;border:1px solid #efffed;background:#315e5099;border-radius:50%;color:#fff;box-shadow:0 0 0 5px #e6ffd224}.target-ready .target-ring{background:#285d4eef;box-shadow:0 0 0 7px #daefb04f}.target-correct .target-ring{background:#679551}.chair-inventory{position:absolute;bottom:30px;left:20px;right:20px;max-width:1000px;margin:auto;border:1px solid #f2fff488;border-radius:18px;background:#f0f4e9ed;backdrop-filter:blur(15px);box-shadow:0 8px 35px #15382d28;pointer-events:auto;padding:10px 12px}.chair-inventory-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;padding:0 4px 7px;color:#47675a}.chair-inventory-heading button{min-height:28px;border:0;background:transparent;padding:5px}.chair-item-list{display:flex;gap:8px;overflow-x:auto;overscroll-behavior:contain;padding:3px 2px 8px;scrollbar-width:thin}.chair-item-list button{position:relative;flex:0 0 110px;min-height:89px;border:1px solid #c4d4c5;border-radius:11px;background:#fcfff7;color:#244b3d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:9px 5px;font-size:11px;touch-action:none;user-select:none}.chair-item-list button.selected{background:#dceaba;border:2px solid #4a7860}.chair-item-list small{font-size:8px;letter-spacing:.07em;color:#76907b}.prop-mini{display:block;width:35px;height:8px;border-radius:5px;background:linear-gradient(#e2ece8,#829991,#d0ddd4);box-shadow:0 2px 2px #253d3b22;transform:rotate(-18deg)}.prop-bib,.prop-checklist,.prop-sterile_pack,.prop-aftercare,.prop-referral{width:23px;height:25px;border-radius:3px;background:linear-gradient(135deg,#bacf9d,#e1eccc)}.prop-cup{width:20px;height:23px;border-radius:2px 2px 7px 7px;background:linear-gradient(90deg,#d1d8cc,#fffef4)}.prop-hve,.prop-saliva{height:5px;width:37px;transform:rotate(-30deg);background:#c4d9c2}.water-panel{position:absolute;right:20px;top:115px;width:205px;border:1px solid #effffa;border-radius:14px;background:#eaf4f1ed;padding:12px;pointer-events:auto;font-size:12px}.water-panel>div:first-child{display:flex;gap:6px;align-items:center}.water-panel strong{margin-left:auto}.water-panel meter,.water-panel progress{display:block;width:100%;height:14px;margin:8px 0;accent-color:#579faa}.water-panel small{font-size:9px;color:#69877e}.water-panel label{margin:8px 0 0;line-height:1.15;font-size:10px;display:flex;align-items:center;gap:6px}.water-panel label input{padding:0;margin:0;min-height:14px;width:14px;height:14px}.suction-controls{display:flex;gap:5px;margin-top:8px}.suction-controls button{flex:1;font-size:10px;padding:7px 4px;border:1px solid #afc8be;border-radius:6px;color:#264c44;background:#fcfff8;touch-action:none}.lamp-focus{z-index:30;position:absolute;right:20px;top:130px;width:240px;background:#f3f6e9f5;border:1px solid white;padding:16px;border-radius:14px;pointer-events:auto;font-size:13px}.lamp-focus input{padding:0;display:block;width:100%;margin:18px 0;accent-color:#4b7860}.lamp-focus span{font-size:11px;display:block;margin-bottom:10px}.lamp-focus button{display:flex;gap:8px;align-items:center;background:#285746;color:#f3f7e3;padding:10px 12px;border:0;border-radius:8px}.chair-drag-ghost{position:fixed;transform:translate(-50%,-140%);z-index:100;pointer-events:none;padding:12px 16px;border-radius:12px;background:#214e42;color:#eff9e0;box-shadow:0 8px 35px #10292270;display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap}.chair-resume{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(360px,90vw);background:#f1f5e8f5;padding:25px;border-radius:20px;text-align:center;pointer-events:auto;box-shadow:0 12px 60px #18382855}.chair-resume p{font-size:13px}.chair-resume .primary{width:100%}.chair-debrief{background:#e8eddf;padding:15px;border-radius:12px;margin:12px 0;font-size:13px;max-height:200px;overflow:auto}.chair-debrief p{margin:6px 0}.chair-editor{border-top:1px solid #cdd6c7;margin:18px 0;padding-top:16px}.chair-editor article{padding:12px;margin:10px 0;background:#eef2e7;border-radius:10px}.chair-editor textarea{width:100%;min-height:70px}.chairside-ui~.sync-state{z-index:15}@media(max-width:650px){.chair-request{top:96px;left:12px;width:calc(100vw - 24px);padding:11px 14px;border-radius:13px}.chair-request p{font-size:13px}.chair-explanation{max-height:70px}.chair-inventory{left:8px;right:8px;bottom:25px;padding:7px;border-radius:13px}.chair-inventory-heading{font-size:10px}.chair-item-list button{flex-basis:90px;min-height:80px;font-size:10px}.water-panel{top:auto;bottom:165px;right:10px;width:158px;padding:9px;font-size:11px}.water-panel label{margin:4px 0 0;line-height:1.15;font-size:9px}.lamp-focus{z-index:30;top:auto;bottom:165px;right:10px;width:205px}.chair-target>span:last-child{font-size:9px;max-width:74px}.target-ring{width:32px;height:32px}.chair-feedback{font-size:10px;padding:5px}.chair-target{gap:2px}.chair-item-list{gap:6px}}@media(orientation:landscape)and (max-height:550px){.chair-request{top:75px;left:10px;width:215px;padding:10px}.chair-request p{font-size:11px}.chair-request strong{font-size:10px}.chair-overline{font-size:8px}.chair-explanation{max-height:60px;font-size:10px}.chair-inventory{left:235px;right:10px;bottom:10px;max-width:none}.chair-item-list button{flex-basis:84px;min-height:66px;padding:6px;font-size:9px;gap:4px}.chair-inventory-heading{font-size:9px;padding-bottom:2px}.chair-item-list small{font-size:7px}.water-panel{top:75px;right:10px;bottom:auto;width:160px;padding:8px}.lamp-focus{z-index:30;top:80px;right:10px;bottom:auto;width:190px}.chair-feedback{font-size:9px}.chair-target>span:last-child{font-size:8px;padding:3px}.target-ring{width:27px;height:27px}.chair-request .chair-progress{margin:6px 0}.chair-item-list{padding-bottom:2px}.prop-mini{width:25px;height:5px}.prop-bib,.prop-checklist,.prop-sterile_pack,.prop-aftercare,.prop-referral{height:15px;width:17px}.prop-cup{height:17px;width:14px}}.equipment-panel{position:absolute;right:20px;bottom:190px;width:280px;z-index:55;pointer-events:auto!important;background:#f0f7eff5;color:#173e35;border:1px solid #fff;border-radius:12px;box-shadow:0 8px 28px #12372b25;max-height:calc(100dvh - 280px);overflow:auto;font-size:12px}.equipment-panel summary{cursor:pointer;min-height:44px;padding:12px;list-style-position:inside;font-weight:700}.equipment-panel summary span{display:block;margin-left:15px;font-size:11px}.equipment-ready{color:#176a4b}.equipment-wait{color:#805c1c}.equipment-content{padding:0 12px 12px;display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.equipment-content label{display:block;font-size:12px;margin:5px 0}.equipment-content input[type=range],.equipment-content select{display:block;width:100%;min-height:44px;accent-color:#277b66}.equipment-content select{border:1px solid #adc5b8;border-radius:6px;background:#fff;padding:6px}.equipment-content p{grid-column:1/-1;font-size:12px;line-height:1.4;margin:6px 0}.equipment-content small{grid-column:1/-1;display:block;margin:4px 0;color:#8a572c}.equipment-buttons{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.equipment-panel button,.rinse-panel button{min-height:44px;border-radius:7px;border:1px solid #a3bdad;background:#e0efe4;color:#173e35;padding:8px;font-weight:600;cursor:pointer}.equipment-panel button:disabled,.rinse-panel button:disabled{opacity:.5;cursor:default}.confirm-mouth-light{grid-column:1/-1;width:100%;margin:6px 0;background:#338572!important;color:#fff!important}.rinse-panel{position:absolute;left:50%;bottom:24px;transform:translate(-50%);width:min(440px,calc(100vw - 32px));padding:16px;background:#eff9eff5;border:1px solid #fff;border-radius:12px;pointer-events:auto;z-index:60;color:#173e35;text-align:center;box-shadow:0 6px 26px #15362b30}.rinse-panel p{margin:6px 0}.rinse-panel progress{display:block;width:100%;height:10px;accent-color:#338572;margin:10px 0}.rinse-panel button{width:100%}.chairside-ui:has(.rinse-panel) .equipment-panel{display:none}.chairside-ui[data-light-adjusting=true] .chair-target:not([data-chair-target=mouth]){display:none}.chairside-ui[data-light-adjusting=true] .chair-target[data-chair-target=mouth]{opacity:1;pointer-events:none}.chairside-ui[data-light-adjusting=true] .chair-target[data-chair-target=mouth] .target-ring{background:transparent;border:2px solid #f7e69b;box-shadow:0 0 0 1px #45593a88}.chairside-ui[data-light-adjusting=true] .chair-target[data-chair-target=mouth] svg,.chairside-ui[data-light-adjusting=true] .chair-target[data-chair-target=mouth]>span:last-child{display:none}.chairside-ui[data-light-adjusting=true][data-light-aligned=true] .chair-target .target-ring{border-color:#57ba82}.chairside-ui [hidden]{display:none!important}@media(max-width:700px){.equipment-panel{right:12px;bottom:175px;width:225px;max-height:calc(100dvh - 240px)}.equipment-panel[open]{width:calc(100vw - 24px);bottom:130px}.equipment-content{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.equipment-content p,.equipment-content small,.equipment-buttons,.confirm-mouth-light{grid-column:1/-1}.equipment-content label{margin:0;font-size:11px}.equipment-content input[type=range],.equipment-content select{min-height:38px}.chairside-ui:has(.equipment-panel[open]) .chair-request{max-height:54px;overflow:hidden;padding:6px 10px}.rinse-panel{bottom:14px;padding:12px}}:root{font-family:DM Sans,sans-serif;color:#183a2d;font-synthesis:none;--ink: oklch(.29 .044 161);--accent: oklch(.88 .093 129);--surface: oklch(.972 .008 146);--muted: oklch(.46 .027 157);--line: oklch(.85 .025 149);--z-hud: 10;--z-page: 20;--z-modal: 40;--z-message: 50}*{box-sizing:border-box}body{margin:0;background:#193e31}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:transparent;min-height:44px;transition:background .16s,transform .16s}button:active{transform:translateY(1px)}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #719f52;outline-offset:3px}a{color:inherit}button svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;text-wrap:balance}h1{font-size:clamp(3rem,6.4vw,6rem);font-weight:750;letter-spacing:-.04em;line-height:1.03}h1 em{font-style:normal;color:#d8edb9}h2{font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:750;line-height:1.2;letter-spacing:-.035em}h3{font-size:1.08rem;margin:24px 0 12px}p{line-height:1.6;text-wrap:pretty;max-width:68ch}small{font-size:.75rem;line-height:1.5}.world{position:fixed;inset:0;z-index:0}.world canvas{display:block;touch-action:none;width:100%;height:100%}.showcase{filter:saturate(.88)}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#0a2018e8,#0a201875 36%,#0a20181a 72%),linear-gradient(0deg,rgba(10,32,24,.55),transparent 45%);z-index:1}.game-vignette{background:linear-gradient(0deg,rgba(10,30,22,.58),transparent 27%,transparent 75%,rgba(10,30,22,.66))}.brand-bar{position:relative;z-index:var(--z-page);height:100px;padding:24px 4.5%;display:flex;justify-content:space-between;align-items:center;color:#f2f6e9}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:15px;font-weight:750;letter-spacing:.1em}.brand small{display:block;font-size:8px;letter-spacing:.23em;margin-top:4px;font-weight:500}.brand-mark{display:grid;place-items:center;background:#d7edbd;color:#234735;border-radius:13px;width:42px;height:42px;font-weight:800;letter-spacing:-.08em;font-size:35px;padding-right:5px}.header-actions{display:flex;gap:14px;align-items:center}.language{border-bottom:1px solid #c2d7b9;font-size:12px;font-weight:700}.icon-button{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff17;flex-shrink:0}.icon-button:hover{background:#a9c2a340}.layout-panel{position:relative;z-index:var(--z-page);width:91%;margin:0 auto}.login{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:calc(100dvh - 150px);padding:30px 0 70px}.intro{color:#f5f7ee;margin-top:-25px;max-width:600px}.intro h1{margin:17px 0 26px}.intro p{font-size:clamp(1rem,1.5vw,1.2rem);color:#d5dfcb}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700}.scene-credit{display:flex;gap:9px;align-items:center;margin-top:44px;font-size:12px;color:#d3ddc9}.live-dot{display:inline-block;width:7px;height:7px;background:#b7dc8d;border-radius:50%;box-shadow:0 0 0 4px #b7dc8d19;flex-shrink:0}.login-form{width:390px;max-width:100%;padding:32px;background:var(--surface);border-radius:20px;box-shadow:0 20px 80px #0b27173b}.login-form h2{font-size:23px;margin-bottom:10px}.login-form>p{color:var(--muted);font-size:13px;margin-bottom:26px}label{display:block;font-size:12px;font-weight:650;margin:16px 0}input,textarea,select{width:100%;display:block;margin-top:8px;border:1px solid #c8d4c5;border-radius:9px;background:#fff;color:#183a2d;font-size:16px;padding:13px 14px;min-height:47px}input::placeholder,textarea::placeholder{color:#687e70}textarea{resize:vertical}select{padding-right:25px}.primary,.secondary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;font-weight:650;font-size:14px;padding:14px 20px;min-height:50px;border-radius:10px;margin-top:18px}.primary{background:#254d39;color:#f0f7e7}.primary:hover{background:#376548}.primary svg:last-child:not(:first-child){margin-left:auto}.primary svg:first-child{margin-right:3px}.secondary{background:#e2eadc;color:#234332}.secondary:hover{background:#d2e0c9}.secure-note{font-size:10px;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:19px;color:#536b59}.loading{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:14px;color:#fff}.spinner{width:23px;height:23px;border:2px solid #d7edbd;border-right-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.lobby{display:grid;grid-template-columns:1fr minmax(350px,420px);align-items:center;gap:50px;min-height:calc(100dvh - 160px);padding:20px 0 60px}.lobby-heading{color:#eef5e7}.lobby-heading h1{margin:17px 0 26px}.lobby-heading>p{font-size:17px;color:#d7e5cd}.room-line{display:flex;gap:10px;align-items:center;margin-top:30px;font-size:12px;color:#d6e4c9}.mode-menu{background:var(--surface);padding:8px 23px 15px;border-radius:18px;box-shadow:0 20px 70px #142d2533}.mode{width:100%;display:flex;text-align:left;align-items:center;padding:25px 0;gap:15px;border-bottom:1px solid #d4dfce;min-height:125px}.mode>span:nth-child(2){flex:1}.mode small{font-size:8px;letter-spacing:.14em;color:#587049;font-weight:700}.mode h2{font-size:25px;margin:5px 0 8px}.mode p{font-size:11px;color:#51664e;line-height:1.5}.mode-symbol{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#e2ead8;border-radius:50%}.master .mode-symbol{background:#d6eab7}.mode:hover .mode-symbol{background:#bddb9e}.mode>svg{width:19px}.lobby-links{display:flex;justify-content:space-between;gap:10px;padding-top:8px}.lobby-links button{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:600}.lobby-foot{position:absolute;bottom:17px;left:0;display:flex;gap:10px;align-items:center;color:#ccdac4;font-size:11px}.resume-button{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#d8eabb;border-radius:10px;margin:12px 0 0;padding:12px;width:100%;font-size:12px;font-weight:700}.resume-button span{width:100%;font-size:10px;font-weight:400}.mode-menu:has(.resume-button){padding-top:12px}.mode-menu>.resume-button{margin-top:0}.resume-button>svg:last-child{display:none}.page{position:relative;z-index:var(--z-page);background:var(--surface);color:var(--ink);margin:10px auto 40px;width:min(760px,92%);border-radius:20px;padding:30px;box-shadow:0 20px 70px #132e2940}.page-title{display:flex;align-items:center;gap:15px;margin-bottom:25px}.page-title small{font-size:9px;letter-spacing:.13em;color:#567044}.page-title h2{margin-top:3px}.page-title .icon-button{background:#e4ecd9}.muted{color:var(--muted);font-size:13px}.search{background:#fefefa;margin:22px 0 10px}.treatment-list>button{display:flex;width:100%;align-items:center;text-align:left;gap:15px;padding:17px 0;border-bottom:1px solid #d5dfcf}.treatment-list>button>span:nth-last-child(2){flex:1}.treatment-list strong{font-size:14px;display:block}.treatment-list small{display:block;margin-top:4px;color:#516849;font-size:11px}.treatment-list button:hover:enabled{background:#e8eddf}.treatment-number{font-family:Manrope;font-size:12px;color:#5a7450}.master-brief{max-width:580px;margin:auto}.master-brief>svg{color:#5a7949}.master-brief>h3{font-size:25px}.master-brief p{font-size:14px}.rules{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.rules span{font-size:11px;display:flex;align-items:center;gap:6px}.rules svg{width:16px}.notice{background:#eee7c7;padding:18px;border-radius:10px;font-size:13px;margin-bottom:20px;line-height:1.5}.notice button{font-weight:700;text-decoration:underline;margin-right:14px}.text-button{display:flex;gap:5px;align-items:center;font-size:13px;font-weight:600;margin:8px 0}.check-row{display:flex;align-items:center;gap:12px}.check-row input{width:20px;min-height:20px;margin:0;accent-color:#315d37}.icon-line{display:flex;gap:8px;align-items:center;margin-top:25px}.settings-page{max-width:570px}.settings-page>.secondary{margin-top:30px}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.library-grid>button{border-bottom:1px solid #d3dfcc;display:flex;align-items:center;text-align:left;gap:12px;padding:16px 0;font-size:12px}.library-grid strong{flex:1}.instrument-plate{background:#e0e9d6;border-radius:15px;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;margin:25px 0;color:#365a39}.instrument-plate span{font-weight:700}.instrument-plate small{font-size:11px}.scenario-note{font-size:13px;background:#e4eddc;padding:17px 20px;border-radius:12px;margin:20px 0}.lesson{padding:22px;border:1px solid #ccd9c0;border-radius:14px;margin-top:18px}.lesson>small{font-size:10px;color:#5e7850;font-weight:700;letter-spacing:.07em}.lesson p{font-size:17px;margin:17px 0}.lesson>div{display:flex;justify-content:space-between}.lesson button{display:flex;align-items:center;gap:5px;font-size:12px}.lesson-item{display:flex;gap:12px;margin:22px 0}.lesson-item>svg{flex-shrink:0;color:#62813b}.lesson-item strong{font-size:14px}.lesson-item p{font-size:13px;margin-top:5px;color:#4b6146}.clinical-note{font-size:11px;line-height:1.7;color:#52694b;border-top:1px solid #d4dfca;padding-top:20px;margin-top:32px}.clinical-note a{display:block;margin-top:6px}.history-row{display:flex;gap:12px;align-items:center;padding:20px 0;border-bottom:1px solid #d6dfce}.history-row>div:first-of-type{flex:1}.history-row strong{font-size:13px}.history-row small{display:block;font-size:10px;color:#52694b;margin-top:5px}.history-row>div:last-child{text-align:right}.status-dot{width:7px;height:7px;border-radius:50%;background:#a6b19a;flex-shrink:0}.status-dot.completed{background:#659634}.status-dot.failed{background:#b46b47}.tabs{display:flex;border-bottom:1px solid #d0ddc5;gap:15px;margin-bottom:20px}.tabs button{font-size:12px;border-bottom:2px solid transparent;font-weight:600}.tabs .selected{border-color:#3e6735}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.answer-picker{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.answer-picker label{display:flex;gap:10px;align-items:center;font-size:12px;min-height:38px;margin:4px 0;font-weight:500}.answer-picker input{margin:0;width:19px;min-height:19px;accent-color:#3a652c}.drawer-editor{border-bottom:1px solid #cddbc4;padding:15px 0}.drawer-editor summary{font-weight:650;font-size:14px;cursor:pointer;min-height:30px}.danger,.inline-error{color:#a02f26}.inline-error{font-size:13px}.admin-editor>.primary{position:sticky;bottom:15px;box-shadow:0 5px 20px #29482b22}.tutorial-guide-button{position:fixed;top:195px;left:24px;z-index:var(--z-hud);display:flex;align-items:center;gap:8px;background:#e1edc9;color:#23452c;padding:10px 15px;border-radius:10px;font-size:11px;max-width:270px}.game-top{position:fixed;top:0;left:0;right:0;padding:max(16px,env(safe-area-inset-top)) 24px 15px;z-index:var(--z-hud);color:#f4f8ed;display:flex;justify-content:space-between;align-items:start;gap:20px;pointer-events:none}.stage{min-width:0}.stage-tag{color:#d6eac0;font-size:9px;letter-spacing:.12em;font-weight:750}.stage h2{font-size:20px;margin:7px 0 4px;line-height:1.25;text-shadow:0 1px 5px #16352799;max-width:440px}.stage>small{color:#dfebd6;font-size:10px}.game-stats{display:flex;align-items:center;gap:16px;pointer-events:auto}.timer{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:650;font-variant-numeric:tabular-nums}.timer.urgent{color:#ffd09d}.lives{display:flex;gap:4px}.lives .alive{fill:#d9ecbc;color:#d9ecbc}.lives .lost{color:#bfbbb0}.objective{position:fixed;left:25px;top:117px;z-index:var(--z-hud);display:flex;gap:10px;align-items:start;color:#f6f9ed;background:#1c3d32d9;padding:12px 16px;border-radius:10px;pointer-events:none;max-width:320px}.objective p{font-size:12px;line-height:1.5}.objective small{display:block;font-size:10px;color:#d2e1bf;margin-top:3px}.objective-dot{width:6px;height:6px;background:#bfe799;border-radius:50%;margin-top:6px;flex-shrink:0}.crosshair{position:fixed;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#edf4e5;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #243e3966;z-index:var(--z-hud);pointer-events:none}.joystick-wrap{position:fixed;left:30px;bottom:47px;z-index:var(--z-hud);text-align:center;user-select:none}.joystick{position:relative;width:108px;height:108px;border:1px solid #e6f2d871;background:#1a40323d;border-radius:50%;touch-action:none;display:grid;place-items:center}.joystick i{width:72px;height:72px;border-radius:50%;border:1px solid #e6f2d820;position:absolute}.joystick span{display:block;width:45px;height:45px;border-radius:50%;background:#e2eccbbd;border:1px solid #f6ffe0;box-shadow:0 4px 15px #0f302f44;will-change:transform}.joystick-wrap small{color:#e9f1d8;font-size:8px;letter-spacing:.13em;display:block;margin-top:13px}.look-hint{position:fixed;right:28px;bottom:183px;z-index:var(--z-hud);display:flex;gap:6px;color:#e6efd7;font-size:10px;pointer-events:none}.game-bottom{position:fixed;bottom:39px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;z-index:var(--z-hud)}.tray-button{display:flex;align-items:center;gap:11px;color:#f4f8e9;background:#173a2ded;border:1px solid #b2cf9740;border-radius:12px;padding:12px 20px;text-align:left}.tray-button span{font-size:12px;font-weight:650;white-space:nowrap}.tray-button small{font-size:9px;color:#d5e5bf;display:block;font-weight:400;margin-top:3px}.hint-button{width:48px;height:48px;border-radius:50%;background:#ddedbb;color:#24452d;display:grid;place-items:center}.interact{position:fixed;bottom:60px;right:38px;z-index:var(--z-hud);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:88px;height:88px;border-radius:50%;background:#d8ecb9;color:#23422b;box-shadow:0 0 0 6px #dfefc324,0 0 0 7px #dceaba66}.interact span{font-size:9px;font-weight:700;max-width:70px;line-height:1.3}.interact.inactive{background:#234a3bb0;color:#d1e2bd;opacity:.8}.sync-state{position:fixed;right:20px;bottom:13px;color:#e5edda;font-size:8px;display:flex;align-items:center;gap:5px;z-index:var(--z-hud)}.sync-state>span{width:5px;height:5px;border-radius:50%;background:#c7e2a3}.sync-state>.syncing{background:#eacd93}.failure-flash{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:#65291626;pointer-events:none;animation:flash 1.4s ease-out}.failure-flash strong{color:#fff5e2;font-family:Manrope;font-size:clamp(24px,6vw,60px);text-shadow:0 5px 0 #692922,0 8px 20px #39191266;transform:rotate(-7deg);text-align:center}@keyframes flash{0%{opacity:0}35%{opacity:0}70%{opacity:1}to{opacity:1}}.modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:#0b241cc9;padding:22px;overflow-y:auto}.game-modal{background:#0a221e70}.dialog{background:var(--surface);padding:32px;border-radius:20px;width:500px;max-width:100%;max-height:calc(100dvh - 44px);overflow-y:auto;position:relative;box-shadow:0 20px 80px #10261c66;animation:enter .2s ease-out}.dialog h2{padding-right:24px;margin:8px 0 16px}.dialog p{font-size:14px;margin:10px 0}.dialog-close{position:absolute;right:12px;top:12px;background:#e3ebd9;width:36px;height:36px;min-height:36px;border-radius:50%}.dialog .eyebrow{color:#5b7651;font-size:9px;max-width:85%;display:block}.dialog ul{padding-left:21px;font-size:13px;line-height:1.8}.drawer-tabs{display:flex;gap:6px;overflow-x:auto;margin:15px 0 4px;padding:4px 0}.drawer-tabs button{flex-shrink:0;min-width:63px;font-size:11px;background:#e2ead8;border-radius:7px;padding:8px}.drawer-tabs button.selected{background:#355d3d;color:#f1f7e8}.drawer-dialog{width:570px}.drawer-items{display:grid;grid-template-columns:1fr;gap:1px;margin:18px 0}.drawer-items button{display:flex;align-items:center;gap:12px;background:#e4ecda;min-height:63px;padding:12px 15px;margin-bottom:6px;border-radius:9px;text-align:left;font-size:14px;font-weight:600}.drawer-items button>span:nth-child(2){flex:1}.instrument-tag{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #b8cba7;background:#f2f5e9;border-radius:8px;color:#557545}.drawer-items button>svg{width:19px}.drawer-items button:disabled{opacity:1;background:#d3e5c2}.tray-items{min-height:50px;display:flex;flex-direction:column;gap:6px}.tray-items>div{display:flex;gap:10px;align-items:center;background:#e3ecd9;border-radius:8px;padding:5px 12px;font-size:13px}.tray-items span{flex:1}.tray-items button{min-width:40px}.hint-list>div{display:flex;align-items:flex-start;gap:10px;padding:15px 0;border-bottom:1px solid #d4dfc9}.hint-list>div>svg{flex-shrink:0;margin-top:4px;width:15px}.hint-list span{flex:1}.hint-list strong{font-size:13px}.hint-list small{display:block;font-size:11px;color:#4e6547;line-height:1.6;margin-top:4px}.hint-list button{display:flex;align-items:center;gap:4px;font-size:11px;white-space:nowrap;background:#deebca;border-radius:8px;padding:6px 9px}.result-icon{color:#587e39;margin-bottom:15px}.result-icon.failed{color:#8d4e36}.result-stats{display:flex;gap:45px;padding:20px 0}.result-stats strong{font-size:30px;display:block;font-family:Manrope;font-weight:750}.result-stats small{color:#536b47;font-size:11px;display:block}.toast,.error-banner{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:var(--z-message);background:#e6efdb;color:#25472c;padding:13px 20px;border-radius:12px;box-shadow:0 5px 30px #132b2250;display:flex;align-items:center;gap:10px;font-size:12px;max-width:calc(100% - 30px);width:max-content;line-height:1.5}.error-banner{background:#f5e0d1;color:#713c2c;bottom:auto;top:105px;max-height:140px;overflow:auto}.error-banner button{display:grid;place-items:center;min-width:30px}.toast svg{flex-shrink:0}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.brand-bar{height:83px;padding:18px 22px}.brand{font-size:12px;gap:9px}.brand small{font-size:6.5px}.brand-mark{width:36px;height:36px;font-size:30px;border-radius:10px}.header-actions{gap:9px}.layout-panel{width:calc(100% - 44px)}.login{display:block;padding:17px 0 34px;min-height:auto}.intro{margin:0}.intro h1{font-size:57px;line-height:.98;margin:15px 0 18px}.intro h1 br{display:none}.intro h1 em{margin-left:8px}.intro p{font-size:14px;max-width:220px}.intro .eyebrow{font-size:8px;letter-spacing:.13em}.scene-credit{margin-top:22px;font-size:9px}.login-form{width:100%;padding:25px;margin-top:150px;border-radius:17px}.login-form h2{font-size:22px;max-width:260px}.login-form>p{font-size:12px;margin-bottom:23px}.vignette{background:linear-gradient(180deg,#122f25b0,transparent 53%,#15332699),linear-gradient(90deg,#123627aa,transparent 90%)}.lobby{display:block;padding:15px 0 55px;min-height:calc(100dvh - 85px)}.lobby-heading h1{font-size:48px;margin:13px 0 16px}.lobby-heading h1 br{display:none}.lobby-heading h1 em{margin-left:7px}.lobby-heading>p{font-size:13px}.lobby-heading .eyebrow{font-size:9px}.room-line{font-size:10px;margin-top:15px}.mode-menu{margin-top:145px;padding:0 20px 10px;border-radius:16px}.mode{padding:19px 0;gap:12px;min-height:111px}.mode h2{font-size:23px}.mode p{font-size:10px}.mode small{font-size:7px}.mode-symbol{width:39px;height:39px}.mode-symbol svg{width:21px}.lobby-foot{font-size:9px;bottom:19px}.lobby-links button{font-size:9px}.page{width:calc(100% - 28px);padding:22px 18px;border-radius:16px;margin-top:0}.page-title{gap:10px;margin-bottom:20px}.page-title h2{font-size:23px}.page-title small{font-size:8px}.treatment-list>button{gap:11px;padding:17px 3px}.treatment-list strong{font-size:13px}.treatment-list small{font-size:10px}.library-grid{grid-template-columns:1fr}.two-fields{gap:12px}.answer-picker{grid-template-columns:1fr}.game-top{padding:17px 17px 12px;gap:12px}.stage h2{font-size:16px;margin:6px 0;max-width:220px}.stage-tag{font-size:7px}.stage>small{font-size:9px}.game-stats{display:grid;grid-template-columns:1fr 33px;gap:4px 8px;justify-items:center}.game-stats .icon-button{grid-column:2;grid-row:1/3;width:34px;height:40px;border-radius:9px}.timer{font-size:17px;gap:5px}.timer svg{width:14px}.lives{gap:3px}.lives svg{width:13px;height:13px}.objective{top:112px;left:16px;max-width:calc(100% - 32px);padding:10px 12px}.objective p{font-size:11px}.objective small{font-size:9px;max-width:240px}.objective-dot{width:5px;height:5px}.joystick-wrap{left:20px;bottom:110px}.joystick{width:95px;height:95px}.joystick span{width:40px;height:40px}.joystick i{width:64px;height:64px}.joystick-wrap small{font-size:7px;margin-top:12px}.interact{width:75px;height:75px;right:25px;bottom:130px}.interact>svg{width:25px}.interact span{font-size:8px}.look-hint{right:20px;bottom:225px;font-size:9px}.game-bottom{bottom:max(32px,env(safe-area-inset-bottom));gap:12px}.tray-button{padding:11px 19px;min-width:166px;border-radius:12px}.tray-button span{font-size:12px}.tray-button small{font-size:9px}.hint-button{width:45px;height:45px}.sync-state{bottom:10px;font-size:7px;right:15px}.modal-backdrop{padding:15px}.dialog{max-height:calc(100dvh - 30px);padding:26px 21px;border-radius:17px}.dialog h2{font-size:24px}.dialog p,.drawer-items button,.dialog .primary,.dialog .secondary{font-size:13px}.hint-list>div{gap:8px}.hint-list button{font-size:10px;padding:6px}.hint-list small{font-size:10px}.error-banner{top:85px}.game-vignette{background:linear-gradient(0deg,#133629aa,transparent 45%,transparent 60%,#102d24b0)}}@media(max-height:540px)and (orientation:landscape){.brand-bar{height:65px;padding:13px 25px}.login{display:flex;align-items:center;padding:10px 0 25px;gap:30px;min-height:calc(100dvh - 65px)}.intro h1{font-size:47px}.intro h1 br{display:block}.intro h1 em{margin:0}.login-form{margin:0;padding:20px;width:340px}.login-form h2{font-size:17px}.login-form>p{margin-bottom:12px;font-size:11px}.login-form label{margin:10px 0;font-size:10px}.login-form input{padding:9px 12px;min-height:40px;font-size:14px}.login-form .primary{min-height:40px;margin-top:12px;padding:10px;font-size:12px}.secure-note{margin-top:10px;font-size:9px}.lobby{display:grid;grid-template-columns:1fr 340px;gap:35px;min-height:calc(100dvh - 65px);padding:0 0 30px}.lobby-heading h1{font-size:44px}.lobby-heading h1 br{display:block}.lobby-heading h1 em{margin:0}.mode-menu{margin:0;padding:0 18px}.mode{padding:12px 0;min-height:87px}.mode h2{font-size:20px;margin:3px 0 5px}.mode p{font-size:9px}.mode small{font-size:6px}.lobby-foot{bottom:5px}.lobby-links button{min-height:36px}.stage h2{max-width:360px;font-size:16px}.game-top{padding:12px 22px}.game-stats{display:flex;gap:15px}.game-stats .icon-button{width:37px}.objective{top:86px;left:23px;max-width:270px;padding:8px 11px}.objective p{font-size:10px}.objective small{font-size:8px}.joystick-wrap{bottom:32px;left:27px}.joystick{width:90px;height:90px}.joystick span{width:40px;height:40px}.joystick-wrap small{margin-top:6px;font-size:7px}.game-bottom{bottom:20px}.interact{bottom:37px;right:35px;width:73px;height:73px}.look-hint{bottom:133px;right:24px;font-size:8px}.sync-state{bottom:8px}.modal-backdrop{padding:12px}.dialog{max-height:calc(100dvh - 24px);padding:22px 25px;width:520px}.drawer-items{display:grid;grid-template-columns:1fr 1fr;gap:8px}.drawer-items button{font-size:11px;gap:7px;min-height:48px;padding:8px;margin:0}.drawer-items button .instrument-tag{width:26px;height:26px}.dialog h2{font-size:22px}.dialog p{font-size:12px}.page{margin-top:5px}.game-top .lives svg{width:16px}.game-top .timer{font-size:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.dialogue-close{position:absolute;right:10px;top:8px;width:36px;height:36px;border:0;background:transparent;color:#315948;font-size:26px;cursor:pointer}.doctor-dialogue{position:relative;padding-right:24px}.dialogue-actions{display:flex;justify-content:flex-end}.dialogue-actions button{min-width:64px;min-height:40px;border:0;border-radius:10px;background:#2c7058;color:#fff;font-weight:700}.chair-camera-tools{position:absolute;right:12px;top:calc(45% - 30px);display:flex;flex-direction:column;gap:6px;pointer-events:auto;z-index:20}.chair-camera-tools button{width:40px;height:40px;border:1px solid #fff8;border-radius:12px;background:#eef5e8ed;color:#285a46;font-size:21px}.chair-language{display:flex;gap:2px;border-radius:10px;background:#203f3666;padding:3px}.chair-language button{min-width:32px;min-height:32px;border:0;border-radius:7px;background:transparent;color:#fff;font-size:11px;font-weight:800}.chair-language button[aria-pressed=true]{background:#edf6db;color:#204b3a}.equipment-tabs{grid-column:1/-1;display:flex;gap:6px}.equipment-tabs button{flex:1}.equipment-tabs button:last-child{flex:0 0 36px}.equipment-tabs button[aria-pressed=true]{background:#31765c;color:#fff}.response-pending .chair-inventory{pointer-events:none;opacity:.65}.response-pending .chair-inventory button{pointer-events:none}.chair-camera-focus .chair-request,.chair-camera-focus .chair-inventory,.chair-camera-focus .water-panel{display:none!important}body:has(.chair-camera-focus) .tutorial-guide-button{display:none!important}@media(max-width:700px){.game-top .game-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;max-width:150px}.game-stats .chair-language{order:-1}.game-top .stage{max-width:52%}.chairside-ui .equipment-panel:not([open]){top:104px;bottom:auto;right:12px;width:132px;max-height:60px;z-index:24}.equipment-panel:not([open]) summary{padding:8px;font-size:11px}.chairside-ui .equipment-panel[open]{position:fixed;inset:auto 8px 8px;width:auto;max-height:34dvh;margin:0;border-radius:18px;z-index:60}.equipment-panel[open]>summary{display:none}.equipment-panel[open] .equipment-content{padding:10px 12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 8px}.equipment-panel[open] .equipment-content label{font-size:11px;min-width:0;margin:2px 0}.equipment-panel[open] input[type=range]{min-height:32px;margin:3px 0}.equipment-panel[open] .equipment-content p{margin:3px 0;font-size:11px}.equipment-panel[open] .equipment-tabs button{min-height:32px;padding:4px}.equipment-panel[open] .equipment-buttons .confirm-mouth-light{grid-column:auto;margin:0}.equipment-panel[open] .equipment-buttons button{font-size:11px;padding:6px;min-height:38px}.chairside-ui .chair-request{top:170px;left:12px;width:calc(100vw - 24px);max-height:24dvh;padding:12px 15px}.chairside-ui .doctor-dialogue p{font-size:13px;line-height:1.45}.chairside-ui .chair-inventory{left:8px;right:8px;bottom:28px;width:auto;max-height:24dvh;padding:10px}.chair-inventory .chair-item-list{max-height:18dvh}.chair-item-cell button[data-chair-item]{min-height:110px}.chair-camera-tools{top:43%}.chair-camera-focus .chair-camera-tools{top:110px}}
