:root{--a-paper:#f4efe6;--a-paper-2:#ebe5d7;--a-surface:#fff;--a-ink:#23201b;--a-ink-2:#4f4a3f;--a-ink-3:#8a8275;--a-rule:#dcd5c4;--a-rule-strong:#c8bfa9;--a-accent:#a85a2a;--a-ink-inv:#eceae4;--a-danger-soft:#fca5a5;--a-overlay-white-20:#fff3;--a-overlay-white-15:#ffffff26;--a-overlay-white-10:#ffffff1a;--a-or:#a85a2a;--a-or-bg:#f4dfca;--a-clinic:#2f6d5c;--a-clinic-bg:#dce9de;--a-emergency:#aa3a2c;--a-emergency-bg:#f0d4cd;--a-ward:#6a7a3a;--a-ward-bg:#e4e6cc;--a-oncall:#6c4a8c;--a-oncall-bg:#e5dcee;--a-absence:#747067;--a-absence-bg:#e4e0d7;--a-admin:#3e6487;--a-admin-bg:#d7e1ec;--font-main:"Heebo", system-ui, sans-serif;--font-nav:"Assistant", sans-serif;--font-mono:"JetBrains Mono", monospace;--cell-min-width:120px;--row-label-width:200px}*{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-main);background:var(--a-paper);color:var(--a-ink);-webkit-font-smoothing:antialiased;direction:rtl}body,#root{min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fade-in{animation:.25s ease-out fadeIn}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;overflow-x:auto}.loading,.error{text-align:center;color:var(--a-ink-3);padding:40px}.skel{background:linear-gradient(90deg, color-mix(in srgb, var(--a-ink) 6%, transparent) 0%, color-mix(in srgb, var(--a-ink) 12%, transparent) 50%, color-mix(in srgb, var(--a-ink) 6%, transparent) 100%);background-size:200% 100%;border-radius:4px;height:1em;animation:1.2s ease-in-out infinite skel-shimmer;display:block}.skel-row td{padding-top:14px;padding-bottom:14px}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.a-topbar{background:var(--a-ink);color:var(--a-ink-inv);font-family:var(--font-nav);z-index:40;align-items:center;gap:12px;padding:6px 20px;display:flex;position:sticky;top:0}.a-brand{align-items:center;gap:10px;display:flex}.a-brand-mark{background:var(--a-accent);color:#fff;width:28px;height:28px;font-family:var(--font-nav);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.a-brand-name{color:var(--a-ink-inv);font-size:15px;font-weight:700}.a-brand-sub{color:color-mix(in srgb, var(--a-ink-inv) 55%, transparent);font-size:11px}.a-nav-tabs{gap:4px;margin-inline-start:16px;display:flex}.a-nav-tab{color:color-mix(in srgb, var(--a-ink-inv) 65%, transparent);font-family:var(--font-nav);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.a-nav-tab:hover{background:var(--a-overlay-white-10);color:var(--a-ink-inv)}.a-nav-tab.on{background:var(--a-ink-inv);color:var(--a-ink)}.a-nav-tab svg{flex-shrink:0}.a-topbar-spacer{flex:1}.a-nav-user{color:var(--a-ink-2);align-items:center;gap:8px;font-size:13px;display:flex;position:relative}.a-user-trigger{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;align-items:center;padding:2px;display:inline-flex}.a-user-trigger:hover{background:var(--a-overlay-white-10);border-color:var(--a-overlay-white-20)}.a-user-trigger[aria-expanded=true]{background:var(--a-overlay-white-15);border-color:var(--a-overlay-white-20)}.a-user-trigger:focus-visible{outline:2px solid var(--a-ink-inv);outline-offset:2px}.a-user-menu{top:calc(100% + 6px);background:var(--a-ink);min-width:220px;max-width:min(280px,100vw - 16px);color:var(--a-ink-inv);border:1px solid var(--a-ink);z-index:50;border-radius:10px;padding:10px;position:absolute;inset-inline-end:0;box-shadow:0 8px 24px #0003}.a-user-menu-head{align-items:center;gap:10px;padding:4px 4px 10px;display:flex}.a-avatar--menu{flex-shrink:0;width:40px;height:40px;font-size:15px}.a-user-menu-identity{flex-direction:column;gap:2px;min-width:0;display:flex}.a-user-menu-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.a-user-menu-email{color:color-mix(in srgb, var(--a-ink-inv) 60%, transparent);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.a-user-menu-role{background:var(--a-overlay-white-15);color:color-mix(in srgb, var(--a-ink-inv) 85%, transparent);letter-spacing:.3px;border-radius:99px;align-self:flex-start;margin-top:4px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-flex}.a-user-menu-sep{background:var(--a-overlay-white-15);height:1px;margin:8px 0}.a-user-menu-item{text-align:start;width:100%;color:var(--a-danger-soft);cursor:pointer;font-family:var(--font-nav);background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:13px}.a-user-menu-item:hover:not(:disabled){background:var(--a-overlay-white-10)}.a-user-menu-item:focus-visible{outline:2px solid var(--a-ink-inv);outline-offset:1px}.a-user-menu-item:disabled{opacity:.6;cursor:progress}.a-user-menu-item--neutral{color:var(--a-ink-inv)}.a-user-menu-error{color:var(--a-danger-soft);margin-top:6px;font-size:12px}.a-btn{font-family:var(--font-main);background:var(--a-surface);border:1px solid var(--a-rule-strong);color:var(--a-ink);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.a-btn:hover{background:var(--a-paper-2)}.a-btn--primary{background:var(--a-ink);color:#fff;border-color:var(--a-ink)}.a-btn--primary:hover{background:#000}.a-btn--ghost{border:1px dashed var(--a-rule-strong);background:0 0}.a-topbar .a-btn{border-color:var(--a-overlay-white-15);color:var(--a-ink-inv);background:0 0}.a-topbar .a-btn:hover{background:var(--a-overlay-white-10)}.a-avatar{background:var(--a-clinic-bg);width:32px;height:32px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.a-subhead{flex-wrap:wrap;align-items:center;gap:14px;padding:18px 24px 10px;display:flex}.a-subhead h1{letter-spacing:-.3px;margin:0;font-size:24px;font-weight:700}.a-subhead__range{color:var(--a-ink-3);margin-inline-start:4px;font-size:14px}.a-spacer{flex:1}.a-weeknav{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:10px;display:inline-flex;overflow:hidden}.a-weeknav button{cursor:pointer;font-family:var(--font-main);border:0;border-inline-end:1px solid var(--a-rule);color:var(--a-ink);background:0 0;padding:7px 12px;font-size:14px}.a-weeknav button:last-child{border-inline-end:0}.a-weeknav button:hover{background:var(--a-paper-2)}.a-weeknav .wk-label{color:var(--a-ink-3);font-family:var(--font-mono);border-inline-end:1px solid var(--a-rule);align-items:center;padding:7px 14px;font-size:13px;display:inline-flex}.a-filters{flex-wrap:wrap;align-items:center;gap:8px;padding:0 24px 14px;display:flex}.a-chip-f{background:var(--a-surface);border:1px solid var(--a-rule);color:var(--a-ink-2);cursor:pointer;border-radius:100px;align-items:center;gap:5px;padding:4px 12px;font-size:13px;transition:background .12s;display:inline-flex}.a-chip-f:hover{background:var(--a-paper-2)}.a-chip-f .dot{border-radius:50%;width:8px;height:8px}.a-chip-f.on{background:var(--a-ink);color:#fff;border-color:var(--a-ink)}.a-viewseg{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:100px;display:inline-flex;overflow:hidden}.a-viewseg button{font-family:var(--font-main);color:var(--a-ink-2);cursor:pointer;background:0 0;border:0;padding:5px 14px;font-size:13px}.a-viewseg button.on{background:var(--a-ink);color:#fff}.a-search{background:var(--a-paper);border:1px solid var(--a-rule);border-radius:8px;align-items:center;gap:6px;min-width:220px;padding:6px 12px;display:flex}.a-search input{font-family:var(--font-main);color:var(--a-ink);background:0 0;border:0;outline:none;flex:1;font-size:13px}.a-grid-wrap{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:14px;margin:0 20px 30px;overflow:hidden}.table-wrapper{overflow-x:auto}.schedule-table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}.schedule-table thead th{background:var(--a-paper-2);text-align:center;border-bottom:1px solid var(--a-rule);z-index:2;padding:10px 12px;font-size:13px;font-weight:600;position:sticky;top:0}.schedule-table thead th .dow{font-size:18px;font-weight:700;display:block}.col-date{color:var(--a-ink-3);font-family:var(--font-mono);margin-top:2px;font-size:11px;display:block}.schedule-table thead th.today{background:var(--a-ink);color:#fff}.schedule-table thead th.today .col-date{color:#ffffffb3}.day-note{color:var(--a-accent);margin-top:3px;font-size:11px;font-weight:500;display:block}.schedule-table thead th.today .day-note{color:#ffffffbf}.row-label{width:var(--row-label-width);border-bottom:1px solid var(--a-rule);z-index:1;text-align:start;white-space:nowrap;background:#fff;border-inline-start:4px solid #0000;padding:12px 14px;font-weight:500;position:sticky;right:0}.row-label--operating_room{border-inline-start-color:var(--a-or)}.row-label--clinic{border-inline-start-color:var(--a-clinic)}.row-label--emergency{border-inline-start-color:var(--a-emergency)}.row-label--ward{border-inline-start-color:var(--a-ward)}.row-label--on_call{border-inline-start-color:var(--a-oncall)}.row-label--absence{border-inline-start-color:var(--a-absence)}.row-label--admin{border-inline-start-color:var(--a-admin)}.schedule-cell{vertical-align:top;border-bottom:1px solid var(--a-rule);border-inline-start:1px solid var(--a-rule);min-width:var(--cell-min-width);cursor:pointer;background:#fff;padding:8px;transition:background .12s}.schedule-cell:hover{background:var(--a-paper-2)}.schedule-cell.dim{background:#faf8f2}.schedule-table tbody tr:last-child td{border-bottom:0}.group-head td{background:var(--a-paper);font-family:var(--font-nav);color:var(--a-ink-2);text-transform:uppercase;letter-spacing:1.2px;border-bottom:1px solid var(--a-rule);cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 14px;font-size:11px;font-weight:700}.group-head .cat-pill{border:1px solid var(--a-rule);text-transform:none;letter-spacing:0;background:#fff;border-radius:100px;align-items:center;gap:6px;padding:2px 10px;font-size:11px;display:inline-flex}.group-head .cat-pill .dot{border-radius:50%;width:7px;height:7px;display:inline-block}.group-head .count{font-family:var(--font-mono);color:var(--a-ink-3);margin-inline-start:10px;font-size:11px;font-weight:400}.group-head .caret{float:inline-start;margin-inline-end:6px;transition:transform .2s;display:inline-block}.cell-chips{flex-direction:column;gap:5px;display:flex}.a-chip{background:var(--chip-bg,var(--a-paper-2));border-inline-end:3px solid var(--chip,var(--a-ink-3));cursor:pointer;border-radius:6px;flex-direction:column;padding:5px 9px;font-size:13px;line-height:1.25;transition:background .1s;display:flex}.a-chip:hover{filter:brightness(.97)}.a-chip__name{color:var(--a-ink);font:inherit;cursor:pointer;text-align:start;background:0 0;border:none;padding:0;font-weight:500}.a-chip__role{color:var(--a-ink-3);font-size:10px;font-family:var(--font-mono);letter-spacing:.3px}.a-chip__note{color:var(--a-accent);margin-top:2px;font-size:10px}.a-chip__edit{color:var(--a-ink-3);cursor:pointer;opacity:0;background:0 0;border:none;align-self:flex-end;padding:0 2px;font-size:.65rem;transition:opacity .1s}.a-chip:hover .a-chip__edit{opacity:1}.a-chip.selected{outline:2px solid var(--chip);outline-offset:1px}.a-chip.operating_room{--chip:var(--a-or);--chip-bg:var(--a-or-bg)}.a-chip.clinic{--chip:var(--a-clinic);--chip-bg:var(--a-clinic-bg)}.a-chip.emergency{--chip:var(--a-emergency);--chip-bg:var(--a-emergency-bg)}.a-chip.ward{--chip:var(--a-ward);--chip-bg:var(--a-ward-bg)}.a-chip.on_call{--chip:var(--a-oncall);--chip-bg:var(--a-oncall-bg)}.a-chip.absence{--chip:var(--a-absence);--chip-bg:var(--a-absence-bg)}.a-chip.admin{--chip:var(--a-admin);--chip-bg:var(--a-admin-bg)}.cell-add-hint{border:1px dashed var(--a-rule-strong);width:22px;height:22px;color:var(--a-ink-3);cursor:pointer;opacity:0;border-radius:4px;justify-content:center;align-items:center;font-size:16px;transition:opacity .15s;display:inline-flex}.schedule-cell:hover .cell-add-hint{opacity:1}.a-monthly-wrap{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:14px;margin:0 20px 30px;overflow:hidden}.schedule-table--month{font-size:13px}.schedule-table--month thead th{min-width:52px;max-width:52px;color:var(--a-ink-2);padding:6px 4px 8px;font-size:12px}.schedule-table--month thead th .dow{font-size:14px}.month-col-date{text-align:center}.month-col-day{color:var(--a-ink-3);font-size:10px;font-family:var(--font-mono);margin-top:2px;display:block}.month-col-num{color:var(--a-ink);font-size:16px;font-weight:700;line-height:1.1;display:block}.schedule-table--month thead th.weekend{background:#efe9dc}.schedule-table--month thead th.weekend .month-col-num{color:var(--a-ink-3)}.schedule-table--month thead th.holiday{background:#fdf4ec}.schedule-table--month thead th.holiday .month-col-num{color:var(--a-accent)}.schedule-table--month thead th.today{background:var(--a-ink);color:#fff}.schedule-table--month thead th.today .month-col-day,.schedule-table--month thead th.today .month-col-num{color:#fff}.month-cell{vertical-align:top;cursor:pointer;min-width:52px;max-width:52px;padding:3px}.month-cell.weekend{background:#fbfaf5}.month-cell.holiday{background:#fdf8f0}.month-cell.month-today{background:#fbf5ea}.month-cell .cell-chips{gap:2px}.mo-pill{background:var(--chip-bg,var(--a-paper-2));border-inline-end:2px solid var(--chip,var(--a-ink-3));color:var(--a-ink);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;text-align:start;background:0 0;background:var(--chip-bg,var(--a-paper-2));border:none;border-inline-end:2px solid var(--chip,var(--a-ink-3));border-radius:4px;width:100%;padding:2px 5px;font-size:11px;font-weight:500;line-height:1.25;display:block;overflow:hidden}.mo-pill.selected{outline:2px solid var(--chip);outline-offset:1px;z-index:1;position:relative}.mo-pill.operating_room{--chip:var(--a-or);--chip-bg:var(--a-or-bg)}.mo-pill.clinic{--chip:var(--a-clinic);--chip-bg:var(--a-clinic-bg)}.mo-pill.emergency{--chip:var(--a-emergency);--chip-bg:var(--a-emergency-bg)}.mo-pill.ward{--chip:var(--a-ward);--chip-bg:var(--a-ward-bg)}.mo-pill.on_call{--chip:var(--a-oncall);--chip-bg:var(--a-oncall-bg)}.mo-pill.absence{--chip:var(--a-absence);--chip-bg:var(--a-absence-bg)}.mo-pill.admin{--chip:var(--a-admin);--chip-bg:var(--a-admin-bg)}.schedule-table thead th.saturday{background:var(--a-paper);color:var(--a-ink-2)}.schedule-table thead th.saturday .dow{color:var(--a-oncall)}.schedule-table thead th.saturday .col-date{color:var(--a-ink-3)}.sat-badge{font-size:9px;font-family:var(--font-nav);color:var(--a-oncall);letter-spacing:.3px;opacity:.85;margin-top:3px;font-weight:600;display:block}.saturday-cell{background:#fcfbf9}.saturday-cell:hover{background:#f5f3ef}.schedule-table--month thead th.saturday{background:var(--a-paper)}.schedule-table--month thead th.saturday .month-col-num{color:var(--a-oncall)}.schedule-table--month thead th.saturday .month-col-day{color:var(--a-oncall);opacity:.6}.month-cell.saturday-cell{background:#fcfbf9}.month-cell.saturday-cell:hover{background:#f5f3ef}body[data-density=comfortable] .schedule-cell{padding:10px}body[data-density=comfortable] .a-chip{padding:7px 11px}body[data-density=comfortable] .cell-chips{gap:7px}body[data-density=comfortable] .month-cell{padding:5px 4px}body[data-density=comfortable] .month-cell .cell-chips{gap:3px}body[data-density=normal] .schedule-cell{padding:8px}body[data-density=normal] .a-chip{padding:5px 9px;font-size:13px}body[data-density=normal] .cell-chips{gap:5px}body[data-density=normal] .month-cell{padding:3px}body[data-density=normal] .month-cell .cell-chips{gap:2px}body[data-density=compact] .schedule-cell{padding:4px}body[data-density=compact] .a-chip{padding:3px 7px;font-size:12px}body[data-density=compact] .a-chip__role{display:none}body[data-density=compact] .cell-chips{gap:3px}body[data-density=compact] .month-cell{padding:2px}body[data-density=compact] .mo-pill{padding:1px 4px;font-size:10px}body[data-density=compact] .month-cell .cell-chips{gap:1px}.a-drawer{border-inline-end:1px solid var(--a-rule);z-index:70;background:#fff;flex-direction:column;gap:16px;width:380px;height:100vh;padding:24px;display:flex;position:fixed;top:0;left:0;overflow-y:auto;box-shadow:4px 0 30px #0000001a}.a-drawer h2{margin:0;font-size:22px}.a-drawer-sub{color:var(--a-ink-3);font-size:13px}.a-drawer-head{align-items:center;gap:12px;display:flex}.a-avatar-lg{background:var(--a-clinic-bg);width:52px;height:52px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.a-drawer-close{cursor:pointer;color:var(--a-ink-3);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;display:flex;position:absolute;top:14px;left:14px}.a-drawer-close:hover{background:var(--a-paper-2)}.a-drawer-stats{background:var(--a-paper);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;display:grid}.a-stat{text-align:center}.a-stat b{font-size:20px;font-weight:700;line-height:1.1;display:block}.a-stat span{color:var(--a-ink-3);font-size:11px}.a-drawer-day{border:1px solid var(--a-rule);border-radius:10px;padding:10px 12px}.a-drawer-day .dh{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.a-drawer-day .dh .dow{font-size:14px;font-weight:600}.a-drawer-day .dh .date{font-family:var(--font-mono);color:var(--a-ink-3);font-size:11px}.a-drawer-day.empty{opacity:.55}.a-drawer-day .empty-label{color:var(--a-ink-3);font-size:12px}.a-drawer-actions{gap:8px;margin-top:4px;display:flex}.a-drawer-actions .a-btn{flex:1;justify-content:center}.a-page{border:1px solid var(--a-rule);background:#fff;border-radius:14px;margin:0 20px 30px;overflow:hidden}.a-page-head{border-bottom:1px solid var(--a-rule);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.a-page-head h2{margin:0;font-size:16px;font-weight:600}.a-table{border-collapse:collapse;width:100%;font-size:14px}.a-table th,.a-table td{text-align:start;border-bottom:1px solid var(--a-rule);padding:12px 16px}.a-table th{color:var(--a-ink-3);text-transform:uppercase;letter-spacing:1px;background:var(--a-paper);font-size:12px;font-weight:500}.a-table tbody tr:hover{background:var(--a-paper-2)}.a-table tbody tr:last-child td{border-bottom:0}.a-table .cell-name{align-items:center;gap:10px;font-weight:500;display:flex}.role-pill{background:var(--a-paper-2);color:var(--a-ink-2);border-radius:100px;padding:2px 10px;font-size:12px;display:inline-block}.role-pill.attending{background:var(--a-clinic-bg);color:var(--a-clinic)}.role-pill.senior_resident{background:var(--a-admin-bg);color:var(--a-admin)}.role-pill.resident{background:var(--a-ward-bg);color:var(--a-ward)}.role-pill.intern{background:var(--a-absence-bg);color:var(--a-absence)}.row-actions{gap:6px;display:flex}.i-btn{border:1px solid var(--a-rule);cursor:pointer;width:28px;height:28px;color:var(--a-ink-3);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.i-btn:hover{background:var(--a-paper);color:var(--a-ink)}.staff-table__row--inactive td{color:var(--a-ink-3)}.staff-screen__toggle{color:var(--a-ink-2);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.drag-handle{color:var(--a-ink-3);font-family:var(--font-mono);-webkit-user-select:none;user-select:none;width:24px}.mono{font-family:var(--font-mono);color:var(--a-ink-3);font-size:12px}.tag-chip{background:var(--a-paper-2);color:var(--a-ink-2);border-radius:12px;padding:2px 8px;font-size:12px;line-height:1.4;display:inline-block}.tag-chip--custom{border:1px dashed var(--a-rule);cursor:pointer;background:0 0}.tag-chip--custom:hover{background:var(--a-paper-2)}.tag-editor{flex-direction:column;gap:8px;display:flex}.tag-editor__canonical{flex-wrap:wrap;gap:6px;display:flex}.tag-editor__custom{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag-editor__check{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.tag-editor__check input[type=checkbox]{accent-color:var(--a-clinic)}.tag-editor__custom input[type=text]{border:1px solid var(--a-rule);background:var(--a-surface);color:var(--a-ink);border-radius:12px;min-width:120px;padding:3px 8px;font-size:12px}.modal-backdrop{z-index:300;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-backdrop--transparent{background:0 0}.modal{border:1px solid var(--a-rule);background:#fff;border-radius:12px;flex-direction:column;gap:10px;width:340px;max-height:80vh;padding:20px;display:flex;box-shadow:0 8px 32px #0000001f}.modal__title{font-size:15px;font-weight:600}.modal__search{background:var(--a-paper);border:1px solid var(--a-rule);width:100%;color:var(--a-ink);font-family:var(--font-main);border-radius:8px;padding:8px 12px;font-size:13px}.modal__list{flex:1;list-style:none;overflow-y:auto}.modal__item{text-align:right;border:none;border-bottom:1px solid var(--a-rule);width:100%;color:var(--a-ink);font-family:var(--font-main);cursor:pointer;background:0 0;padding:10px 12px;font-size:13px}.modal__item:hover{background:var(--a-paper-2)}.form-field{flex-direction:column;gap:4px;display:flex}.form-field label{color:var(--a-ink-2);font-size:13px}.form-field input,.form-field select{border:1px solid var(--a-rule);background:var(--a-surface);color:var(--a-ink);font-size:13px;font-family:var(--font-main);border-radius:8px;padding:8px 10px}.form-field input:focus,.form-field select:focus{border-color:var(--a-accent);outline:none}.confirm-dialog__actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.confirm-dialog__btn--danger{background:var(--a-emergency-bg);color:var(--a-emergency);border-color:var(--a-emergency)}.confirm-dialog__btn--danger:hover{background:var(--a-emergency);color:#fff}.confirm-dialog__body{color:var(--a-ink-2);margin:8px 0 0;font-size:13px;line-height:1.5}.popover{z-index:200;border:1px solid var(--a-rule);background:#fff;border-radius:10px;flex-direction:column;gap:4px;min-width:210px;padding:10px;display:flex;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000001f}.popover__name{padding:2px 4px;font-size:13px;font-weight:600}.popover__action{border:1px solid var(--a-rule);color:var(--a-ink);font-family:var(--font-main);cursor:pointer;text-align:right;background:0 0;border-radius:6px;padding:5px 10px;font-size:13px}.popover__action:hover{background:var(--a-paper-2)}.popover__action--danger{border-color:var(--a-emergency);color:var(--a-emergency)}.popover__section-label{color:var(--a-ink-3);margin-top:4px;font-size:11px}.popover__roles{flex-wrap:wrap;gap:3px;max-height:120px;display:flex;overflow-y:auto}.popover__role{border:1px solid var(--a-rule);color:var(--a-ink-2);font-family:var(--font-main);cursor:pointer;background:0 0;border-radius:4px;padding:2px 6px;font-size:11px}.popover__role--active{border-color:var(--a-clinic);color:var(--a-clinic)}.popover__days{gap:4px;display:flex}.popover__day{border:1px solid var(--a-rule);color:var(--a-ink-2);font-family:var(--font-main);cursor:pointer;background:0 0;border-radius:4px;flex:1;padding:3px;font-size:11px}.popover__day--active{border-color:var(--a-or);color:var(--a-or)}.toast{background:var(--a-emergency);color:#fff;z-index:400;border-radius:8px;align-items:center;gap:12px;padding:10px 18px;font-size:13px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0003}.toast__close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1rem}.i-svg{flex-shrink:0;width:16px;height:16px}.m-shell{display:none}@media (width<=767px){.a-topbar,.a-drawer,.popover,.main-content{display:none!important}.m-shell{background:var(--a-paper);flex-direction:column;flex:1;display:flex}.m-appbar{z-index:40;background:var(--a-surface);border-bottom:1px solid var(--a-rule);align-items:center;gap:10px;padding:10px 14px;display:flex;position:sticky;top:0}.m-brand{align-items:center;gap:8px;display:flex}.m-brand-mark{background:var(--a-accent);color:#fff;width:26px;height:26px;font-family:var(--font-nav);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.m-brand-name{font-size:15px;font-weight:700;line-height:1.2}.m-brand-sub{color:var(--a-ink-3);font-size:11px;font-weight:400;display:block}.m-spc{flex:1}.m-avatar{background:var(--a-clinic-bg);width:36px;height:36px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.m-datenav{background:var(--a-surface);border-bottom:1px solid var(--a-rule);z-index:39;padding:10px 14px 12px;position:sticky;top:57px}.m-datenav-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.m-month-label{letter-spacing:-.2px;font-size:18px;font-weight:700}.m-navbtn{background:var(--a-paper);border:1px solid var(--a-rule);width:34px;height:34px;color:var(--a-ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.m-today-btn{background:var(--a-paper);border:1px solid var(--a-rule);cursor:pointer;color:var(--a-ink);border-radius:8px;padding:6px 12px;font-family:inherit;font-size:13px}.m-daystrip{scrollbar-width:none;gap:6px;margin:0 -14px;padding:0 14px;display:flex;overflow-x:auto}.m-daystrip::-webkit-scrollbar{display:none}.m-day{text-align:center;background:var(--a-paper);border:1px solid var(--a-rule);cursor:pointer;border-radius:12px;flex:none;min-width:48px;padding:8px 6px 10px;font-family:inherit;transition:background .12s;position:relative}.m-day-dow{color:var(--a-ink-3);font-size:11px;font-family:var(--font-mono);line-height:1;display:block}.m-day-num{color:var(--a-ink);margin-top:4px;font-size:20px;font-weight:700;line-height:1.1;display:block}.m-day-dot{background:var(--a-accent);border-radius:50%;width:5px;height:5px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.m-day--weekend{background:var(--a-paper-2)}.m-day--weekend .m-day-num{color:var(--a-ink-3)}.m-day--today{border-color:var(--a-accent);background:#fdf4ec}.m-day--today .m-day-num{color:var(--a-accent)}.m-day--selected{background:var(--a-ink);border-color:var(--a-ink)}.m-day--selected .m-day-num,.m-day--selected .m-day-dow{color:#fff}.m-day--selected .m-day-dot{background:#fff}.m-viewseg-wrap{align-items:center;gap:10px;padding:12px 14px 0;display:flex}.m-viewseg{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:10px;padding:3px;display:inline-flex}.m-viewseg button{color:var(--a-ink-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 14px;font-family:inherit;font-size:13px}.m-viewseg button.on{background:var(--a-ink);color:#fff}.m-day-note-label{color:var(--a-accent);font-size:12px;font-weight:500}.m-edit-banner{border:1px solid var(--a-accent);color:#6f3c12;background:#fff4e4;border-radius:10px;align-items:center;gap:8px;margin:12px 14px 0;padding:10px 12px;font-size:12px;line-height:1.4;display:flex}.m-edit-banner__pencil{background:var(--a-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:inline-flex}.m-content{flex:1}.m-loading{text-align:center;color:var(--a-ink-3);padding:40px}.m-list{flex-direction:column;gap:14px;padding:12px 14px 120px;display:flex}.m-cat{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:14px;overflow:hidden}.m-cat-head{background:var(--a-paper-2);border-bottom:1px solid var(--a-rule);text-transform:uppercase;letter-spacing:1.2px;font-size:11px;font-family:var(--font-nav);color:var(--a-ink-2);align-items:center;gap:8px;padding:10px 14px;font-weight:700;display:flex}.m-cat-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.m-cat-count{font-family:var(--font-mono);color:var(--a-ink-3);letter-spacing:0;text-transform:none;margin-inline-start:auto;font-size:11px;font-weight:400}.m-slot{border-bottom:1px solid var(--a-rule);cursor:pointer;flex-direction:column;gap:8px;min-height:54px;padding:12px 14px;transition:background .12s;display:flex}.m-slot:last-child{border-bottom:0}.m-slot:active{background:var(--a-paper-2)}.m-slot-head{color:var(--a-ink);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.m-slot-bar{border-radius:2px;flex-shrink:0;align-self:stretch;width:3px;min-height:14px}.m-slot-bar.operating_room{background:var(--a-or)}.m-slot-bar.clinic{background:var(--a-clinic)}.m-slot-bar.emergency{background:var(--a-emergency)}.m-slot-bar.ward{background:var(--a-ward)}.m-slot-bar.on_call{background:var(--a-oncall)}.m-slot-bar.absence{background:var(--a-absence)}.m-slot-bar.admin{background:var(--a-admin)}.m-slot-chev{color:var(--a-ink-3);flex-shrink:0;margin-inline-start:auto;font-size:16px}.m-slot-people{flex-wrap:wrap;gap:6px;display:flex}.m-slot-empty{color:var(--a-ink-3);font-size:12px}.m-person{background:var(--chip-bg,var(--a-paper-2));border-inline-end:3px solid var(--chip,var(--a-ink-3));border-radius:8px;flex-direction:column;padding:6px 10px 7px;font-size:13px;line-height:1.3;display:inline-flex}.m-person .n{color:var(--a-ink);font-weight:500}.m-person .r{color:var(--a-ink-3);font-size:10px;font-family:var(--font-mono)}.m-person.operating_room{--chip:var(--a-or);--chip-bg:var(--a-or-bg)}.m-person.clinic{--chip:var(--a-clinic);--chip-bg:var(--a-clinic-bg)}.m-person.emergency{--chip:var(--a-emergency);--chip-bg:var(--a-emergency-bg)}.m-person.ward{--chip:var(--a-ward);--chip-bg:var(--a-ward-bg)}.m-person.on_call{--chip:var(--a-oncall);--chip-bg:var(--a-oncall-bg)}.m-person.absence{--chip:var(--a-absence);--chip-bg:var(--a-absence-bg)}.m-person.admin{--chip:var(--a-admin);--chip-bg:var(--a-admin-bg)}.m-staffcard{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.m-staffcard-head{align-items:center;gap:10px;display:flex}.m-staffcard-av{background:var(--a-clinic-bg);width:40px;height:40px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.m-staffcard-name{font-size:15px;font-weight:600}.m-staffcard-role{color:var(--a-ink-3);margin-top:1px;font-size:11px}.m-staffcard-rows{flex-direction:column;gap:6px;display:flex}.m-staffcard-row{background:var(--a-paper);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.m-staffcard-row-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.m-screen-list{flex-direction:column;gap:8px;padding:14px 14px 120px;display:flex}.m-screen-header{letter-spacing:-.3px;border-bottom:1px solid var(--a-rule);margin-bottom:4px;padding:0 2px 6px;font-size:22px;font-weight:700}.m-types-cat-head{text-transform:uppercase;letter-spacing:1.2px;font-size:11px;font-family:var(--font-nav);color:var(--a-ink-2);align-items:center;gap:8px;padding:10px 2px 4px;font-weight:700;display:flex}.m-rowcard{background:var(--a-surface);border:1px solid var(--a-rule);border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.m-rowcard-av{background:var(--a-clinic-bg);width:40px;height:40px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.m-rowcard-info{flex:1;min-width:0}.m-rowcard-name{font-size:14px;font-weight:500}.m-rowcard-meta{color:var(--a-ink-3);margin-top:2px;font-size:12px}.m-rowcard-meta--mono{font-family:var(--font-mono);font-size:11px}.m-fab{bottom:76px;z-index:45;background:var(--a-ink);color:#fff;height:48px;font-family:var(--font-main);cursor:pointer;border:0;border-radius:24px;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex;position:fixed;inset-inline-end:16px;box-shadow:0 6px 18px #00000038}.m-fab--editing{background:var(--a-accent)}.m-bottomnav{bottom:0;background:var(--a-surface);border-top:1px solid var(--a-rule);z-index:40;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));display:flex;position:fixed;inset-inline:0}.m-bottomnav button{color:var(--a-ink-3);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:3px;min-height:52px;padding:8px 4px;font-family:inherit;font-size:11px;display:flex}.m-bottomnav button.on{color:var(--a-ink)}.m-bottomnav button.on .i-svg{color:var(--a-accent)}.m-bottomnav .i-svg{width:20px;height:20px}.m-backdrop{z-index:90;background:#1d1e2273;animation:.18s mFadeBackdrop;position:fixed;inset:0}@keyframes mFadeBackdrop{0%{opacity:0}to{opacity:1}}.m-sheet{inset-inline:0;z-index:91;background:var(--a-surface);max-height:85vh;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;animation:.22s cubic-bezier(.3,.7,.2,1) mSlideSheet;position:fixed;bottom:0;overflow-y:auto;box-shadow:0 -8px 32px #0000002e}@keyframes mSlideSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.m-sheet-grab{background:var(--a-rule-strong);border-radius:2px;width:40px;height:4px;margin:10px auto 2px}.m-sheet-head{border-bottom:1px solid var(--a-rule);padding:14px 18px 10px}.m-sheet-eyebrow{text-transform:uppercase;letter-spacing:1.2px;color:var(--a-ink-3);font-size:11px;font-family:var(--font-nav);align-items:center;gap:6px;font-weight:600;display:flex}.m-sheet-eyebrow-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.m-sheet-title{letter-spacing:-.2px;margin-top:4px;font-size:19px;font-weight:700}.m-sheet-sub{color:var(--a-ink-3);margin-top:2px;font-size:13px}.m-sheet-body{flex-direction:column;gap:10px;padding:14px 18px 18px;display:flex}.m-sheet-section-label{text-transform:uppercase;letter-spacing:1.2px;color:var(--a-ink-3);font-size:11px;font-family:var(--font-nav);margin-top:4px;font-weight:600}.m-sheet-row{background:var(--a-paper);border:1px solid var(--a-rule);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.m-sheet-av{background:var(--a-clinic-bg);width:38px;height:38px;color:var(--a-clinic);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.m-sheet-row-info{flex:1;min-width:0}.m-sheet-row-name{font-size:14px;font-weight:500}.m-sheet-row-role{color:var(--a-ink-3);margin-top:1px;font-size:11px}.m-sheet-remove{border:1px solid var(--a-rule);width:40px;height:40px;color:var(--a-emergency);cursor:pointer;background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.m-sheet-remove:hover{background:#fbeeea}.m-sheet-empty{color:var(--a-ink-3);font-size:13px;font-style:italic}.m-sheet-add-btn{border:1px dashed var(--a-rule-strong);color:var(--a-ink-2);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:8px;width:100%;padding:13px 14px;font-family:inherit;font-size:14px;display:flex}.m-sheet-add-btn:hover{background:var(--a-paper)}.m-sheet-add-plus{background:var(--a-ink);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;font-weight:700;display:inline-flex}.m-sheet-actions{border-top:1px solid var(--a-rule);gap:10px;margin-top:4px;padding:12px 18px 0;display:flex}.m-sheet-btn{cursor:pointer;border:1px solid var(--a-rule-strong);color:var(--a-ink);background:#fff;border-radius:10px;flex:1;padding:12px;font-family:inherit;font-size:14px;font-weight:500}.m-sheet-btn--primary{background:var(--a-ink);color:#fff;border-color:var(--a-ink)}}
