/* ══════════════════════════════════════════════════════════════════════
   awv-worksheet.css — styles for the Annual Wellness Visit worksheet tool.

   Extracted from the standalone tool and scoped entirely under .awv-tool so
   the app's dark-glass palette cannot leak into, or be overwritten by, the
   site's own custom properties in styles.css. Do not remove the scope.

   Served immutable; the reference is hashed by tools/stamp-assets.py.
   ══════════════════════════════════════════════════════════════════════ */

.awv-tool{--ink:#0a0e12;--glass:rgba(255,255,255,.045);--line:rgba(255,255,255,.10);--text:#e7ecf1;--dim:#96a3b0;--faint:#67757f;--accent:#7fd7c4;--deep:#3f9f8c;--warn:#e0b877;
--sans:system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--serif:Georgia,'Iowan Old Style','Times New Roman',serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.awv-tool *{box-sizing:border-box}
.awv-tool{margin:0;background:radial-gradient(1100px 700px at 10% -8%,rgba(63,159,140,.13),transparent 60%),radial-gradient(900px 600px at 92% 2%,rgba(80,120,190,.10),transparent 60%),var(--ink);color:var(--text);font-family:var(--sans);font-weight:300;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
.awv-tool .shell{max-width:1440px;margin:0 auto;padding:20px 18px 80px}
.awv-tool h1{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.8vw,32px);margin:0 0 6px;line-height:1.1}
.awv-tool h2{font-family:var(--serif);font-weight:400;font-size:19px;margin:0}
.awv-tool .eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:9px}
.awv-tool .sub{color:var(--dim);max-width:78ch;margin:0 0 12px;font-size:14px}
.awv-tool header{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:14px}
.awv-tool .bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:10px;padding:8px 12px;margin-bottom:12px;font-size:12.5px;color:var(--dim)}
.awv-tool .bar strong{color:var(--text);font-weight:500}
.awv-tool .tabs{display:flex;gap:4px;margin-bottom:14px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.awv-tool .tabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--dim);font-size:14px;padding:9px 14px;cursor:pointer;font-family:var(--sans)}
.awv-tool .tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}
.awv-tool .grid{display:grid;grid-template-columns:1fr 420px;gap:20px;align-items:start}
.awv-tool .card{background:var(--glass);border:1px solid var(--line);border-radius:12px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:16px 18px;margin-bottom:12px}
.awv-tool .sec{background:var(--glass);border:1px solid var(--line);border-radius:12px;margin-bottom:9px;overflow:hidden}
.awv-tool .sec.open{border-color:rgba(127,215,196,.35)}
.awv-tool .sech{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;user-select:none}
.awv-tool .sech:hover{background:rgba(255,255,255,.03)}
.awv-tool .sech .tw{font-family:var(--mono);font-size:10px;color:var(--faint);width:14px}
.awv-tool .sech .nm{flex:1;font-size:14.5px;color:#fff}
.awv-tool .sech .cite{font-family:var(--mono);font-size:9.5px;color:var(--faint);letter-spacing:.08em}
.awv-tool .sech .st{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:20px;border:1px solid var(--line);color:var(--faint);white-space:nowrap}
.awv-tool .sech .st.ok{color:var(--accent);border-color:var(--deep)}
.awv-tool .sech .st.dec{color:var(--warn);border-color:rgba(224,184,119,.5)}
.awv-tool .secb{padding:2px 14px 14px;border-top:1px solid var(--line)}
.awv-tool .quick{display:flex;flex-wrap:wrap;gap:6px;padding:10px 0}
.awv-tool .quick button{font-size:11.5px;padding:5px 11px}
.awv-tool .gp{margin-bottom:13px}
.awv-tool .gt{font-size:13px;font-weight:500;color:#fff;margin-bottom:2px;display:flex;justify-content:space-between;gap:10px}
.awv-tool .gt em{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);cursor:pointer}
.awv-tool .ask{font-size:12.5px;color:var(--dim);margin:0 0 6px;border-left:1px solid var(--deep);padding-left:9px}
.awv-tool .chips{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 6px}
.awv-tool .chips label{font-size:12.5px;color:var(--dim);border:1px solid var(--line);border-radius:18px;padding:4px 11px;cursor:pointer;background:rgba(255,255,255,.03);user-select:none;line-height:1.3}
.awv-tool .chips label:hover{border-color:var(--deep)}
.awv-tool .chips label:has(input:checked){background:rgba(127,215,196,.16);border-color:var(--deep);color:#fff}
.awv-tool .chips label.neg:has(input:checked){background:rgba(255,255,255,.10);border-color:var(--faint);color:var(--text)}
.awv-tool .chips input{position:absolute;opacity:0;width:0;height:0}
.awv-tool .chips label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.awv-tool input[type=text], .awv-tool input[type=date], .awv-tool textarea, .awv-tool select{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;color:var(--text);font-family:var(--sans);font-size:13.5px;font-weight:300;padding:7px 10px}
.awv-tool textarea{min-height:42px;resize:vertical;line-height:1.45}
.awv-tool input:focus, .awv-tool textarea:focus, .awv-tool select:focus{outline:2px solid var(--deep);outline-offset:1px;border-color:transparent}
.awv-tool select option{background:#0f151b}
.awv-tool label.fl{display:block;font-size:12px;color:var(--dim);margin-bottom:3px}
.awv-tool .row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:9px}
.awv-tool .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin-bottom:9px}
.awv-tool .inline{display:flex;gap:6px}
.awv-tool .inline input{flex:1}
.awv-tool button{font-family:var(--sans);font-size:12.5px;font-weight:500;padding:7px 13px;border-radius:8px;cursor:pointer;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--text)}
.awv-tool button.primary{background:var(--accent);color:#07100d;border-color:transparent}
.awv-tool button:hover{border-color:var(--deep)}
.awv-tool button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.awv-tool .btns{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.awv-tool .meter ol{list-style:none;padding:0;margin:5px 0 0}
.awv-tool .meter li{padding:3px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:11.5px;font-family:var(--mono);display:flex;justify-content:space-between;gap:8px}
.awv-tool .meter li.done{color:var(--accent)}
.awv-tool .meter li.todo{color:var(--warn)}
.awv-tool .meter li span{color:var(--faint);font-size:9.5px}
.awv-tool #noteOut{width:100%;min-height:290px;font-family:var(--mono);font-size:11px;line-height:1.55;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:9px;color:var(--text);padding:11px;white-space:pre-wrap;resize:vertical}
.awv-tool .notice{font-size:11.5px;color:var(--faint);margin-top:9px}
.awv-tool .alertline{font-size:12.5px;color:var(--warn);border:1px solid rgba(224,184,119,.35);border-radius:8px;padding:8px 11px;margin:8px 0}
.awv-tool .flag{border:1px solid var(--line);border-radius:10px;padding:13px 15px;margin-bottom:9px;background:rgba(255,255,255,.03)}
.awv-tool .flag .fh{font-size:13.5px;font-weight:500;color:#fff;margin-bottom:3px}
.awv-tool .flag .ev{font-family:var(--mono);font-size:10.5px;color:var(--accent);background:rgba(127,215,196,.06);border-left:2px solid var(--deep);padding:5px 9px;margin:6px 0;border-radius:0 5px 5px 0}
.awv-tool .flag .lbl{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:8px 0 2px}
.awv-tool .flag .body{font-size:12.5px;color:var(--dim)}
.awv-tool .flag .codes{font-family:var(--mono);font-size:11px;color:var(--text)}
.awv-tool .flag .decide{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.awv-tool .flag .decide label{font-size:11.5px;color:var(--dim);border:1px solid var(--line);border-radius:7px;padding:4px 10px;cursor:pointer}
.awv-tool .flag .decide label:has(input:checked){background:rgba(127,215,196,.14);border-color:var(--deep);color:var(--text)}
.awv-tool .flag .decide input{position:absolute;opacity:0}
.awv-tool .empty{color:var(--faint);font-size:13px}
.awv-tool .rationale p{max-width:80ch;margin:0 0 12px}
.awv-tool .saved{font-family:var(--mono);font-size:10px;color:var(--faint);margin-top:5px}
@media(max-width:1080px){
.awv-tool .grid{grid-template-columns:1fr}
}
@media(max-width:620px){
.awv-tool .row, .awv-tool .row3{grid-template-columns:1fr}
.awv-tool .shell{padding:14px 10px 60px}
}
@media(prefers-reduced-motion:reduce){
.awv-tool *{transition:none!important}
}
