:root{--font-head: "Space Grotesk", system-ui, sans-serif;--font-body: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--bg: #f7f8fb;--surface: #ffffff;--border: #e6e9f0;--text: #0d1220;--muted: #4a5468;--muted-2: #7c8598;--primary: #2f5bff;--primary-600: #1f45db;--primary-ink: #ffffff;--accent: #eef2ff;--danger: #d64545;--ok: #1f9d6b;--warn: #b7791f;--radius: 18px;--radius-lg: 28px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(13, 18, 32, .04), 0 2px 8px rgba(13, 18, 32, .05);--shadow-md: 0 8px 30px rgba(13, 18, 32, .08);--shadow-accent: 0 6px 18px rgba(47, 91, 255, .28)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);font-size:16px;background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-600)}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.01em}h1{font-size:1.6rem;font-weight:600;margin:0 0 .25rem}h2{font-size:1.1rem;font-weight:600;margin:0 0 .75rem}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--danger);font-size:.9rem}.brand{display:flex;align-items:center;gap:.5rem;font-family:var(--font-head);font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--text)}.brand-dot{width:9px;height:9px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--accent)}.login-screen{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(60% 50% at 50% 0%,var(--accent),transparent 70%),var(--bg)}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:2.5rem 2rem;max-width:400px;width:100%;text-align:center}.login-card .brand{justify-content:center;font-size:1.6rem;margin-bottom:.75rem}.tagline{font-family:var(--font-head);font-weight:600;color:var(--primary);margin:0 0 .5rem}:root{--topbar-h: 57px}.topbar{display:flex;align-items:center;gap:1rem;min-height:var(--topbar-h);padding:.7rem clamp(16px,5vw,40px);background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}.nav-toggle{display:none;background:none;border:1px solid var(--border);border-radius:10px;font-size:1.1rem;line-height:1;padding:.35rem .6rem;cursor:pointer;color:var(--text)}.user{display:flex;align-items:center;gap:.75rem;margin-left:auto}.user-name{font-size:.9rem;color:var(--muted)}.profile-select{padding:.35rem .55rem;border-radius:999px;font-size:.85rem;max-width:160px}.tag{display:inline-block;margin-left:.4rem;padding:.05rem .5rem;border-radius:999px;background:var(--accent);color:var(--primary);font-size:.7rem;font-weight:600;vertical-align:middle}.shell{display:flex;align-items:flex-start}.sidebar{flex:0 0 220px;position:sticky;top:var(--topbar-h);align-self:flex-start;height:calc(100vh - var(--topbar-h));overflow-y:auto;border-right:1px solid var(--border);background:var(--surface);padding:1rem .75rem 2rem}.sidebar-nav{display:flex;flex-direction:column}.nav-group{margin-bottom:1.1rem}.nav-group-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3, var(--muted));padding:.25rem .7rem;font-weight:700}.sidebar-nav a{display:block;padding:.5rem .7rem;border-radius:10px;color:var(--text);font-weight:500;font-size:.95rem}.sidebar-nav a:hover{background:var(--accent)}.sidebar-nav a.active{color:var(--primary);background:var(--accent);font-weight:600}.sidebar-scrim{display:none}.content{flex:1;min-width:0;max-width:1040px;margin:0 auto;padding:1.75rem clamp(16px,5vw,40px) 3rem}@media(max-width:900px){.nav-toggle{display:inline-flex;align-items:center}.sidebar{position:fixed;top:0;left:0;height:100vh;z-index:40;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-md);padding-top:1.25rem}.sidebar.open{transform:translate(0)}.sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0d122059;z-index:38}.content{margin:0}}.page-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.back{display:inline-block;margin-bottom:.5rem;font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.25rem;margin-top:1rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-top:1rem}.stat{text-align:center;display:block;color:inherit;transition:transform .15s ease,box-shadow .15s ease}.stat:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-value{font-family:var(--font-head);font-size:2.1rem;font-weight:700;color:var(--primary);letter-spacing:-.02em}.stat-label{color:var(--muted);font-size:.9rem}.list{list-style:none;margin:0;padding:0}.list li{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.list li:last-child{border-bottom:none}.list li .muted{margin-left:auto}.other-exam-content{flex:1 1 28rem;min-width:0}.other-exam-summary{display:flex;align-items:flex-start;gap:.5rem;max-width:72ch;margin:.45rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.other-exam-summary .badge{flex:0 0 auto;margin-top:.05rem}.table{width:100%;border-collapse:collapse;font-size:.92rem}.table th{text-align:left;color:var(--muted);font-weight:500;font-size:.8rem;padding:.4rem .5rem;border-bottom:1px solid var(--border)}.table td{padding:.55rem .5rem;border-bottom:1px solid var(--border)}.table tr:last-child td{border-bottom:none}.row-actions{display:flex;gap:.25rem;justify-content:flex-end}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.75rem;background:var(--accent);color:var(--primary)}.state-extraido{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.state-confirmado{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.state-invalido{background:color-mix(in srgb,var(--danger) 18%,transparent);color:var(--danger)}.btn{font-family:var(--font-body);font-size:.92rem;border:1px solid transparent;border-radius:var(--radius-pill);padding:.5rem 1.1rem;cursor:pointer;font-weight:600;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn-primary{background:var(--primary);color:var(--primary-ink);box-shadow:var(--shadow-accent)}.btn-primary:hover{background:var(--primary-600);transform:translateY(-1px)}.btn-primary:disabled{opacity:.55;cursor:default;transform:none}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn-ghost:hover{background:var(--accent);border-color:var(--primary);color:var(--primary)}.btn-ghost.danger{color:var(--danger)}.btn-ghost.danger:hover{border-color:var(--danger);color:var(--danger)}.form,.form-inline{display:flex;flex-direction:column;gap:.75rem}.form label,.form-inline label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--muted)}.form-row{display:flex;gap:.5rem;flex-wrap:wrap}.form-row input{flex:1;min-width:120px}input,select{font:inherit;padding:.5rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--accent)}.inline-select{padding:.3rem .5rem;border-radius:8px;font-size:.9rem}.checkbox{flex-direction:row!important;align-items:center;gap:.5rem!important}.upload{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.small{font-size:.8rem}.seg{display:inline-flex;gap:.25rem;background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:.2rem;margin-bottom:1rem}.seg-btn{font:inherit;border:none;background:transparent;color:var(--muted);padding:.3rem .7rem;border-radius:7px;cursor:pointer}.seg-btn.active{background:var(--surface);color:var(--primary);font-weight:600}.trend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.trend-card{border:1px solid var(--border);border-radius:10px;padding:.75rem}.trend-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.trend-avg{font-size:1.15rem;font-weight:700}.timeline{display:flex;flex-direction:column;gap:.5rem}.tl-band{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:.75rem}.tl-band-head{display:flex;flex-direction:column}.tl-band-label{font-size:.85rem;font-weight:600}.tl-band-meta{font-size:.7rem;color:var(--muted)}.tl-plot{background:var(--bg);border-radius:6px;overflow:hidden}.tl-svg{display:block;width:100%;height:56px}.tl-empty{color:var(--muted);font-size:.75rem;padding:.75rem;text-align:center}.tl-axis{grid-column:2;margin-left:calc(120px + .75rem);position:relative}.tl-axis-svg{height:6px;color:var(--muted)}.tl-axis-labels{position:relative;height:1rem}.tl-axis-labels span{position:absolute;transform:translate(-50%);font-size:.68rem;color:var(--muted)}.tl-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;font-size:.75rem;color:var(--muted)}.tl-legend-item{display:inline-flex;align-items:center;gap:.3rem}.tl-legend-dot{width:10px;height:10px;border-radius:3px}.stage-bars{display:flex;flex-direction:column;gap:.5rem}.stage-row{display:grid;grid-template-columns:80px 1fr 64px;align-items:center;gap:.5rem}.stage-name{font-size:.85rem}.stage-track{background:var(--bg);border-radius:5px;height:12px;overflow:hidden}.stage-fill{display:block;height:100%;border-radius:5px}.stage-val{text-align:right;font-size:.8rem}.stage-awake{background:#f4a259}.stage-rem{background:#8b5cf6}.stage-light{background:#60a5fa}.stage-deep{background:#1f45db}.stage-unknown{background:#cbd5e1}@media(max-width:560px){.tl-band{grid-template-columns:88px 1fr;gap:.5rem}.tl-axis{margin-left:calc(88px + .5rem)}}.head-actions{display:flex;gap:.5rem;flex-wrap:wrap}.bulk-table input{width:100%;min-width:70px}.bulk-table td{padding:.25rem}.bulk-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.marker-picker{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--muted);max-width:320px}.marker-description{margin-top:.5rem}.marker-chart-wrap{margin-top:1rem;overflow-x:auto}.marker-chart{width:100%;min-width:420px;height:auto;color:var(--text)}.mc-tick{font-size:11px;fill:var(--muted)}.mc-value{font-size:11px;fill:var(--text);text-anchor:middle;font-weight:600}.marker-list{display:flex;flex-direction:column}.marker-row{display:grid;grid-template-columns:1fr auto 120px;align-items:center;gap:1rem;padding:.6rem .25rem;border-bottom:1px solid var(--border);color:inherit}.marker-row:last-child{border-bottom:none}.marker-row:hover{text-decoration:none;background:var(--accent);border-radius:8px}.marker-info{display:flex;flex-direction:column}.marker-name{font-weight:500}.marker-ref{font-size:.75rem}.marker-value{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}.marker-num{font-weight:600;white-space:nowrap}.marker-spark{width:120px}.status-faixa{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.status-acima,.status-abaixo{background:color-mix(in srgb,var(--warn) 20%,transparent);color:var(--warn)}@media(max-width:560px){.marker-row{grid-template-columns:1fr auto}.marker-spark{display:none}}.print-view{max-width:720px;margin:0 auto;padding:1.5rem}.print-actions{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:1.5rem}.print-sheet{background:#fff;color:#111;border:1px solid var(--border);border-radius:var(--radius-card, 18px);padding:2rem}.print-sheet h1{margin:0 0 .25rem;font-family:var(--font-heading, "Space Grotesk", sans-serif)}.print-table{width:100%;border-collapse:collapse;margin-top:1.5rem}.print-table th,.print-table td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid #ddd}.print-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:#555}.print-disclaimer{margin-top:2rem;font-size:.8rem;color:#666}.readonly-banner{background:#fff7ed;color:#9a3412;border-bottom:1px solid #fed7aa;padding:.6rem var(--edge, 1.5rem);font-size:.9rem;text-align:center}p.danger,.muted.danger{color:#b91c1c}.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .5rem}.chip{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:.4rem;padding:.35rem .7rem;border:1px solid var(--border);border-radius:999px;cursor:pointer}.chip input{width:auto;padding:0}.copy-row{display:flex;gap:.5rem;align-items:center}.copy-row input{flex:1}.card.highlight{border-color:var(--primary, #2f5bff)}.shared-screen{min-height:100vh;background:var(--bg, #f7f8fb);padding:1.5rem 1rem}.shared-card{max-width:440px;margin:4rem auto;background:var(--surface, #fff);border:1px solid var(--border);border-radius:18px;padding:2rem;text-align:center}.consultation section{margin-top:1.75rem}.consultation h2{font-size:1rem;margin:0 0 .6rem;padding-bottom:.3rem;border-bottom:1px solid #e6e9f0}.consult-head h1{margin-bottom:.1rem}.consult-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:.75rem}.consult-stats>div{display:flex;flex-direction:column}.consult-stats span{font-size:.75rem}.consult-stats strong{font-size:1.1rem}.consult-spark{max-width:260px}.consult-spark span{display:block;font-size:.75rem;margin-bottom:.2rem}.print-table td.flag{font-weight:600}.doc-list{list-style:none;padding:0;margin:0}.doc-list li{padding:.35rem 0;border-bottom:1px solid #eee}.linklike{background:none;border:none;padding:0;color:var(--primary, #2f5bff);cursor:pointer;font:inherit;text-decoration:underline}.print-only{display:none}@media print{.topbar,.no-print{display:none!important}.print-only{display:inline!important}.content{padding:0}.print-sheet{border:none;padding:0}}.eyebrow{margin:0 0 .35rem;color:var(--primary);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mammography-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-bottom:1.25rem}.mammography-summary-card{display:grid;gap:.35rem;min-height:106px}.mammography-summary-card span{color:var(--muted);font-size:.82rem}.mammography-summary-card strong{color:var(--text);font-size:1.35rem}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:1rem}.section-heading h2,.section-heading p{margin-bottom:0}.mammography-form{display:grid;gap:1rem;margin-bottom:1.5rem;border-top:3px solid #b9577a}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mammography-form label{display:grid;gap:.4rem;color:var(--text);font-size:.86rem;font-weight:600}.mammography-form textarea{min-height:78px;resize:vertical;font:inherit;padding:.65rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}.mammography-form textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--accent)}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.mammography-list{display:grid;gap:.85rem}.mammography-record{display:grid;grid-template-columns:160px minmax(0,1fr);padding:0;overflow:hidden}.mammography-record-date{display:grid;align-content:center;gap:.3rem;padding:1.25rem;background:#f8edf1;border-right:1px solid var(--border)}.mammography-record-date span{color:#8a4660;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mammography-record-date strong{font-size:1.05rem}.mammography-record-body{padding:1.15rem 1.25rem}.mammography-record-body p{margin:.45rem 0}.mammography-record-head{display:flex;align-items:start;justify-content:space-between;gap:1rem}.mammography-record-head h3,.mammography-record-head p{margin:0}.mammography-birads{flex:0 0 auto;color:#7d3551;background:#f8e2ea}.mammography-record-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.mammography-empty{display:flex;align-items:center;gap:1rem;min-height:150px}.mammography-empty h2,.mammography-empty p{margin:.15rem 0}.mammography-empty-mark{display:grid;flex:0 0 54px;width:54px;height:54px;place-items:center;color:#8a4660;background:#f8e2ea;border-radius:50%;font-size:1.25rem;font-weight:700}@media(max-width:900px){.mammography-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.mammography-summary,.form-grid,.mammography-record{grid-template-columns:1fr}.mammography-record-date{border-right:0;border-bottom:1px solid var(--border)}.mammography-record-head,.form-actions{align-items:stretch;flex-direction:column}}
