:root{font-family:Segoe UI,Cairo,system-ui,sans-serif;line-height:1.5;font-weight:400;--clinic-accent: #4f9d88;--clinic-accent-rgb: 79, 157, 136;--clinic-accent-strong: #2f7a66;--clinic-contrast: #1e4d42;--clinic-contrast-rgb: 30, 77, 66;--clinic-secondary: #d6ebe3;--clinic-secondary-soft: #edf7f3;--clinic-text: #1f2a33;--clinic-subtle: #64748b;--clinic-border: #e2ece7;--clinic-border-strong: #c9dcd4;--clinic-surface: #f4f8f6;--clinic-surface-strong: #fbfdfc;--clinic-surface-raised: #ffffff;--clinic-shadow: rgba(30, 77, 66, .1);--clinic-panel: rgba(255, 255, 255, .96);color-scheme:light;color:var(--clinic-text);background-color:var(--clinic-surface-strong);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--clinic-accent-strong);text-decoration:inherit}a:hover{color:var(--clinic-accent)}body{margin:0;min-width:320px;min-height:100vh;font-family:Segoe UI,Cairo,system-ui,sans-serif;line-height:1.5;font-weight:400;background:radial-gradient(circle at 12% 0%,rgba(var(--clinic-accent-rgb),.08),rgba(var(--clinic-accent-rgb),0) 32%),radial-gradient(circle at 92% 4%,rgba(var(--clinic-contrast-rgb),.06),rgba(var(--clinic-contrast-rgb),0) 30%),linear-gradient(180deg,var(--clinic-surface-raised) 0%,var(--clinic-surface-strong) 60%,var(--clinic-secondary-soft) 100%);color:var(--clinic-text);display:block}#root{max-width:none;margin:0;padding:0;min-height:100vh;text-align:initial;background:transparent;border-radius:0;box-shadow:none}.app-shell{min-height:100vh}.app-page-frame{position:relative;overflow:hidden;isolation:isolate;margin:6px 0 18px;padding:14px 16px 20px;border-radius:20px;background:var(--clinic-surface-raised);border:1px solid var(--clinic-border);box-shadow:0 12px 32px var(--clinic-shadow)}.app-page-frame>*{position:relative;z-index:1}input,select,textarea{background:var(--clinic-surface-raised)!important;color:var(--clinic-text)!important;border:1px solid var(--clinic-border)!important;border-radius:10px;caret-color:var(--clinic-accent);transition:border-color .15s ease,box-shadow .15s ease}input::placeholder,textarea::placeholder{color:var(--clinic-subtle);opacity:1}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--clinic-border-strong)!important}input:focus,select:focus,textarea:focus{border-color:var(--clinic-accent)!important;outline:none!important;box-shadow:0 0 0 3px rgba(var(--clinic-accent-rgb),.18)}input:disabled,select:disabled,textarea:disabled{background:#f1f4f2!important;color:var(--clinic-subtle)!important;cursor:not-allowed}input[type=date],input[type=datetime-local]{-webkit-appearance:none;appearance:none;position:relative;padding:9px 12px!important;padding-inline-end:40px!important;border-radius:10px!important;border:1px solid var(--clinic-border)!important;background-color:var(--clinic-surface-raised)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%232f7a66' stroke-width='1.7' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='4.5' width='17' height='16' rx='3'/%3E%3Cpath d='M7 2.75v4.5M17 2.75v4.5M3.5 9.5h17M8 13h3M13 13h3M8 17h3'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-size:18px 18px!important;background-position:calc(100% - 12px) 50%!important;caret-color:transparent!important;cursor:pointer!important;-webkit-user-select:none;user-select:none}input[type=date]:focus,input[type=datetime-local]:focus{border-color:var(--clinic-accent)!important;box-shadow:0 0 0 3px rgba(var(--clinic-accent-rgb),.18)!important}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}input[type=date]::-webkit-clear-button,input[type=datetime-local]::-webkit-clear-button,input[type=date]::-webkit-inner-spin-button,input[type=datetime-local]::-webkit-inner-spin-button{display:none}input[type=date]::-webkit-datetime-edit,input[type=datetime-local]::-webkit-datetime-edit,input[type=date]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value{color:var(--clinic-text);padding:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:10px;border:1px solid transparent;padding:.55em 1.15em;font-size:.95em;font-weight:600;font-family:inherit;background:var(--clinic-accent);color:#fff;cursor:pointer;box-shadow:0 2px 6px rgba(var(--clinic-contrast-rgb),.12);transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease}button:hover:not(:disabled){background:var(--clinic-accent-strong);transform:translateY(-1px);box-shadow:0 6px 14px rgba(var(--clinic-contrast-rgb),.18)}button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px rgba(var(--clinic-contrast-rgb),.14)}button:focus,button:focus-visible{outline:3px solid rgba(var(--clinic-accent-rgb),.25);outline-offset:2px}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.container{max-width:none;margin:0 auto;padding:8px 14px 18px}.section{margin-bottom:2rem}.card{padding:1.25rem;border-radius:12px;background:var(--clinic-surface-raised);border:1px solid var(--clinic-border);box-shadow:0 1px 3px rgba(var(--clinic-contrast-rgb),.06)}@media(max-width:1120px){.container{padding:8px 10px 16px}.app-page-frame{margin:6px 0 16px;padding:10px 10px 16px;border-radius:26px}}@media(max-width:760px){.container{padding:0}.app-page-frame{overflow:visible;margin:0;padding:0;border-radius:0;background:transparent;box-shadow:none}.app-page-frame:before{content:none}.app-page-frame:after{content:none}}#root table thead th,#root table tbody td,#root table tfoot td{text-align:center!important;vertical-align:middle}@media(prefers-color-scheme:light){:root{color:var(--clinic-text);background-color:var(--clinic-surface-strong)}}.chat-panel{position:fixed;top:0;inset-inline-end:0;width:min(560px,calc(100vw - 18px));height:100%;z-index:1300;background:linear-gradient(180deg,#5c4838fa,#556b2ffc);border-inline-start:1px solid rgba(255,255,255,.14);padding:1rem 1rem 1rem 1.15rem;color:#fff;box-shadow:-12px 0 42px #556b2f57;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;box-sizing:border-box;overflow:visible}.chat-panel:after{content:"";position:absolute;top:12px;right:0;width:4px;height:calc(100% - 24px);border-radius:999px;background:linear-gradient(180deg,#d8c8ae2e,#8aa17d1f 52%,#ffffff1f);opacity:.55;pointer-events:none}.chat-panel.receive-message:after{animation:chat-panel-message-edge 1.6s ease}.chat-panel.receive-notification:after{animation:chat-panel-notification-edge 1.6s ease}@keyframes chat-panel-message-edge{0%{opacity:.25;box-shadow:0 0 #8aa17d00}35%{opacity:1;background:linear-gradient(180deg,#8aa17df2,#556b2f85);box-shadow:0 0 24px #8aa17d7a,0 0 36px #556b2f38}to{opacity:.55;box-shadow:0 0 #8aa17d00}}@keyframes chat-panel-notification-edge{0%{opacity:.25;box-shadow:0 0 #d8c8ae00}35%{opacity:1;background:linear-gradient(180deg,#d8c8aef2,#8aa17d85);box-shadow:0 0 24px #d8c8ae85,0 0 36px #8aa17d3d}to{opacity:.55;box-shadow:0 0 #d8c8ae00}}.popup-notification-stack{position:fixed;top:88px;inset-inline-start:24px;z-index:1250;display:grid;gap:12px;width:min(380px,calc(100vw - 48px))}.popup-notification-card{display:grid;gap:10px;border-radius:18px;padding:14px 16px;background:linear-gradient(135deg,#5c4838f5,#556b2ffa);color:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 48px #556b2f3d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.popup-notification-header-row{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.popup-notification-header-main{display:flex;gap:6px;flex-wrap:wrap}.popup-notification-dismiss{border:none;background:transparent;color:#fffc;font-size:1.25rem;line-height:1;cursor:pointer}.popup-notification-dismiss:hover{color:#fff}.popup-notification-body{color:#fff;line-height:1.6;font-weight:700;white-space:pre-wrap}.popup-notification-meta{color:#ffffffb8}.popup-notification-actions{justify-content:flex-start}.popup-notification-stack.compact{top:auto;bottom:18px;inset-inline-start:18px;width:min(360px,calc(100vw - 36px))}.popup-notification-stack.mobile{inset-inline-start:12px;width:min(100%,calc(100vw - 24px));gap:10px}.popup-notification-stack.mobile .popup-notification-card{border-radius:16px;padding:12px 13px}.popup-notification-stack.mobile .notification-actions{justify-content:stretch}.popup-notification-stack.mobile .notification-actions>*{flex:1 1 100%;justify-content:center;text-align:center}.chat-panel.closed{transform:translate(-100%)}.chat-panel.compact{width:min(520px,calc(100vw - 12px));padding:.9rem .9rem .9rem 1rem}.chat-panel.mobile{width:100%;padding:.85rem 14px}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:6px 6px 10px;border-bottom:1px solid rgba(255,255,255,.12)}.chat-header svg{transition:transform .3s ease}html[dir=ltr] .chat-header svg{transform:rotate(180deg)}html[dir=rtl] .chat-header svg{transform:none}html[dir=ltr] .chat-panel.closed{transform:translate(100%)}.chat-panel h2{margin:0;font-size:1.18rem;letter-spacing:.02em}.chat-panel.compact .chat-header,.chat-panel.mobile .chat-header{gap:10px;padding:4px 4px 8px}.chat-panel.mobile .chat-header{align-items:flex-start}.chat-layout{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;overflow:hidden}.chat-panel.compact .chat-layout,.chat-panel.mobile .chat-layout{gap:10px}.chat-threads{display:flex;gap:10px;padding:2px 2px 6px;background:transparent;overflow-x:auto;overflow-y:hidden;min-width:0;flex:0 0 auto;scrollbar-width:thin}.chat-panel.compact .chat-threads,.chat-panel.mobile .chat-threads{gap:8px;padding-bottom:4px}.thread-item{flex:0 0 170px;display:flex;align-items:flex-start;gap:8px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#ffffff0d;color:#fff;padding:10px 12px;margin-bottom:0;cursor:pointer;min-width:0;box-sizing:border-box;margin-inline-start:0;transition:transform .2s ease,border-color .2s ease,background .2s ease}.chat-panel.compact .thread-item{flex-basis:156px;border-radius:14px;padding:9px 10px}.chat-panel.mobile .thread-item{flex-basis:144px;border-radius:14px;padding:9px 10px}.thread-item.active{border-color:#d8c8aebd;background:linear-gradient(180deg,#8aa17d38,#d8c8ae1a);transform:translateY(-1px)}.thread-icon{color:#f4ecdd;margin-top:4px}.thread-main{display:flex;flex-direction:column;align-items:flex-start;min-width:0;flex:1}.thread-title{display:block;width:100%;font-size:.94rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-time{font-size:.76rem;color:#ffffffb8}.thread-badge{background:linear-gradient(135deg,#ef4444,#fb7185);border-radius:999px;min-width:22px;height:22px;padding:0 6px;font-size:.76rem;font-weight:900;display:inline-flex;align-items:center;justify-content:center}.chat-thread-view{flex:1 1 auto;border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:14px;background:linear-gradient(180deg,#111827f5,#1f2937eb);display:flex;flex-direction:column;min-height:0;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.chat-panel.compact .chat-thread-view,.chat-panel.mobile .chat-thread-view{border-radius:18px;padding:12px}.thread-view-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;color:#ececec;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.chat-panel.compact .thread-view-header,.chat-panel.mobile .thread-view-header{align-items:flex-start;flex-wrap:wrap}.thread-view-header strong{font-size:1.04rem}.thread-view-actions{display:flex;align-items:center;gap:8px}.chat-panel.mobile .thread-view-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.thread-muted{color:#b5b5b5;font-size:.84rem}.thread-empty{color:#a6a6a6;font-size:.96rem;padding:18px 8px}.notification-card{display:grid;gap:8px;border:1px solid #3f3f3f;border-radius:12px;background:#242424;padding:10px 12px;margin-bottom:10px}.chat-panel.mobile .notification-card{padding:10px;border-radius:10px}.notification-card.unread{border-color:#6aa4ff;box-shadow:0 0 0 1px #6aa4ff2e}.notification-card.read{opacity:.8}.notification-header-row{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.notification-header-main{display:flex;gap:6px;flex-wrap:wrap}.notification-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:700}.notification-chip.type{background:#3b82f62e;color:#c8defe}.notification-chip.category{background:#22c55e29;color:#c8f2d6}.notification-status{font-size:.72rem;font-weight:700}.notification-status.unread{color:#fca5a5}.notification-status.read{color:#a6a6a6}.notification-body{color:#f4f4f4;line-height:1.65;font-size:.98rem;white-space:pre-wrap}.notification-meta{display:flex;gap:12px;flex-wrap:wrap;color:#a6a6a6;font-size:.72rem}.notification-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chat-panel.mobile .notification-actions{justify-content:stretch}.chat-panel.mobile .notification-actions>*{flex:1 1 100%;justify-content:center;text-align:center}.notification-link-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:6px 10px;background:#fff;color:#1d4ed8;border:1px solid rgba(59,130,246,.28);text-decoration:none;font-weight:700}.popup-notification-card .notification-link-button{background:#fffffff5}.notification-read-button{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:6px 10px;cursor:pointer}.notification-read-button:hover{background:#1d4ed8}.notification-read-button.secondary{background:#fff;color:#1d4ed8;border:1px solid rgba(59,130,246,.28)}.notification-read-button.secondary:hover{background:#eff6ff}.popup-notification-card .notification-read-button.secondary{background:#ffffffeb}.chat-panel.mobile .chat-bubble{max-width:88%}.chat-panel.mobile:after{top:10px;height:calc(100% - 20px)}.chat-panel .messages{flex:1;min-height:0;overflow-y:auto;margin-bottom:.8rem;padding-inline-end:4px;overscroll-behavior:contain}.chat-panel .messages-stack{min-height:100%;display:flex;flex-direction:column;justify-content:flex-end}.chat-panel .input-area{display:flex;flex:0 0 auto;align-items:flex-end;gap:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.chat-panel.mobile .input-area{flex-direction:column;align-items:stretch;gap:8px;padding-top:8px}.chat-panel textarea{flex:1 1 auto;min-width:0;resize:none;min-height:54px;max-height:168px;padding:.85rem .95rem;border-radius:14px;border:1px solid rgba(148,163,184,.26);background-color:#0f172adb;color:#fff;font-size:.98rem;line-height:1.65;overflow-y:hidden;box-sizing:border-box}.chat-panel.mobile textarea{flex:0 0 auto;width:100%;min-height:46px;max-height:148px;padding:.72rem .8rem;font-size:.94rem;line-height:1.5}.chat-panel .input-area button{margin-inline-start:0;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:14px;padding:.8rem 1rem;cursor:pointer;color:#fff;font-weight:800}.chat-panel.mobile .input-area button{width:100%;padding:.72rem .9rem}.chat-message{display:flex;width:100%;margin-bottom:.8rem}.chat-message.user,.chat-message.other{justify-content:flex-start}.chat-bubble{color:#fff;padding:.8rem .95rem;border-radius:16px;max-width:78%;word-wrap:break-word;text-align:start;font-size:1rem;line-height:1.7;position:relative}.chat-bubble.user{margin-left:auto}.chat-bubble.other{margin-right:auto}.chat-panel.compact .chat-bubble{max-width:84%}.chat-bubble.user{background:linear-gradient(135deg,#2563eb,#3b82f6)}.chat-bubble.other{background:linear-gradient(135deg,#475569f5,#334155f0)}.chat-status{font-size:.7em;opacity:.7;margin-left:.5rem}.chat-timestamp{display:block;font-size:.78rem;opacity:.7;margin-top:.25rem}@media(max-width:760px){.chat-panel{width:100%;padding-inline-start:14px;padding-inline-end:14px}.chat-threads{gap:8px}.thread-item{flex-basis:150px}.chat-bubble{max-width:88%}.chat-panel:after{top:10px;height:calc(100% - 20px)}}.side-button{position:absolute;right:-57px;top:50%;transform:translateY(-50%);width:56px;min-height:170px;background:linear-gradient(180deg,#5c4838fa,#556b2ffa);border:1px solid rgba(221,211,195,.28);border-inline-start:none;border-radius:0 18px 18px 0;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease;display:grid;grid-template-rows:auto auto 1fr auto;justify-items:center;align-items:center;gap:10px;padding:10px 8px;box-shadow:0 18px 34px #556b2f47;appearance:none}.chat-panel.compact .side-button{right:-51px;width:50px;min-height:152px;gap:8px;padding:9px 7px}.chat-panel.mobile .side-button{right:-47px;width:46px;min-height:138px;gap:8px;padding:8px 6px}.side-button:hover{box-shadow:0 0 18px #8aa17d57;transform:translateY(-50%) scale(1.05)}.side-button-tab{width:6px;height:34px;border-radius:999px;background:linear-gradient(180deg,#d8c8aed1,#8aa17df5)}.chat-panel.mobile .side-button-tab{height:28px}.side-button-chevron{font-size:.78rem;color:#ffffffe0;line-height:1}.side-button-counts{display:grid;gap:8px;width:100%}.side-counter{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:38px;border-radius:12px;padding:6px 4px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);color:#ffffffb8;font-size:.66rem;font-weight:800}.chat-panel.mobile .side-counter{min-height:34px;padding:5px 3px}.side-counter strong{font-size:.74rem;line-height:1}.side-counter.active.messages{color:#f7f3ea;background:#8aa17d38;border-color:#d8c8ae6b}.side-counter.active.notifications{color:#f8f1e2;background:#d8c8ae33;border-color:#d8c8ae6b}.side-button-total{min-width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;background:linear-gradient(135deg,var(--clinic-accent-strong) 0%,var(--clinic-contrast) 100%);color:#fff;font-size:.76rem;font-weight:900;box-shadow:0 10px 22px #556b2f4d}.chat-panel.mobile .side-button-total{min-width:24px;height:24px;font-size:.72rem}.side-button.receive-message{border-color:#8aa17db8;animation:side-button-message-pulse 1.6s ease}.side-button.receive-notification{border-color:#d8c8aebd;animation:side-button-notification-pulse 1.6s ease}@keyframes side-button-message-pulse{0%{box-shadow:0 0 #8aa17d00}35%{box-shadow:0 0 0 6px #8aa17d1f,0 0 24px #8aa17d6b}to{box-shadow:0 18px 34px #556b2f47}}@keyframes side-button-notification-pulse{0%{box-shadow:0 0 #d8c8ae00}35%{box-shadow:0 0 0 6px #d8c8ae24,0 0 24px #d8c8ae6b}to{box-shadow:0 18px 34px #556b2f47}}html[dir=ltr] .side-button{left:-58px;right:auto;border-inline-start:1px solid rgba(221,211,195,.28);border-inline-end:none;border-radius:18px 0 0 18px}html[dir=ltr] .chat-panel.compact .side-button{left:-52px;right:auto}html[dir=ltr] .chat-panel.mobile .side-button{left:-48px;right:auto}html[dir=ltr] .side-button:hover{transform:translateY(-50%) scale(1.05)}html[dir=ltr] .side-button-tab{background:linear-gradient(180deg,#d8c8aed1,#8aa17df5)}.appointment-page[dir=rtl],.appointment-grid[dir=rtl]{direction:rtl}.appointment-grid[dir=rtl] th,.appointment-grid[dir=rtl] td{text-align:right}.appointment-grid{width:100%;border-collapse:collapse;margin:2rem 0;font-family:inherit}.appointment-grid th,.appointment-grid td{border:1px solid var(--clinic-border-strong);padding:.5rem 1rem;text-align:right}.appointment-grid th{background:var(--clinic-secondary);color:var(--clinic-contrast);font-weight:700}.appointment-grid .available-slot{color:var(--clinic-contrast);background:var(--clinic-surface)}.appointment-grid .status-scheduled{background:var(--clinic-secondary-soft);color:var(--clinic-contrast)}.appointment-grid .status-completed{background:var(--clinic-secondary);color:#388e3c}.appointment-grid .status-cancelled{background:var(--clinic-surface);color:var(--clinic-accent-strong)}.interval-btn{background:none;border:none;color:var(--clinic-accent-strong);cursor:pointer;font-size:1rem;padding:0;font-weight:700}.selected-row td,.selected-row .interval-btn{background:var(--clinic-surface)!important;font-weight:700}.timeline-container{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0}.timeline-item{background:var(--clinic-surface);border-left:4px solid var(--clinic-accent);padding:1rem 1.5rem;border-radius:12px;box-shadow:0 2px 12px rgba(var(--clinic-contrast-rgb),.12);position:relative}.timeline-item.status-completed{border-left-color:var(--clinic-contrast)}.timeline-item.status-cancelled{border-left-color:var(--clinic-accent-strong)}.timeline-time{font-size:.95rem;color:var(--clinic-accent-strong);margin-bottom:.3rem}.timeline-content{font-size:1.05rem;color:var(--clinic-text)}.appointment-page h2{margin-top:2rem;margin-bottom:1.5rem;color:var(--clinic-accent-strong);font-family:inherit}.card{padding:1.25rem;background:var(--clinic-surface-raised);border:1px solid var(--clinic-border);border-radius:12px;color:var(--clinic-text);box-shadow:0 1px 3px rgba(var(--clinic-contrast-rgb),.06)}.read-the-docs{color:var(--clinic-accent-strong)}ai-panel{position:fixed;right:1rem;bottom:1rem;width:400px;height:500px;background:var(--clinic-secondary-soft);color:var(--clinic-text);border:1px solid var(--clinic-accent);border-radius:12px;box-shadow:0 4px 12px rgba(var(--clinic-contrast-rgb),.14);display:flex;flex-direction:column;padding:1rem;z-index:1000}.app-loading-shell{min-height:calc(100vh - 180px);display:grid;place-items:center;gap:.85rem;padding:3rem 1.5rem;color:var(--clinic-accent-strong)}.app-loading-spinner{width:56px;height:56px;border-radius:999px;border:4px solid rgba(var(--clinic-accent-rgb),.18);border-top-color:var(--clinic-accent);animation:app-loading-spin .85s linear infinite}.app-loading-title{font-size:1.05rem;font-weight:800}.app-loading-subtitle{max-width:320px;line-height:1.7;color:var(--clinic-subtle)}.inline-loading-state{display:grid;justify-items:center;gap:.75rem;padding:1.5rem;color:var(--clinic-accent-strong)}.inline-loading-spinner{width:32px;height:32px;border-radius:999px;border:3px solid rgba(var(--clinic-accent-rgb),.16);border-top-color:var(--clinic-accent);animation:app-loading-spin .85s linear infinite}@keyframes app-loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.storage-shell{max-width:1080px;margin:24px auto;padding:20px;display:grid;gap:16px;color:var(--clinic-text)}.hero{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;border-radius:16px;border:1px solid var(--clinic-border);background:linear-gradient(135deg,rgba(var(--clinic-accent-rgb),.08),rgba(var(--clinic-contrast-rgb),.08));padding:18px}.eyebrow{margin:0 0 4px;font-size:12px;font-weight:800;letter-spacing:1px;color:var(--clinic-accent);text-transform:uppercase}.hero h1{margin:0;font-size:28px;color:var(--clinic-contrast)}.hero-text{margin:8px 0 0;color:var(--clinic-subtle);line-height:1.7}.ghost-link,.ghost{background:#fff;border:1px solid var(--clinic-border);color:var(--clinic-contrast);border-radius:10px;padding:8px 12px;font-weight:700;text-decoration:none;cursor:pointer}.auth-card,.panel,.result-panel{border-radius:14px;border:1px solid var(--clinic-border);background:var(--clinic-surface-raised);padding:14px}.auth-card label{display:block;margin-bottom:8px;font-weight:700}.auth-card textarea{width:100%;resize:vertical;padding:10px;border:1px solid var(--clinic-border);border-radius:10px;background:#fff}.auth-actions{margin-top:10px;display:flex;gap:8px}.auth-actions button,.submit,.tab{border:none;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.auth-actions button,.submit{background:linear-gradient(135deg,var(--clinic-accent) 0%,var(--clinic-contrast) 100%);color:#fff}.hint{margin:8px 0 0;font-size:12px;color:var(--clinic-subtle)}.action-tabs{display:flex;gap:8px;margin-bottom:12px}.tab{background:#f6ecfb;color:var(--clinic-contrast);border:1px solid var(--clinic-border)}.tab.active{background:linear-gradient(135deg,var(--clinic-accent) 0%,var(--clinic-contrast) 100%);color:#fff;border-color:transparent}.form-grid{display:none;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.form-grid.active{display:grid}.form-grid label{display:grid;gap:6px}.form-grid label span{font-size:13px;font-weight:700;color:var(--clinic-subtle)}.form-grid input{width:100%;padding:10px;border:1px solid var(--clinic-border);border-radius:10px;background:#fff}.form-grid .full,.submit{grid-column:1 / -1}.result-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.result-head h2{margin:0;color:var(--clinic-contrast)}#resultBox{margin:0;border-radius:10px;border:1px solid var(--clinic-border);background:#fff;padding:12px;min-height:160px;max-height:320px;overflow:auto;direction:ltr;text-align:left}@media(max-width:768px){.storage-shell{padding:12px}.hero{flex-direction:column}}
