:root{color:#173b4d;font-synthesis:none;--navy:#0d4e6a;--blue:#176b87;--mint:#31b7a5;--mint-soft:#e7f8f5;--surface:#fff;--line:#dcebed;--muted:#667085;--danger:#b42318;background:#f4f9fa;font-family:Tajawal,Cairo,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html{background:#f4f9fa;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.7}a{color:inherit}.primary-button{background:var(--mint);color:#fff;border:0;border-radius:12px;padding:13px 20px;font-weight:700;box-shadow:0 9px 22px #31b7a538}.eyebrow{color:var(--mint);letter-spacing:.03em;margin:0 0 7px;font-size:13px;font-weight:800}.brand-mark{color:#fff;background:linear-gradient(145deg,#31b7a5,#176b87);border-radius:24px;place-items:center;width:72px;height:72px;font-size:26px;font-weight:900;display:inline-grid;box-shadow:0 20px 50px #31b7a547}.brand-mark.small{width:46px;height:46px;box-shadow:none;border-radius:15px;font-size:17px}.loading-screen{min-height:100vh;color:var(--navy);background:#f4f9fa;place-content:center;justify-items:center;gap:14px;display:grid}.loading-spinner{border:4px solid #d9efed;border-top-color:var(--mint);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:#f8fbfc;grid-template-columns:minmax(380px,.9fr) minmax(480px,1.1fr);min-height:100vh;display:grid}.login-visual{color:#fff;background:radial-gradient(circle at 18% 18%,#31b7a58c,#0000 35%),linear-gradient(145deg,#0b4158 0%,#0d4e6a 50%,#176b87 100%);place-items:center;padding:48px;display:grid;position:relative;overflow:hidden}.login-visual:after{content:"";background:#ffffff0d;border-radius:50%;width:380px;height:380px;position:absolute;inset:auto -120px -160px auto}.brand-orbit{border:1px solid #ffffff29;border-radius:50%;position:absolute}.brand-orbit-one{width:410px;height:410px}.brand-orbit-two{width:560px;height:560px}.login-brand{z-index:2;text-align:center;position:relative}.login-brand h1{margin:26px 0 8px;font-size:clamp(30px,4vw,52px)}.login-brand p{color:#ccece8;margin:0;font-size:18px}.login-panel{place-items:center;padding:42px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);border-radius:24px;width:min(100%,470px);padding:42px;box-shadow:0 30px 80px #0d4e6a1c}.mobile-brand{display:none}.login-card h2{color:var(--navy);margin:0;font-size:34px}.login-intro{color:var(--muted);margin:10px 0 28px;line-height:1.8}.login-card form{gap:10px;display:grid}.login-card label{color:#344054;margin-top:8px;font-weight:700}.login-card input{color:#173b4d;background:#fbfdfd;border:1px solid #cddfe2;border-radius:12px;outline:none;width:100%;min-height:52px;padding:0 15px;transition:border-color .2s,box-shadow .2s}.login-card input:focus{border-color:var(--mint);box-shadow:0 0 0 4px #31b7a51f}.form-error{color:var(--danger);background:#fef3f2;border:1px solid #fecdca;border-radius:11px;margin-top:6px;padding:12px 14px;line-height:1.6}.login-button{width:100%;min-height:52px;margin-top:13px}.security-note{text-align:center;color:#98a2b3;margin:22px 0 0;font-size:13px}.app-shell{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:radial-gradient(circle at 20% 10%, #31b7a53d, transparent 32%), var(--navy);flex-direction:column;height:100vh;padding:26px 20px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff1c;align-items:center;gap:13px;padding:0 3px 27px;display:flex}.sidebar-brand h1{margin:0;font-size:19px}.sidebar-brand p{color:#b9dfdc;margin:5px 0 0;font-size:12px}.sidebar nav{gap:7px;margin-top:27px;display:grid}.sidebar nav a{color:#effafa;border-radius:12px;padding:12px 14px;text-decoration:none;transition:background .2s}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff1f}.sidebar-session{background:#ffffff12;border:1px solid #ffffff21;border-radius:15px;gap:5px;margin-top:auto;padding:17px;display:grid}.sidebar-session small{color:#b9dfdc}.sidebar-session button{color:#fff;background:0 0;border:1px solid #ffffff38;border-radius:10px;margin-top:9px;padding:9px}.content{padding:32px}.dashboard-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.dashboard-header h2{color:var(--navy);margin:0;font-size:clamp(27px,4vw,38px)}.dashboard-header>div>p:last-child{color:var(--muted);margin-bottom:0}.header-actions{align-items:center;gap:12px;display:flex}.role-badge,.status-dot{color:#08786b;background:var(--mint-soft);border-radius:999px;align-items:center;padding:9px 13px;font-size:13px;font-weight:800;display:inline-flex}.status-dot:before{content:"";background:var(--mint);border-radius:50%;width:8px;height:8px;margin-left:7px}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0;display:grid}.card,.panel{border:1px solid var(--line);background:var(--surface);border-radius:17px;padding:22px;box-shadow:0 8px 28px #0d4e6a13}.card span{color:var(--muted)}.card strong{color:var(--blue);margin-top:11px;font-size:35px;display:block}.card small{color:#98a2b3;margin-top:5px;display:block}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.panel-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-heading h3{color:var(--navy);margin:0;font-size:21px}.profile-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 0;display:grid}.profile-details div{background:#f6fafb;border-radius:12px;padding:14px}.profile-details dt{color:#98a2b3;font-size:12px}.profile-details dd{color:#344054;overflow-wrap:anywhere;margin:5px 0 0;font-weight:700}.system-status{gap:12px;margin:22px 0 0;padding:0;list-style:none;display:grid}.system-status li{border-bottom:1px solid #edf3f4;justify-content:space-between;gap:14px;padding-bottom:11px;display:flex}.system-status strong{color:#08786b}.system-status strong.muted{color:#98a2b3}.permission-panel{margin-top:18px}.permission-list{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.permission-list span{color:#176b87;background:#f5fbfa;border:1px solid #cde8e5;border-radius:999px;padding:9px 14px;font-weight:700}@media (width<=1040px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.mobile-brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.mobile-brand .brand-mark{border-radius:15px;width:48px;height:48px;font-size:17px}.app-shell{grid-template-columns:1fr}.sidebar{width:100%;height:auto;position:static}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-session{margin-top:24px}}@media (width<=620px){.login-panel,.content{padding:20px}.login-card{padding:27px 21px}.dashboard-header,.header-actions{flex-direction:column;align-items:stretch}.cards,.profile-details{grid-template-columns:1fr}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.sidebar nav button{color:#effafa;text-align:right;background:0 0;border:0;border-radius:12px;width:100%;padding:12px 14px;transition:background .2s}.sidebar nav button:hover,.sidebar nav button.active{background:#ffffff1f}.clinic-content{min-width:0}.secondary-button{color:#176b87;background:#fff;border:1px solid #c9e1e4;border-radius:12px;padding:12px 18px;font-weight:800}.success-banner,.warning-banner{border-radius:13px;margin:20px 0;padding:14px 16px;line-height:1.7}.success-banner{color:#067647;background:#ecfdf3;border:1px solid #a6f4c5}.warning-banner{color:#93370d;background:#fffaeb;border:1px solid #fedf89}.clinic-loading{color:#667085;text-align:center;margin-top:24px}.clinic-grid{grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr);align-items:start;gap:18px;margin-top:26px;display:grid}.clinic-stack{gap:18px;margin-top:26px;display:grid}.wide-panel{min-width:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label{color:#344054;gap:7px;font-weight:700;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.search-input,.data-table select{color:#173b4d;background:#fbfdfd;border:1px solid #cddfe2;border-radius:11px;outline:none;width:100%;padding:11px 12px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.search-input:focus,.data-table select:focus{border-color:#31b7a5;box-shadow:0 0 0 4px #31b7a51f}.form-grid .full-width{grid-column:1/-1}.form-grid button{justify-self:start}.search-input{max-width:300px}.table-scroll{width:100%;margin-top:18px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:720px}.data-table th,.data-table td{text-align:right;vertical-align:middle;border-bottom:1px solid #edf3f4;padding:13px 11px}.data-table th{color:#667085;background:#f8fbfc;font-size:13px;font-weight:800}.data-table td{color:#344054}.data-table a,.text-link,.danger-link{background:0 0;border:0;padding:0;font-weight:800}.data-table a,.text-link{color:#176b87}.danger-link{color:#b42318}.compact-list{gap:10px;margin-top:18px;display:grid}.compact-list>div{background:#fbfdfd;border:1px solid #edf3f4;border-radius:12px;gap:4px;padding:13px;display:grid}.compact-list strong{color:#173b4d}.compact-list span{color:#475467}.compact-list small,.empty-state{color:#98a2b3}@media (width<=1100px){.clinic-grid{grid-template-columns:1fr}.form-grid.three-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.form-grid,.form-grid.three-columns{grid-template-columns:1fr}.dashboard-header{align-items:stretch}.header-actions{width:100%}}
