.anterior-map{max-width:680px;margin:12px auto 0;padding:28px 24px 18px;border:1px solid rgba(255,255,255,.95);border-radius:30px;background:linear-gradient(150deg,rgba(255,255,255,.86),rgba(255,255,255,.4));box-shadow:inset 0 1px 1px #fff,0 16px 44px rgba(55,45,38,.04);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);text-align:center}
.anterior-guide{margin:0 0 20px;color:var(--ink-soft,#56565c);font-size:15px}.anterior-sides{display:flex;justify-content:space-between;max-width:420px;margin:0 auto 12px;font-size:12px;color:var(--ink-faint,#76767e)}
.anterior-row{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;max-width:420px;margin:auto;padding:2px 10px 0;border-radius:90px 90px 12px 12px;background:radial-gradient(ellipse at top,rgba(122,90,67,.09),transparent 70%)}
.anterior-lower{padding:0 10px 2px;border-radius:12px 12px 90px 90px;background:radial-gradient(ellipse at bottom,rgba(122,90,67,.07),transparent 70%)}
.anterior-tooth{appearance:none;display:block;min-width:0;width:100%;min-height:58px;margin:var(--tooth-offset) 0 0;padding:0;border:0;border-radius:16px;background:transparent;cursor:pointer;touch-action:manipulation;transition:transform .24s cubic-bezier(.22,1,.36,1)}
.anterior-lower .anterior-tooth{margin:0 0 var(--tooth-offset)}.anterior-tooth svg{display:block;width:100%;overflow:visible}.anterior-crown{fill:#fff;stroke:#c4c0bc;stroke-width:1.5;filter:drop-shadow(0 3px 3px rgba(44,36,29,.06));transition:fill .22s,stroke .22s,stroke-width .22s}.anterior-shine{fill:none;stroke:#f0eeeb;stroke-width:3;stroke-linecap:round}.anterior-check{opacity:0;transform-origin:30px 51px;transform:scale(.5);transition:opacity .18s,transform .3s cubic-bezier(.2,1.6,.5,1)}.anterior-check circle{fill:var(--brand1,#704627)}.anterior-check path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.anterior-tooth[aria-pressed=true] .anterior-crown{fill:#f3ebe4;stroke:var(--brand1,#704627);stroke-width:2}.anterior-tooth[aria-pressed=true] .anterior-check{opacity:1;transform:scale(1)}.anterior-tooth:active{transform:scale(.92)}.anterior-tooth:focus-visible{outline:3px solid var(--brand1,#704627);outline-offset:3px}.anterior-midline{height:6px}.anterior-arch-label{display:block;margin:4px 0;font-size:13px;color:var(--ink-faint,#76767e)}
.anterior-counts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;padding-top:20px;border-top:1px solid rgba(60,48,40,.09);gap:8px}.anterior-counts>div{display:flex;gap:5px;align-items:baseline;justify-content:center;flex-wrap:wrap;font-size:13px;color:var(--ink-soft,#56565c)}.anterior-counts strong{font-size:26px;font-variant-numeric:tabular-nums;color:var(--ink,#242428)}.anterior-counts .anterior-total,.anterior-counts .anterior-total strong{color:var(--brand1,#704627)}.anterior-hint{margin:20px 0 12px;color:var(--ink-faint,#76767e);font-size:13px;line-height:1.7}.anterior-clear{padding:10px 18px;border:1px solid rgba(80,67,58,.15);border-radius:14px;background:rgba(255,255,255,.65);color:var(--ink-soft,#56565c);font:inherit;font-size:13px;cursor:pointer}.anterior-clear:disabled{opacity:.4;cursor:default}
@media(max-width:480px){.anterior-map{padding:20px 12px 14px}.anterior-row{gap:0;padding-inline:0}.anterior-counts>div>span:first-child{flex-basis:100%}.anterior-counts strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.anterior-map *{transition:none!important}}
