*{box-sizing:border-box}body{margin:0;background:#15121c;color:#eee8f7;font:15px system-ui,sans-serif}header{display:flex;gap:24px;align-items:center;padding:20px 32px;border-bottom:1px solid #45344f}header a:first-child{font-weight:750}header a:last-child{margin-left:auto}a{color:#c5adff;text-decoration:none}main{max-width:1360px;margin:24px auto;padding:0 28px}h1{font-size:24px;margin:12px 0}.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0}.toolbar label{display:flex;align-items:center;gap:8px;font-size:13px}button,select,input{font:inherit;border:1px solid #77638c;border-radius:7px;color:#eee8f7;background:#30263e;padding:8px}button,a{cursor:pointer}button:disabled{opacity:.4;cursor:default}input[type=number]{width:105px}input[type=range]{width:220px}input[type=checkbox]{accent-color:#b999ff}#cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{padding:12px;background:#241e2e;border:1px solid #594469;border-radius:12px;display:flex;flex-direction:column;gap:8px}.card img{width:100%;height:140px;object-fit:contain;background:#08070b}.card small{color:#c4b7d2}.card a{display:block}.card strong{display:block;margin:6px 0}nav{display:flex;justify-content:center;align-items:center;gap:20px;margin:22px}.image-stage{height:55dvh;min-height:240px;overflow:auto;position:relative;background:#050506;border:1px solid #594469;border-radius:10px;display:block}#image{display:block;width:100%;height:100%;object-fit:contain}#imageStatus{position:absolute;top:16px;background:#251d30;padding:8px}.note,#context,#summary{color:#c7b9d2;font-size:13px}#error{background:#50232d;padding:16px}details{font-size:12px;color:#c7b9d2}[hidden]{display:none!important}@media(max-width:850px){#cards{grid-template-columns:repeat(2,minmax(0,1fr))}header{padding:12px;gap:12px;font-size:12px}main{padding:0 14px}.toolbar{gap:8px}input[type=range]{width:140px}.image-stage{height:45dvh}}

.study-images{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.study-images a,#related a{padding:7px 10px;border:1px solid #74558c;border-radius:7px;font-size:12px;background:#33263f}#related{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:8px 0}#related a[aria-current=page]{background:#654585;color:#fff;border-color:#c49de9}.image-stage{height:48dvh}#relationNote{font-size:11px;margin:5px 0}

.image-stage:focus-visible{outline:2px solid #c5a0f0;outline-offset:3px}.image-stage.can-pan{cursor:grab;touch-action:none}.image-stage.can-pan:active{cursor:grabbing}#image{user-select:none;-webkit-user-drag:none}#imageStatus{left:14px;right:14px;max-width:600px;line-height:1.5}.thumbnail-retry{font-size:12px;margin-bottom:8px;min-height:50px}#viewHelp{font-size:11px}#catalogRetry{margin:10px 0}

.scan-workspace{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:start}.scan-main{min-width:0}.scan-side{background:#241e2e;border:1px solid #594469;border-radius:12px;padding:16px}.tooth-panel{display:flex;flex-direction:column;gap:12px}.tooth-panel h2{font-size:18px;margin:0}.tooth-panel>span{font-size:12px;line-height:1.5;color:#c7b9d2}.tooth-panel>label{font-size:14px}.tooth-panel>#libraryAiRefresh{align-self:start;font-size:12px}.tooth-formula{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.tooth-formula button{padding:7px 0;font-size:12px}.tooth-formula button:nth-child(16){margin-bottom:8px}.tooth-formula button[aria-pressed=true],.tooth-panel>button[aria-pressed=true]{background:#7953ba;color:white;border-color:#d6bcff}.tooth-formula button:disabled{opacity:.3}.scan-main>.toolbar{margin-top:0}#imageSettings{margin-top:20px;border-top:1px solid #594469;padding-top:14px}#imageSettings summary,.study-info summary{cursor:pointer;font-size:14px}#imageSettings .toolbar{align-items:start;gap:12px}#imageSettings label{flex-wrap:wrap}.scan-workspace .image-stage{height:52dvh;min-height:290px}#context{margin:5px 0}#relationNote{display:none}.study-info{margin-top:16px}#viewer>div.toolbar{gap:10px}#viewer>div.toolbar h1{margin-right:auto;font-size:21px}#viewHelp{line-height:1.5}@media(max-width:800px){.scan-workspace{grid-template-columns:minmax(0,1fr)}.scan-side{grid-row:1}.tooth-formula{grid-template-columns:repeat(16,minmax(0,1fr))}.tooth-panel{gap:8px}.scan-workspace .image-stage{height:48dvh}.tooth-formula button{font-size:11px}#imageSettings{margin-top:10px}} 
