/* Shared visual language with the Dr. Toloza homepage; model colors retain their clinical meaning. */
:root{--bg:#f7f8fb;--panel:#f7f8fb;--card:#fff;--line:#dce1ec;--ink:#16162b;--ink2:#525a6a;--ink3:#626e84;--teal:#374e7b;--teal-soft:#e8edf6}
body,button,h1,h2,h3,.ui,.tile .t,.blocklabel span{font-family:Arial,Helvetica,sans-serif}
body{line-height:1.65}a{text-decoration:none}a:hover{color:#617ba9}a:focus-visible,button:focus-visible{outline:3px solid #617ba9;outline-offset:4px}
.app{height:auto;min-height:100svh;overflow:visible}
.site-header{height:92px;padding:0 5%;gap:24px;background:#16162b;color:#fff;border-bottom:1px solid #ffffff16;flex-wrap:nowrap}
.brand img{display:block;width:250px;max-width:100%;height:auto}
.site-links{display:flex;gap:27px;padding:0;background:none;border-radius:0;overflow:visible;width:auto;font-size:14px}
.site-links a{color:#fff;white-space:nowrap}.site-links a:hover{color:#a0b2d5}
.appointment{padding:12px 18px;border:1px solid #a0b2d570;border-radius:3px;color:#fff;font-size:14px;white-space:nowrap}.appointment:hover{background:#303955;color:#fff}
.guide-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:28px 5% 32px;background:#16162b;color:#fff}
.back-link{display:inline-block;font-size:12px;color:#c4cddd;margin-bottom:18px}.guide-intro .eyebrow{font-size:10px;letter-spacing:2px;color:#bdcce8;margin:0 0 12px;font-weight:600}
.guide-intro h1{font-size:clamp(36px,4vw,60px);font-weight:400;letter-spacing:-2px;line-height:1.08;margin:0}.guide-intro h1 em{font-family:Georgia,serif;font-weight:400;color:#a0b2d5}.guide-subtitle{font-size:14px;color:#c4cddd;margin:12px 0 0}
#nav{background:#ffffff08;border:1px solid #a0b2d540;border-radius:4px;padding:4px;max-width:100%;width:auto}#nav button{border-radius:3px;font-size:13px;font-weight:500;color:#dce6f8;padding:0 15px}#nav button[aria-pressed=true]{background:#a0b2d5;color:#16162b}
main{max-width:1600px;width:100%;margin:0 auto;padding:32px 5% 48px;gap:32px;align-items:flex-start}
.stage{position:sticky;top:24px;height:min(680px,76svh);margin:0;border-radius:6px;background:radial-gradient(ellipse at 50% 35%,#fff,#e8edf6 70%,#dce1ec);border:1px solid var(--line);box-shadow:none}
aside{width:min(450px,37%);height:auto;overflow:visible;padding:0}
.panel h1,.panel h2{font-weight:400;letter-spacing:-1px;line-height:1.2}.panel h1{font-size:36px}.panel h2{font-size:30px}.panel h3{font-weight:500}.panel p{font-size:16px;line-height:1.75}.panel ul{font-size:15px;line-height:1.65}.panel .src{font-size:12px;color:var(--ink3)}.src a{text-decoration:underline;text-underline-offset:3px}.eyebrow{font-size:11px;letter-spacing:1.8px;color:#627797;font-weight:600}
.tile,.box,.tbl{border-radius:6px;border-color:var(--line)}.tile{background:#eef0f4;padding:18px}.tile .t{font-weight:500}.tile .d{color:var(--ink2);line-height:1.6}.box{padding:20px}
.btn{border-radius:3px;background:#16162b;font-size:15px;font-weight:500;min-height:52px;height:auto;padding:14px 18px}.btn:hover{background:#303955}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
.steps button{border-radius:50%;border:1px solid #c8cfdc;font-size:13px;font-weight:500}.steps button.done{background:#e8edf6;border-color:#a0b2d5}.steps button[aria-current=step]{background:#23314d;border-color:#23314d}
.track,.bar .t{background:#e5e8ee}.track i,.bar .t i{background:#617ba9}.note{border-radius:4px;background:#e8edf6;color:#374e7b;border-left:2px solid #a0b2d5}
.seg{border-radius:4px;background:#e8edf6}.seg button{border-radius:3px;font-size:14px;font-weight:500;color:var(--ink2)}.parts button,.toggle{border-radius:4px;border:1px solid var(--line);font-weight:500;font-size:15px}.parts button[aria-pressed=true]{border-color:#617ba9}.toggle[aria-pressed=true]{background:#23314d;border-color:#23314d}
.tbl .row{border-color:var(--line)}.tbl .row.head{background:#eef0f4;color:var(--ink2)}
.chip,.hint,.icon-btn,.card,.overlay div{background:#f7f8fbf2;border:1px solid #dce1ec}.chip,.hint,.card,.overlay div{border-radius:4px}.chip{font-size:11px}.hint{font-size:12px;max-width:calc(100% - 90px);height:auto;min-height:42px;padding:8px 12px}.card{box-shadow:0 14px 36px #16162b20}.pin .lbl{background:#16162bed;font-size:13px;font-weight:500;border-radius:4px}.pin.coral .lbl{background:var(--coral)}.blocklabel span{font-weight:500}
@media(max-width:1100px){.site-header{gap:16px}.brand img{width:210px}.site-links{gap:16px;font-size:12px}.appointment{font-size:12px;padding:10px 12px}.guide-intro{align-items:flex-start;flex-direction:column;gap:22px}}
@media(max-width:1023px){main{flex-direction:column;padding:24px 5% 40px;gap:24px}.stage{width:100%;height:min(56svh,440px);top:0;z-index:5}aside{width:100%;padding:0}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.site-header{height:auto;min-height:78px;padding:18px 6%;flex-wrap:wrap;gap:18px}.brand img{width:210px}.site-links{order:3;width:100%;overflow-x:auto;gap:22px;font-size:12px}.appointment{margin-left:auto}.guide-intro{padding:26px 6%}.guide-intro h1{font-size:42px}.guide-intro #nav{width:100%}#nav button{font-size:12px;padding:0 12px;flex-shrink:0}.guide-subtitle{font-size:13px}.back-link{margin-bottom:16px}main{padding:20px 6% 35px}.panel h1{font-size:30px}.panel h2{font-size:27px}.grid2{grid-template-columns:1fr}.stage{height:min(52svh,400px)}.hint{font-size:11px}.chip{max-width:calc(100% - 32px)}.pin .lbl{font-size:12px}}
@media(max-width:420px){.appointment{font-size:11px;padding:9px}.brand img{width:180px}.site-header{gap:12px}.site-links{gap:19px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
