:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6faf9;color:#0f172a;--brand: #0f766e;--brand-dark: #115e59;--brand-soft: #ccfbf1;--border: #dbe7e4;--muted: #64748b;--card: rgba(255, 255, 255, .92);--shadow: 0 20px 60px rgba(15, 23, 42, .08)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,#ccfbf1 0,transparent 34rem),#f6faf9}button,input,select,textarea{font:inherit}button{border:0;border-radius:14px;padding:.8rem 1rem;background:var(--brand);color:#fff;cursor:pointer;font-weight:750;display:inline-flex;gap:.45rem;align-items:center;justify-content:center;transition:transform .15s,opacity .15s,background .15s}button:hover{transform:translateY(-1px);background:var(--brand-dark)}button:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:14px;padding:.75rem .85rem;background:#fff;color:#0f172a;outline:none}textarea{min-height:88px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px #0f766e1f}a{color:var(--brand)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-card{width:min(460px,100%);background:var(--card);border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:var(--shadow);padding:2rem;display:grid;gap:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-card h1{margin:0;font-size:clamp(1.8rem,5vw,2.5rem);letter-spacing:-.04em}.auth-card p{color:var(--muted);margin:0;line-height:1.6}.brand-mark{width:64px;height:64px;border-radius:22px;background:linear-gradient(145deg,var(--brand),#14b8a6);color:#fff;display:grid;place-items:center;font-size:2rem;font-weight:900;box-shadow:0 15px 30px #0f766e4d}.brand-mark.small{width:44px;height:44px;border-radius:15px;font-size:1.35rem}.segmented{background:#e6fffb;border-radius:16px;padding:.25rem;display:grid;grid-template-columns:1fr 1fr}.segmented button{background:transparent;color:var(--brand-dark);box-shadow:none}.segmented button.active{background:#fff;box-shadow:0 8px 20px #0f172a14}.stack{display:grid;gap:.9rem}.app{min-height:100vh;display:grid;grid-template-columns:292px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#ffffffdb;border-right:1px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:1rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}[dir=rtl] .sidebar{border-right:0;border-left:1px solid var(--border)}.sidebar-brand{display:flex;gap:.8rem;align-items:center;padding:.6rem}.sidebar-brand span{display:block;color:var(--muted);font-size:.86rem;margin-top:.1rem}nav{display:grid;gap:.3rem}nav button{justify-content:flex-start;background:transparent;color:#334155;border-radius:16px;padding:.85rem .9rem;font-weight:700}nav button:hover,nav .nav-active{background:var(--brand);color:#fff}.sidebar-footer{margin-top:auto;display:grid;gap:.6rem}.content{padding:1.35rem;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.topbar h1{margin:0;font-size:clamp(1.7rem,4vw,2.45rem);letter-spacing:-.04em}.topbar p{margin:.25rem 0 0;color:var(--muted)}.ghost{background:#fff;color:#0f172a;border:1px solid var(--border)}.ghost:hover{background:#f8fafc;color:#0f172a}.danger{color:#b91c1c}.grid{display:grid}.gap{gap:1rem}.cards{display:grid;gap:1rem}.cards.four{grid-template-columns:repeat(4,minmax(0,1fr))}.panel,.metric,.signature-card{background:var(--card);border:1px solid rgba(219,231,228,.9);box-shadow:var(--shadow);border-radius:24px;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel h2,.signature-card h2{margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.metric{display:grid;gap:.6rem;min-height:116px;align-content:center}.metric span{color:var(--muted);font-weight:700}.metric strong{font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.04em}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.two-layout{grid-template-columns:minmax(320px,560px) 1fr;align-items:start}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;align-items:end}.form-grid>h2,.form-grid>button,.form-grid>.metric,.form-grid>fieldset,.form-grid>input[type=file]{grid-column:1 / -1}.form-grid.wide{grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:.35rem;color:#334155;font-weight:700}.field span{font-size:.86rem}.toolbar{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.8rem}.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--border)}table{width:100%;border-collapse:collapse;background:#fff;min-width:720px}th,td{padding:.8rem;border-bottom:1px solid #edf2f7;text-align:start;vertical-align:top}th{background:#f1f5f9;color:#334155;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}tr:last-child td{border-bottom:0}.empty{padding:2rem;text-align:center;color:var(--muted);background:#ffffffa6;border:1px dashed var(--border);border-radius:20px}.checklist{border:1px solid var(--border);border-radius:18px;padding:.85rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.checklist legend{padding:0 .4rem;font-weight:850;color:#0f172a}.checklist label{display:flex;gap:.45rem;align-items:center;color:#334155;font-size:.92rem}.checklist input{width:auto}.signature-card{display:grid;gap:.8rem}.signature-head{display:flex;justify-content:space-between;align-items:center}.signature-canvas{width:100%;height:190px;background:repeating-linear-gradient(0deg,#fff,#fff 34px,#f1f5f9 35px);border:1px solid var(--border);border-radius:18px;touch-action:none}@media(max-width:1060px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto}nav{grid-template-columns:repeat(2,1fr)}.cards.four,.two-col,.two-layout,.form-grid.wide{grid-template-columns:1fr 1fr}}@media(max-width:720px){.content{padding:.8rem}.cards.four,.two-col,.two-layout,.form-grid,.form-grid.wide{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}nav{grid-template-columns:1fr}table{min-width:640px}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{overflow-x:hidden}button,input,select,textarea{font-size:16px}button{min-height:44px;touch-action:manipulation}.brand-mark{background:#fff url(/icon.svg) center/cover no-repeat;color:transparent;border:1px solid rgba(15,118,110,.2);box-shadow:0 14px 35px #0f766e29;overflow:hidden}.brand-mark.small{width:48px;height:48px;border-radius:16px}.auth-card .brand-mark{width:150px;height:150px;border-radius:28px;justify-self:center}.auth-card h1,.sidebar-brand strong{color:#166534}.patient-file-hint{margin:.6rem 0 .85rem;padding:.75rem .9rem;border-radius:14px;background:#ecfeff;color:#0f766e;border:1px solid rgba(15,118,110,.18);font-weight:750}.patient-file-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:end center;padding:1rem;background:#0f172a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.patient-file-sheet{width:min(720px,100%);max-height:min(88dvh,760px);overflow:auto;background:#fff;color:#0f172a;border-radius:28px;padding:1rem;box-shadow:0 30px 80px #0f172a47}.patient-file-header{display:flex;align-items:center;gap:.9rem;padding:.75rem;background:linear-gradient(135deg,#ecfeff,#f0fdf4);border-radius:22px;margin-bottom:.9rem}.patient-file-avatar{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#0f766e,#0ea5b7);color:#fff;font-size:1.9rem;font-weight:900;flex:0 0 auto}.patient-file-header h2{margin:.1rem 0;font-size:1.55rem}.patient-file-header p,.patient-file-header small{color:#64748b;margin:0}.patient-file-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.patient-file-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:.85rem;display:grid;gap:.25rem}.patient-file-grid span{color:#64748b;font-size:.82rem;font-weight:700}.patient-file-grid strong{color:#0f172a;line-height:1.45;word-break:break-word}.patient-file-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.9rem}@media(max-width:820px){body{background:#f6faf9;overscroll-behavior-y:none}.app{display:block;min-height:100dvh;padding-bottom:calc(76px + var(--safe-bottom))}.sidebar{position:fixed;inset:auto 0 0;z-index:50;height:auto;width:100%;padding:.38rem calc(.45rem + var(--safe-right)) calc(.38rem + var(--safe-bottom)) calc(.45rem + var(--safe-left));border:1px solid rgba(219,231,228,.95);border-bottom:0;border-radius:22px 22px 0 0;box-shadow:0 -14px 44px #0f172a1f;background:#fffffff7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}[dir=rtl] .sidebar{border-left:1px solid rgba(219,231,228,.95)}.sidebar-brand,.sidebar-footer{display:none!important}.sidebar nav,nav{display:flex!important;flex-wrap:nowrap;gap:.36rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 .05rem}.sidebar nav::-webkit-scrollbar,nav::-webkit-scrollbar{display:none}nav button{flex:0 0 74px;min-width:74px;max-width:74px;min-height:56px;padding:.38rem .18rem;border-radius:16px;flex-direction:column;justify-content:center;gap:.16rem;font-size:.66rem;line-height:1.05;text-align:center}nav .nav-active,nav button:hover{transform:none}nav button svg{width:18px;height:18px}.content{padding:calc(.85rem + var(--safe-top)) calc(.75rem + var(--safe-right)) calc(1rem + 76px + var(--safe-bottom)) calc(.75rem + var(--safe-left));min-width:0;width:100%}.topbar{position:sticky;top:0;z-index:20;margin:calc(-.85rem - var(--safe-top)) calc(-.75rem - var(--safe-right)) .85rem calc(-.75rem - var(--safe-left));padding:calc(.8rem + var(--safe-top)) calc(.75rem + var(--safe-right)) .75rem calc(.75rem + var(--safe-left));background:#f6faf9f0;border-bottom:1px solid rgba(219,231,228,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:row;align-items:center}.topbar h1{font-size:1.45rem}.topbar p{font-size:.86rem}.topbar .ghost{min-height:40px;padding:.55rem .75rem}.panel,.metric,.signature-card{border-radius:20px;padding:.9rem;box-shadow:0 12px 34px #0f172a12}.cards.four,.cards,.two-col,.two-layout,.form-grid,.form-grid.wide{grid-template-columns:1fr!important}.metric{min-height:94px}.metric strong{font-size:1.75rem}.toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.toolbar input,.toolbar select,.toolbar button{width:100%}.field{gap:.3rem}input,select,textarea{min-height:44px;padding:.72rem .78rem;border-radius:13px}textarea{min-height:96px}.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:14px}table{min-width:560px;font-size:.86rem}th,td{padding:.65rem .55rem}tbody tr{cursor:pointer}.checklist{grid-template-columns:1fr}.signature-canvas{height:170px}.auth-shell{min-height:100dvh;padding:calc(1rem + var(--safe-top)) calc(.9rem + var(--safe-right)) calc(1rem + var(--safe-bottom)) calc(.9rem + var(--safe-left))}.auth-card{padding:1.15rem;border-radius:24px}.auth-card .brand-mark{width:126px;height:126px;border-radius:24px;margin:0 auto}.auth-card h1{font-size:1.55rem}.patient-file-modal{padding:.75rem calc(.75rem + var(--safe-right)) calc(.75rem + var(--safe-bottom)) calc(.75rem + var(--safe-left))}.patient-file-sheet{border-radius:26px 26px 18px 18px;max-height:86dvh}.patient-file-grid{grid-template-columns:1fr}}@media(max-width:430px){nav button{flex-basis:68px;min-width:68px;max-width:68px;font-size:.61rem}.topbar{gap:.5rem}.topbar h1{font-size:1.32rem}.content{padding-inline:.6rem}table{min-width:520px;font-size:.8rem}.patient-file-header h2{font-size:1.32rem}}@media print{.patient-file-modal{position:static;inset:auto;background:#fff;padding:0}.patient-file-sheet{box-shadow:none;max-height:none}.patient-file-actions,.sidebar,.topbar{display:none!important}}
