:root{--brand-50:#eef4ff;--brand-100:#dce8ff;--brand-200:#b6cdff;--brand-300:#86aaff;--brand-400:#5c86f7;--brand-500:#3d63e8;--brand-600:#2f4bcc;--brand-700:#2739a3;--brand-800:#1f2e7f;--brand-900:#1a2560;--gray-0:#fff;--gray-50:#f7f8fa;--gray-100:#eef0f4;--gray-200:#e1e4ea;--gray-300:#cbd0da;--gray-400:#a4abb9;--gray-500:#6b7280;--gray-600:#5c6270;--gray-700:#454a56;--gray-800:#2c303a;--gray-900:#191b22;--status-success-solid:#1a8a5f;--status-warning-solid:#a4650a;--status-danger-solid:#c22c3f;--status-info-solid:#2f6fd6;--status-neutral-solid:#5c6270;--status-violet-solid:#7042c9;--status-success:var(--status-success-solid);--status-warning:var(--status-warning-solid);--status-danger:var(--status-danger-solid);--status-info:var(--status-info-solid);--status-neutral:var(--status-neutral-solid);--status-violet:var(--status-violet-solid);--status-success-bg:#e4f7ee;--status-warning-bg:#fdf1de;--status-danger-bg:#fbe6e9;--status-info-bg:#e8f0fd;--status-neutral-bg:#eef0f4;--status-violet-bg:#f1e9fc;--chip-success-bg:var(--status-success-bg);--chip-success-text:var(--status-success);--chip-warning-bg:var(--status-warning-bg);--chip-warning-text:var(--status-warning);--chip-danger-bg:var(--status-danger-bg);--chip-danger-text:var(--status-danger);--chip-info-bg:var(--status-info-bg);--chip-info-text:var(--status-info);--chip-neutral-bg:var(--status-neutral-bg);--chip-neutral-text:var(--status-neutral);--chip-violet-bg:var(--status-violet-bg);--chip-violet-text:var(--status-violet);--bg-app:var(--gray-50);--bg-surface:var(--gray-0);--bg-surface-raised:var(--gray-0);--bg-subtle:var(--gray-50);--bg-hover:var(--gray-100);--bg-sidebar:var(--gray-0);--bg-sidebar-hover:var(--gray-100);--bg-sidebar-active:var(--brand-50);--bg-sidebar-chip:var(--gray-100);--bg-sidebar-chip-hover:var(--gray-200);--border-sidebar:var(--border-default);--border-sidebar-chip:var(--border-strong);--text-sidebar:var(--gray-600);--text-sidebar-strong:var(--gray-900);--text-sidebar-muted:var(--gray-500);--text-sidebar-faint:var(--gray-400);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-on-brand:#fff;--border-default:var(--gray-200);--border-strong:var(--gray-300);--focus-ring:#3d63e8;--accent-soft-bg:var(--brand-50);--accent-soft-bg-strong:var(--brand-100);--accent-soft-text:var(--brand-700);--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Consolas, monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.9375rem;--fs-md:1rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--fs-3xl:2.25rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.25;--lh-normal:1.5;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:999px;--shadow-xs:0 1px 2px #14163a0a, 0 4px 12px -4px #14163a1a;--shadow-sm:0 2px 4px #14163a0d, 0 8px 20px -6px #14163a24;--shadow-md:0 4px 8px #14163a0f, 0 16px 36px -8px #14163a2e;--shadow-lg:0 8px 16px #14163a14, 0 28px 64px -12px #14163a3d;--shadow-drop-md:0 10px 20px #14163a29;--radius-modal:18px;--table-cell-padding-y:14px;--container-gap:var(--sp-6);--container-gap-lg:var(--sp-8);--table-row-gap:10px;--btn-primary-bg:linear-gradient(135deg, var(--brand-500), var(--brand-700));--btn-primary-shadow:inset 0 1px 0 #ffffff29, 0 2px 8px -2px #3d63e873;--btn-primary-shadow-hover:inset 0 1px 0 #ffffff2e, 0 6px 16px -3px #3d63e88c;--font-heading:var(--font-sans);--sidebar-width:260px;--topbar-height:64px;--z-sidebar:100;--z-topbar:90;--z-overlay:500;--z-modal:510;--z-toast:600}:root[data-theme=dark]{--bg-sidebar:#14163a;--bg-sidebar-hover:#1e2150;--bg-sidebar-active:#2a2d6b;--bg-sidebar-chip:#ffffff0f;--bg-sidebar-chip-hover:#ffffff1a;--border-sidebar:#ffffff14;--border-sidebar-chip:#ffffff24;--text-sidebar:#c7c9e8;--text-sidebar-strong:#f5f6fe;--text-sidebar-muted:#9ea1d4;--text-sidebar-faint:#6b6fa3;--bg-app:#0e0f22;--bg-surface:#1a1c34;--bg-surface-raised:#22254a;--bg-subtle:#262a4d;--bg-hover:#323768;--text-primary:#f5f6fe;--text-secondary:#c3c8ea;--text-muted:#9298c2;--border-default:#3d4178;--border-strong:#565bab;--accent-soft-bg:#5c86f729;--accent-soft-bg-strong:#5c86f74d;--accent-soft-text:#b7c6ff;--status-success:#6fe3ac;--status-warning:#f5b556;--status-danger:#ff8a94;--status-info:#8ab4ff;--status-neutral:#c3c8ea;--status-violet:#c9a8f5;--chip-success-bg:#2dbf802e;--chip-warning-bg:#e09e292e;--chip-danger-bg:#e0445833;--chip-info-bg:#4282f033;--chip-neutral-bg:#9297c22e;--chip-violet-bg:#9664e633;--shadow-xs:0 1px 2px #0000004d, 0 4px 14px -4px #00000073;--shadow-sm:0 2px 4px #0000004d, 0 8px 22px -6px #00000080;--shadow-md:0 4px 8px #00000059, 0 16px 40px -8px #0009;--shadow-lg:0 8px 16px #0006, 0 28px 70px -12px #000000b3;--shadow-drop-md:0 10px 22px #0000008c}:root[data-design=original]{--radius-modal:var(--radius-lg);--table-cell-padding-y:var(--sp-3);--container-gap:var(--sp-4);--container-gap-lg:var(--sp-5);--table-row-gap:0px;--btn-primary-bg:var(--brand-600);--btn-primary-shadow:none;--btn-primary-shadow-hover:none;--shadow-xs:0 1px 2px #14163a0f;--shadow-sm:0 2px 6px #14163a14;--shadow-md:0 8px 24px #14163a1f;--shadow-lg:0 16px 48px #14163a2e;--shadow-drop-md:0 8px 24px #14163a1f}:root[data-theme=dark][data-design=original]{--shadow-xs:0 1px 2px #0006;--shadow-sm:0 2px 6px #00000073;--shadow-md:0 8px 24px #0000008c;--shadow-lg:0 16px 48px #000000a6;--shadow-drop-md:0 8px 24px #0000008c}:root[data-design=soft-luxury]{--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-modal:26px;--shadow-xs:0 2px 4px #3c285a0d, 0 10px 24px -8px #3c285a24;--shadow-sm:0 2px 6px #3c285a0f, 0 14px 30px -8px #3c285a29;--shadow-md:0 6px 12px #3c285a12, 0 22px 44px -10px #3c285a33;--shadow-lg:0 10px 20px #3c285a17, 0 32px 72px -14px #3c285a42;--shadow-drop-md:0 12px 24px #3c285a2e;--table-cell-padding-y:16px;--container-gap:var(--sp-8);--container-gap-lg:var(--sp-10);--table-row-gap:14px;--font-heading:Georgia, "Iowan Old Style", "Palatino Linotype", Palatino, serif;--brand-50:#f5f1fd;--brand-100:#e8dffb;--brand-200:#d2c0f7;--brand-300:#b598ef;--brand-400:#9b74e6;--brand-500:#7c53db;--brand-600:#6a41c9;--brand-700:#5732a3;--brand-800:#43267d;--brand-900:#331d5e;--btn-primary-shadow:inset 0 1px 0 #ffffff2e, 0 3px 10px -2px #7c53db80;--btn-primary-shadow-hover:inset 0 1px 0 #ffffff38, 0 8px 20px -4px #7c53db99;--focus-ring:#7c53db}:root[data-theme=dark][data-design=soft-luxury]{--accent-soft-bg:#9b74e62e;--accent-soft-bg-strong:#9b74e652;--accent-soft-text:#cdb6f5}:root[data-design=sharp-corporate]{--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-modal:10px;--shadow-xs:0 1px 2px #0f172a14;--shadow-sm:0 1px 3px #0f172a1a;--shadow-md:0 2px 6px #0f172a1f;--shadow-lg:0 4px 12px #0f172a29;--shadow-drop-md:0 4px 10px #0f172a2e;--table-cell-padding-y:10px;--container-gap:var(--sp-3);--container-gap-lg:var(--sp-4);--table-row-gap:6px;--border-default:#d3d7e0;--border-strong:#a8afc0;--btn-primary-bg:var(--brand-700);--btn-primary-shadow:none;--btn-primary-shadow-hover:none}:root[data-theme=dark][data-design=sharp-corporate]{--border-default:#454a7d;--border-strong:#6468a0}:root[data-design=vibrant-modern]{--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-modal:22px;--shadow-xs:0 2px 4px #10183c0f, 0 6px 16px -4px #f5591f29;--shadow-sm:0 2px 6px #10183c12, 0 10px 24px -6px #f5591f33;--shadow-md:0 6px 14px #10183c14, 0 20px 44px -10px #f5591f42;--shadow-lg:0 10px 22px #10183c1a, 0 32px 72px -14px #f5591f52;--shadow-drop-md:0 12px 26px #f5591f4d;--container-gap:var(--sp-6);--container-gap-lg:var(--sp-10);--table-row-gap:10px;--brand-50:#fff2ed;--brand-100:#ffe0d1;--brand-200:#ffbfa3;--brand-300:#ff9970;--brand-400:#ff7a47;--brand-500:#f5591f;--brand-600:#d6440f;--brand-700:#ad330a;--brand-800:#822608;--brand-900:#5c1a06;--btn-primary-bg:linear-gradient(135deg, var(--brand-400), var(--brand-600));--btn-primary-shadow:inset 0 1px 0 #fff3, 0 3px 12px -2px #f5591f8c;--btn-primary-shadow-hover:inset 0 1px 0 #ffffff3d, 0 10px 24px -4px #f5591fa6;--focus-ring:#f5591f}:root[data-theme=dark][data-design=vibrant-modern]{--accent-soft-bg:#ff7a472e;--accent-soft-bg-strong:#ff7a4752;--accent-soft-text:#ffb28f}:root[data-design=minimal-editorial]{--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-modal:22px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 1px 3px #0f172a0d;--shadow-md:0 2px 8px #0f172a0f;--shadow-lg:0 4px 16px #0f172a14;--shadow-drop-md:0 4px 12px #0f172a1a;--table-cell-padding-y:16px;--container-gap:var(--sp-10);--container-gap-lg:var(--sp-12);--table-row-gap:14px;--font-heading:-apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;--brand-50:#f4f5f7;--brand-100:#e6e8ec;--brand-200:#cfd3db;--brand-300:#aab0bd;--brand-400:#7c8494;--brand-500:#5c6270;--brand-600:#454a56;--brand-700:#343841;--brand-800:#262930;--brand-900:#1a1c21;--btn-primary-bg:var(--brand-700);--btn-primary-shadow:none;--btn-primary-shadow-hover:none;--focus-ring:#454a56}:root[data-theme=dark][data-design=minimal-editorial]{--accent-soft-bg:#ffffff14;--accent-soft-bg-strong:#ffffff24;--accent-soft-text:#d5d8e2}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);color:var(--text-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,h5,h6{margin:0 0 var(--sp-2);font-weight:var(--fw-semibold);line-height:var(--lh-tight);font-family:var(--font-heading)}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}p{margin:0 0 var(--sp-3);color:var(--text-secondary)}a{color:var(--brand-600);text-decoration:none}a:hover{text-decoration:underline}small{color:var(--text-muted);font-size:var(--fs-sm)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}input[type=checkbox]{border-radius:4px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#app{min-height:100%}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--topbar-height) 1fr;grid-template-areas:"sidebar topbar""sidebar main";min-height:100vh;display:grid}.topbar{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:0 var(--sp-6);background:var(--bg-surface);border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-xs);z-index:var(--z-topbar);grid-area:topbar;display:flex;position:sticky;top:0}.main-content{padding:var(--sp-8) var(--sp-8) var(--sp-10);grid-area:main;width:100%;min-width:0;max-width:1480px}.sidebar{background:var(--bg-sidebar);color:var(--text-sidebar);border-right:1px solid var(--border-sidebar);height:100vh;z-index:var(--z-sidebar);flex-direction:column;grid-area:sidebar;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-4);color:var(--text-sidebar-strong);font-weight:var(--fw-semibold);font-size:var(--fs-lg);border-bottom:1px solid var(--border-sidebar);display:flex}.sidebar-brand .logo-mark{background:linear-gradient(135deg, var(--brand-400), var(--brand-700));width:34px;height:34px;font-weight:var(--fw-bold);color:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:15px;display:flex}.sidebar-role-badge{margin:var(--sp-3) var(--sp-5);padding:var(--sp-2) var(--sp-3);background:var(--bg-sidebar-chip);border:1px solid var(--border-sidebar-chip);border-radius:var(--radius-md);font-size:var(--fs-xs);color:var(--text-sidebar-muted)}.sidebar-role-badge strong{color:var(--text-sidebar-strong);font-size:var(--fs-sm);margin-top:2px;display:block}.sidebar-nav{padding:var(--sp-2) var(--sp-3) var(--sp-4);flex:1}.sidebar-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-sidebar-faint);padding:var(--sp-4) var(--sp-3) var(--sp-1);font-size:10px;font-weight:var(--fw-semibold)}.nav-item{align-items:center;gap:var(--sp-3);padding:10px var(--sp-3);border-radius:var(--radius-md);color:var(--text-sidebar);cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-medium);margin-bottom:2px;transition:background .14s,color .14s,transform .14s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.nav-item .nav-icon{text-align:center;flex:none;width:18px;font-size:15px}.nav-item:hover{background:var(--bg-sidebar-hover);color:var(--text-sidebar-strong);text-decoration:none;transform:translate(2px)}.nav-item.active{background:var(--bg-sidebar-active);color:var(--text-sidebar-strong);box-shadow:inset 0 1px #ffffff0f}.nav-item.active:before{content:"";border-radius:var(--radius-full);background:linear-gradient(180deg, var(--brand-300), var(--brand-500));width:3px;height:18px;position:absolute;top:50%;left:-6px;transform:translateY(-50%)}.nav-item.disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.sidebar-footer{padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--border-sidebar);gap:var(--sp-2);flex-direction:column;display:flex}.switch-role-btn,.theme-toggle-btn{width:100%}.sidebar-design-picker{flex-direction:column;gap:4px;display:flex}.sidebar-design-picker label{font-size:11px;font-weight:var(--fw-semibold);color:var(--text-sidebar-muted);letter-spacing:.02em}.sidebar-design-select{border-radius:var(--radius-md);background:var(--bg-sidebar-chip);border:1px solid var(--border-sidebar-chip);width:100%;color:var(--text-sidebar-strong);font-size:var(--fs-xs);font-weight:var(--fw-medium);cursor:pointer;padding:8px 10px;transition:background .14s,border-color .14s}.sidebar-design-select:hover{background:var(--bg-sidebar-chip-hover);border-color:var(--border-sidebar-chip)}.sidebar-design-select:focus-visible{outline:2px solid var(--brand-300);outline-offset:1px}.sidebar-design-select option{background:var(--bg-sidebar);color:var(--text-sidebar-strong)}.sidebar-design-btn{text-align:left;justify-content:space-between;align-items:center;gap:8px;display:flex}.search-select-menu.sidebar-design-menu{background:var(--bg-sidebar);border-color:var(--border-sidebar-chip)}.sidebar-design-menu .search-select-option{color:var(--text-sidebar-strong)}.sidebar-design-menu .search-select-option:hover,.sidebar-design-menu .search-select-option.selected{background:var(--bg-sidebar-chip-hover);color:var(--text-sidebar-strong)}.topbar-left{align-items:center;gap:var(--sp-4);min-width:0;display:flex}.topbar-heading{min-width:0;overflow:hidden}.topbar-title{font-weight:var(--fw-semibold);font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;line-height:1.25;overflow:hidden}.topbar-subtitle{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;line-height:1.3;overflow:hidden}.topbar-right{align-items:center;gap:var(--sp-3);flex:none;display:flex}.icon-btn{border-radius:var(--radius-md);cursor:pointer;width:38px;height:38px;color:var(--text-secondary);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:16px;display:flex;position:relative}.icon-btn:hover{background:var(--bg-hover);border-color:var(--border-default)}.notif-dot{background:var(--status-danger-solid);border:2px solid var(--bg-surface);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:7px}.icon-btn-badge{border-radius:var(--radius-full);background:var(--status-danger-solid);color:#fff;min-width:16px;height:16px;font-size:10px;font-weight:var(--fw-semibold);text-align:center;border:2px solid var(--bg-surface);box-sizing:content-box;padding:0 3px;line-height:16px;position:absolute;top:-2px;right:-4px}.user-menu-trigger{align-items:center;gap:var(--sp-2);cursor:pointer;padding:var(--sp-1) var(--sp-2) var(--sp-1) var(--sp-1);border-radius:var(--radius-full);border:1px solid var(--border-default);display:flex}.user-menu-trigger:hover{background:var(--bg-subtle)}.avatar{background:var(--accent-soft-bg-strong);width:30px;height:30px;color:var(--accent-soft-text);font-weight:var(--fw-semibold);font-size:var(--fs-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.avatar.lg{width:56px;height:56px;font-size:var(--fs-lg)}.user-menu-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.1}.user-menu-role{color:var(--text-muted);font-size:11px;line-height:1.1}.demo-banner{background:linear-gradient(90deg, var(--brand-700), var(--brand-500));color:#fff;font-size:var(--fs-xs);text-align:center;padding:6px var(--sp-4);font-weight:var(--fw-medium);letter-spacing:.02em}.demo-banner b{font-weight:var(--fw-bold)}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap;display:flex}.page-header-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.section-title{font-size:var(--fs-md);font-weight:var(--fw-semibold);margin:var(--sp-8) 0 var(--sp-4);justify-content:space-between;align-items:center;display:flex}[data-design=original] .topbar{box-shadow:none}[data-design=original] .main-content{padding:var(--sp-6);max-width:1440px}[data-design=original] .nav-item{padding:var(--sp-2) var(--sp-3)}[data-design=original] .nav-item:hover{transform:none}[data-design=original] .nav-item.active{box-shadow:none}[data-design=original] .nav-item.active:before{content:none}[data-design=original] .page-header{margin-bottom:var(--sp-5)}[data-design=original] .section-title{margin:var(--sp-6) 0 var(--sp-3)}
.btn{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:9px 16px;line-height:1.2;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{font-size:var(--fs-xs);border-radius:var(--radius-sm);padding:6px 12px}.btn-lg{font-size:var(--fs-md);padding:12px 20px}.btn-block{width:100%}.btn-primary{background:var(--btn-primary-bg);border-color:var(--brand-700);color:#fff;box-shadow:var(--btn-primary-shadow);transition:transform .16s cubic-bezier(.16,1,.3,1),box-shadow .16s,filter .16s}.btn-primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:var(--btn-primary-shadow-hover);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary);transition:background .12s,border-color .12s,box-shadow .16s,transform .16s cubic-bezier(.16,1,.3,1)}.btn-secondary:hover:not(:disabled){background:var(--bg-subtle);border-color:var(--text-muted);box-shadow:var(--shadow-xs)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--status-danger-solid);border-color:var(--status-danger-solid);color:#fff}.btn-danger:hover:not(:disabled){background:#a3212f;border-color:#a3212f}.btn-danger-ghost{border-color:var(--chip-danger-bg);color:var(--status-danger);background:0 0}.btn-danger-ghost:hover:not(:disabled){background:var(--chip-danger-bg)}.btn-success{background:var(--status-success-solid);border-color:var(--status-success-solid);color:#fff}.btn-success:hover:not(:disabled){background:#147350}.btn-add-callout{background:var(--accent-soft-bg);border:1.5px dashed var(--brand-400);width:100%;color:var(--accent-soft-text);font-weight:var(--fw-semibold)}.btn-add-callout:hover:not(:disabled){background:var(--accent-soft-bg-strong);border-color:var(--brand-600);border-style:solid}.btn-icon{width:34px;height:34px;padding:8px}.card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);outline-offset:2px;outline:2px solid #0000;transition:box-shadow .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),outline-color .18s}.card:hover{outline-color:var(--brand-300);box-shadow:var(--shadow-sm)}.card-body{padding:var(--sp-6)}.card-header{padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.card-header h3{margin:0}.card-header .subtitle{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.card[data-goto]{cursor:pointer;text-align:left;flex-direction:column;font-family:inherit;display:flex}.card[data-goto]:hover{box-shadow:var(--shadow-md);outline-color:var(--brand-400);transform:translateY(-2px)}.stat-grid{gap:var(--container-gap);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.stat-grid-2col{grid-template-columns:repeat(2,1fr)}.stat-grid-3col{grid-template-columns:repeat(3,1fr)}.stat-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);box-shadow:var(--shadow-xs);outline-offset:2px;outline:2px solid #0000;transition:box-shadow .18s cubic-bezier(.16,1,.3,1),outline-color .18s;position:relative;overflow:hidden}.stat-card:hover{outline-color:var(--brand-300);box-shadow:var(--shadow-sm)}.stat-card-clickable{cursor:pointer}.stat-card-clickable:focus-visible{outline-color:var(--brand-500);box-shadow:var(--shadow-sm)}.stat-card .stat-label{font-size:var(--fs-xs);min-height:2.7em;color:var(--text-muted);line-height:1.35;font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.03em;padding-right:44px}.stat-card .stat-value{font-size:var(--fs-2xl);font-weight:var(--fw-bold);margin-top:var(--sp-1);line-height:1.1}.stat-card .stat-meta{font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--sp-2);flex-wrap:wrap;gap:4px 10px;display:flex}.stat-card .stat-meta.up{color:var(--status-success)}.stat-card .stat-meta.down{color:var(--status-danger)}.stat-card .stat-meta .stat-sub strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.stat-card .stat-icon{top:var(--sp-5);right:var(--sp-5);border-radius:var(--radius-md);background:var(--accent-soft-bg);width:38px;height:38px;color:var(--accent-soft-text);justify-content:center;align-items:center;font-size:17px;display:flex;position:absolute}.stat-card .stat-icon.tone-success{background:var(--chip-success-bg);color:var(--chip-success-text)}.stat-card .stat-icon.tone-warning{background:var(--chip-warning-bg);color:var(--chip-warning-text)}.stat-card .stat-icon.tone-danger{background:var(--chip-danger-bg);color:var(--chip-danger-text)}.stat-card .stat-icon.tone-info{background:var(--chip-info-bg);color:var(--chip-info-text)}.stat-card .stat-icon.tone-violet{background:var(--chip-violet-bg);color:var(--chip-violet-text)}.doctor-picker-grid{gap:var(--container-gap);grid-template-columns:repeat(auto-fit,minmax(196px,1fr));display:grid}.doctor-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);cursor:pointer;text-align:center;outline-offset:2px;outline:2px solid #0000;flex-direction:column;align-items:center;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),outline-color .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.doctor-card:hover{box-shadow:var(--shadow-md);outline-color:var(--doctor-accent,var(--brand-300));border-color:#0000;transform:translateY(-4px)}.doctor-card:focus-visible{outline-color:var(--doctor-accent,var(--brand-500));box-shadow:var(--shadow-md)}.doctor-card.selected{outline-color:var(--doctor-accent,var(--brand-500));box-shadow:var(--shadow-md);background:var(--accent-soft-bg);border-color:#0000}.doctor-card-band{background:var(--doctor-accent,var(--brand-500));flex:none;width:100%;height:118px}.doctor-card-avatar{border:4px solid var(--bg-surface);width:100px;height:100px;font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:#fff;background:var(--doctor-accent,var(--brand-500));box-shadow:var(--shadow-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:-50px;display:flex}.doctor-card-name{font-weight:var(--fw-semibold);font-size:var(--fs-base);margin-top:var(--sp-4);padding:0 var(--sp-3);line-height:1.25}.doctor-card-specialization{font-size:var(--fs-sm);color:var(--text-muted);padding:0 var(--sp-3);margin-top:3px}.doctor-card-tag{margin-top:var(--sp-5);padding-top:var(--sp-3);padding-bottom:var(--sp-6);border-top:1px dashed var(--border-default);width:100%;font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.08em;color:var(--doctor-accent,var(--text-muted))}.doctor-card-check{background:var(--doctor-accent,var(--brand-500));color:#fff;width:26px;height:26px;font-size:13px;font-weight:var(--fw-bold);border:2px solid var(--bg-surface);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;right:12px}.bar-chart{align-items:flex-end;gap:var(--sp-3);height:160px;padding-top:var(--sp-4);padding-bottom:var(--sp-2);display:flex;overflow-x:auto}.bar-chart .bar-col{align-items:center;gap:var(--sp-2);flex-direction:column;flex:1;justify-content:flex-end;height:100%;display:flex}.bar-chart .bar{background:var(--brand-400);border-radius:6px 6px 0 0;width:100%;max-width:34px;transition:height .3s;position:relative}.bar-chart .bar-label{color:var(--text-muted);text-align:center;font-size:11px}.bar-chart .bar-value{color:var(--text-secondary);font-size:11px;font-weight:var(--fw-semibold)}.rev-chart{position:relative}.rev-bar{background:var(--bg-hover);border-radius:6px;width:100%;height:22px;display:flex;overflow:hidden}.rev-seg{cursor:pointer;outline:none;justify-content:center;align-items:center;min-width:2px;transition:filter .15s;display:flex;position:relative}.rev-seg:hover,.rev-seg:focus-visible{filter:brightness(.92)}.rev-seg:focus-visible{box-shadow:inset 0 0 0 2px #ffffffb3}.rev-seg-label{font-size:11px;font-weight:var(--fw-semibold);color:#fff;white-space:nowrap;pointer-events:none;padding:0 4px}.rev-legend{gap:var(--sp-2) var(--sp-5);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.rev-legend-row{font-size:var(--fs-xs);align-items:center;gap:7px;display:flex}.rev-swatch{border-radius:3px;flex:none;width:10px;height:10px}.rev-legend-label{color:var(--text-secondary);font-weight:var(--fw-medium);margin-right:4px}.rev-legend-value{color:var(--text-muted)}.rev-tooltip{z-index:20;background:var(--gray-900);color:#fff;border-radius:var(--radius-md);font-size:var(--fs-xs);pointer-events:none;box-shadow:var(--shadow-md);white-space:nowrap;padding:8px 10px;line-height:1.4;position:absolute;top:0;left:0;transform:translate(-50%,calc(-100% - 8px))}.rev-tooltip .rev-tooltip-title{color:var(--gray-300)}.rev-tooltip .rev-tooltip-value{font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:#fff}.rev-tooltip .rev-tooltip-sub{color:var(--gray-300)}.progress-row{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.progress-row .progress-label{width:130px;font-size:var(--fs-xs);color:var(--text-secondary);flex:none}.progress-track{background:var(--bg-hover);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.progress-fill{background:var(--brand-500);border-radius:var(--radius-full);height:100%}.progress-row .progress-value{text-align:right;width:70px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);flex:none}.grid-2{gap:var(--container-gap);grid-template-columns:repeat(2,1fr);display:grid}.grid-2>*{min-width:0}.grid-3{gap:var(--container-gap);grid-template-columns:repeat(3,1fr);display:grid}.grid-3>*{min-width:0}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.gap-6{gap:var(--sp-6)}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.mt-1{margin-top:var(--sp-1)}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mx-auto{margin-left:auto;margin-right:auto}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--sp-4)}.mb-3{margin-bottom:var(--container-gap)}.mb-4{margin-bottom:var(--container-gap-lg)}.w-full{width:100%}.text-muted{color:var(--text-muted)}.text-sm{font-size:var(--fs-sm)}.text-xs{font-size:var(--fs-xs)}.text-right{text-align:right}.text-center{text-align:center}.font-semibold{font-weight:var(--fw-semibold)}.font-mono{font-family:var(--font-mono)}.badge{border-radius:var(--radius-full);font-size:11px;font-weight:var(--fw-semibold);text-transform:capitalize;white-space:nowrap;align-items:center;gap:5px;padding:3px 10px;line-height:1.5;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge-success{background:var(--chip-success-bg);color:var(--chip-success-text)}.badge-warning{background:var(--chip-warning-bg);color:var(--chip-warning-text)}.badge-danger{background:var(--chip-danger-bg);color:var(--chip-danger-text)}.badge-info{background:var(--chip-info-bg);color:var(--chip-info-text)}.badge-neutral{background:var(--chip-neutral-bg);color:var(--chip-neutral-text)}.badge-violet{background:var(--chip-violet-bg);color:var(--chip-violet-text)}table.data-table td>.badge{box-sizing:border-box;justify-content:flex-start;width:100%}.table-wrap{overflow-x:auto}table.data-table{border-collapse:separate;width:100%;border-spacing:0 var(--table-row-gap);margin-top:calc(-1 * var(--table-row-gap));font-size:var(--fs-sm)}table.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold);padding:6px var(--sp-4) 10px;white-space:nowrap;background:var(--bg-app);position:sticky;top:0}table.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s}table.data-table th.sortable:hover{color:var(--brand-600)}table.data-table td{padding:var(--table-cell-padding-y) var(--sp-4);vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;background:var(--bg-surface);border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);overflow:hidden}table.data-table td.cell-wrap{cursor:default;max-width:240px}table.data-table th.cell-tight,table.data-table td.cell-tight{padding-left:var(--sp-3);padding-right:var(--sp-3)}table.data-table td .cell-scroll-inner{white-space:nowrap;vertical-align:bottom;display:inline-block}table.data-table td.cell-scrollable:hover{text-overflow:clip}table.data-table td.cell-scrollable:hover .cell-scroll-inner{animation:cell-scroll-marquee var(--cell-scroll-duration,3s) ease-in-out .35s 1 both}@keyframes cell-scroll-marquee{0%,12%{transform:translate(0)}88%,to{transform:translateX(var(--cell-scroll-distance,0))}}table.data-table tbody tr td:first-child{border-left:1px solid var(--border-default);border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}table.data-table tbody tr td:last-child{border-right:1px solid var(--border-default);border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}table.data-table tbody tr td{box-shadow:var(--shadow-xs);transition:border-color .14s,box-shadow .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1)}table.data-table tbody tr.rbac-section-row td{box-shadow:none;padding:var(--sp-5) var(--sp-2) var(--sp-2);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:0 0;border:none}table.data-table tbody tr.rbac-section-row:first-child td{padding-top:var(--sp-2)}table.data-table tbody tr.rbac-section-row:hover td{border-color:#0000;transform:none}table.data-table tbody tr:hover td{border-color:var(--brand-300);box-shadow:var(--shadow-sm);transform:translateY(-1px)}table.data-table tbody tr.clickable{cursor:pointer}table.data-table tbody tr.clickable:hover td{border-color:var(--brand-500)}table.data-table .cell-primary{font-weight:var(--fw-medium);color:var(--text-primary)}table.data-table .cell-actions{gap:var(--sp-1);white-space:nowrap;justify-content:flex-start;display:flex}table.data-table .cell-actions .action-slot-hidden{visibility:hidden;pointer-events:none}table.data-table .cell-actions .action-disabled{opacity:.38;cursor:not-allowed}table.data-table th.cell-actions-td,table.data-table td.cell-actions-td{padding-left:var(--sp-2);padding-right:var(--sp-3)}.table-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.table-filters{gap:var(--sp-2);flex-wrap:wrap;flex:auto;align-items:center;min-width:0;display:flex}.table-toolbar-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;flex:none;display:flex}.table-toolbar-actions:empty{display:none}.table-pagination{padding:var(--sp-3) var(--sp-5);border-top:1px solid var(--border-default);font-size:var(--fs-xs);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.table-pagination .pager-btns{gap:var(--sp-1);display:flex}.empty-state{text-align:center;padding:var(--sp-12) var(--sp-6);color:var(--text-muted)}.empty-state .empty-icon{margin-bottom:var(--sp-3);opacity:.5;font-size:34px}.empty-state h3{color:var(--text-secondary);margin-bottom:var(--sp-2)}.empty-state p{max-width:380px;margin:0 auto var(--sp-4)}.form-grid{gap:var(--sp-5) var(--sp-5);grid-template-columns:repeat(2,1fr);display:grid}.form-grid.cols-1{grid-template-columns:1fr}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.form-grid.cols-4{grid-template-columns:repeat(4,1fr)}.field{flex-direction:column;gap:6px;display:flex}.field.span-2{grid-column:span 2}.field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);align-items:center;gap:4px;display:flex}.field label .req{color:var(--status-danger)}.field .hint{color:var(--text-muted);font-size:11px}.field .error-msg{color:var(--status-danger);font-size:11px;font-weight:var(--fw-medium)}.input,select.input,textarea.input{border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--bg-surface);width:100%;font-size:var(--fs-sm);color:var(--text-primary);padding:10px 13px;transition:border-color .14s,box-shadow .14s}.input:focus,select.input:focus,textarea.input:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px var(--brand-100);outline:none}.input.invalid{border-color:var(--status-danger)}.input.invalid:focus{box-shadow:0 0 0 3px var(--status-danger-bg)}textarea.input{resize:vertical;min-height:80px}.input[disabled],select.input[disabled]{background:var(--bg-subtle);color:var(--text-muted);cursor:not-allowed}.input:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 1000px var(--bg-surface) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 9999s ease-in-out,color 9999s ease-in-out}.input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 1000px var(--bg-surface) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 9999s ease-in-out,color 9999s ease-in-out}.input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 1000px var(--bg-surface) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 9999s ease-in-out,color 9999s ease-in-out}.input:-webkit-autofill:active{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 1000px var(--bg-surface) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 9999s ease-in-out,color 9999s ease-in-out}.input.invalid:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg-surface) inset, 0 0 0 1px var(--status-danger) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset, 0 0 0 1px var(--status-danger) inset}.check-row,.radio-row{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);display:flex}.check-row input,.radio-row input{width:16px;height:16px;accent-color:var(--brand-600)}.search-input-wrap{flex:2 220px;position:relative}.search-input-wrap .search-icon{color:var(--text-muted);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input-wrap .input{width:100%;padding-left:34px}.form-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--border-default);flex-wrap:wrap;display:flex}.draft-banner{justify-content:space-between;align-items:center;gap:var(--sp-3);background:var(--chip-warning-bg);color:var(--chip-warning-text);border:1px solid var(--chip-warning-bg);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);margin-bottom:var(--sp-4);display:flex}.draft-banner .link-btn{color:var(--chip-warning-text);font-size:var(--fs-xs);flex:none;text-decoration:underline}.form-section{padding-top:var(--sp-4);margin-top:var(--sp-4);border-top:1px solid var(--border-default)}.form-section:empty{display:none}.search-select{box-sizing:border-box;width:100%;max-width:100%;position:relative}.search-select .input{padding-right:30px}.search-select .search-select-caret{color:var(--text-muted);pointer-events:none;font-size:11px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-select-menu{box-sizing:border-box;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);max-width:100%;max-height:240px;box-shadow:var(--shadow-md);z-index:30;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.search-select-option{border-radius:var(--radius-sm);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;padding:8px 10px;transition:background .14s,color .14s;display:flex;overflow:hidden}.search-select-option .ss-opt-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.search-select-option:hover,.search-select-option.active{background:var(--accent-soft-bg);color:var(--accent-soft-text)}.search-select-option.selected{font-weight:var(--fw-semibold)}.search-select-option.picked{background:var(--accent-soft-bg);color:var(--accent-soft-text);font-weight:var(--fw-semibold)}.search-select-divider{border-top:1px solid var(--border-default);margin:4px 2px}.search-select-empty{font-size:var(--fs-sm);color:var(--text-muted);text-align:center;padding:10px}.search-select.invalid .input{border-color:var(--status-danger)}.table-filter-select{position:relative}.table-filter-btn{cursor:pointer;text-align:left;white-space:nowrap;justify-content:space-between;align-items:center;gap:10px;min-height:39px;transition:outline-color .14s,border-color .14s,background .14s;display:flex}.table-filter-btn:hover{outline:2px solid var(--border-strong);outline-offset:1px}.table-filter-btn-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-select-wrap{vertical-align:middle;display:inline-block;position:relative}.rounded-select-native{display:none}.rounded-select-wrap .table-filter-btn{width:100%}.rounded-select-wrap .search-select-menu{width:max-content;min-width:100%;max-width:320px;left:0;right:auto}.ms-select-tags{flex-wrap:wrap;gap:6px;display:flex}.ms-select-tags:not(:empty){margin-bottom:8px}.ms-select .pill.brand{align-items:center;display:inline-flex}.phone-field{gap:8px;display:flex}.phone-field .phone-cc-select{flex:none;width:auto;min-width:108px}.phone-field [data-role=phone-number]{flex:auto;min-width:0}.phone-field.invalid .input{border-color:var(--status-danger)}.phone-field.invalid .input:focus{box-shadow:0 0 0 3px var(--status-danger-bg)}.search-select-option.has-sections{justify-content:space-between;align-items:baseline;gap:var(--sp-4);white-space:normal;display:flex}.ss-opt-primary{align-items:baseline;gap:var(--sp-2);min-width:0;display:flex;overflow:hidden}.ss-opt-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ss-opt-id{color:var(--text-muted);font-size:11px;font-family:var(--font-mono);flex:none}.ss-opt-sub{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:12px}.search-select-option.has-sections:hover .ss-opt-id,.search-select-option.has-sections:hover .ss-opt-sub{color:var(--accent-soft-text)}.tabs{border-bottom:1px solid var(--border-default);margin-bottom:var(--sp-6);gap:2px;display:flex;overflow-x:auto}.tab-btn{padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;transition:color .14s,background .14s}.tab-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-btn.active{color:var(--brand-600);font-weight:var(--fw-semibold);border-bottom-color:var(--brand-600)}.modal-overlay{z-index:var(--z-modal);padding:var(--sp-4);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f112880;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-surface);border-radius:var(--radius-modal);border:1px solid var(--border-default);box-shadow:var(--shadow-lg), 0 0 0 1px #3d63e80a;flex-direction:column;width:100%;max-width:560px;max-height:88vh;animation:.2s cubic-bezier(.16,1,.3,1) modal-in;display:flex}.modal.modal-lg{max-width:780px}.modal.modal-sm{max-width:420px}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}.modal-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-6);border-bottom:1px solid var(--border-default);display:flex}.modal-header h3{letter-spacing:-.01em;margin:0}.modal-header .modal-sub{font-size:var(--fs-xs);color:var(--text-secondary);margin-top:3px}.modal-body{padding:var(--sp-6);flex:auto;min-height:0;overflow-y:auto}.modal-footer{padding:var(--sp-5) var(--sp-6);border-top:1px solid var(--border-default);justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.modal-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;padding:4px;font-size:20px;line-height:1;transition:transform .2s cubic-bezier(.16,1,.3,1),background .14s,color .14s}.modal-close-btn:hover{background:var(--bg-hover);color:var(--text-primary);transform:rotate(90deg)}.confirm-icon{width:44px;height:44px;margin-bottom:var(--sp-3);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.confirm-icon.danger{background:var(--chip-danger-bg);color:var(--chip-danger-text)}.confirm-icon.warning{background:var(--chip-warning-bg);color:var(--chip-warning-text)}.confirm-icon.success{background:var(--chip-success-bg);color:var(--chip-success-text)}.toast-stack{bottom:var(--sp-5);right:var(--sp-5);z-index:var(--z-toast);gap:var(--sp-2);flex-direction:column;max-width:360px;display:flex;position:fixed}.toast{background:var(--gray-900);color:#fff;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--fs-sm);align-items:flex-start;gap:var(--sp-3);animation:.18s toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.toast .toast-icon{flex:none;font-size:16px}.toast.toast-success .toast-icon{color:#6fe3ac}.toast.toast-error .toast-icon{color:#ff8a94}.toast.toast-info .toast-icon{color:#8ab4ff}.toast .toast-close{cursor:pointer;opacity:.6;color:#fff;background:0 0;border:none;margin-left:auto;font-size:14px}.toast .toast-close:hover{opacity:1}.toast .toast-action{color:#8ab4ff;cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap;background:0 0;border:none;flex:none;padding:0;text-decoration:underline}.toast .toast-action:hover{opacity:.85}.detail-header{align-items:center;gap:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--sp-5);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.detail-header .detail-id{color:var(--text-muted);font-size:var(--fs-xs);font-family:var(--font-mono)}.detail-header .detail-meta{gap:var(--sp-4);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;margin-top:6px;display:flex}.detail-header .detail-actions{gap:var(--sp-2);flex-wrap:wrap;margin-left:auto;display:flex}.info-list{gap:var(--sp-3) var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.info-list .info-item .info-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:3px;font-size:11px}.info-list .info-item .info-value{font-size:var(--fs-sm);font-weight:var(--fw-medium)}.timeline{padding-left:var(--sp-5);position:relative}.timeline:before{content:"";background:var(--border-default);width:2px;position:absolute;top:6px;bottom:6px;left:5px}.timeline-item{padding-bottom:var(--sp-5);position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";left:calc(-1 * var(--sp-5) + 1px);background:var(--brand-500);border:2px solid var(--bg-surface);width:11px;height:11px;box-shadow:0 0 0 2px var(--brand-200);border-radius:50%;position:absolute;top:4px}.timeline-item .timeline-date{color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase}.timeline-item .timeline-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);box-shadow:var(--shadow-xs);margin-top:4px;transition:box-shadow .16s,border-color .16s}.timeline-item .timeline-card:hover{box-shadow:var(--shadow-sm);border-color:var(--brand-300)}.activity-scroll{height:460px;padding-right:var(--sp-2);overflow-y:auto}.activity-scroll .empty-state{height:100%;padding:var(--sp-6);flex-direction:column;justify-content:center;align-items:center;display:flex}.chat-panel{border-radius:var(--radius-lg);padding:var(--sp-4);gap:var(--sp-2);background:#e9ecf3;flex-direction:column;min-height:220px;display:flex}.chat-bubble{max-width:78%;padding:var(--sp-2) var(--sp-3);font-size:var(--fs-sm);box-shadow:var(--shadow-xs);color:#20222f;border-radius:12px}.chat-bubble.out{background:#d4f1c7;border-bottom-right-radius:3px;align-self:flex-end}.chat-bubble.in{background:#fff;border-bottom-left-radius:3px;align-self:flex-start}.chat-bubble .chat-meta{color:#6b6f85;text-align:right;margin-top:4px;font-size:10px}.chat-bubble .chat-file{background:#0000000a;border-radius:8px;align-items:center;gap:8px;margin-bottom:4px;padding:6px 8px;display:flex}.auth-screen{background:radial-gradient(1200px 600px at 10% -10%, #223 0%, transparent 60%), linear-gradient(160deg, var(--brand-900), var(--brand-700) 55%, var(--brand-500));min-height:100vh;padding:var(--sp-6);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:960px;box-shadow:var(--shadow-lg);grid-template-columns:1fr 1.3fr;display:grid;overflow:hidden}.auth-side{background:linear-gradient(160deg, var(--brand-800), var(--brand-600));color:#fff;padding:var(--sp-8) var(--sp-6);flex-direction:column;justify-content:space-between;display:flex}.auth-side .logo-mark{width:46px;height:46px;margin-bottom:var(--sp-4);background:#ffffff26;border-radius:12px;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.auth-side h2{color:#fff;font-size:var(--fs-xl)}.auth-side p{color:#ffffffbf;font-size:var(--fs-sm)}.auth-side .auth-feature{gap:var(--sp-2);font-size:var(--fs-sm);color:#ffffffd9;margin-bottom:var(--sp-3);align-items:flex-start;display:flex}.auth-main{padding:var(--sp-8) var(--sp-6)}.demo-tag{background:var(--chip-warning-bg);color:var(--status-warning);border-radius:var(--radius-full);font-size:11px;font-weight:var(--fw-semibold);margin-bottom:var(--sp-4);align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.role-grid{gap:var(--sp-3);margin-top:var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.role-card{border:1.5px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--sp-4);cursor:pointer;text-align:left;background:var(--bg-surface);transition:all .15s}.role-card:hover{border-color:var(--brand-400);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.role-card.selected{border-color:var(--brand-600);background:var(--accent-soft-bg);box-shadow:0 0 0 3px var(--accent-soft-bg-strong)}.role-card .role-icon{border-radius:var(--radius-md);background:var(--accent-soft-bg-strong);width:40px;height:40px;color:var(--accent-soft-text);margin-bottom:var(--sp-3);justify-content:center;align-items:center;font-size:18px;display:flex}.role-card .role-name{font-weight:var(--fw-semibold);font-size:var(--fs-sm);margin-bottom:2px}.role-card .role-desc{color:var(--text-muted);font-size:11px;line-height:1.4}.login-form-box{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--border-default)}.demo-user-hint{background:var(--bg-subtle);border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:var(--sp-3);font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--sp-3)}.pad-toolbar{gap:var(--sp-3);margin-bottom:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.pad-tool-group{gap:4px;display:flex}.pad-tool-btn.active{background:var(--accent-soft-bg);border-color:var(--brand-400);color:var(--accent-soft-text)}.pad-canvas-wrap{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);background:#fffef7}canvas.pad-canvas{touch-action:none;cursor:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyOCcgaGVpZ2h0PScyOCcgdmlld0JveD0nMCAwIDI4IDI4Jz48bGluZSB4MT0nMjQnIHkxPSc0JyB4Mj0nOScgeTI9JzE5JyBzdHJva2U9JyMxYTI1NjAnIHN0cm9rZS13aWR0aD0nMycgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJy8+PGxpbmUgeDE9JzI0JyB5MT0nNCcgeDI9JzknIHkyPScxOScgc3Ryb2tlPSd3aGl0ZScgc3Ryb2tlLXdpZHRoPScxJyBzdHJva2UtbGluZWNhcD0ncm91bmQnLz48Y2lyY2xlIGN4PSc3JyBjeT0nMjEnIHI9JzMnIGZpbGw9JyMxYTI1NjAnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMScvPjwvc3ZnPg==) 7 21,crosshair;width:100%;height:220px;display:block}canvas.pad-canvas.erasing{cursor:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyOCcgaGVpZ2h0PScyOCcgdmlld0JveD0nMCAwIDI4IDI4Jz48ZyB0cmFuc2Zvcm09J3JvdGF0ZSgtMjAgMTQgMTQpJz48cmVjdCB4PSc2JyB5PSc5JyB3aWR0aD0nMTYnIGhlaWdodD0nMTAnIHJ4PScyLjUnIGZpbGw9JyNmZjhhOTQnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMS41Jy8+PGxpbmUgeDE9JzYnIHkxPScxNCcgeDI9JzIyJyB5Mj0nMTQnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS13aWR0aD0nMScvPjwvZz48L3N2Zz4=) 14 14,cell}.hw-badge{color:var(--chip-success-text);background:var(--chip-success-bg);border-radius:var(--radius-full);align-items:center;gap:6px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--sp-8);text-align:center;color:var(--text-muted);cursor:pointer;background:var(--bg-subtle)}.dropzone:hover{border-color:var(--brand-400);background:var(--accent-soft-bg)}.field.invalid .dropzone{border-color:var(--status-danger)}.dropzone .dz-icon{margin-bottom:var(--sp-2);font-size:26px}.file-chip{align-items:center;gap:var(--sp-2);background:var(--bg-hover);border-radius:var(--radius-md);font-size:var(--fs-xs);padding:6px 10px;display:inline-flex}.denied-screen{padding:var(--sp-16) var(--sp-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.denied-screen .denied-icon{margin-bottom:var(--sp-4);font-size:44px}.divider{background:var(--border-default);height:1px;margin:var(--sp-4) 0}.kicker{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold)}.pill-list{flex-wrap:wrap;gap:6px;display:flex}.pill{background:var(--bg-hover);color:var(--text-secondary);border-radius:var(--radius-full);padding:3px 9px;font-size:11px;font-weight:500}.pill.brand{background:var(--accent-soft-bg);color:var(--accent-soft-text)}.removable-pill{align-items:center;gap:6px;display:inline-flex}.removable-pill .pill-label{cursor:pointer}.removable-pill .pill-remove,.search-select-option .pill-remove{color:inherit;opacity:.45;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:10px;line-height:1}.removable-pill .pill-remove:hover,.search-select-option .pill-remove:hover{opacity:1;color:var(--status-danger)}.removable-pill.confirm-remove,.search-select-option.confirm-remove{background:var(--chip-danger-bg);color:var(--status-danger)}.pill-remove-confirm,.pill-remove-cancel{border-radius:var(--radius-full);cursor:pointer;border:none;padding:2px 8px;font-size:10px;font-weight:600}.pill-remove-confirm{background:var(--status-danger-solid);color:#fff}.pill-remove-cancel{background:var(--bg-hover);color:var(--text-secondary)}.checkbox-grid{gap:var(--sp-2) var(--sp-4);flex-wrap:wrap;display:flex}.checkbox-chip{font-size:var(--fs-sm);color:var(--text-secondary);background:var(--bg-subtle);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:6px 10px;font-weight:500;display:flex}.checkbox-chip:hover{border-color:var(--brand-400)}.checkbox-chip input[type=checkbox]{accent-color:var(--brand-600);cursor:pointer;width:15px;height:15px}.link-btn{color:var(--brand-600);cursor:pointer;font-size:inherit;font-weight:var(--fw-medium);background:0 0;border:none;padding:0}.link-btn:hover{text-decoration:underline}.qr-box{border-radius:var(--radius-md);width:120px;height:120px;box-shadow:0 0 0 1px var(--border-default);background:repeating-conic-gradient(#111 0% 25%,#fff 0% 50%) 50%/14px 14px;border:6px solid #fff}.cal-toolbar{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.cal-nav{align-items:center;gap:var(--sp-2);display:flex}.cal-range-label{font-weight:var(--fw-semibold);font-size:var(--fs-md)}.cal-grid{gap:var(--sp-3);padding-bottom:var(--sp-2);grid-template-columns:repeat(7,minmax(160px,1fr));display:grid;overflow-x:auto}.cal-day-col{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-direction:column;min-width:160px;display:flex}.cal-day-header{padding:var(--sp-3);text-align:center;border-bottom:1px solid var(--border-default);border-radius:var(--radius-lg) var(--radius-lg) 0 0;cursor:pointer;outline-offset:-2px;outline:2px solid #0000;transition:outline-color .14s}.cal-day-header:hover{outline-color:var(--brand-300)}.cal-day-header .cal-day-name{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap}.cal-day-header .cal-day-num{font-size:var(--fs-lg);font-weight:var(--fw-semibold);margin-top:2px}.cal-day-header.today{background:var(--accent-soft-bg)}.cal-day-header.today:hover{outline-color:var(--brand-400)}.cal-day-header.today .cal-day-num{color:var(--accent-soft-text)}.cal-free-badge{font-size:10px;font-weight:var(--fw-semibold);border-radius:var(--radius-full);background:var(--chip-success-bg);color:var(--chip-success-text);white-space:nowrap;align-items:baseline;gap:4px;margin-top:4px;padding:3px 10px;display:inline-flex}.cal-free-badge.zero{background:var(--chip-neutral-bg);color:var(--chip-neutral-text)}:root:not([data-theme=dark]) .cal-free-badge:not(.zero){color:#0f6b47}.cal-day-body{padding:var(--sp-2);flex-direction:column;gap:6px;display:flex}.cal-day-footer{padding:var(--sp-2);border-top:1px solid var(--border-default)}.cal-slot{border-radius:var(--radius-md);font-size:var(--fs-xs);box-sizing:border-box;border:1px solid #0000;height:72px;padding:10px;transition:transform .18s cubic-bezier(.16,1,.3,1),filter .18s cubic-bezier(.16,1,.3,1),border-color .18s;overflow:hidden}.cal-slot .cal-slot-time{font-weight:var(--fw-semibold);font-size:11px;line-height:1.3}.cal-slot.available{background:var(--chip-success-bg);color:var(--chip-success-text);cursor:pointer}.cal-slot.booked{background:var(--chip-info-bg);color:var(--chip-info-text);cursor:pointer}.cal-slot.blocked{background:var(--bg-subtle);color:var(--text-muted)}.cal-slot.past{background:var(--bg-subtle);color:var(--text-muted);opacity:.55}.cal-slot:hover{border-color:var(--brand-400);filter:brightness(.96) drop-shadow(var(--shadow-drop-md));transform:translateY(-2px)}.cal-slot.available.readonly{cursor:default}.cal-slot .cal-slot-patient,.cal-slot .cal-slot-type{white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.cal-slot .cal-slot-patient{font-weight:var(--fw-medium);font-size:var(--fs-sm);margin-top:3px}.cal-slot .cal-slot-type{opacity:.85;font-size:10px}.cal-slot.blocked .cal-slot-type{opacity:1}.cal-slot .cal-slot-type.reopened{opacity:1;color:var(--status-danger);font-weight:var(--fw-medium)}.cal-day-empty{padding:var(--sp-6) var(--sp-2);text-align:center;color:var(--text-muted);font-size:var(--fs-xs)}:root:not([data-theme=dark]) .cal-slot.available{color:#0f6b47}:root:not([data-theme=dark]) .cal-slot.booked{color:var(--brand-700)}:root:not([data-theme=dark]) .cal-slot.blocked,:root:not([data-theme=dark]) .cal-slot.past{color:var(--gray-700)}:root:not([data-theme=dark]) .cal-agenda-row.available .cal-agenda-main{color:#0f6b47}:root:not([data-theme=dark]) .cal-agenda-row.booked .text-xs.text-muted{color:var(--brand-700)}.cal-month-weekdays{gap:var(--sp-2);margin-bottom:var(--sp-2);grid-template-columns:repeat(7,1fr);display:grid}.cal-month-weekdays div{text-align:center;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold)}.cal-month-grid{gap:var(--sp-2);grid-template-columns:repeat(7,1fr);display:grid}.cal-month-cell{justify-content:space-between;align-items:flex-start;gap:var(--sp-2);min-height:108px;padding:var(--sp-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;text-align:left;flex-direction:column;font-family:inherit;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),border-color .18s,background .18s;display:flex;position:relative}.cal-month-cell:hover{border-color:var(--brand-400);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cal-month-cell.other-month{opacity:.4}.cal-month-cell.today{border-color:var(--brand-600);box-shadow:0 0 0 1px var(--brand-600)}.cal-month-cell.today:hover{box-shadow:0 0 0 1px var(--brand-600), var(--shadow-md)}.cal-month-cell.unavailable{background:var(--bg-subtle)}.cal-month-daynum{font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--text-primary)}.cal-month-stats{flex-direction:column;gap:4px;width:100%;display:flex}.cal-month-stat{box-sizing:border-box;width:100%;font-size:10px;font-weight:var(--fw-semibold);border-radius:var(--radius-full);align-items:baseline;gap:4px;padding:3px 10px;display:flex}.cal-month-stat-num{text-align:left;font-variant-numeric:tabular-nums;flex:none;min-width:2.4ch}.cal-month-stat-label{flex:none}.cal-month-stat.booked{background:var(--chip-info-bg);color:var(--chip-info-text)}.cal-month-stat.free{background:var(--chip-success-bg);color:var(--chip-success-text)}.cal-month-stat.neutral{background:var(--chip-neutral-bg);color:var(--chip-neutral-text)}.cal-month-note-hint{font-size:10px;font-weight:var(--fw-semibold);background:var(--chip-warning-bg);color:var(--chip-warning-text);border-radius:var(--radius-full);padding:2px 8px}.cal-month-note-corner{font-size:10px;font-weight:var(--fw-semibold);background:var(--chip-warning-bg);color:var(--chip-warning-text);border-radius:var(--radius-full);padding:2px 6px;position:absolute;top:8px;right:8px}:root:not([data-theme=dark]) .cal-month-stat.booked{color:var(--brand-700)}:root:not([data-theme=dark]) .cal-month-stat.free{color:#0f6b47}.cal-day-agenda{flex-direction:column;gap:6px;display:flex}.cal-agenda-row{align-items:center;gap:var(--sp-4);border-radius:var(--radius-md);cursor:pointer;box-sizing:border-box;border:1px solid #0000;min-height:60px;padding:10px 14px;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),border-color .18s,filter .18s;display:flex}.cal-agenda-row.available{background:var(--chip-success-bg)}.cal-agenda-row.booked{background:var(--chip-info-bg)}.cal-agenda-row.past{background:var(--bg-subtle);color:var(--text-muted);opacity:.55;cursor:default}.cal-agenda-row:hover{border-color:var(--brand-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cal-agenda-row .cal-agenda-note-btn{transition:transform .18s cubic-bezier(.16,1,.3,1)}.cal-agenda-row:hover .cal-agenda-note-btn{transform:scale(1.15)}.cal-agenda-row.readonly{cursor:default}.cal-agenda-time{width:90px;font-weight:var(--fw-semibold);font-size:var(--fs-sm);flex:none}.cal-agenda-main{font-size:var(--fs-sm);flex:1}.cal-note-inline{font-size:var(--fs-xs);color:var(--chip-warning-text);margin-top:3px}.cal-reopened-note{font-size:var(--fs-xs);color:var(--status-danger);font-weight:var(--fw-medium);margin-top:3px}.cal-note-row{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border-default);border-radius:var(--radius-md);margin-bottom:var(--sp-2);cursor:pointer;transition:border-color .14s,box-shadow .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),background .14s;display:flex}.cal-note-row:last-child{margin-bottom:0}.cal-note-row:hover{border-color:var(--brand-400);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.cal-note-row.readonly{cursor:default}.cal-note-row.resolved{background:var(--chip-success-bg);border-color:#0000}.cal-note-main{flex:auto;min-width:0}.cal-note-text{font-size:var(--fs-sm);white-space:pre-wrap}.cal-note-badge{border-radius:var(--radius-full);font-size:11px;font-weight:var(--fw-semibold);align-items:center;gap:4px;margin-top:6px;padding:2px 8px;display:inline-flex}.cal-note-badge.seen{background:var(--chip-info-bg);color:var(--chip-info-text)}.cal-note-badge.resolved{background:var(--chip-success-bg);color:var(--chip-success-text)}.cal-note-actions{flex:none;gap:2px;display:flex}.cal-note-icon-btn{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;font-size:13px;transition:background .14s,color .14s}.cal-note-icon-btn:hover{background:var(--accent-soft-bg);color:var(--accent-soft-text)}.cal-note-viewer-text{font-size:var(--fs-sm);white-space:pre-wrap;background:var(--bg-subtle);border-radius:14px;padding:12px 14px;line-height:1.6}.cal-note-resolve-toggle{margin-top:var(--sp-4);font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:8px;display:flex}.cal-note-resolve-toggle input{width:16px;height:16px;accent-color:var(--brand-600);cursor:pointer}.cal-note-modal{box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow-lg), 0 0 0 1px #3d63e80f, 0 28px 70px -18px #3d63e866;border:1px solid #5c86f738;border-radius:20px;animation:.26s cubic-bezier(.16,1,.3,1) cal-note-modal-in;overflow:hidden}@keyframes cal-note-modal-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}.cal-note-modal .modal-header{background:linear-gradient(#5c86f71f,#5c86f700 130%);align-items:center;position:relative}.cal-note-modal .modal-header h3{letter-spacing:-.01em;align-items:center;gap:12px;font-size:1.15rem;display:flex}.cal-note-modal .modal-header h3:before{content:"📝";background:linear-gradient(135deg, var(--brand-400), var(--brand-700));border-radius:12px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:inline-flex;box-shadow:inset 0 1px #ffffff59,0 6px 14px -4px #3d63e8a6}.cal-note-modal .modal-header .modal-sub{border-radius:var(--radius-full);background:var(--accent-soft-bg);color:var(--accent-soft-text);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.01em;align-items:center;gap:5px;margin-top:7px;padding:3px 10px 3px 8px;display:inline-flex}.cal-note-modal .modal-header .modal-sub:before{content:"🗓";font-size:10px}.cal-note-modal .modal-close-btn{border-radius:var(--radius-full);transition:transform .22s cubic-bezier(.16,1,.3,1),background .16s}.cal-note-modal .modal-close-btn:hover{background:var(--bg-hover);transform:rotate(90deg)}.cal-note-modal .field label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:10px;font-weight:var(--fw-semibold)}.cal-note-modal textarea.input{background:var(--bg-subtle);border-radius:14px;padding:14px 16px;line-height:1.6;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 1px 4px #0000001a}.cal-note-modal textarea.input:focus{border-color:var(--brand-500);background:var(--bg-surface);box-shadow:inset 0 1px 4px #0000000f, 0 0 0 4px var(--brand-100)}.cal-note-modal .modal-footer{background:linear-gradient(#0000,#00000004)}.cal-note-modal .modal-footer .btn-secondary{border-color:var(--border-strong);background:0 0;transition:background .16s,border-color .16s,transform .18s cubic-bezier(.16,1,.3,1)}.cal-note-modal .modal-footer .btn-secondary:hover{background:var(--bg-hover);border-color:var(--text-muted);transform:translateY(-1px)}.cal-note-modal .modal-footer .btn-primary{background:linear-gradient(135deg, var(--brand-400), var(--brand-600));font-weight:var(--fw-semibold);border:none;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s;box-shadow:inset 0 1px #ffffff40,0 6px 16px -4px #3d63e88c}.cal-note-modal .modal-footer .btn-primary:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff4d,0 12px 28px -6px #3d63e8a6}[data-design=original] .card-body{padding:var(--sp-5)}[data-design=original] .card-header{padding:var(--sp-4) var(--sp-5)}[data-design=original] .card[data-goto]:hover{box-shadow:none;outline-color:#0000;transform:none}[data-design=original] .card:hover{box-shadow:var(--shadow-xs);outline-color:#0000}[data-design=original] .stat-card{padding:var(--sp-4) var(--sp-5)}[data-design=original] .stat-card:hover{box-shadow:var(--shadow-xs);outline-color:#0000}[data-design=original] .stat-card .stat-icon{top:var(--sp-4);right:var(--sp-4);width:36px;height:36px;font-size:16px}[data-design=original] .stat-card .stat-icon[class*=tone-]{background:var(--accent-soft-bg);color:var(--accent-soft-text)}[data-design=original] .table-wrap{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:none}[data-design=original] table.data-table{border-collapse:collapse;border-spacing:0;margin-top:0}[data-design=original] table.data-table th{background:var(--bg-subtle);border-bottom:1px solid var(--border-default);padding:var(--sp-3) var(--sp-4);position:sticky}[data-design=original] table.data-table td{border:none;border-bottom:1px solid var(--border-default);box-shadow:none;padding:var(--sp-3) var(--sp-4);background:0 0}[data-design=original] table.data-table tbody tr:last-child td{border-bottom:none}[data-design=original] table.data-table tbody tr td:first-child,[data-design=original] table.data-table tbody tr td:last-child{border-left:none;border-right:none;border-radius:0}[data-design=original] table.data-table tbody tr:hover td{border-color:var(--border-default);box-shadow:none;background:0 0;transform:none}[data-design=original] table.data-table tbody tr.clickable:hover td{background:var(--accent-soft-bg);border-color:var(--border-default)}[data-design=original] .table-toolbar{margin-bottom:var(--sp-3)}[data-design=original] .search-input-wrap .input{min-width:220px}[data-design=original] .input,[data-design=original] select.input,[data-design=original] textarea.input{padding:9px 12px}[data-design=original] .timeline-item .timeline-card{background:var(--bg-subtle);box-shadow:none}[data-design=original] .timeline-item .timeline-card:hover{box-shadow:none;border-color:var(--border-default)}[data-design=original] .modal-close-btn:hover{transform:none}[data-design=original] .tabs{margin-bottom:var(--sp-5)}[data-design=original] .tab-btn:hover{background:0 0}[data-design=original] .tab-btn.active{font-weight:var(--fw-medium)}[data-design=original] table.data-table .cell-actions{gap:var(--sp-1)}[data-design=original] .form-grid{gap:var(--sp-4) var(--sp-5)}[data-design=original] .btn-secondary:hover:not(:disabled){box-shadow:none;border-color:var(--bg-subtle)}[data-design=original] .btn-primary:hover:not(:disabled){filter:none;transform:none}[data-design=original] .btn-primary:active:not(:disabled){transform:none}[data-design=soft-luxury] .card:hover,[data-design=soft-luxury] .stat-card:hover{outline-color:var(--brand-300);transform:translateY(-1px)}[data-design=soft-luxury] .card[data-goto]:hover{outline-color:var(--brand-400)}[data-design=soft-luxury] table.data-table tbody tr:hover td{border-color:var(--brand-300)}[data-design=sharp-corporate] .card,[data-design=sharp-corporate] .stat-card{border-left:3px solid #0000;transition:border-color .12s,box-shadow .12s,outline-color .12s}[data-design=sharp-corporate] .card:hover,[data-design=sharp-corporate] .stat-card:hover,[data-design=sharp-corporate] .card[data-goto]:hover{border-left-color:var(--brand-600);outline-color:#0000;transform:none}[data-design=sharp-corporate] table.data-table tbody tr:hover td{border-color:var(--border-default);box-shadow:inset 3px 0 0 var(--brand-600)}[data-design=vibrant-modern] .card:hover,[data-design=vibrant-modern] .stat-card:hover{outline-color:var(--brand-400);box-shadow:var(--shadow-md);transform:translateY(-3px)}[data-design=vibrant-modern] table.data-table tbody tr:hover td{border-color:var(--brand-400)}[data-design=minimal-editorial] .card:hover,[data-design=minimal-editorial] .stat-card:hover{border-color:var(--text-muted);box-shadow:none;outline-color:#0000}[data-design=minimal-editorial] .card[data-goto]:hover{box-shadow:none;border-color:var(--text-primary);outline-color:#0000;transform:none}.messages-modal .modal-body{padding:0;overflow:hidden}.msg-panel{height:560px;max-height:70vh;display:flex}.msg-threads-col{border-right:1px solid var(--border-default);flex-direction:column;flex:none;width:260px;min-height:0;display:flex}.msg-threads-header{gap:var(--sp-2);padding:var(--sp-3);border-bottom:1px solid var(--border-default);flex:none;display:flex}.msg-threads-header .btn{flex:auto}.msg-search-wrap{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border-default);flex:none}.msg-search-wrap .input{width:100%;font-size:var(--fs-sm);padding:7px 10px}.msg-thread-list{flex:auto;min-height:0;overflow-y:auto}.msg-list-heading{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:10px 12px 4px}.msg-thread-row{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3);border:none;border-bottom:1px solid var(--border-default);cursor:pointer;text-align:left;background:0 0;font-family:inherit;transition:background .14s;display:flex}.msg-thread-row:hover{background:var(--bg-hover)}.msg-thread-row.active{background:var(--accent-soft-bg)}.msg-thread-avatar{background:var(--accent-soft-bg-strong);width:36px;height:36px;color:var(--accent-soft-text);font-weight:var(--fw-semibold);font-size:var(--fs-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.msg-thread-meta{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.msg-thread-title{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-thread-preview{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-unread-badge{border-radius:var(--radius-full);background:var(--status-danger-solid);color:#fff;min-width:18px;height:18px;font-size:10px;font-weight:var(--fw-semibold);text-align:center;flex:none;padding:0 5px;line-height:18px}.msg-conversation-col{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.msg-conv-header{align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border-default);flex:none;display:flex}.msg-back-btn{flex:none;font-size:18px;display:none}.msg-conv-heading{min-width:0}.msg-conv-title{font-weight:var(--fw-semibold);font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-conv-subtitle{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-conv-body{min-height:0;padding:var(--sp-4) var(--sp-5);gap:var(--sp-3);flex-direction:column;flex:auto;display:flex;overflow-y:auto}.msg-conv-empty{color:var(--text-muted);font-size:var(--fs-sm);margin:auto}.msg-bubble-row{flex-direction:column;align-items:flex-start;max-width:74%;display:flex}.msg-bubble-row.own{align-self:flex-end;align-items:flex-end}.msg-bubble-sender{font-size:11px;font-weight:var(--fw-semibold);color:var(--accent-soft-text);margin-bottom:2px;padding:0 4px}.msg-bubble{background:var(--chip-info-bg);color:var(--text-primary);border-radius:var(--radius-lg);font-size:var(--fs-sm);word-break:break-word;white-space:pre-wrap;padding:8px 12px;line-height:1.4}.msg-bubble-row.own .msg-bubble{background:var(--brand-600);color:#fff}.msg-bubble-time{color:var(--text-muted);margin-top:3px;padding:0 4px;font-size:10px}.msg-bubble.msg-bubble-media{padding:4px}.msg-bubble-image{object-fit:cover;border-radius:calc(var(--radius-lg) - 4px);cursor:zoom-in;width:220px;height:220px;display:block}.msg-bubble-media .msg-bubble-caption{padding:6px 4px 2px}.msg-image-viewer-full{object-fit:contain;border-radius:var(--radius-md);background:var(--bg-subtle);width:100%;max-height:58vh;display:block}.msg-conv-input{gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border-default);flex:none;display:flex}.msg-conv-input .input{flex:auto}.msg-conv-input-disabled{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;justify-content:center}.msg-empty-state{text-align:center;color:var(--text-muted);padding:var(--sp-6);max-width:260px;margin:auto}.msg-empty-icon{margin-bottom:var(--sp-2);font-size:32px}.msg-empty-title{font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:4px}.msg-empty-msg{font-size:var(--fs-sm)}@media (max-width:680px){.msg-panel{height:72vh;max-height:none}.msg-threads-col{border-right:none;width:100%}.msg-panel.conv-open .msg-threads-col,.msg-panel:not(.conv-open) .msg-conversation-col{display:none}.msg-back-btn{display:inline-flex}}.msg-thread-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.msg-conv-avatar-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:0;transition:box-shadow .14s}.msg-conv-avatar-btn:hover{box-shadow:0 0 0 2px var(--brand-400)}.msg-system-note{text-align:center;max-width:90%;font-size:var(--fs-xs);color:var(--text-muted);align-self:center;padding:2px 10px;font-style:italic}.group-info-modal .modal-body{text-align:center}.grp-info-photo-wrap{margin-bottom:var(--sp-3);justify-content:center;display:flex}.grp-info-photo{background:var(--accent-soft-bg-strong);width:84px;height:84px;color:var(--accent-soft-text);border-radius:50%;justify-content:center;align-items:center;font-size:32px;display:flex;position:relative;overflow:hidden}.grp-info-photo img{object-fit:cover;width:100%;height:100%}.grp-info-photo.editable{cursor:pointer}.grp-info-photo-edit{background:var(--brand-600);color:#fff;border:2px solid var(--bg-surface);border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex;position:absolute;bottom:-2px;right:-2px}.grp-info-name{font-weight:var(--fw-semibold);font-size:var(--fs-lg)}.grp-info-sub{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:var(--sp-4)}.grp-add-btn{margin-bottom:var(--sp-4)}.group-info-modal .kicker{text-align:left}.grp-member-list{text-align:left;flex-direction:column;gap:4px;max-height:280px;display:flex;overflow-y:auto}.grp-member-row{align-items:center;gap:var(--sp-2);padding:var(--sp-2);border-radius:var(--radius-md);display:flex}.grp-member-row:hover{background:var(--bg-hover)}.grp-member-meta{flex-direction:column;flex:auto;min-width:0;display:flex}.grp-member-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grp-member-role{font-size:var(--fs-xs);color:var(--text-muted)}.grp-admin-badge{font-size:10px;font-weight:var(--fw-semibold);background:var(--chip-info-bg);color:var(--chip-info-text);border-radius:var(--radius-full);margin-left:4px;padding:1px 7px}.btn-icon-remove{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;font-size:13px;transition:background .14s,color .14s}.btn-icon-remove:hover{background:var(--status-danger-bg);color:var(--status-danger-solid)}.msg-image-preview{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border-top:1px solid var(--border-default);background:var(--bg-subtle);display:flex}.msg-image-preview img{object-fit:cover;border-radius:var(--radius-md);flex:none;width:44px;height:44px}.msg-image-preview-label{font-size:var(--fs-xs);color:var(--text-muted);flex:auto}.msg-image-preview-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:4px;font-size:14px;transition:background .14s,color .14s}.msg-image-preview-remove:hover{background:var(--status-danger-bg);color:var(--status-danger-solid)}.msg-quick-wrap{flex:none;position:relative}.msg-quick-menu{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:260px;max-width:80vw;box-shadow:var(--shadow-md);z-index:20;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden}.msg-quick-list{max-height:220px;overflow-y:auto}.msg-quick-option{cursor:pointer;align-items:center;gap:6px;padding:8px 10px;transition:background .14s;display:flex}.msg-quick-option:hover{background:var(--bg-hover)}.msg-quick-text{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.msg-quick-option .pill-remove{color:inherit;opacity:.45;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:10px;line-height:1}.msg-quick-option .pill-remove:hover{opacity:1;color:var(--status-danger-solid)}.msg-quick-empty{padding:var(--sp-3);font-size:var(--fs-xs);color:var(--text-muted);text-align:center}.msg-quick-add{border-top:1px solid var(--border-default);gap:6px;padding:8px;display:flex}.msg-quick-add .input{font-size:var(--fs-sm);flex:auto;padding:6px 8px}.msg-mention-wrap{flex:auto;min-width:0;position:relative}.msg-mention-wrap .input{width:100%}.msg-mention-menu{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;min-width:220px;max-width:300px;box-shadow:var(--shadow-md);z-index:20;max-height:200px;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto}.msg-mention-option{cursor:pointer;font-size:var(--fs-sm);align-items:center;gap:8px;padding:7px 10px;transition:background .14s;display:flex}.msg-mention-option:hover,.msg-mention-option.highlighted{background:var(--bg-hover)}.msg-mention-option .msg-thread-avatar{flex:none;width:24px;height:24px;font-size:11px}.msg-mention{font-weight:var(--fw-semibold);cursor:pointer;border-radius:4px;padding:0 3px;transition:background .14s}.msg-mention:hover{text-decoration:underline}.msg-bubble-row:not(.own) .msg-bubble .msg-mention{color:var(--chip-info-text);background:#2f6fd629}:root[data-theme=dark] .msg-bubble-row:not(.own) .msg-bubble .msg-mention{background:#8ab4ff38}.msg-bubble-row:not(.own) .msg-bubble .msg-mention:hover{background:#2f6fd647}:root[data-theme=dark] .msg-bubble-row:not(.own) .msg-bubble .msg-mention:hover{background:#8ab4ff57}.msg-bubble-row.own .msg-bubble .msg-mention{color:#fff;background:#ffffff40}.msg-bubble-row.own .msg-bubble .msg-mention:hover{background:#fff6}.msg-bubble-row.mentions-me .msg-bubble{outline:2px solid var(--brand-400);outline-offset:-1px}.msg-bubble-row[data-message-id]{cursor:pointer;-webkit-touch-callout:none}.msg-bubble-deleted{color:var(--text-muted);font-style:italic;background:var(--bg-subtle)!important}.msg-edited-tag{opacity:.8;font-style:italic}.msg-tick{letter-spacing:-1px;color:var(--text-muted);margin-left:4px;font-size:11px}.msg-tick.read{color:var(--brand-400)}.msg-bubble-row.own .msg-tick{color:#ffffffa6}.msg-bubble-row.own .msg-tick.read{color:#bfe0ff}.msg-reactions{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.msg-reaction-pill{border:1px solid var(--border-default);background:var(--bg-surface);border-radius:var(--radius-full);cursor:pointer;align-items:center;gap:3px;padding:1px 7px;font-size:13px;transition:background .14s,border-color .14s;display:inline-flex}.msg-reaction-pill:hover{background:var(--bg-hover)}.msg-reaction-pill.mine{border-color:var(--brand-400);background:var(--accent-soft-bg)}.msg-reaction-count{font-size:10px;font-weight:var(--fw-semibold);color:var(--text-muted)}.msg-editing-banner{justify-content:space-between;align-items:center;gap:var(--sp-2);background:var(--accent-soft-bg);color:var(--accent-soft-text);font-size:var(--fs-xs);font-weight:var(--fw-medium);border-top:1px solid var(--border-default);padding:6px 14px;display:flex}.msg-editing-cancel{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:2px;font-size:13px}.msg-editing-cancel:hover{opacity:1}.msg-action-menu{z-index:1200;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;position:fixed;overflow:hidden}.msg-reaction-bar{border-bottom:1px solid var(--border-default);gap:2px;padding:8px 10px;display:flex}.msg-reaction-btn{border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;padding:4px;font-size:22px;line-height:1;transition:transform .12s,background .12s}.msg-reaction-btn:hover{background:var(--bg-hover);transform:scale(1.25)}.msg-action-list{flex-direction:column;padding:4px;display:flex}.msg-action-item{text-align:left;font-size:var(--fs-sm);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;transition:background .14s;display:flex}.msg-action-item:hover{background:var(--bg-hover)}.msg-action-item.danger{color:var(--status-danger-solid)}.msg-info-preview{background:var(--bg-subtle);border-radius:var(--radius-md);font-size:var(--fs-sm);padding:10px 12px}.msg-info-sent{font-size:var(--fs-xs);color:var(--text-muted);margin-top:6px}.msg-info-list{flex-direction:column;gap:2px;display:flex}.msg-info-row{align-items:center;gap:var(--sp-2);padding:6px 4px;display:flex}.msg-info-name{font-size:var(--fs-sm)}.ppl-picker{gap:var(--sp-2);flex-direction:column;display:flex}.ppl-picker-search{width:100%}.ppl-picker-list{border:1px solid var(--border-default);border-radius:var(--radius-md);height:280px;padding:4px;overflow-y:auto}.ppl-picker-list-short{height:190px}.ppl-picker-row{border-radius:var(--radius-md);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:8px 10px;font-family:inherit;transition:background .14s;display:flex}.ppl-picker-row:hover{background:var(--bg-hover)}.ppl-picker-row.selected{background:var(--accent-soft-bg)}.ppl-picker-meta{flex-direction:column;flex:auto;min-width:0;display:flex}.ppl-picker-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ppl-picker-sub{font-size:var(--fs-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ppl-picker-check{border:2px solid var(--border-strong);color:#0000;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;transition:background .14s,border-color .14s;display:flex}.ppl-picker-check.square{border-radius:5px}.ppl-picker-row.selected .ppl-picker-check{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.ppl-picker-empty{height:100%;color:var(--text-muted);font-size:var(--fs-sm);justify-content:center;align-items:center;display:flex}[data-design=minimal-editorial] table.data-table tbody tr:hover td{border-color:var(--text-muted)}
@media (max-width:1080px){.app-shell{grid-template-columns:76px 1fr}.sidebar-brand span.brand-text,.sidebar-section-label,.nav-item .nav-text,.sidebar-role-badge,.switch-role-btn .btn-text,.theme-toggle-btn .btn-text{display:none}.sidebar-footer{justify-content:center;align-items:center;display:flex}.switch-role-btn,.theme-toggle-btn{width:44px;height:44px;padding:0}.nav-item{justify-content:center}.nav-item .nav-icon{font-size:17px}.grid-2,.grid-3{grid-template-columns:1fr}.form-grid,.form-grid.cols-3,.form-grid.cols-4{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.app-shell{grid-template-columns:1fr;grid-template-rows:var(--topbar-height) 1fr;grid-template-areas:"topbar""main"}.sidebar{width:260px;height:100vh;box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-brand span.brand-text,.sidebar-section-label,.nav-item .nav-text,.sidebar-role-badge,.switch-role-btn .btn-text,.theme-toggle-btn .btn-text{display:inline}.nav-item{justify-content:flex-start}.switch-role-btn,.theme-toggle-btn{width:100%;height:auto;padding:9px 16px}.sidebar-overlay{z-index:99;background:#0f112866;display:none;position:fixed;inset:0}.sidebar-overlay.open{display:block}.mobile-menu-btn{display:inline-flex!important}.topbar-subtitle{display:none}.main-content{padding:var(--sp-4)}.form-grid,.form-grid.cols-3,.form-grid.cols-1,.form-grid.cols-4{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.stat-grid{grid-template-columns:1fr 1fr}.info-list,.auth-card{grid-template-columns:1fr}.auth-side{display:none}.role-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;align-items:flex-start}.detail-header .detail-actions{width:100%;margin-left:0}.modal{max-width:100%;margin:0 var(--sp-2)}.table-toolbar,.table-filters{flex-direction:column;align-items:stretch}.table-filters .input{width:100%}}.mobile-menu-btn{display:none}
.sidebar-overlay{display:none}span.nav-item.disabled{cursor:not-allowed}.invalid>.input,.input.invalid,.search-select.invalid>.input{border-color:var(--status-danger)}.page-note{color:var(--text-muted);font-size:var(--fs-sm);margin:0 0 var(--sp-4)}.table-filters .table-filter-select{flex:150px}@media (max-width:720px){.table-filters>*,.table-filters .search-input-wrap,.table-filters .table-filter-select{flex:none;width:100%}}
