:root{--navy:#0a1f44;--navy-2:#102d5c;--blue:#1677ff;--cyan:#23a8d9;--mint:#2dccaa;--coral:#ff6f61;--ink:#10213a;--muted:#6d7b91;--line:#e6ebf2;--surface:#f5f8fc;--white:#fff;--shadow:0 20px 60px rgba(10,31,68,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff}button,input,select{font:inherit}button,a{cursor:pointer}button{border:0}a{text-decoration:none;color:inherit}[hidden]{display:none!important}.shell{width:min(1200px,calc(100% - 48px));margin:auto}.btn{height:46px;padding:0 22px;border-radius:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:.25s}.btn-primary{color:#fff;background:linear-gradient(135deg,#1578ff,#16a5dc);box-shadow:0 10px 25px rgba(22,119,255,.23)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(22,119,255,.3)}.btn-outline{border:1px solid #dce5ef;background:#fff;color:var(--navy)}
.landing{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 82% 25%,#e8fbf8 0,transparent 29%),linear-gradient(180deg,#fbfdff 0,#fff 70%)}.public-nav{height:90px;display:flex;align-items:center;justify-content:space-between}.platform-logo{width:155px;height:58px;object-fit:contain}.public-links{display:flex;gap:34px;color:#536178;font-size:14px;font-weight:600}.public-links a:hover{color:var(--blue)}.hero{min-height:640px;display:grid;grid-template-columns:.85fr 1.2fr;align-items:center;gap:45px;padding:50px 0 70px}.hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #dceeea;border-radius:30px;background:#f4fffc;color:#187d70;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(45,204,170,.12)}h1,h2,h3{font-family:'Manrope',sans-serif}.hero h1{font-size:58px;line-height:1.05;letter-spacing:-3px;margin:24px 0 22px;color:var(--navy)}.hero h1 span{color:var(--blue)}.hero-copy>p{font-size:18px;line-height:1.7;color:var(--muted);max-width:510px}.hero-actions{display:flex;align-items:center;gap:25px;margin:32px 0}.text-link{font-weight:700;color:var(--navy);border-bottom:1px solid #b8c3d1;padding-bottom:3px}.trust-row{display:flex;gap:20px;font-size:12px;color:#64748a}.trust-row span::first-letter{color:var(--mint)}
.product-visual{position:relative;min-height:520px;display:flex;align-items:center}.visual-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,#d7f7f2,rgba(231,245,255,.55) 55%,transparent 70%);right:0}.mini-window{position:relative;width:710px;border-radius:22px;background:#fff;box-shadow:0 35px 90px rgba(22,56,99,.2);border:1px solid rgba(219,229,241,.8);overflow:hidden;transform:perspective(1300px) rotateY(-5deg) rotateX(2deg)}.window-top{height:39px;background:#f7f9fc;display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:1px solid #edf1f5}.window-top span{width:7px;height:7px;border-radius:50%;background:#c8d1dc}.window-top b{font-size:9px;color:#8390a3;margin-left:12px}.window-body{display:flex;height:390px}.mini-side{width:65px;background:var(--navy);display:flex;flex-direction:column;align-items:center;gap:21px;padding:18px 0}.mini-brand{width:31px;height:31px;background:linear-gradient(135deg,var(--blue),var(--mint));border-radius:10px;color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:10px}.mini-side i{width:20px;height:5px;background:#526680;border-radius:4px}.mini-side i.active{background:#4de0bd}.mini-main{flex:1;background:#f5f8fc;padding:27px}.mini-heading{display:flex;justify-content:space-between}.mini-heading small,.mini-heading strong{display:block}.mini-heading small{font-size:9px;color:#7a879a}.mini-heading strong{font-size:20px;color:var(--navy)}.mini-heading button{background:var(--blue);color:#fff;border-radius:8px;font-size:9px;padding:0 13px}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.mini-stats>div,.chart-card,.agenda-card{background:#fff;border:1px solid #e7edf4;border-radius:12px;padding:14px}.mini-stats small,.mini-stats b,.mini-stats em{display:block}.mini-stats small{font-size:8px;color:#7a879a}.mini-stats b{font-size:20px;margin:5px 0}.mini-stats em{font-size:8px;color:#15a37d;font-style:normal}.mini-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:12px}.mini-grid strong{font-size:10px}.bars{height:120px;display:flex;gap:9px;align-items:flex-end;padding-top:14px;border-bottom:1px solid #eef2f6}.bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(#2ccfac,#1684ff)}.bars i:nth-child(1){height:37%}.bars i:nth-child(2){height:53%}.bars i:nth-child(3){height:45%}.bars i:nth-child(4){height:72%}.bars i:nth-child(5){height:64%}.bars i:nth-child(6){height:88%}.bars i:nth-child(7){height:78%}.agenda-card p{font-size:8px;padding:10px 0;margin:0;border-bottom:1px solid #eef2f6}.agenda-card p b{color:var(--blue);margin-right:8px}.floating-card{position:absolute;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 18px 45px rgba(10,31,68,.16);border:1px solid #fff;border-radius:14px;padding:12px 15px;display:flex;align-items:center;gap:10px;animation:float 4s ease-in-out infinite}.floating-card>span{width:34px;height:34px;border-radius:11px;background:#eaf5ff;display:grid;place-items:center;color:var(--blue);font-weight:800}.floating-card small,.floating-card b{display:block}.floating-card small{font-size:8px;color:#8190a4}.floating-card b{font-size:11px}.floating-card>i{color:var(--mint);font-style:normal}.patient-float{left:-25px;bottom:45px}.ai-float{right:-12px;top:45px;animation-delay:-1.5s}.ai-float>span{background:#e8fff9;color:#17a686}@keyframes float{50%{transform:translateY(-9px)}}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding:34px 0 55px}.feature-strip article{display:flex;gap:15px;padding:0 22px;border-right:1px solid var(--line)}.feature-strip article:last-child{border:0}.feature-strip span{color:var(--blue);font-size:11px;font-weight:800}.feature-strip b{font-size:14px}.feature-strip p{font-size:11px;color:var(--muted);margin:5px 0 0}
.login-view{min-height:100vh;display:grid;grid-template-columns:minmax(470px,41%) 1fr;background:#f6f9fd}.login-panel{padding:52px clamp(55px,7.5vw,120px);background:#fff;display:flex;flex-direction:column;justify-content:center;position:relative}.login-logo{width:245px;height:78px;object-fit:contain;object-position:left center;margin:0}.portal-brand{position:absolute;top:44px;left:clamp(55px,7.5vw,120px);display:flex;align-items:center;gap:18px}.portal-brand span{height:28px;border-left:1px solid #dce4ed;padding-left:18px;display:flex;align-items:center;color:#7b899c;font-size:9px;font-weight:800;letter-spacing:1.4px}.login-copy span,.modal-tag{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1.6px}.login-copy h2{font-size:38px;letter-spacing:-1.6px;margin:9px 0;color:var(--navy)}.login-copy p{color:var(--muted);margin:0 0 28px}.login-panel form>label,.form-grid label{display:block;font-size:11px;font-weight:700;color:#40516a;margin-bottom:15px}.login-panel input,.form-grid input,.form-grid select{width:100%;height:49px;border:1px solid #dfe6ef;border-radius:11px;padding:0 14px;margin-top:7px;outline:none;background:#fff}.login-panel input:focus,.form-grid input:focus,.form-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,119,255,.09)}.tenant-field{display:flex;align-items:center;height:49px;border:1px solid #dfe6ef;border-radius:11px;margin-top:7px;overflow:hidden;transition:.2s}.tenant-field:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,119,255,.09)}.tenant-field>span{width:42px;text-align:center;color:#7e8da1}.tenant-field input{height:47px!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;box-shadow:none!important;min-width:0}.tenant-field em{font-style:normal;color:#8795a8;font-size:10px;padding-right:13px;white-space:nowrap}.password-field{position:relative}.password-field input{padding-right:55px}.password-field button{position:absolute;right:12px;top:23px;background:none;color:var(--blue);font-size:11px;font-weight:700}.form-meta{display:flex;justify-content:space-between;font-size:11px;margin:-2px 0 18px}.form-meta a{color:var(--blue)}.check{display:flex!important;align-items:center;gap:7px;margin:0!important;font-weight:500!important}.check input{width:14px!important;height:14px!important;margin:0!important}.login-submit{width:100%}.login-error{height:16px;color:#d94343;font-size:10px;margin:0 0 6px}.secure-note{display:flex;align-items:center;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #edf1f5}.secure-note>span{width:30px;height:30px;border-radius:9px;background:#e8faf5;color:#18a083;display:grid;place-items:center}.secure-note b,.secure-note small{display:block}.secure-note b{font-size:10px;color:#43536a}.secure-note small{font-size:8px;color:#8795a8;margin-top:2px}.login-art{position:relative;overflow:hidden;background:linear-gradient(140deg,#071b38,#0b4f78 58%,#159884);display:flex;align-items:flex-end;padding:70px 8%;isolation:isolate}.login-art::after{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px}.orb{position:absolute;border-radius:50%;filter:blur(2px);z-index:-1}.orb-one{width:520px;height:520px;background:radial-gradient(circle at 35% 35%,rgba(61,227,196,.32),rgba(28,125,181,.04) 68%);top:-3%;right:3%}.orb-two{width:330px;height:330px;border:1px solid rgba(255,255,255,.12);top:16%;right:18%}.portal-preview{position:absolute;top:8%;left:50%;transform:translateX(-50%);width:min(590px,82%);height:57%;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025));box-shadow:0 35px 90px rgba(0,0,0,.2);backdrop-filter:blur(12px);overflow:hidden}.preview-top{height:62px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);padding:0 24px}.preview-top img{width:135px;filter:brightness(0) invert(1)}.preview-top span{color:#a8d8db;font-size:9px;letter-spacing:1px}.clinic-orbit{position:absolute;inset:62px 0 0;display:grid;place-items:center}.center-tooth{width:90px;height:90px;border-radius:30px;background:linear-gradient(145deg,#1f8dff,#28d0ae);display:grid;place-items:center;color:#fff;font:800 42px Manrope;box-shadow:0 0 0 13px rgba(255,255,255,.055),0 18px 35px rgba(0,0,0,.25);z-index:2}.orbit-ring{position:absolute;border:1px solid rgba(117,237,218,.22);border-radius:50%}.orbit-ring.one{width:250px;height:160px;transform:rotate(-12deg)}.orbit-ring.two{width:370px;height:235px;transform:rotate(18deg)}.clinic-node{position:absolute;width:45px;height:45px;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 10px 25px rgba(0,0,0,.18)}.clinic-node.n1{top:22%;left:18%}.clinic-node.n2{right:16%;top:39%;color:#58efcf}.clinic-node.n3{bottom:14%;left:28%}.login-quote{position:relative;z-index:2;color:#fff;max-width:600px}.login-quote>span{display:block;color:#5de9d1;font-size:9px;font-weight:800;letter-spacing:1.7px;margin-bottom:10px}.login-quote h3{font-size:30px;line-height:1.25;margin:0}.login-quote p{color:#bde7e2;font-size:12px}
.brand-intro{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at center,#153a71,#071933 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;overflow:hidden}.smart-tooth{width:150px;height:150px;position:relative;display:grid;place-items:center;opacity:0;transform:scale(.6)}.is-playing .smart-tooth{animation:toothArrive .65s .15s cubic-bezier(.2,.9,.25,1.25) forwards}.tooth-core{position:relative;width:90px;height:105px;background:linear-gradient(145deg,#fff,#dffaff);clip-path:polygon(15% 4%,35% 0,50% 8%,65% 0,85% 4%,96% 20%,91% 48%,80% 91%,66% 100%,52% 73%,48% 73%,34% 100%,20% 91%,9% 48%,4% 20%);filter:drop-shadow(0 0 20px rgba(64,235,210,.45))}.tooth-eye{position:absolute;top:39px;width:7px;height:9px;border-radius:50%;background:var(--navy)}.tooth-eye.left{left:29px}.tooth-eye.right{right:29px}.tooth-smile{position:absolute;width:25px;height:12px;border:3px solid var(--mint);border-top:0;border-radius:0 0 20px 20px;left:32px;top:57px}.spark{position:absolute;color:#55eed0;font-style:normal;opacity:0}.s1{right:13px;top:15px}.s2{left:9px;bottom:27px;font-size:11px}.is-playing .spark{animation:spark .8s .75s ease forwards}.is-playing .s2{animation-delay:.95s}.scan{position:absolute;width:125px;height:2px;background:linear-gradient(90deg,transparent,#57ffe1,transparent);box-shadow:0 0 12px #57ffe1;top:30px;opacity:0}.is-playing .scan{animation:scan 1s .55s ease}.intro-logo{width:250px;height:105px;object-fit:contain;opacity:0;transform:translateY(15px)}.is-playing .intro-logo{animation:logoReveal .6s 1.15s ease forwards}.brand-intro>p{font-size:11px;letter-spacing:1.5px;color:#add4dc;opacity:0}.is-playing>p{animation:logoReveal .5s 1.35s forwards}.intro-loader{width:180px;height:3px;background:rgba(255,255,255,.13);border-radius:4px;overflow:hidden;margin-top:18px;opacity:0}.is-playing .intro-loader{animation:logoReveal .3s 1.45s forwards}.intro-loader i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--mint));animation:load 1.05s 1.45s ease forwards}@keyframes toothArrive{to{opacity:1;transform:scale(1)}}@keyframes spark{50%{opacity:1;transform:scale(1.5) rotate(45deg)}to{opacity:.7}}@keyframes scan{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(90px)}}@keyframes logoReveal{to{opacity:1;transform:none}}@keyframes load{to{width:100%}}
.app{min-height:100vh;display:grid;grid-template-columns:238px 1fr;background:var(--surface)}.sidebar{height:100vh;position:sticky;top:0;background:#0b1d3a;color:#fff;padding:0 14px;display:flex;flex-direction:column}.clinic-brand{height:82px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;padding:0 6px}.clinic-brand img{width:155px;height:57px;object-fit:contain;filter:brightness(0) invert(1)}.clinic-brand button{background:none;color:#9fb0c8}.app-nav{padding:17px 0;overflow-y:auto;flex:1}.app-nav p{font-size:9px;color:#647894;letter-spacing:1.4px;margin:19px 12px 8px}.app-nav button{width:100%;height:42px;border-radius:9px;background:transparent;color:#aebcd0;text-align:left;padding:0 12px;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;margin:2px 0}.app-nav button span{width:18px;text-align:center;font-size:15px}.app-nav button i{font-style:normal;margin-left:auto;background:var(--coral);color:#fff;border-radius:10px;padding:2px 6px;font-size:8px}.app-nav button:hover,.app-nav button.active{background:linear-gradient(90deg,rgba(32,127,255,.2),rgba(46,214,177,.08));color:#fff}.app-nav button.active{box-shadow:inset 3px 0 var(--mint)}.sidebar-user{height:72px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:9px}.sidebar-user>span{width:34px;height:34px;background:linear-gradient(135deg,var(--blue),var(--mint));display:grid;place-items:center;border-radius:11px;font-size:10px;font-weight:800}.sidebar-user b,.sidebar-user small{display:block}.sidebar-user b{font-size:10px}.sidebar-user small{font-size:8px;color:#8296b0}.sidebar-user button{margin-left:auto;background:none;color:#8296b0}.workspace{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.clinic-status{display:flex;align-items:center;gap:8px;font-size:11px;color:#65758b}.clinic-status i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(45,204,170,.12)}.clinic-status b{color:#159472}.top-actions{display:flex;gap:9px;align-items:center}.top-actions>button:not(.btn),.mobile-menu{width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:11px;color:#65758b}.notification{position:relative}.notification i{position:absolute;width:6px;height:6px;background:var(--coral);border-radius:50%;top:7px;right:7px}.quick-appointment{height:40px;font-size:11px}.mobile-menu{display:none}.view-container{padding:28px;max-width:1600px;margin:auto}.view-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.view-head small{color:var(--blue);font-weight:800;font-size:10px;letter-spacing:1px}.view-head h1{font-size:28px;letter-spacing:-1px;margin:5px 0;color:var(--navy)}.view-head p{color:var(--muted);font-size:12px;margin:0}.date-chip{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:11px;font-size:11px;color:#52647b}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric-card,.panel{background:#fff;border:1px solid var(--line);border-radius:15px}.metric-card{padding:18px;position:relative;overflow:hidden}.metric-card::after{content:'';position:absolute;width:70px;height:70px;border-radius:50%;right:-25px;top:-25px;background:var(--card-soft,#eef6ff)}.metric-card .metric-top{display:flex;justify-content:space-between;align-items:center}.metric-card .metric-icon{width:36px;height:36px;border-radius:10px;background:var(--card-soft,#eef6ff);color:var(--card-color,var(--blue));display:grid;place-items:center;font-weight:800}.metric-card em{font-style:normal;font-size:9px;color:#18a17e;background:#edfcf7;padding:4px 6px;border-radius:10px}.metric-card small,.metric-card strong,.metric-card span{display:block}.metric-card small{color:#7a899d;font-size:9px;margin-top:14px}.metric-card strong{font:700 25px Manrope;margin:4px 0;color:var(--navy)}.metric-card span{font-size:9px;color:#8a98aa}.dashboard-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:16px;margin-top:16px}.panel{padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.panel-head h3{font-size:14px;margin:0}.panel-head button,.panel-head select{font-size:9px;color:var(--blue);background:#f3f7fc;border:0;border-radius:8px;padding:7px 9px}.revenue-chart{height:220px;position:relative;display:flex;align-items:flex-end;gap:16px;padding:15px 5px 25px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 53px,#edf1f5 54px)}.chart-column{flex:1;position:relative;height:100%;display:flex;align-items:flex-end}.chart-column i{width:100%;height:var(--h);background:linear-gradient(180deg,#1d87ff,#27cfae);border-radius:7px 7px 2px 2px;opacity:.85;transition:.3s}.chart-column:hover i{opacity:1;transform:scaleX(1.06)}.chart-column span{position:absolute;bottom:-20px;width:100%;text-align:center;font-size:8px;color:#8491a2}.appointment-list{display:flex;flex-direction:column;gap:9px}.appointment{display:grid;grid-template-columns:50px 36px 1fr auto;align-items:center;gap:9px;padding:9px;border-radius:10px;background:#f8fafc}.appointment time{font-size:10px;font-weight:800;color:var(--blue)}.avatar{width:34px;height:34px;border-radius:10px;background:var(--avatar,#dff5ff);display:grid;place-items:center;font-size:9px;font-weight:800;color:var(--navy)}.appointment b,.appointment small{display:block}.appointment b{font-size:10px}.appointment small{font-size:8px;color:#8491a2}.status{font-size:8px;padding:5px 7px;border-radius:9px;background:#eafbf5;color:#159472;font-weight:700}.status.wait{background:#fff5e8;color:#d5801c}.lower-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:16px}.progress-row{margin:14px 0}.progress-row div{display:flex;justify-content:space-between;font-size:9px;margin-bottom:6px}.progress-row i{display:block;height:6px;border-radius:5px;background:#edf1f5;overflow:hidden}.progress-row i::after{content:'';display:block;width:var(--w);height:100%;background:var(--c,var(--blue));border-radius:5px}.activity{display:flex;gap:10px;margin:14px 0}.activity>span{width:29px;height:29px;border-radius:9px;background:#eff6ff;color:var(--blue);display:grid;place-items:center;font-size:10px}.activity b,.activity small{display:block}.activity b{font-size:9px}.activity small{font-size:8px;color:#8491a2;margin-top:3px}.smart-card{background:linear-gradient(145deg,#0f3264,#0a887d);color:#fff;position:relative;overflow:hidden}.smart-card::after{content:'✦';position:absolute;font-size:110px;color:rgba(255,255,255,.06);right:10px;top:0}.smart-card .smart-label{font-size:9px;color:#65efd4;letter-spacing:1px}.smart-card h3{font-size:18px;margin:10px 0}.smart-card p{font-size:9px;color:#c5e2e3;line-height:1.6}.smart-card button{background:#fff;color:var(--navy);border-radius:8px;padding:8px 11px;font-size:9px;font-weight:800}.module-layout{display:grid;grid-template-columns:1fr;gap:16px}.toolbar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;display:flex;gap:9px;justify-content:space-between}.searchbox{height:40px;min-width:280px;border:1px solid var(--line);border-radius:10px;padding:0 13px}.filter-row{display:flex;gap:8px}.filter-row button{background:#f4f7fb;color:#607188;border-radius:9px;padding:0 13px;font-size:10px}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:9px;color:#8491a2;padding:11px;border-bottom:1px solid var(--line)}.data-table td{font-size:10px;padding:13px 11px;border-bottom:1px solid #eef2f6}.data-table tr:hover td{background:#f8fbff}.patient-name{display:flex;align-items:center;gap:9px}.patient-name b,.patient-name small{display:block}.patient-name small{color:#8795a7;margin-top:2px}.amount{font-weight:800;color:var(--navy)}.agenda-board{display:grid;grid-template-columns:75px repeat(5,1fr);background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.agenda-cell{min-height:62px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px;font-size:9px}.agenda-head{min-height:48px;text-align:center;font-weight:700;color:var(--navy);background:#f8fafc}.agenda-time{color:#8090a5;text-align:center}.event{border-radius:8px;background:#eaf3ff;border-left:3px solid var(--blue);padding:6px;color:#174b87}.event.green{background:#e9fbf5;border-color:var(--mint);color:#13715f}.event.coral{background:#fff0ed;border-color:var(--coral);color:#a1473e}.event b,.event small{display:block}.event small{font-size:7px;margin-top:2px}.odontogram{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;padding:20px}.tooth-item{text-align:center}.tooth-shape{height:54px;background:linear-gradient(#fff,#eaf7fa);border:2px solid #b7dce5;clip-path:polygon(16% 3%,36% 0,50% 8%,64% 0,84% 3%,96% 24%,86% 73%,69% 100%,52% 76%,48% 76%,31% 100%,14% 73%,4% 24%);cursor:pointer;transition:.2s}.tooth-item.alert .tooth-shape{background:#fff0ed;border-color:#ff8c80}.tooth-item.done .tooth-shape{background:#e5faf4;border-color:#2dccaa}.tooth-shape:hover{transform:translateY(-4px)}.tooth-item small{font-size:8px;color:#7d8ca1}.empty-state{text-align:center;padding:70px 20px}.empty-state .big-icon{font-size:45px;color:var(--blue)}.empty-state h3{margin:10px}.empty-state p{font-size:11px;color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;z-index:200;background:rgba(4,18,39,.66);backdrop-filter:blur(5px);display:grid;place-items:center}.modal-card{width:min(560px,calc(100% - 30px));background:#fff;border-radius:20px;padding:30px;position:relative;box-shadow:var(--shadow)}.modal-card h2{margin:7px 0}.modal-card>p{color:var(--muted);font-size:11px}.modal-close{position:absolute;right:17px;top:15px;background:#f1f4f8;border-radius:50%;width:32px;height:32px;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 13px;margin-top:22px}.form-grid .full{grid-column:1/-1}.modal-card>.btn{width:100%}.toast{position:fixed;z-index:300;right:25px;bottom:25px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:13px 18px;display:flex;align-items:center;gap:10px;transform:translateY(100px);opacity:0;transition:.35s}.toast.show{transform:none;opacity:1}.toast>span{width:32px;height:32px;border-radius:10px;background:#e6faf4;color:#149475;display:grid;place-items:center}.toast b,.toast p{display:block;margin:0}.toast b{font-size:10px}.toast p{font-size:8px;color:var(--muted);margin-top:3px}
@media(max-width:1050px){.hero{grid-template-columns:1fr;padding-top:20px}.hero-copy{text-align:center}.hero-copy>p{margin:auto}.hero-actions,.trust-row{justify-content:center}.product-visual{justify-content:center}.feature-strip{grid-template-columns:1fr 1fr;gap:25px}.login-view{grid-template-columns:1fr}.login-art{display:none}.login-panel{padding-top:145px}.portal-brand{top:45px}.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.lower-grid{grid-template-columns:1fr 1fr}.app{grid-template-columns:210px 1fr}}
@media(max-width:760px){.shell{width:min(100% - 28px,1200px)}.public-links{display:none}.hero h1{font-size:42px}.mini-window{width:680px;transform:scale(.76);margin-left:-60px;margin-right:-60px}.product-visual{min-height:400px}.floating-card{display:none}.feature-strip{grid-template-columns:1fr}.login-panel{padding:90px 28px 40px}.app{display:block}.sidebar{position:fixed;z-index:60;width:238px;left:-250px;transition:.3s}.sidebar.open{left:0}.mobile-menu{display:block}.clinic-status{display:none}.topbar{padding:0 14px}.quick-appointment{padding:0 12px}.view-container{padding:18px 14px}.metric-grid,.lower-grid{grid-template-columns:1fr}.view-head{align-items:flex-start}.date-chip{display:none}.toolbar{flex-direction:column}.searchbox{min-width:0;width:100%}.agenda-board{min-width:750px}.panel:has(.agenda-board){overflow:auto}.odontogram{grid-template-columns:repeat(4,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* Final Dentacore identity lockup: isolated symbol, single wordmark and protected spacing. */
.login-logo{display:block;width:260px;height:auto;object-fit:contain;object-position:left center;margin:0;flex:0 0 auto}
.portal-brand{top:42px;gap:26px;max-width:405px}
.portal-brand span{height:auto;min-height:38px;padding-left:22px;font-size:8px;line-height:1.45;white-space:nowrap}
.preview-top img{width:150px;filter:brightness(0) invert(1)}
.center-tooth{position:relative;font-size:0}
.center-tooth::before{content:'';width:42px;height:50px;border:4px solid #fff;border-radius:48% 48% 42% 42%/36% 36% 64% 64%;clip-path:polygon(0 0,100% 0,94% 73%,72% 100%,50% 72%,28% 100%,6% 73%);opacity:.96}
.center-tooth span{position:absolute;width:32px;height:4px;background:#fff;border-radius:4px;transform:rotate(-7deg)}
.center-tooth span::before,.center-tooth span::after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;top:-1.5px;background:#fff}
.center-tooth span::before{left:-2px}.center-tooth span::after{right:-2px}

/* Keep the login identity in normal document flow to prevent overlap at any viewport height. */
.portal-brand{position:static;top:auto;left:auto;margin:0 0 44px;max-width:none}
.login-copy h2{margin:0 0 9px}
@media(max-width:1050px){.login-panel{padding-top:52px}.portal-brand{margin-bottom:44px}}

/* High-value international modules */
.module-kicker{display:block;color:var(--blue);font-size:8px;font-weight:800;letter-spacing:1.3px;margin-bottom:5px}.ai-badge{font-size:7px!important;font-weight:800;color:#117e6c!important;background:#e9faf6!important;border-radius:12px;padding:6px 8px!important}.insight-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-top:16px}.forecast-panel{min-height:315px}.forecast-value strong,.forecast-value span{display:block}.forecast-value strong{font:800 34px Manrope;color:var(--navy)}.forecast-value span{font-size:9px;color:var(--muted);margin-top:4px}.forecast-chart{height:170px;display:flex;align-items:flex-end;gap:12px;margin-top:20px;padding:12px 8px 0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 41px,#edf1f5 42px);border-bottom:1px solid var(--line)}.forecast-chart i{flex:1;height:var(--x);min-height:30px;background:linear-gradient(180deg,#22cbaa,#1677ff);border-radius:7px 7px 0 0}.recommendation{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f5}.recommendation:last-child{border:0}.recommendation .priority{font-size:7px;text-align:center;padding:5px;border-radius:10px;background:#fff0ed;color:#b44f43;font-weight:800}.recommendation .priority.media{background:#fff6e8;color:#b47518}.recommendation .priority.baja{background:#e9faf5;color:#16856f}.recommendation b,.recommendation small{display:block}.recommendation b{font-size:9px}.recommendation small{font-size:8px;color:var(--muted);margin-top:3px}.recommendation button,.insight-card button,.soft-action{border:0;background:#f1f6fc;color:var(--blue);border-radius:8px;padding:7px 9px;font-size:8px;font-weight:700}.insight-card strong{display:block;font:700 18px Manrope;color:var(--navy);margin:15px 0 5px}.insight-card p{font-size:9px;color:var(--muted);line-height:1.5;min-height:28px}.insight-card button{padding-left:0;background:transparent}.imaging-layout{display:grid;grid-template-columns:1.5fr .75fr;gap:16px}.viewer-tools{display:flex;gap:5px}.viewer-tools button{width:30px;height:27px;background:#eef3f8;border-radius:7px;color:#607188;font-size:9px}.xray-stage{height:445px;border-radius:13px;background:radial-gradient(ellipse at center,#526272 0,#202b37 45%,#080d13 100%);position:relative;overflow:hidden;display:grid;place-items:center}.jaw{position:absolute;display:flex;gap:5px}.jaw.upper{top:82px}.jaw.lower{bottom:78px}.jaw i{display:block;width:45px;height:102px;background:linear-gradient(90deg,#84919a,#e3e7e8 43%,#87949d);border-radius:45% 45% 35% 35%;transform:rotate(var(--r));filter:blur(.35px);opacity:.76;box-shadow:inset 0 0 14px #5d6b73}.jaw.lower i{transform:rotate(var(--r)) scaleY(-1)}.finding{position:absolute;width:35px;height:35px;border:2px solid #ff7468;border-radius:50%;box-shadow:0 0 0 5px rgba(255,116,104,.12)}.finding.f1{left:37%;top:35%}.finding.f2{right:29%;bottom:31%;border-color:#5de2c8;box-shadow:0 0 0 5px rgba(93,226,200,.12)}.xray-label{position:absolute;bottom:12px;color:#91a0ac;font-size:7px;letter-spacing:1px}.clinical-warning{background:#fff8e9;color:#8d6a28;border-radius:9px;padding:10px;font-size:8px;line-height:1.5}.finding-row{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.finding-row>span{width:29px;height:29px;border-radius:9px;background:#eaf3ff;color:var(--blue);display:grid;place-items:center}.finding-row small,.finding-row b,.finding-row em{display:block}.finding-row small{font-size:7px;color:var(--blue)}.finding-row b{font-size:9px;margin:2px 0}.finding-row em{font-style:normal;font-size:7px;color:var(--muted)}.finding-row button{font-size:7px;color:var(--blue);background:#f1f6fc;border-radius:7px;padding:6px}.full-action{width:100%;margin-top:18px;height:39px;font-size:9px}.portal-module-grid{display:grid;grid-template-columns:360px 1fr;gap:32px;align-items:center}.phone-preview{width:320px;min-height:570px;margin:auto;background:#f8fafc;border:9px solid #0c2144;border-radius:42px;padding:34px 20px 20px;box-shadow:0 30px 65px rgba(10,31,68,.2);position:relative}.phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:105px;height:20px;background:#0c2144;border-radius:0 0 15px 15px}.patient-app-head{display:flex;gap:10px;align-items:center}.patient-app-head>span{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--mint));color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800}.patient-app-head small,.patient-app-head b{display:block}.patient-app-head small{font-size:8px;color:var(--muted)}.patient-app-head b{font-size:13px}.next-visit{margin-top:22px;padding:20px;border-radius:17px;background:linear-gradient(145deg,#0e356a,#0b8a7c);color:#fff}.next-visit small,.next-visit strong,.next-visit span{display:block}.next-visit small{font-size:7px;color:#66efd6;letter-spacing:1px}.next-visit strong{font:700 18px Manrope;margin:9px 0 3px}.next-visit span{font-size:8px;color:#c8e8e7}.next-visit button{width:100%;height:33px;background:#fff;color:var(--navy);border-radius:9px;margin-top:16px;font-size:8px;font-weight:800}.patient-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.patient-shortcuts i{height:65px;background:#fff;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;color:var(--blue);font-style:normal}.patient-shortcuts small{display:block;color:var(--muted);font-size:7px}.treatment-mini{padding:15px;background:#fff;border:1px solid var(--line);border-radius:13px}.treatment-mini b,.treatment-mini span{display:block}.treatment-mini b{font-size:10px}.treatment-mini span{font-size:8px;color:var(--muted);margin:5px 0 10px}.treatment-mini i{display:block;height:6px;border-radius:4px;background:linear-gradient(90deg,var(--mint) 65%,#e9eef4 65%)}.portal-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:15px}.capability{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;display:flex;gap:14px;min-height:170px}.capability>span{color:var(--blue);font:800 11px Manrope}.capability h3{font-size:14px;margin:0 0 8px}.capability p{font-size:9px;line-height:1.6;color:var(--muted)}.capability b{font-size:8px;color:#158b76;background:#e9faf5;border-radius:9px;padding:5px 7px}.equipment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:16px 0}.equipment-card{position:relative}.equipment-icon{width:40px;height:40px;border-radius:11px;background:#edf5ff;color:var(--blue);display:grid;place-items:center}.equipment-card>.status{position:absolute;right:16px;top:18px}.equipment-card h3{font-size:12px;margin:16px 0 3px}.equipment-card p,.equipment-card em{font-size:8px;color:var(--muted);font-style:normal}.equipment-card>div:nth-of-type(2){display:flex;justify-content:space-between;margin-top:18px;font-size:8px}.equipment-card>i{display:block;height:6px;background:linear-gradient(90deg,var(--mint) var(--health),#e9eef4 var(--health));border-radius:4px;margin:6px 0 12px}.soft-action{margin-top:12px}.quality-row{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.quality-row>span{width:27px;height:27px;border-radius:8px;background:#e8faf5;color:#188f77;display:grid;place-items:center}.quality-row b,.quality-row small{display:block}.quality-row b{font-size:9px}.quality-row small{font-size:8px;color:var(--muted);margin-top:3px}.quality-row strong{font-size:11px;color:var(--navy)}.panel-note{font-size:8px;line-height:1.5;color:var(--muted);background:#f6f9fc;padding:10px;border-radius:8px}.radar-intro{border-radius:18px;background:linear-gradient(135deg,#0c2d5a,#0a8478);color:#fff;padding:24px 28px;display:flex;justify-content:space-between;align-items:center}.radar-intro>div{display:grid;grid-template-columns:44px 1fr;column-gap:14px}.radar-intro>div>span{grid-row:1/3;width:44px;height:44px;border-radius:13px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:20px}.radar-intro h3{margin:0;font-size:17px}.radar-intro p{margin:4px 0 0;color:#c8e6e4;font-size:9px}.radar-intro .btn{background:#fff;color:var(--navy);box-shadow:none;height:38px;font-size:9px}.radar-filters{display:flex;gap:8px;margin:17px 0}.radar-filters button{background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px 13px;color:#65758b;font-size:8px}.radar-filters button.active{background:var(--navy);color:#fff}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.news-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--news-color);border-radius:15px;padding:19px;min-height:235px;display:flex;flex-direction:column}.news-top{display:flex;justify-content:space-between;align-items:center}.news-top span{font-size:7px;color:var(--news-color);font-weight:800;letter-spacing:1px}.news-top i{font-size:6px;font-style:normal;color:#1a927c;background:#e9faf5;padding:4px 5px;border-radius:7px}.news-card>small{font-size:8px;color:var(--muted);margin-top:25px}.news-card h3{font-size:14px;line-height:1.35;margin:7px 0}.news-card p{font-size:9px;color:var(--muted);line-height:1.55;flex:1}.news-card a{font-size:8px;color:var(--blue);font-weight:700}.radar-governance{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.radar-governance h3{margin:3px 0}.governance-points{display:flex;gap:15px;flex-wrap:wrap}.governance-points span{font-size:8px;color:#53657b}.governance-points span::first-letter{color:var(--mint)}
@media(max-width:1200px){.equipment-grid{grid-template-columns:1fr 1fr}.news-grid{grid-template-columns:1fr 1fr}.portal-module-grid{grid-template-columns:320px 1fr}.portal-capabilities{grid-template-columns:1fr}.insight-grid,.imaging-layout{grid-template-columns:1fr}}
@media(max-width:760px){.equipment-grid,.news-grid,.portal-module-grid{grid-template-columns:1fr}.portal-capabilities{grid-template-columns:1fr}.phone-preview{width:min(320px,100%)}.radar-intro,.radar-governance{align-items:flex-start;flex-direction:column;gap:18px}.radar-filters{overflow:auto}.governance-points{flex-direction:column}.xray-stage{height:340px}.jaw i{width:32px;height:76px}}

/* Clínica Raíces and expanded operations */
.clinic-brand.raices-brand-lockup{height:108px;justify-content:flex-start;gap:9px;padding:0 3px}.clinic-brand img.raices-sidebar-logo{width:70px;height:82px;object-fit:contain;flex:0 0 70px;filter:drop-shadow(0 4px 9px rgba(0,0,0,.42))}.raices-brand-copy{min-width:0;display:flex;flex-direction:column;justify-content:center}.raices-brand-copy strong{color:#fff;font:600 18px Manrope;letter-spacing:4px;line-height:1}.raices-brand-copy span{color:#58d7b0;font-size:7px;font-weight:700;letter-spacing:1.7px;margin-top:7px;white-space:nowrap}.raices-brand-lockup button{margin-left:auto;font-size:14px;padding:8px 2px}
.raices-intro-logo{width:310px;height:230px;filter:drop-shadow(0 12px 28px rgba(0,0,0,.3))}.app{grid-template-columns:250px 1fr}.clinic-brand{height:96px}.clinic-brand img.raices-sidebar-logo{width:178px;height:82px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}.agenda-toolbar{align-items:center}.agenda-toolbar .filter-row{flex-wrap:wrap;justify-content:flex-end}.agenda-toolbar select{height:40px;border:1px solid var(--line);border-radius:9px;padding:0 10px;background:#f4f7fb;color:#607188;font-size:10px}.active-filter{background:#e8f6f1!important;color:#007a5c!important;box-shadow:inset 0 0 0 1px #78c7ae}.agenda-board{grid-template-columns:68px repeat(7,minmax(105px,1fr));min-width:1040px}.agenda-cell{min-height:31px;padding:5px}.agenda-head{min-height:42px;padding-top:13px}.agenda-time{font-size:8px}.event{position:relative;z-index:2;min-height:36px;padding:5px}.table-scroll{overflow:auto}
.clinic-brand.raices-brand-lockup img.raices-sidebar-logo{width:70px;height:82px;flex-basis:70px}.clinic-brand.raices-brand-lockup{height:108px}

/* Dentacore rebrand: platform identity outside, hosted clinic identity inside. */
.platform-logo{width:230px;height:64px;object-fit:contain}
.login-logo{width:290px;height:88px}
.preview-top img{width:172px;filter:none}
.brand-intro{
  background:
    radial-gradient(circle at 50% 42%,rgba(30,196,158,.22),transparent 28%),
    radial-gradient(circle at 50% 52%,rgba(180,190,195,.18),transparent 42%),
    linear-gradient(145deg,#061629,#0B1D3A 58%,#073D38);
}
.brand-intro::before{
  content:'';
  position:absolute;
  inset:12%;
  border:1px solid rgba(97,225,194,.16);
  border-radius:42px;
  box-shadow:0 0 80px rgba(30,196,158,.12);
}
.brand-intro .smart-tooth{display:none}
.brand-intro .intro-logo{
  position:relative;
  z-index:1;
  opacity:0;
  transform:translateY(22px) scale(.94);
}
.brand-intro.is-playing .intro-logo{animation:logoReveal .7s .18s cubic-bezier(.2,.9,.25,1.1) forwards}
.brand-intro>p{
  position:relative;
  z-index:1;
  margin-top:-16px;
  color:#d7f7ee;
}
.brand-intro.is-playing>p{animation:logoReveal .5s .58s forwards}
.brand-intro .intro-loader{position:relative;z-index:1;margin-top:20px}
.brand-intro.is-playing .intro-loader{animation:logoReveal .28s .72s forwards}
.brand-intro .intro-loader i{animation:load .95s .76s ease forwards;background:linear-gradient(90deg,#B9C4CB,#23D1AA)}

/* Dentacore clinical operations */
.form-grid textarea{width:100%;min-height:105px;border:1px solid #dfe6ef;border-radius:11px;padding:12px 14px;margin-top:7px;outline:none;background:#fff;resize:vertical}.form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,119,255,.09)}
.inline-select{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:800;color:#40516a}.inline-select select{height:40px;min-width:260px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#fff;color:#40516a}.clinical-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}.clinical-toolbar>button:not(.btn){height:40px;border-radius:10px;background:#f3f7fc;color:var(--blue);font-size:10px;font-weight:800;padding:0 12px}.clinical-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:16px}.hint{font-size:8px;color:#708095;background:#f3f7fc;padding:7px 9px;border-radius:9px}.sep{border:0;border-top:1px solid var(--line);margin:16px 0}.mini-title{font-size:12px;margin:0 0 8px}.patient-profile{display:flex;gap:13px;align-items:center}.avatar.big{width:48px;height:48px;font-size:12px;border-radius:15px}.patient-profile h3{margin:0;font-size:16px}.patient-profile p{margin:3px 0;color:var(--muted);font-size:9px}.patient-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.patient-facts span{background:#f7f9fc;border:1px solid #edf1f5;border-radius:11px;padding:10px;font-size:9px;color:#52647b}.patient-facts b{display:block;color:var(--navy);font-size:8px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.6px}
.odontogram.pro{grid-template-columns:repeat(16,minmax(38px,1fr));gap:9px;background:linear-gradient(180deg,#fbfdff,#f4f8fb);border-radius:14px}.odontogram.pro .tooth-item{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:74px}.clinical-tooth{position:relative;display:block;width:34px;height:48px;background:linear-gradient(150deg,#fff,#e6f4f6 70%,#c7dfe5);border:2px solid #9ac7d1;box-shadow:inset -5px -8px 10px rgba(17,77,99,.12),0 7px 12px rgba(10,31,68,.08);transition:.18s}.clinical-tooth.incisor{border-radius:44% 44% 38% 38%;clip-path:polygon(12% 3%,88% 3%,96% 52%,70% 100%,54% 78%,46% 78%,30% 100%,4% 52%)}.clinical-tooth.premolar{width:38px;border-radius:46% 46% 33% 33%;clip-path:polygon(8% 6%,36% 0,50% 9%,64% 0,92% 6%,98% 54%,73% 100%,52% 76%,48% 76%,27% 100%,2% 54%)}.clinical-tooth.molar{width:44px;border-radius:42% 42% 28% 28%;clip-path:polygon(5% 8%,26% 0,40% 9%,52% 0,66% 9%,80% 0,95% 8%,98% 52%,78% 100%,58% 76%,50% 100%,42% 76%,22% 100%,2% 52%)}.tooth-item:hover .clinical-tooth{transform:translateY(-5px) scale(1.04)}.tooth-item.alert .clinical-tooth,.clinical-tooth.alert{background:linear-gradient(150deg,#fff,#ffe4df);border-color:#ff8175}.tooth-item.watch .clinical-tooth,.clinical-tooth.watch{background:linear-gradient(150deg,#fff,#fff1ce);border-color:#e4aa3d}.tooth-item.done .clinical-tooth,.clinical-tooth.done{background:linear-gradient(150deg,#fff,#dff8ef);border-color:#2dccaa}.tooth-item small{font-size:8px;color:#52647b;font-weight:800}.tooth-modal-preview{display:grid;place-items:center;padding:10px 0 18px}.tooth-modal-preview .clinical-tooth{width:68px;height:88px}
.treatment-board{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:15px}.treatment-card p{font-size:9px;color:var(--muted);margin:6px 0 16px}.treatment-footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.treatment-footer strong{font:800 18px Manrope;color:var(--navy)}.treatment-footer button,.mini-btn{background:#f1f6fc;color:var(--blue);border-radius:8px;padding:7px 9px;font-size:8px;font-weight:800;margin:2px}.sales-layout{display:grid;grid-template-columns:1.35fr .85fr;gap:16px}.service-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.service-picker button{text-align:left;background:#f7fafc;border:1px solid var(--line);border-radius:12px;padding:11px;color:var(--navy);transition:.2s}.service-picker button:hover{transform:translateY(-2px);border-color:#b8d7ff;box-shadow:0 10px 20px rgba(10,31,68,.08)}.service-picker b,.service-picker span{display:block}.service-picker b{font-size:9px}.service-picker span{font-size:8px;color:var(--muted);margin-top:5px}.sale-lines{background:#fbfdff;border:1px solid var(--line);border-radius:13px;padding:14px}.sale-lines h4{font-size:11px;margin:0 0 10px}.sale-line,.sale-total{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #edf1f5;font-size:9px}.sale-line button{background:#fff1ed;color:#b44f43;border-radius:8px;padding:6px 8px;font-size:8px}.sale-total{grid-template-columns:1fr auto;border:0}.sale-total.strong{font-size:13px;color:var(--navy);font-weight:800}.empty-copy,.modal-copy{font-size:10px;color:var(--muted);line-height:1.5}.compact td{padding:10px 7px}.notification-list{display:flex;flex-direction:column;gap:10px}.notification-row{border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8fbff}.notification-row b,.notification-row p{display:block;margin:0}.notification-row p{font-size:9px;color:var(--muted);margin:5px 0 10px}.notification-row button{background:#fff;color:var(--blue);border-radius:8px;padding:7px 9px;font-size:8px;font-weight:800}.modal-card .btn{margin-top:12px}
@media(max-width:1200px){.clinical-grid,.sales-layout{grid-template-columns:1fr}.treatment-board{grid-template-columns:1fr 1fr}.service-picker{grid-template-columns:1fr 1fr}.odontogram.pro{grid-template-columns:repeat(8,1fr)}}
@media(max-width:760px){.clinical-toolbar{flex-direction:column;align-items:stretch}.inline-select select{min-width:0;width:100%}.patient-facts,.treatment-board,.service-picker{grid-template-columns:1fr}.odontogram.pro{grid-template-columns:repeat(4,1fr)}}

/* Raices contrast pass: brighter clinic transition and clearer hosted-clinic menu. */
.brand-intro{
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.96) 0,rgba(245,253,249,.92) 23%,transparent 45%),
    radial-gradient(circle at 20% 18%,rgba(53,214,170,.16),transparent 32%),
    radial-gradient(circle at 82% 78%,rgba(126,143,149,.14),transparent 34%),
    linear-gradient(145deg,#eef8f4 0,#f9fcfb 45%,#e1f2ec 100%);
  color:#0b332b;
}
.brand-intro::before{
  inset:18%;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(22,112,91,.16);
  box-shadow:0 28px 95px rgba(11,51,43,.16),inset 0 1px 0 rgba(255,255,255,.9);
}
.brand-intro::after{
  content:'';
  position:absolute;
  width:min(440px,70vw);
  height:min(440px,70vw);
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.86),rgba(255,255,255,.34) 52%,transparent 72%);
  box-shadow:0 18px 70px rgba(11,51,43,.14);
}
.brand-intro .intro-logo{
  z-index:2;
  width:335px;
  height:245px;
  padding:18px;
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(247,252,250,.78));
  box-shadow:0 22px 65px rgba(10,47,39,.18),0 0 0 1px rgba(18,118,94,.08);
  filter:drop-shadow(0 11px 24px rgba(0,0,0,.16));
}
.brand-intro>p{
  z-index:2;
  color:#0b5d4b;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(22,112,91,.12);
  border-radius:999px;
  padding:8px 16px;
  margin-top:-10px;
}
.brand-intro .intro-loader{
  z-index:2;
  background:rgba(11,93,75,.14);
}
.brand-intro .intro-loader i{
  background:linear-gradient(90deg,#708089,#0f7a61,#26c59d);
}
.sidebar{
  background:
    radial-gradient(circle at 28% 0,rgba(47,211,169,.18),transparent 28%),
    linear-gradient(180deg,#07382f 0,#082c2a 42%,#081f2b 100%);
  box-shadow:inset -1px 0 rgba(255,255,255,.06);
}
.clinic-brand.raices-brand-lockup{
  margin:12px 0 10px;
  height:118px;
  padding:14px 12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(235,248,243,.88));
  box-shadow:0 16px 35px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.92);
}
.clinic-brand.raices-brand-lockup img.raices-sidebar-logo{
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.16));
}
.raices-brand-copy strong{
  color:#07382f;
}
.raices-brand-copy span{
  color:#0a8a69;
}
.raices-brand-lockup button{
  color:#0a6f5a;
}
.app-nav p{
  color:#82b7aa;
}
.app-nav button{
  color:#d6e8e4;
}
.app-nav button:hover,.app-nav button.active{
  background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(43,214,170,.12));
  color:#fff;
}
.app-nav button.active{
  box-shadow:inset 3px 0 #35d6aa;
}
.sidebar-user{
  border-top:1px solid rgba(255,255,255,.12);
}
.sidebar-user small,.sidebar-user button{
  color:#9ec8bd;
}
