/* Dental workspace. Shared fixed partials own hero, article and page furniture. */
.tn-dental-page .dental-ad{width:100%;max-width:900px;min-height:90px;height:auto!important;max-height:none!important;margin:24px auto;padding:0;border:0;background:transparent;overflow:visible}
.tn-dental-page .dental-ad--top{margin-top:54px}
.tn-dental-tool{--dc-paper:#faf6ee;--dc-ink:#1a1208;--dc-muted:#5a4a30;--dc-line:#b8a888;--dc-soft:#ddd4be;--dc-surface:#fffcf4;--dc-wash:#f5efdf;--dc-accent:#c44a00;--dc-button:#ede6d4;--dc-primary:#1a1208;--dc-primary-text:#faf6ee;--dc-font:-apple-system,BlinkMacSystemFont,"Pretendard","Segoe UI",system-ui,sans-serif;max-width:1000px;margin:0 auto;color:var(--dc-ink);background:var(--dc-paper);font:400 14px/1.65 var(--dc-font);-webkit-font-smoothing:antialiased}
.tn-dental-tool,.tn-dental-tool *{box-sizing:border-box;min-width:0}
.tn-dental-tool [hidden]{display:none!important}
.tn-dental-tool :is(form,p,h2,dl,dt,dd){margin:0!important}
.tn-dental-tool fieldset{margin:0;padding:0;border:0}
.tn-dental-tool legend{float:none;width:auto;margin:0 0 8px;padding:0;color:var(--dc-muted);font:700 12px/1.5 var(--dc-font)}
.tn-dental-tool .dental-modes{margin-bottom:18px}
.tn-dental-tool .dental-modes>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.tn-dental-tool .dental-modes label{position:relative;display:block;margin:0;cursor:pointer}
.tn-dental-tool .dental-modes input{position:absolute;width:1px;height:1px;opacity:0}
.tn-dental-tool .dental-modes span{display:flex;justify-content:center;align-items:center;min-height:44px;padding:8px;border:1px solid var(--dc-line);background:var(--dc-button);color:var(--dc-ink);-webkit-text-fill-color:currentColor;font-weight:700;line-height:1.4}
.tn-dental-tool .dental-modes input:checked+span{background:var(--dc-primary);color:var(--dc-primary-text);border-color:var(--dc-accent)}
.tn-dental-tool .dental-modes input:focus-visible+span{outline:2px solid var(--dc-accent);outline-offset:2px}
.tn-dental-tool .dental-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--dc-line);border-top:3px double var(--dc-line)}
.tn-dental-tool :is(.dental-input,.dental-result){display:flex;flex-direction:column;gap:18px;padding:24px}
.tn-dental-tool .dental-result{border-left:1px solid var(--dc-line);background:var(--dc-wash)}
.tn-dental-tool .dental-pane-label{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--dc-muted)}
.tn-dental-tool .dental-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.tn-dental-tool .dental-field{display:grid;align-content:start;gap:5px;background:none;border:0}
.tn-dental-tool .dental-field label{display:block;margin:0;padding:0;font:700 13px/1.5 var(--dc-font);color:var(--dc-ink)}
.tn-dental-tool .dental-conditions{display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--dc-soft)}
.tn-dental-tool .dental-conditions legend{padding-top:4px}
.tn-dental-tool .dental-input-wrap{display:flex;align-items:center;gap:10px;height:46px;padding:0 12px;background:var(--dc-surface);border:1px solid var(--dc-line)}
.tn-dental-tool .dental-input-wrap input{appearance:none;display:block;width:100%;height:42px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--dc-ink)!important;-webkit-text-fill-color:var(--dc-ink)!important;box-shadow:none!important;font:600 21px/1.4 var(--dc-font)!important;font-variant-numeric:lining-nums tabular-nums!important;letter-spacing:normal!important;text-align:right}
.tn-dental-tool .dental-input-wrap input::placeholder{font-weight:400!important;color:var(--dc-ink)!important;-webkit-text-fill-color:var(--dc-ink)!important;opacity:.35!important;font-size:16px}
.tn-dental-tool .dental-input-wrap b{flex:none;font:700 12px/1.4 var(--dc-font);color:var(--dc-muted)}
.tn-dental-tool select{appearance:none;display:block;width:100%;height:46px!important;margin:0!important;padding:8px 30px 8px 11px!important;border:1px solid var(--dc-line)!important;border-radius:0!important;background-color:var(--dc-surface)!important;background-image:linear-gradient(45deg,transparent 50%,var(--dc-muted) 50%),linear-gradient(135deg,var(--dc-muted) 50%,transparent 50%)!important;background-position:calc(100% - 16px) 20px,calc(100% - 11px) 20px!important;background-size:5px 5px!important;background-repeat:no-repeat!important;color:var(--dc-ink)!important;-webkit-text-fill-color:var(--dc-ink)!important;box-shadow:none!important;font:600 13px/1.5 var(--dc-font)!important;cursor:pointer}
.tn-dental-tool :is(select,button):focus-visible{outline:2px solid var(--dc-accent)!important;outline-offset:2px}
.tn-dental-tool .dental-input-wrap:has(:focus-visible){outline:2px solid var(--dc-accent);outline-offset:-1px}
.tn-dental-tool input:focus-visible{outline:none!important}
.tn-dental-tool .dental-input-wrap:has([aria-invalid="true"]){border-color:var(--dc-accent)}
.tn-dental-tool .dental-field small{font:400 12px/1.6 var(--dc-font);color:var(--dc-muted)}
.tn-dental-tool [data-error]:empty{display:none}
.tn-dental-tool [data-error]{color:var(--dc-accent)!important}
.tn-dental-tool .dental-actions{display:flex;flex-wrap:wrap;gap:8px}
.tn-dental-tool button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin:0;padding:0 14px;border:1px solid var(--dc-line);border-radius:0;background:var(--dc-button);color:var(--dc-ink);-webkit-text-fill-color:currentColor;box-shadow:none;font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:0;cursor:pointer;transition:background-color .15s ease}
.tn-dental-tool button:hover{background:var(--dc-surface);color:var(--dc-ink)}
.tn-dental-tool button[data-action="copy"]{background:var(--dc-primary);color:var(--dc-primary-text);border-color:var(--dc-accent)}
.tn-dental-tool button:disabled{opacity:.45;cursor:not-allowed}
.tn-dental-tool .dental-status{font-size:12px;color:var(--dc-muted)}
.tn-dental-tool .dental-status:empty{display:none}
.tn-dental-tool .dental-verdict h2{font:800 clamp(20px,2vw,25px)/1.4 var(--dc-font);letter-spacing:-.025em;text-wrap:balance;color:var(--dc-ink)}
.tn-dental-tool .dental-verdict p{padding-top:10px;color:var(--dc-muted);font-size:13px;text-wrap:pretty}
.tn-dental-tool .dental-total{display:grid;gap:8px;padding:18px 0;border-top:1px solid var(--dc-line);border-bottom:1px solid var(--dc-line)}
.tn-dental-tool .dental-total>span{font-size:12px;font-weight:700;color:var(--dc-muted)}
.tn-dental-tool .dental-total strong{display:flex;align-items:baseline;gap:10px;color:var(--dc-ink);white-space:nowrap}
.tn-dental-tool .dental-total b{font:800 clamp(28px,3.3vw,42px)/1.2 var(--dc-font)!important;font-variant-numeric:lining-nums tabular-nums!important;letter-spacing:normal!important}
.tn-dental-tool .dental-total small{font:600 14px/1.4 var(--dc-font)}
.tn-dental-tool .dental-total p{font-size:12px;color:var(--dc-muted)}
.tn-dental-tool .dental-receipt>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--dc-soft);font-size:12px}
.tn-dental-tool .dental-receipt dd{font:800 14px/1.4 var(--dc-font);font-variant-numeric:lining-nums tabular-nums;text-align:right;white-space:nowrap}
.tn-dental-tool .dental-note{font-size:12px;line-height:1.8;color:var(--dc-muted)}
body:is([data-scheme="dark"],[data-scheme="inverse"],[data-scheme="auto"][data-l="dark"],[data-scheme="auto"][data-d="dark"]) .tn-dental-tool,
html[data-scheme="dark"] body:not([data-scheme="light"]) .tn-dental-tool{--dc-paper:#241d12;--dc-ink:#efe6d2;--dc-muted:#c3b492;--dc-line:#6f6047;--dc-soft:#574a37;--dc-surface:#322a1a;--dc-wash:#241d12;--dc-accent:#e8823f;--dc-button:#2c2517;--dc-primary:#3e2b1e;--dc-primary-text:#efe6d2;color-scheme:dark}
@media(prefers-color-scheme:dark){body[data-scheme="auto"] .tn-dental-tool{--dc-paper:#241d12;--dc-ink:#efe6d2;--dc-muted:#c3b492;--dc-line:#6f6047;--dc-soft:#574a37;--dc-surface:#322a1a;--dc-wash:#241d12;--dc-accent:#e8823f;--dc-button:#2c2517;--dc-primary:#3e2b1e;--dc-primary-text:#efe6d2;color-scheme:dark}}
@media(max-width:720px){.tn-dental-page .dental-ad--top{margin-top:48px}.tn-dental-tool .dental-workspace{grid-template-columns:minmax(0,1fr)}.tn-dental-tool :is(.dental-input,.dental-result){padding:18px 16px;gap:16px}.tn-dental-tool .dental-result{border-left:0;border-top:1px solid var(--dc-line)}.tn-dental-tool .dental-modes>div{grid-template-columns:repeat(2,minmax(0,1fr))}.tn-dental-tool .dental-total b{font-size:34px!important}}
@media(max-width:380px){.tn-dental-tool :is(.dental-input,.dental-result){padding:16px 12px}.tn-dental-tool .dental-total b{font-size:30px!important}.tn-dental-tool .dental-fields{gap:10px}.tn-dental-tool select{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.tn-dental-tool button{transition:none}}

.tn-dental-tool .dental-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
