/* Jevity OS — Physician Console + care canvas */
:root{--cn-teal:#2dd4a7;--cn-soft:#7cf0cf;--cn-ink:#f3f6f5;--cn-mut:#a9b3b8;--cn-faint:#6a747a;--cn-line:rgba(255,255,255,.09);--cn-card:rgba(255,255,255,.03);--optimal:#2dd4a7;--normal:#f4b64e;--watch:#f0806a}
body.cnbody{background:#05070c}
.cn{color:var(--cn-ink);font-family:"Inter",system-ui,sans-serif;padding-bottom:4rem}
.cn-hero{max-width:840px;margin:0 auto;padding:clamp(2.4rem,6vw,4rem) clamp(1.2rem,5vw,2rem) 1rem;text-align:center}
.cn-kicker{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cn-teal);font-weight:600}
.cn-hero h1{font-family:"Fraunces",Georgia,serif;font-weight:300;letter-spacing:-.02em;font-size:clamp(2.3rem,6.5vw,4.2rem);line-height:1.03;margin:.6rem 0 1rem}
.cn-hero h1 em{font-style:italic;color:var(--cn-teal)}
.cn-sub{color:var(--cn-mut);max-width:60ch;margin:0 auto;font-size:1.02rem;line-height:1.7}

.cn-app{max-width:1100px;margin:2rem auto 0;padding:0 clamp(1.2rem,5vw,2rem);display:flex;flex-direction:column;gap:1.2rem}
.cn-patient__id{display:flex;align-items:center;gap:1rem;background:var(--cn-card);border:1px solid var(--cn-line);border-radius:18px;padding:1rem 1.3rem}
.cn-avatar{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-family:"Fraunces",serif;font-size:1.4rem;color:#04130d;background:radial-gradient(circle at 32% 28%,#fff,var(--cn-teal) 72%)}
.cn-patient__id h2{font-family:"Fraunces",serif;font-weight:400;font-size:1.4rem}
.cn-patient__id p{font-size:.84rem;color:var(--cn-mut)}
.cn-flag{margin-left:auto;font-size:.76rem;font-weight:600;color:var(--watch);background:rgba(240,128,106,.12);border:1px solid rgba(240,128,106,.3);padding:.3rem .7rem;border-radius:999px}

.cn-console{background:var(--cn-card);border:1px solid var(--cn-line);border-radius:20px;padding:1.4rem}
.cn-q{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.05);border:1px solid var(--cn-line);border-radius:14px;padding:.4rem .4rem .4rem 1rem;transition:border-color .2s}
.cn-q:focus-within{border-color:rgba(45,212,167,.5)}
.cn-q__ic{color:var(--cn-teal);font-size:1.2rem}
.cn-q input{flex:1;background:none;border:none;outline:none;color:var(--cn-ink);font:inherit;font-size:1rem;padding:.55rem 0}
.cn-q input::placeholder{color:var(--cn-faint)}
.cn-q button{background:var(--cn-teal);color:#04130d;border:none;font:600 .9rem "Inter";padding:.6rem 1.2rem;border-radius:10px;cursor:pointer}
.cn-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.9rem}
.cn-chips button{background:none;border:1px solid var(--cn-line);color:var(--cn-mut);font:inherit;font-size:.82rem;padding:.35rem .8rem;border-radius:999px;cursor:pointer;transition:all .2s}
.cn-chips button:hover{color:var(--cn-ink);border-color:rgba(45,212,167,.4)}

.cn-result{margin-top:1.2rem}
.cn-result__head{display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap;margin-bottom:.3rem}
.cn-result__q{font-family:"Fraunces",serif;font-size:1.3rem}
.cn-result__n{font-size:.76rem;color:var(--cn-faint)}
.cn-synth{background:rgba(45,212,167,.06);border:1px solid rgba(45,212,167,.2);border-radius:12px;padding:.9rem 1.1rem;color:var(--cn-ink);line-height:1.6;font-size:.95rem;margin:.6rem 0 1rem}
.cn-mkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem}
.cn-mk{background:rgba(255,255,255,.02);border:1px solid var(--cn-line);border-left:3px solid var(--mc);border-radius:10px;padding:.7rem .9rem}
.cn-mk__n{font-size:.82rem;color:var(--cn-mut)}
.cn-mk__v{font-family:"Fraunces",serif;font-size:1.3rem}
.cn-mk__o{font-size:.72rem;color:var(--cn-faint)}
.cn-result__empty{color:var(--cn-faint);padding:1rem 0}
.s-optimal{color:var(--optimal)}.s-normal{color:var(--normal)}.s-watch{color:var(--watch)}

.cn-canvas-wrap{background:var(--cn-card);border:1px solid var(--cn-line);border-radius:20px;padding:1.3rem}
.cn-canvas__head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.9rem}
.cn-canvas__head h3{font-family:"Fraunces",serif;font-weight:400;font-size:1.3rem}
.cn-roles{display:flex;gap:.8rem;flex-wrap:wrap;margin-left:.5rem}
.cn-roles span{font-size:.76rem;color:var(--cn-mut);display:inline-flex;align-items:center;gap:.35rem}
.cn-roles i{width:10px;height:10px;border-radius:50%}
.cn-add{margin-left:auto;background:var(--cn-teal);color:#04130d;border:none;font:600 .84rem "Inter";padding:.5rem 1rem;border-radius:10px;cursor:pointer}
.cn-canvas{position:relative;height:440px;border-radius:14px;overflow:hidden;background:#080b11 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Ccircle cx='1.5' cy='1.5' r='1' fill='%23ffffff10'/%3E%3C/svg%3E");touch-action:none}
.cn-note{position:absolute;width:186px;border-radius:12px;padding:.7rem .8rem;background:color-mix(in srgb,var(--nc) 16%,#0c1017);border:1px solid color-mix(in srgb,var(--nc) 45%,transparent);box-shadow:0 10px 30px -12px rgba(0,0,0,.7);cursor:default}
.cn-note__bar{display:flex;align-items:center;gap:.4rem;cursor:grab;margin-bottom:.4rem}
.cn-note__bar:active{cursor:grabbing}
.cn-note__dot{width:10px;height:10px;border-radius:50%;background:var(--nc)}
.cn-note__who{font-size:.72rem;font-weight:600;color:color-mix(in srgb,var(--nc) 70%,#fff)}
.cn-note__x{margin-left:auto;background:none;border:none;color:var(--cn-faint);cursor:pointer;font-size:.9rem;line-height:1}
.cn-note__body{font-size:.86rem;line-height:1.5;color:var(--cn-ink);outline:none;min-height:1.5em}
.cn-canvas__hint{font-size:.76rem;color:var(--cn-faint);margin-top:.7rem}
.cn-foot{max-width:900px;margin:2.4rem auto 0;padding:0 1.4rem;text-align:center;font-size:.76rem;color:var(--cn-faint);line-height:1.6}
@media(max-width:560px){.cn-note{width:150px}}
