:root{--ink:#17334a;--muted:#6d8091;--navy:#123e48;--blue:#217b72;--bg:#f2f7f5;--line:#d8e5e1;--danger:#b83d3d}*{box-sizing:border-box}body{margin:0;font:16px Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}aside{position:fixed;inset:0 auto 0 0;width:250px;padding:24px 16px;background:var(--navy);color:white;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;margin:0 8px 36px;line-height:1.05}.brand img{width:45px;height:45px;object-fit:contain;border-radius:50%;background:#fff}.brand strong{font-size:18px}nav{display:grid;gap:6px}nav a{color:#c6dcda;text-decoration:none;padding:12px;border-radius:9px}nav a:hover{background:#28606a;color:#fff}.profile{margin-top:auto;padding:15px 10px;border-top:1px solid #3f6e74;display:grid;gap:5px}.profile span,.profile a,small{font-size:13px;color:#9ebbbd}.content{margin-left:250px;min-height:100vh;padding:32px 5vw}header{display:flex;justify-content:space-between;margin-bottom:26px}h1{margin:0 0 6px;font-size:28px}h2{font-size:18px;margin:0 0 18px}h3{margin:6px 0;font-size:17px}p{color:var(--muted)}.live{background:#dff2e9;color:#267051;padding:8px 12px;border-radius:99px;font-size:14px}.live i,.dot{display:inline-block;width:9px;height:9px;background:#32a66e;border-radius:50%;margin-right:6px}.dot.busy{background:#d99b37}.stats,.grid,.split{display:grid;gap:18px}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:18px}.grid{grid-template-columns:1.4fr .8fr}.split{grid-template-columns:1fr 1fr;max-width:1050px}.stats article,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 5px 18px #274b4010}.stats span{font-size:14px;color:var(--muted)}.stats b{display:block;font-size:32px;margin-top:12px}.queue,.person,.prescription,.call{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.queue div,.person div{flex:1}.queue small,.person small,.medicine small,td small{display:block}.form{display:grid;gap:13px}label{display:grid;gap:6px;font-size:14px;font-weight:600}input,select,textarea{width:100%;font:inherit;padding:10px;border:1px solid #c9dcd7;border-radius:8px}textarea{min-height:100px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}button{border:0;border-radius:8px;background:var(--blue);color:#fff;padding:10px 14px;font:600 14px inherit;cursor:pointer}.secondary{background:#e3efed;color:#1d5b55}.link-danger{background:transparent;color:var(--danger);padding:3px}.consult{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.consult>div{flex:1}.consult details{width:70%}.consult summary{color:var(--blue);font-weight:600;cursor:pointer;margin-bottom:10px}.badge{background:#e0f2ee;color:#16695e;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:600}.rx-row{display:grid;grid-template-columns:2fr .5fr 1.4fr;gap:8px;margin-bottom:8px}.medicine{padding:7px 0}.flash{padding:12px 15px;margin-bottom:16px;border-radius:9px}.flash.ok{background:#ddf3e8;color:#176144}.flash.error{background:#fbe5e5;color:#992d2d}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--muted)}.muted{color:var(--muted)}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#123e48,#5b8766)}.login-card{width:min(430px,92vw);background:#fff;border-radius:18px;padding:34px;text-align:center;box-shadow:0 20px 50px #0004}.login-logo{width:120px;height:120px;object-fit:contain}.login-card form{text-align:left;display:grid;gap:15px;margin:25px 0}.print-page{max-width:800px;margin:35px auto;background:#fff;padding:35px}.print-head{display:flex;align-items:center;gap:18px}.print-head img{width:90px;height:90px;object-fit:contain}@media print{.print-page{margin:0;padding:0}.print-page button{display:none}}@media(max-width:800px){aside{position:static;width:auto;display:block}.brand{margin-bottom:14px}.profile{display:none}nav{display:flex;overflow:auto}.content{margin:0;padding:22px 15px}.grid,.split{grid-template-columns:1fr}.consult,.prescription,.call{display:block}.consult details{width:auto;margin-top:13px}.rx-row{grid-template-columns:1fr}table{min-width:600px}.panel{overflow:auto}}
