:root{--bg:#0c121b;--panel:#131d29;--line:#283444;--gold:#eac47a;--text:#edf1f5;--muted:#93a4b8;--green:#8bd8ba}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Tahoma,Arial,sans-serif;line-height:1.7}button,input,select,textarea{font:inherit}button,.upload{cursor:pointer}button{border:1px solid var(--line);background:#1c2837;color:var(--text);border-radius:10px;padding:9px 15px}button:hover,.upload:hover{border-color:var(--gold)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}header{display:flex;justify-content:space-between;align-items:center;padding:22px 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;color:var(--text);text-decoration:none}.brand b{font-size:23px}.brand small{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.logo{border:1px solid var(--gold);color:var(--gold);padding:5px 15px;border-radius:50%;font-size:26px}.header-actions{display:flex;gap:20px;align-items:center}.privacy{font-size:12px;color:var(--green)}main{max-width:1550px;margin:auto;padding:35px 5%}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.8px}h1{font-size:clamp(32px,3.5vw,54px);line-height:1.35;margin:12px 0}h1 em{font-style:normal;color:var(--gold)}p{color:var(--muted);font-size:13px}.intro aside{border-right:2px solid var(--gold);padding:10px 25px;max-width:340px}.intro aside span{font-size:11px;color:var(--muted)}nav{display:flex;gap:10px;padding:14px 0 25px;flex-wrap:wrap}nav button{flex:1;min-width:110px}nav .active{color:var(--gold);background:#302b22;border-color:var(--gold)}.workspace{display:grid;grid-template-columns:230px minmax(300px,1fr) 255px;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px}h2{font-size:24px;margin:8px 0}h3{margin-top:0}.controls .secondary{display:block;width:100%;margin-top:10px}.range-label{display:block;margin:18px 0;font-size:12px}.range-label output{float:left;color:var(--gold)}input[type=range]{width:100%;accent-color:var(--gold);margin-top:12px}.layer{display:flex;justify-content:space-between;margin:10px 0;font-size:13px}.layer input{accent-color:var(--gold)}.viewer{position:relative;min-height:570px;background:radial-gradient(ellipse at 50% 45%,#263442,#101821 70%);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;padding:16px;gap:8px;font-size:11px;z-index:1}.viewer-top span:first-child{color:var(--gold);border:1px solid #665334;border-radius:20px;padding:4px 10px}.live{color:var(--green)}#canvas{flex:1;min-height:430px;position:relative}canvas{display:block;width:100%;height:100%;touch-action:none}.viewer-bottom{background:#111c28;border-top:1px solid var(--line)}#selection{color:var(--gold)}.note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:25px 0}.note b{font-size:13px}.primary{background:var(--gold);border-color:var(--gold);color:#17202a;font-weight:bold;width:100%}.mini{display:flex;gap:15px;align-items:center;margin-top:30px}.mini>span{font-size:30px;color:#596572}.mini b{font-size:13px}.mini p{font-size:11px;margin:3px 0}.muted{font-size:11px}.section-head{display:flex;justify-content:space-between;align-items:end;margin:45px 0 20px}.records{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:12px}input:not([type=range]):not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;background:#0d1520;border:1px solid #344255;color:var(--text);padding:10px;border-radius:9px;margin-top:6px}textarea{resize:vertical;margin-bottom:15px}fieldset{border:1px solid var(--line);border-radius:10px;margin:20px 0;display:flex;gap:12px;flex-wrap:wrap}legend{font-size:12px;color:var(--muted)}.right-records{display:flex;flex-direction:column;gap:16px}.diary-form{display:flex;gap:10px;align-items:end}.diary-form label{flex:1}.diary-item{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.diary-item progress{flex:1;accent-color:var(--gold);width:60px}.upload{display:block;border:1px dashed #4d6078;border-radius:10px;padding:14px;text-align:center;color:var(--gold)}.upload input{display:none}.small{font-size:11px;padding:9px;margin-top:10px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions .upload{margin:0}.danger{color:#ffa7ac}#scan-preview{width:100%;max-height:260px;object-fit:contain;margin-top:15px;background:#000}footer{margin-top:40px;border-top:1px solid var(--line);padding:20px;color:var(--muted);font-size:11px;text-align:center}#toast{position:fixed;bottom:25px;left:25px;max-width:400px;background:#263d3a;border-radius:12px;padding:15px;z-index:9;display:none}#viewer-error{position:absolute;top:40%;padding:30px;background:#162231;color:#ffbc91}@media(max-width:1150px){.workspace{grid-template-columns:210px 1fr}.detail{grid-column:1/-1}.detail .note{margin:12px 0}.intro aside{max-width:260px}}@media(max-width:700px){header{padding:16px}.privacy{display:none}.brand b{font-size:18px}.intro{display:block}.intro aside{margin-top:20px}.workspace,.records{grid-template-columns:1fr}.controls{order:2}.viewer{min-height:460px}.detail{order:3}.section-head{display:block}.fields{gap:10px}main{padding:22px 4%}#canvas{min-height:350px}.viewer-top{font-size:9px}.diary-form{flex-wrap:wrap}}
/* Extended lab */
html{scroll-behavior:smooth}.module-nav{display:flex;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:18px}.module-nav a{color:var(--gold);text-decoration:none;font-size:13px;padding:7px 13px;border-radius:20px;background:#1b2633}.workspace{grid-template-columns:210px minmax(440px,1fr) 235px}.viewer{min-height:720px}#canvas{min-height:600px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.image-toolbar,.case-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:15px}.image-toolbar .small{margin:0}.image-toolbar select{width:auto;max-width:100%}.case-tabs button{flex:1;font-size:12px}.case-tabs .active{background:#443823;border-color:var(--gold);color:var(--gold)}.scan-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:330px;background:#060a10;border-radius:12px;overflow:hidden}.scan-pair>div{position:relative;display:flex;align-items:center;justify-content:center;border:1px dashed #354250;color:var(--muted);font-size:12px;min-width:0}.scan-pair img{width:100%;height:330px;object-fit:contain}.scan-pair.overlay{display:block;position:relative}.scan-pair.overlay>div{position:absolute;inset:0}.scan-pair.overlay>div:nth-child(2){opacity:.5;pointer-events:none}.secondary-canvas{height:430px;border-radius:14px;background:radial-gradient(#354657,#0c1520);position:relative;overflow:hidden}.load-scene{display:flex;align-items:center;justify-content:space-around;gap:20px;min-height:310px;perspective:700px}.load-joint{transform:rotateY(-25deg) rotateX(8deg);text-align:center}.load-bone{width:100px;height:105px;background:radial-gradient(at 30% 30%,#f2e7cc,#b7a581 65%,#675b45);box-shadow:inset -12px -10px 20px #483e37,12px 9px 25px #0008}.top-bone{border-radius:35% 35% 48% 48%}.bottom-bone{border-radius:35% 35% 25% 25%}.load-gap{height:12px;background:#69cabc;box-shadow:0 0 25px #5accc877;border-radius:30px}.load-arrow{font-size:40px;color:#f5b45d;line-height:1.2}.load-stats{display:flex;flex-direction:column}.load-stats strong{font-size:27px;color:var(--gold);margin-bottom:16px}.load-stats small{color:var(--muted)}.load-bars label{display:flex;gap:14px;align-items:center}.load-bars progress{width:80%;height:15px;accent-color:var(--gold)}.measure-stage{position:relative;background:#080c12;border-radius:12px;overflow:hidden}.measure-stage canvas{width:100%;height:auto;cursor:crosshair}.measure-stage span{position:absolute;top:12px;right:12px;color:var(--gold);background:#0d1723c9;border-radius:8px;padding:5px 10px;font-size:11px;pointer-events:none}.angle-result{font-size:70px;color:var(--gold);display:block}.measurement-entry{padding:10px;border-bottom:1px solid var(--line);font-size:12px}.model-credit{font-size:10px;color:var(--muted);margin-top:15px}.model-credit a{color:var(--gold)}@media(max-width:1200px){.workspace{grid-template-columns:200px 1fr}.detail{grid-column:1/-1}}@media(max-width:750px){.workspace,.tool-grid{grid-template-columns:1fr}.viewer{min-height:550px}#canvas{min-height:450px}.scan-pair img{height:260px}.scan-pair{min-height:260px}.secondary-canvas{height:370px}}
/* Separate tools, patient guidance and feedback */
[hidden]{display:none!important}.app-nav{display:flex;flex-wrap:wrap;gap:8px;padding:16px 5%;border-bottom:1px solid var(--line);background:#0f1924;position:sticky;top:0;z-index:4}.app-nav button{flex:initial;min-width:0;font-size:11px;padding:8px 12px}.app-nav button.selected{background:#413524;color:var(--gold);border-color:var(--gold)}.tool-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.tool-heading h1{font-size:34px}.help-launch{color:var(--gold);white-space:nowrap}.benefit-box{display:flex;align-items:center;gap:18px;padding:18px 22px;background:#173030;border:1px solid #31534c;border-radius:14px;margin:18px 0 24px;font-size:13px}.benefit-box b{white-space:nowrap;color:var(--green)}.benefit-box span{flex:1;color:#bbd2ca}.explain-audio{font-size:11px;white-space:nowrap}.tool-screen>.panel{margin-top:18px}.tool-screen>.tool-grid{margin-top:18px}.tool-screen #intake{max-width:1000px;margin:20px auto}.home-hero{display:flex;align-items:center;justify-content:space-between;padding:15px 0 35px;gap:30px}.home-hero p{max-width:650px}.home-hero .primary{width:auto;margin-top:15px;padding:15px 25px}.journey-orbit{width:320px;height:320px;border:1px solid #4c5d6a;border-radius:50%;position:relative;background:radial-gradient(#3a4d50,#10202b 65%);flex-shrink:0;box-shadow:0 0 70px #477d6720}.journey-orbit>span{display:flex;align-items:center;justify-content:center;height:100%;font-size:130px;color:var(--gold);text-shadow:0 0 40px #eac47a55;animation:orbitFloat 5s ease-in-out infinite}.journey-orbit i{position:absolute;background:#233d40;border:1px solid #56766d;color:var(--green);padding:8px 14px;border-radius:30px;font-style:normal;font-size:12px}.journey-orbit i:nth-of-type(1){top:5px;right:80px}.journey-orbit i:nth-of-type(2){top:140px;right:-25px}.journey-orbit i:nth-of-type(3){bottom:0;right:90px}.journey-orbit i:nth-of-type(4){top:140px;left:-35px}.journey-strip{display:flex;flex-wrap:wrap;gap:20px;background:#15212d;border:1px solid var(--line);padding:20px;border-radius:14px;margin-bottom:30px;font-size:12px;color:var(--muted)}.journey-strip b{color:var(--gold)}.tool-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tool-card{text-align:right;padding:25px;border-radius:18px;background:linear-gradient(140deg,#1a2b39,#121d28);transition:transform .2s,border-color .2s;position:relative;min-height:240px}.tool-card:hover{transform:translateY(-5px)}.tool-card small{color:var(--muted);float:left}.tool-card h2{font-size:20px;margin-top:18px}.tool-card p{min-height:50px}.card-icon{display:inline-flex;align-items:center;justify-content:center;background:#35402e;width:48px;height:48px;border:1px solid #716441;color:var(--gold);border-radius:14px;font-size:30px}.card-link{color:var(--gold);font-size:12px}.home-boundary{margin-top:30px;text-align:center}.guide-bubble{position:fixed;bottom:25px;left:25px;width:340px;max-width:calc(100vw - 30px);background:#223b3f;border:1px solid #78c0a7;padding:22px;border-radius:20px;box-shadow:0 20px 70px #0009;z-index:15}.guide-bubble:after{content:'';position:absolute;bottom:-11px;right:35px;width:20px;height:20px;background:#223b3f;border-right:1px solid #78c0a7;border-bottom:1px solid #78c0a7;transform:rotate(45deg)}.guide-bubble h3{margin:10px 0;font-size:18px}.guide-bubble p{color:#d0e4df;font-size:13px}.bubble-close{position:absolute;left:10px;top:8px;padding:0 8px;border:0;background:none;font-size:22px}.guide-actions{display:flex;justify-content:space-between;gap:8px}.guide-actions button:last-child{background:var(--gold);color:#192630}.guide-target{outline:3px solid var(--gold)!important;outline-offset:5px;box-shadow:0 0 30px #eac47a35;scroll-margin-top:180px}#guide-count{color:var(--gold);font-size:11px}.interactive-meter{display:flex;gap:30px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:24px}.dial{--fill:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:160px;height:160px;flex-shrink:0;background:radial-gradient(circle,#132431 60%,transparent 61%),conic-gradient(from 220deg,#eac47a var(--fill),#2c3c4e 0);border-radius:50%;box-shadow:0 0 30px #0004}.dial strong{font-size:48px;color:var(--gold);line-height:1.2}.dial small{font-size:10px;color:var(--muted)}.metric-meaning{color:var(--green)}.chart-panel{margin-top:20px}.chart-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.chart-header select{max-width:180px}.interactive-chart svg{display:block;width:100%;height:auto;direction:ltr}.interactive-chart circle{cursor:pointer;transition:r .15s,fill .15s}.interactive-chart circle:hover,.interactive-chart circle:focus{r:11;fill:#ffd27e;outline:none}.chart-empty{height:210px;display:flex;align-items:center;justify-content:center;border:1px dashed #3b4e61;border-radius:14px;color:var(--muted);font-size:13px;padding:20px}.chart-panel [role=status]{padding:12px 18px;background:#172935;border-radius:10px;color:var(--gold);min-height:45px}.info-dot{border-radius:50%;width:24px;height:24px;padding:0;margin:6px 8px;background:#31483f;color:var(--green);font-size:12px;float:left}.inline-bubble{clear:both;background:#203b3c;padding:12px;border:1px solid #41685e;border-radius:12px;color:#d3e5df;margin-top:8px;position:relative;font-size:12px}.measurement-coach{display:flex;gap:18px;align-items:center;padding:18px;margin-top:15px;border:1px solid var(--line);border-radius:12px}.measurement-coach>span{font-size:45px;color:var(--gold)}.measurement-coach p{margin:4px 0}.header-actions #sound-toggle{font-size:11px}.tool-screen .section-head{margin-top:0}@keyframes orbitFloat{50%{transform:translateY(-10px) rotateY(15deg)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media(max-width:950px){.tool-cards{grid-template-columns:1fr 1fr}.journey-orbit{width:240px;height:240px}.journey-orbit i:nth-of-type(2),.journey-orbit i:nth-of-type(4){top:100px}.benefit-box{flex-wrap:wrap}.benefit-box span{flex-basis:70%}.header-actions{gap:8px}}@media(max-width:650px){.home-hero{display:block}.journey-orbit{margin:35px auto}.tool-cards{grid-template-columns:1fr}.tool-card{min-height:200px}.app-nav{position:static;padding:12px;gap:6px}.app-nav button{font-size:10px}.tool-heading{align-items:start}.tool-heading h1{font-size:25px}.tool-heading .help-launch{font-size:10px;padding:8px}.benefit-box{padding:14px;gap:8px}.benefit-box span{flex-basis:100%}.interactive-meter{gap:15px}.dial{width:120px;height:120px}.dial strong{font-size:36px}.interactive-meter h3{font-size:15px}.guide-bubble{bottom:18px;left:15px}.header-actions{flex-wrap:wrap;justify-content:end}.header-actions button{font-size:10px;padding:7px}.brand b{font-size:15px}.logo{font-size:20px;padding:5px 10px}.chart-header{flex-wrap:wrap}.tool-screen .workspace{margin-top:20px}}
.journey-orbit .orbit-center{display:flex;align-items:center;justify-content:center;height:100%;width:100%;font-size:130px;color:var(--gold);text-shadow:0 0 40px #eac47a55;animation:orbitFloat 5s ease-in-out infinite;background:none;border:0;padding:0}.journey-orbit .orbit-step{position:absolute;background:#233d40;border:1px solid #56766d;color:var(--green);padding:8px 14px;border-radius:30px;font-size:12px}.journey-orbit .orbit-step:hover{background:#395a51;border-color:var(--gold)}.journey-orbit .orbit-step:nth-of-type(2){top:5px;right:80px}.journey-orbit .orbit-step:nth-of-type(3){top:140px;right:-25px}.journey-orbit .orbit-step:nth-of-type(4){bottom:0;right:90px}.journey-orbit .orbit-step:nth-of-type(5){top:140px;left:-35px}.next-step-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;margin-top:25px;background:#182935;border:1px solid var(--line);border-radius:14px}.next-step-panel .primary{width:auto;font-size:12px}.next-step-panel p{margin:0}@media(max-width:950px){.journey-orbit .orbit-step:nth-of-type(3),.journey-orbit .orbit-step:nth-of-type(5){top:100px}}@media(max-width:650px){.next-step-panel{flex-direction:column;align-items:stretch}.next-step-panel .primary{width:100%}}
#xray-preview-img{width:100%;max-height:280px;object-fit:contain;border-radius:12px;border:1px solid var(--line);background:#070d14}#xray-preview-box{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:12px}#xray-form fieldset{margin:15px 0;padding:12px}#xray-form fieldset label{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}#xray-form fieldset input[type=checkbox]{accent-color:var(--gold);width:16px;height:16px;margin:0}

