:root{color:#11213d;background:radial-gradient(circle at 0 0,#fffffff2,#0000 30%),linear-gradient(135deg,#f5f7ff 0%,#eef5ff 42%,#f7f5ff 100%);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}*{box-sizing:border-box}body{zoom:.8;color:#13233f;background:radial-gradient(circle at 10% 20%,#4d84ff24,#0000 20%),radial-gradient(circle at 90% 10%,#ff8d652e,#0000 26%),linear-gradient(#f6f8ff 0%,#eef4ff 100%);min-height:100vh;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}#root{min-height:100vh}.center{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.form-container{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center;background:#ffffffe6;border:1px solid #647bff1f;border-radius:28px;width:100%;max-width:430px;padding:36px 32px;box-shadow:0 28px 70px #1f346829}.form-container h2{margin:0 0 10px;font-size:2rem}.form-container p{color:#60708f}input,select,textarea,button{box-sizing:border-box;border:1px solid #dbe4f3;border-radius:16px;width:100%;margin-top:10px;padding:14px 16px}input,select,textarea{background:#fbfdff}textarea{resize:vertical;min-height:132px}button{cursor:pointer;color:#fff;background:linear-gradient(135deg,#235bff,#6f66ff);border:none;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 18px 30px #4a3cff38}button:hover{transform:translateY(-1px);box-shadow:0 22px 34px #4a3cff42}button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.error,.success{text-align:center;margin-top:10px}.error{color:#cf3654}.success{color:#1f8e58}.page-loading{place-items:center;min-height:100vh;display:grid}.app-shell{grid-template-columns:320px 1fr;min-height:100vh;display:grid}.sidebar-panel{color:#f8fbff;background:linear-gradient(#111f41eb,#181c57f5),linear-gradient(130deg,#183058,#3a2f7f);flex-direction:column;justify-content:space-between;gap:28px;width:320px;height:125vh;padding:26px 24px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.brand-mark{align-items:center;gap:14px;margin-bottom:28px;display:flex}.brand-mark__icon{color:#fff;background:linear-gradient(135deg,#79b0ff,#6e7eff);border-radius:18px;place-items:center;width:54px;height:54px;font-size:1.4rem;font-weight:800;display:grid}.brand-mark__eyebrow,.section-eyebrow{text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.75rem;font-weight:700}.brand-mark__eyebrow{color:#dee8ffb3}.brand-mark__title{margin:4px 0 0;font-size:1.3rem}.sidebar-profile{background:#ffffff14;border:1px solid #ffffff14;border-radius:24px;align-items:center;gap:14px;padding:18px;display:flex}.sidebar-profile h3,.sidebar-profile p{margin:0}.sidebar-profile p{color:#e5ecffbf;word-break:break-word}.avatar{color:#1f3470;background:linear-gradient(135deg,#fff,#dde8ff);border-radius:18px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:800;display:grid}.large-avatar{width:82px;height:82px;font-size:2rem}.sidebar-nav{flex-direction:column;gap:10px;margin-top:20px;display:flex}.nav-item{text-align:left;box-shadow:none;color:inherit;background:0 0;border:1px solid #ffffff14;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.nav-item small{color:#e3eaffb8}.nav-item.active{background:linear-gradient(135deg,#78a9ff38,#9679ff38);border-color:#8cb5ff5c}.sidebar-footer{flex-direction:column;gap:16px;display:flex}.status-card{background:#ffffff14;border-radius:20px;gap:12px;padding:16px;display:flex}.status-card p,.status-card strong{margin:0}.status-card p{color:#e3eaffb8}.status-dot{background:#6ff0b3;border-radius:999px;flex-shrink:0;width:12px;height:12px;margin-top:6px;box-shadow:0 0 0 6px #6ff0b31f}.status-dot.offline{background:#ff9c5c;box-shadow:0 0 0 6px #ff9c5c1f}.logout-button,.ghost-button,.secondary-button,.delete-btn{width:auto}.logout-button{background:linear-gradient(135deg,#ff6b6b,#f63f72)}.admin-link-button{color:#f8fbff;box-shadow:none;background:#ffffff1f;border:1px solid #ffffff29}.main-panel{grid-column:2;padding:28px}.top-banner{background:radial-gradient(circle at 100% 0,#90b7ff5c,#0000 28%),linear-gradient(135deg,#fffffff2,#f2f7fff5);border:1px solid #7e96cf29;border-radius:32px;justify-content:space-between;align-items:stretch;gap:18px;padding:28px;display:flex;box-shadow:0 18px 40px #26407814}.top-banner h2{margin:8px 0;font-size:2rem}.section-copy{color:#61708f;max-width:620px;margin:0}.hero-summary{gap:14px;min-width:260px;display:grid}.hero-summary div{background:#2949a014;border-radius:24px;padding:18px 20px}.hero-summary span{color:#60708f;margin-bottom:8px;display:block}.hero-summary strong{font-size:1.15rem}.feedback-banner{border-radius:18px;margin-top:18px;padding:16px 18px;font-weight:600}.error-banner{color:#b91d4b;background:#ff4f781f}.success-banner{color:#197443;background:#4cbb7b24}.content-grid,.profile-layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);gap:18px;margin-top:22px;display:grid}.wide-panel{grid-column:1/-1}.panel{background:#ffffffe0;border:1px solid #7e96cf29;border-radius:30px;padding:22px;box-shadow:0 18px 38px #26407814}.appointment-editor--editing{border-color:#2c6cff6b;box-shadow:0 0 0 3px #2c6cff1a,0 18px 38px #26407814}.edit-mode-note{color:#52698f;margin:8px 0 0;font-weight:600}.panel-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.panel-heading h3,.doctor-card h4,.profile-summary h4{margin:4px 0 0}.stack-form{gap:14px;display:grid}.stack-form label{gap:6px;display:grid}.stack-form span{color:#203150;font-weight:700}.metrics-panel{gap:14px;display:grid}.mini-stat{background:linear-gradient(135deg,#f4f8ff,#f8f5ff);border:1px solid #96aad833;border-radius:22px;padding:18px}.mini-stat span{color:#677791;margin-bottom:10px;display:block}.mini-stat strong{font-size:1.15rem}.advanced-list{gap:14px}.advanced-card{box-shadow:none;background:linear-gradient(135deg,#f9fbff,#f7f2ff);border:1px solid #96aad829;border-radius:24px;padding:18px}.appointment-card--highlight{border-color:#2c6cff70;box-shadow:0 0 0 3px #2c6cff1f}.appointment-card{justify-content:space-between;align-items:center;gap:16px;display:flex}.appointment-time{color:#677791;margin:0}.appointment-card h4{margin:8px 0}.appointment-tag{border-radius:999px;padding:8px 12px;font-size:.9rem;font-weight:700;display:inline-flex}.status-pending{color:#9a5b00;background:#f59e0b24}.status-confirmed{color:#244fc7;background:#2563eb1f}.status-cancelled{color:#b91d4b;background:#e11d481f}.status-completed{color:#197443;background:#16a34a24}.card-actions{gap:10px;display:flex}.ghost-button,.secondary-button{color:#27437a;box-shadow:none;background:#eef4ff}.delete-btn{background:linear-gradient(135deg,#ff758f,#ff4d6d)}.assistant-panel{gap:14px;display:grid}.assistant-suggestions{flex-wrap:wrap;gap:10px;display:flex}.assistant-chip{color:#28457d;width:auto;box-shadow:none;background:#eef4ff;padding:10px 14px}.chat-box.polished-chat{background:#fbfdff;border:1px solid #96aad829;border-radius:22px;max-height:280px;padding:16px;overflow-y:auto}.chat-entry+.chat-entry{border-top:1px solid #96aad82e;margin-top:14px;padding-top:14px}.chat-entry p{margin:0 0 6px}.chat-input{gap:10px;display:flex}.chat-input input{margin-top:0}.chat-input button{width:140px}.empty-state{color:#6a7992;margin:0}.doctors-page{margin-top:22px}.doctors-heading{margin-bottom:18px}.doctor-toolbar{align-items:center;gap:14px;margin-bottom:18px;display:flex}.doctor-toolbar input{margin-top:0}.doctor-toolbar__summary{color:#28457d;text-align:center;background:#2949a014;border-radius:16px;min-width:120px;padding:14px 16px;font-weight:700}.doctor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.doctor-card{padding:0;overflow:hidden}.doctor-card.cardiology{background:linear-gradient(#eef6ff,#fff)}.doctor-card.pediatrics{background:linear-gradient(#fff7ed,#fff)}.doctor-card.dermatology{background:linear-gradient(#f5efff,#fff)}.doctor-photo{object-fit:cover;background:#ebf1ff;width:100%;height:240px;display:block}.doctor-card__body{padding:20px}.doctor-meta,.doctor-footer,.profile-badge{justify-content:space-between;align-items:center;gap:12px;display:flex}.doctor-meta{color:#65748f;font-size:.92rem}.doctor-rating{color:#26498c;background:#fffc;border-radius:999px;justify-content:center;align-items:center;min-width:54px;padding:6px 10px;font-weight:700;display:inline-flex}.doctor-specialty{color:#294f92;margin:8px 0;font-weight:700}.doctor-details{color:#5f6f89;justify-content:space-between;gap:10px;margin-top:14px;font-weight:600;display:flex}.doctor-days{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.doctor-day{color:#2653d1;background:#2653d114;border-radius:999px;padding:7px 11px;font-size:.85rem;font-weight:700;display:inline-flex}.doctor-footer{margin-top:16px}.empty-doctors{text-align:center;color:#667792;margin-top:18px}.profile-summary{align-content:start;gap:14px;display:grid}.profile-badge{justify-content:flex-start;padding:10px 0 18px}.profile-notes{background:linear-gradient(135deg,#fff8f1,#f4fbff);border:1px solid #96aad833;border-radius:22px;padding:18px}.profile-notes span{color:#677791;margin-bottom:10px;font-weight:700;display:block}.profile-notes p{color:#203150;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.admin-shell{min-height:100vh;padding:28px}.admin-access{place-items:center;display:grid}.admin-access .panel{width:min(100%,680px)}.admin-hero{background:radial-gradient(circle at 100% 0,#ffc17842,#0000 28%),linear-gradient(135deg,#fffffff5,#eff7fff5);border:1px solid #7e96cf29;border-radius:30px;justify-content:space-between;align-items:center;gap:18px;padding:28px;display:flex;box-shadow:0 18px 40px #26407814}.admin-hero h1{margin:8px 0;font-size:2rem}.admin-actions{align-items:center;gap:12px;display:flex}.text-link-button{color:#27437a;background:#eef4ff;border-radius:16px;justify-content:center;align-items:center;width:auto;min-height:48px;padding:12px 16px;font-weight:800;text-decoration:none;display:inline-flex}.admin-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.admin-table-panel{margin-top:22px}.admin-table-heading{align-items:flex-start}.admin-filters{grid-template-columns:minmax(260px,1fr) 210px;gap:12px;width:min(100%,620px);display:grid}.admin-filters input,.admin-filters select{margin-top:0}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #96aad82e;padding:14px 12px}.admin-table th{color:#52698f;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.admin-table td{color:#203150;font-weight:600}.status-select{width:180px;margin-top:0;font-weight:800}@media (width<=1100px){.app-shell,.content-grid,.profile-layout,.doctor-grid,.top-banner{grid-template-columns:1fr}.app-shell{display:block}.sidebar-panel{width:auto;height:auto;min-height:auto;position:static;overflow:visible}.hero-summary{min-width:0}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-hero,.admin-table-heading,.admin-actions{flex-direction:column;align-items:stretch}.admin-filters{width:100%}}@media (width<=720px){body{zoom:1}.main-panel,.sidebar-panel,.admin-shell{padding:18px}.panel,.top-banner,.form-container{border-radius:24px;padding:18px}.panel-heading,.appointment-card,.chat-input,.doctor-toolbar,.doctor-details,.doctor-footer,.doctor-meta{flex-direction:column;align-items:stretch}.card-actions{flex-direction:column;width:100%}.chat-input button,.logout-button,.admin-link-button,.ghost-button,.secondary-button,.delete-btn,.assistant-chip{width:100%}.admin-stats,.admin-filters{grid-template-columns:1fr}}
