.odontogram .tooth-row{width:max-content;min-width:100%;gap:7px;margin:18px 0}.odontogram .tooth-card{width:59px;gap:0}.odontogram-tooth{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid transparent;border-radius:14px;background:transparent;padding:9px 2px;cursor:pointer;color:#38513d;transition:background .2s,border-color .2s,transform .2s}.odontogram-tooth:hover{background:#f1f5eb;border-color:#d6e2ca;transform:translateY(-3px)}.odontogram-tooth .tooth-number{font-size:11px;color:#708166}.odontogram-tooth .tooth-condition{font-size:9px;white-space:normal;line-height:1.4;min-height:26px;display:flex;align-items:center;justify-content:center;text-align:center;width:100%;color:#5c7454}.odontogram-tooth .tooth-faces{min-height:13px;font-size:9px;line-height:1.5;color:#647f58;overflow-wrap:anywhere}.odontogram-tooth[data-condition=restored] svg{fill:#cddcba;stroke:#60824c}.odontogram-tooth[data-condition=caries] svg{fill:#f0d8c7;stroke:#b78765}.odontogram-tooth[data-condition=missing] svg{fill:#f5f4ee;stroke:#acb0a3;stroke-dasharray:3 2}.odontogram-tooth[data-condition=planned] svg{fill:#f5edcd;stroke:#ae995a}.odontogram-tooth[data-condition=treated] svg{fill:#cfe4df;stroke:#63928a}.odonto-modal{width:640px;max-height:min(92dvh,900px)}.odonto-modal header{margin-bottom:18px}.odonto-dialog-intro{display:flex;align-items:center;gap:16px;margin-bottom:22px}.odonto-tooth-mark{width:62px;height:62px;border-radius:19px;background:linear-gradient(145deg,#edf3e5,#dde8ce);border:1px solid #d4e0c6;color:#436236;font:30px Georgia,serif;display:grid;place-items:center;flex-shrink:0}.odonto-dialog-intro p{margin:3px 0;color:#76836c;font-size:12px;line-height:1.7}.odonto-dialog-intro .eyebrow{font-size:10px;color:#59784b}.odonto-condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.odonto-condition{display:flex;align-items:center;gap:11px;padding:14px 12px;border-radius:13px;border:1px solid #e2e8d9;background:#fffefb;text-align:left;cursor:pointer;min-width:0;transition:background .2s,border-color .2s}.odonto-condition>span:nth-child(2){flex:1;min-width:0}.odonto-condition strong{display:block;font-size:14px;font-weight:600;color:#42603c;line-height:1.4;overflow-wrap:anywhere}.odonto-condition small{display:block;font-size:11px;line-height:1.6;margin-top:3px;color:#8a9481}.odonto-condition>svg{width:18px;height:18px;flex-shrink:0;stroke:#63814c;fill:none;stroke-width:1.7;opacity:0}.odonto-condition[aria-pressed=true]{background:#edf4e4;border-color:#aec593}.odonto-condition[aria-pressed=true]>svg{opacity:1}.odonto-status-dot{width:9px;height:9px;border-radius:50%;background:#a6bc8c;flex-shrink:0}.odonto-status-dot[data-condition=caries]{background:#c49b7e}.odonto-status-dot[data-condition=restored]{background:#6f9155}.odonto-status-dot[data-condition=missing]{background:#b7baad}.odonto-status-dot[data-condition=planned]{background:#c4af69}.odonto-status-dot[data-condition=treated]{background:#7da69b}.odonto-surfaces{border:1px solid #dce7cf;border-radius:16px;background:#f3f7ec;padding:18px;margin-top:18px;animation:nuvora-rise .2s ease}.odonto-surfaces .section-actions{gap:8px;margin-bottom:14px}.odonto-surfaces h3{font:20px Georgia,serif;color:#3f5e35;margin:0}.odonto-surfaces p{font-size:11px;color:#7b896e;line-height:1.7;margin:5px 0}.odonto-face-count{font-size:10px;white-space:nowrap;color:#6b8058;background:#e6eedc;border-radius:20px;padding:6px 9px}.odonto-face-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.odonto-face{border:1px solid #d9e3cc;border-radius:12px;background:#fffef8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:72px;min-width:0;padding:9px 3px;cursor:pointer;transition:background .2s,border-color .2s}.odonto-face b{font:24px Georgia,serif;color:#6b8455}.odonto-face span{font-size:10px;color:#7a896b;line-height:1.4}.odonto-face[aria-pressed=true]{background:#3d613d;border-color:#3d613d}.odonto-face[aria-pressed=true] b,.odonto-face[aria-pressed=true] span{color:#fff}.odonto-save-hint{font-size:11px;line-height:1.8;color:#7d8872;margin:18px 0}.odonto-modal .form-actions{display:flex;justify-content:flex-end;gap:9px}.odonto-face:focus-visible,.odonto-condition:focus-visible,.odontogram-tooth:focus-visible{outline:3px solid #91ac76;outline-offset:3px}
@media(max-width:760px){.odonto-modal{padding:21px 17px;border-radius:20px;max-height:calc(100dvh - 28px)}.odonto-modal h2{font-size:26px}.odonto-dialog-intro{gap:12px;margin-bottom:16px}.odonto-tooth-mark{width:50px;height:50px;font-size:25px;border-radius:15px}.odonto-condition-grid{gap:7px}.odonto-condition{padding:12px 9px;gap:7px}.odonto-condition strong{font-size:12px}.odonto-condition small{font-size:10px}.odonto-condition>svg{width:13px}.odonto-surfaces{padding:14px 11px}.odonto-face-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.odonto-face{min-height:65px}.odonto-face span{font-size:11px}.odonto-modal .form-actions>*{flex:1;min-height:44px}.odontogram-tooth{min-height:105px}.odontogram{overscroll-behavior-x:contain}}
@media(prefers-reduced-motion:reduce){.odontogram-tooth,.odonto-condition,.odonto-face{transition:none}.odontogram-tooth:hover{transform:none}.odonto-surfaces{animation:none}}
