*{box-sizing:border-box}:root{font-family:Segoe UI,Arial,sans-serif;color:#25394c;background:#f1f3f9;font-synthesis:none;line-height:1.5}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #d6e1ed;border-radius:10px;padding:10px 16px;background:#fff;color:#264563}button:hover{background:#edf5ff;border-color:#91bce8}button:disabled{cursor:not-allowed;opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #69b8ed;outline-offset:3px}h1,h2,p{margin-top:0}h1{font-size:clamp(1.5rem,3vw,2rem);line-height:1.25;font-weight:650}h2{font-size:1.2rem;font-weight:650}.marca{width:174px;height:auto;object-fit:contain;align-self:flex-start;margin-bottom:30px}.access{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 18px;background:linear-gradient(120deg,#edf7fc,#f1f3f9 65%)}.login-card{width:min(100%,460px);background:#fff;border:1px solid #e1e7ef;border-radius:20px;padding:36px;box-shadow:0 18px 60px #3153780b}.eyebrow{color:#3182b4;font-size:.72rem;letter-spacing:.12em;font-weight:700;margin-bottom:10px}.muted{color:#667b8c}.small{font-size:.85rem}form{display:grid;gap:18px;margin:25px 0}label{font-size:.9rem;font-weight:600;display:grid;gap:7px}input{padding:12px;border:1px solid #cbd8e3;border-radius:9px;min-width:0;background:#fff}.primary{background:#337aea;border-color:#337aea;color:#fff;font-weight:600}.primary:hover{background:#2768d0}.error{background:#fff1f1;color:#8e2534;border:1px solid #f0cdd2;border-radius:10px;padding:15px;margin-bottom:20px}.error button{margin-left:10px}.notice{background:#edf6ff;border-left:3px solid #64a7dc;color:#375977;padding:18px;border-radius:8px;margin:22px 0;font-size:.95rem}footer{font-size:.8rem;color:#6c8194;margin-top:28px}.shell{display:flex;min-height:100svh}.sidebar{width:240px;flex-shrink:0;border-right:1px solid #e1e6ef;background:#fff;padding:30px 22px;display:flex;flex-direction:column}.nav-selected{padding:12px 16px;background:#337aea;color:#fff;border-radius:12px;margin:5px 0 20px}.main-nav{display:grid;gap:6px;margin-bottom:20px}.main-nav button{text-align:left;border-color:transparent}.main-nav .nav-selected{margin:0;background:#337aea;color:#fff}.sidebar-bottom{margin-top:auto;padding-top:28px}.email{font-size:.85rem;overflow-wrap:anywhere}.workspace{max-width:1400px;width:100%;padding:36px 40px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dce4ee;padding-bottom:22px;margin-bottom:28px}header h1{margin-bottom:0}.clinic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:18px;margin-top:25px}.clinic-card{display:flex;align-items:flex-start;flex-direction:column;gap:15px;text-align:left;padding:24px;border-radius:15px}.clinic-card strong{font-size:1.1rem}.clinic-card>span:last-child{font-size:.9rem;color:#337aea}.clinic-icon{display:grid;place-items:center;background:#e8f5fa;color:#1689b1;width:40px;height:40px;font-size:25px;border-radius:10px}.badge{font-size:.8rem;background:#e9f2ff;color:#326ca8;border-radius:20px;padding:5px 12px;white-space:nowrap}.welcome,.panel{border:1px solid #e0e7ef;background:#fff;border-radius:16px;padding:25px}.welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.welcome p:last-child{margin-bottom:0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:.85rem;color:#667b8c;background:#f6f8fc}td,th{padding:14px;border-bottom:1px solid #edf0f4;vertical-align:middle}select{padding:9px 34px 9px 10px;border:1px solid #cbd8e3;border-radius:9px;background:#fff;color:#25394c}.status-toggle{display:flex;grid-template-columns:none;align-items:center;gap:9px;font-weight:500;white-space:nowrap}.status-toggle input{width:18px;height:18px}.compact{padding:8px 13px;min-width:92px}.row-error td{padding-top:0}.row-error .error{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.page-title h2{font-size:1.6rem;margin-bottom:5px}.search-bar{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;align-items:end;margin:0 0 22px;padding:18px;background:#fff;border:1px solid #e0e7ef;border-radius:14px}.search-bar button{height:44px}.cell-secondary{display:block;color:#667b8c;font-size:.82rem;margin-top:3px}.actions{display:flex;gap:7px;white-space:nowrap}.actions button{padding:7px 10px}.state{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.8rem}.state.active{background:#e6f7ef;color:#16704a}.state.inactive{background:#f2f3f5;color:#68717a}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:20px}.success{background:#eaf8f1;color:#176846;border:1px solid #c4ead7;border-radius:10px;padding:14px}.patient-form{margin:0}.patient-form fieldset{border:1px solid #dfe6ef;border-radius:14px;padding:20px;margin:0 0 18px;background:#fff}.patient-form legend{font-weight:650;padding:0 8px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:17px}.form-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;padding:15px;background:#f1f3f9ef;border-top:1px solid #dce4ee}.patient-form input:disabled{background:#edf0f4}.patient-form select{min-height:44px}.clinical-form{margin:0}.clinical-form fieldset{border:1px solid #dfe6ef;border-radius:14px;padding:20px;margin:0 0 18px;background:#fff}.clinical-form legend{font-weight:650;padding:0 8px}.clinical-form textarea,.record-form textarea{width:100%;padding:12px;border:1px solid #cbd8e3;border-radius:9px;resize:vertical;min-height:84px}.clinical-form input:disabled{background:#edf0f4}.char-count{text-align:right;color:#728596;font-size:.78rem;font-weight:400}.patient-picker{display:grid;grid-template-columns:1fr 1.4fr;gap:17px;margin-bottom:17px}.link-button{border:0;padding-left:0;background:transparent;color:#337aea}.health-section{display:grid;gap:16px;margin-top:26px}.health-card{background:#fff;border:1px solid #dfe6ef;border-radius:14px;padding:18px}.health-card summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin:-4px 0 14px}.record-list{display:grid;gap:9px;margin-bottom:14px}.record-list article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px;background:#f7f9fc;border-radius:10px}.record-list article>div:first-child{display:grid;gap:2px}.record-list article span{font-size:.84rem;color:#667b8c}.record-form{border-top:1px solid #e6ebf1;padding-top:16px;margin:14px 0 0}.record-form>.actions{justify-content:flex-end;margin-top:14px}.clinical-tabs{display:flex;gap:7px;border-bottom:1px solid #dce4ee;margin-bottom:22px;overflow-x:auto}.clinical-tabs button{border:0;border-radius:10px 10px 0 0;background:transparent;white-space:nowrap}.clinical-tabs .tab-selected{background:#337aea;color:#fff}.exam-form h3{font-size:1rem;margin:22px 0 12px}.exam-progress{display:grid;gap:8px;background:#fff;border:1px solid #dfe6ef;border-radius:14px;padding:16px;margin-bottom:18px}.exam-progress>div{display:flex;justify-content:space-between;gap:15px}.exam-progress progress{width:100%;height:12px;accent-color:#337aea}.region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.region-card{border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fafcff}.finding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.ihos-table th,.ihos-table td{text-align:center}.ihos-table select{min-width:64px}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.score-grid span{display:grid;text-align:center;background:#eef5ff;border-radius:10px;padding:10px;color:#597087}.score-grid strong{font-size:1.05rem;color:#264563}.tab-beta{font-size:.68rem;margin-left:5px;padding:2px 6px;border-radius:10px;background:#fff3cd;color:#755800}.odontogram-module{display:grid;gap:18px}.clinical-warning{display:grid;gap:5px;background:#fff7e6;color:#704f00;border:1px solid #efd99d;border-left:4px solid #d89b18;border-radius:10px;padding:16px}.odontogram-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.odontogram-board{background:#fff;border:1px solid #dfe6ef;border-radius:16px;padding:20px;overflow-x:auto}.dental-arch{min-width:800px}.dental-arch.compact{min-width:520px;width:65%;margin-inline:auto}.dental-arch h3{text-align:center;font-size:.85rem;color:#667b8c;margin:9px 0}.teeth-row{display:grid;grid-template-columns:repeat(16,minmax(42px,1fr));gap:2px;align-items:end}.compact .teeth-row{grid-template-columns:repeat(10,minmax(42px,1fr))}.tooth-button{display:grid;grid-template-rows:18px 80px 20px 18px;place-items:center;border:1px solid transparent;padding:2px;min-width:42px;background:transparent}.tooth-button:hover{background:#f1f7fd}.tooth-button.selected{border-color:#2987c7;box-shadow:0 0 0 2px #9bd1f3 inset;background:#eef8ff}.tooth-button svg{grid-row:2;width:46px;height:76px;overflow:visible}.lower-tooth{transform:rotate(180deg)}.root-lines,.tooth-surfaces{fill:#fff;stroke:#111;stroke-width:1.25;stroke-linejoin:round;vector-effect:non-scaling-stroke}.root-lines{fill:none}.finding-box{width:34px;height:16px;border:1px solid #111;background:#fff}.finding-box.top{grid-row:1}.finding-box.bottom{grid-row:4}.tooth-number{grid-row:3;font-weight:650;font-size:.78rem;color:#25394c}.occlusal-plane{display:flex;justify-content:space-between;min-width:800px;border-block:1px dashed #bac7d3;margin:12px 0;padding:5px;color:#728596;font-size:.72rem}.odontogram-inspector{display:grid;grid-template-columns:1fr 2fr;gap:15px}.odontogram-inspector>div{background:#fff;border:1px solid #dfe6ef;border-radius:12px;padding:16px}.odontogram-inspector strong{display:block;font-size:1.5rem}.odontogram-inspector p:last-child{margin-bottom:0}@media(max-width:800px){.shell{flex-direction:column}.sidebar{width:100%;padding:14px 20px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e6ef}.sidebar .marca{width:140px;margin:0;align-self:center}.sidebar>.eyebrow,.sidebar>.small,.sidebar>div.nav-selected,.sidebar-bottom>.small,.email{display:none}.main-nav{display:flex;margin:0;overflow-x:auto}.main-nav button{padding:8px 10px}.sidebar-bottom{margin:0;padding:0}.workspace{padding:24px 18px}header{align-items:flex-start;flex-direction:column}.welcome,.page-title,.odontogram-heading{flex-direction:column}.login-card{padding:28px}.clinic-grid,.search-bar,.form-grid,.patient-picker,.odontogram-inspector{grid-template-columns:1fr}.actions{white-space:normal}.pagination{justify-content:space-between;flex-wrap:wrap}.record-list article{align-items:flex-start;flex-direction:column}.score-grid{grid-template-columns:repeat(2,1fr)}button{min-height:44px}}.field-error{display:block;color:brown;font-size:.8rem;margin-top:5px}.zone-behind polygon,.zone-strokes polygon{fill:none;stroke:#111;stroke-width:1.15;stroke-linejoin:round;vector-effect:non-scaling-stroke}.zone-fills polygon{fill:#fff;stroke:none}.zone-hits polygon{fill:transparent;stroke:transparent;stroke-width:1.7;vector-effect:non-scaling-stroke;cursor:pointer;outline:none}.zone-hits polygon:hover,.zone-hits polygon:focus{fill:#dff2ff88;stroke:#2987c7}.zone-hits polygon.selected{fill:#cfeeffaa;stroke:#1675b6}.dental-arch.exact{width:var(--arc-width);min-width:var(--arc-width);margin-inline:auto}.exact-arch,.arch-labels,.arch-boxes{display:block;width:100%;overflow:visible}.arch-labels text{font:650 11px system-ui;fill:#25394c;text-anchor:middle}.arch-boxes rect{fill:#fff;stroke:#111;stroke-width:1;vector-effect:non-scaling-stroke}.dental-zone{fill:#fff;stroke:#111;stroke-width:1.15;stroke-linejoin:round;vector-effect:non-scaling-stroke;cursor:pointer;outline:none}.dental-zone:hover,.dental-zone:focus{fill:#eef8ff;stroke:#2987c7}.dental-zone.selected{fill:#cfeeff;stroke:#1675b6;stroke-width:1.7}.odontogram-board .occlusal-plane{min-width:755px}
