@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #111111;--color-primary-hover: #2a2a2a;--color-primary-active: #404040;--color-primary-light: rgba(17, 17, 17, .05);--color-primary-muted: rgba(17, 17, 17, .08);--color-bg: #f4f4f2;--color-surface: #ffffff;--color-surface-raised: #fafaf9;--color-border: #e5e5e3;--color-border-light: #efefed;--color-text-primary: #111111;--color-text-secondary: #6b6b6b;--color-text-muted: #9b9b9b;--color-text-inverse: #ffffff;--color-text-link: #111111;--color-sidebar-pill-bg: rgba(0, 0, 0, .07);--color-sidebar-pill-hover-bg: rgba(0, 0, 0, .11);--color-sidebar-bg: #f4f4f2;--color-sidebar-border: #e5e5e3;--color-sidebar-logo: #111111;--color-sidebar-nav-text: #333333;--color-sidebar-nav-hover-bg: rgba(0, 0, 0, .05);--color-sidebar-nav-hover-text: #111111;--color-sidebar-nav-active-bg: #ffffff;--color-sidebar-nav-active-text: #111111;--color-sidebar-nav-active-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--color-sidebar-footer-border: #e5e5e3;--color-sidebar-user-name: #111111;--color-sidebar-user-role: #9b9b9b;--color-sidebar-avatar-bg: #e5e5e3;--color-sidebar-avatar-text: #6b6b6b;--color-sidebar-logout: #9b9b9b;--color-sidebar-logout-hover-bg: #fef2f2;--color-sidebar-logout-hover-text: #ef4444;--color-success: #16a34a;--color-success-bg: #dcfce7;--color-success-border: #86efac;--color-warning: #d97706;--color-warning-bg: #fef3c7;--color-warning-border: #fcd34d;--color-error: #dc2626;--color-error-bg: #fee2e2;--color-error-border: #fca5a5;--color-info: #2563eb;--color-info-bg: #dbeafe;--color-info-border: #93c5fd;--color-purple: #7c3aed;--color-purple-bg: #ede9fe;--color-orange: #ea580c;--color-orange-bg: #ffedd5;--color-focus-border: #a8a8a5;--color-focus-ring: rgba(0, 0, 0, .06);--sidebar-width: 200px;--topbar-height: 44px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-size-3xl: 28px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-snug: 1.375;--line-height-base: 1.5;--line-height-relaxed: 1.625;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .09), 0 2px 8px rgba(0, 0, 0, .04);--shadow-xl: 0 4px 24px rgba(0, 0, 0, .08);--transition-fast: .1s ease;--transition-base: .18s ease;--transition-slow: .28s ease;--z-base: 0;--z-raised: 10;--z-sidebar: 100;--z-topbar: 200;--z-modal: 300;--z-toast: 400}[data-theme=dark]{--color-primary: #e8e8e4;--color-primary-hover: #cfcfcb;--color-primary-active: #b8b8b4;--color-primary-light: rgba(232, 232, 228, .06);--color-primary-muted: rgba(232, 232, 228, .08);--color-bg: #1c1c1a;--color-surface: #242422;--color-surface-raised: #2a2a28;--color-border: #333330;--color-border-light: #2c2c2a;--color-text-primary: #e8e8e4;--color-text-secondary: #a0a09c;--color-text-muted: #72726e;--color-text-inverse: #111111;--color-text-link: #e8e8e4;--color-sidebar-pill-bg: rgba(255, 255, 255, .05);--color-sidebar-pill-hover-bg: rgba(255, 255, 255, .09);--color-sidebar-bg: #1c1c1a;--color-sidebar-border: #333330;--color-sidebar-logo: #e8e8e4;--color-sidebar-nav-text: #c8c8c4;--color-sidebar-nav-hover-bg: rgba(255, 255, 255, .09);--color-sidebar-nav-hover-text: #e8e8e4;--color-sidebar-nav-active-bg: rgba(255, 255, 255, .22);--color-sidebar-nav-active-text: #ffffff;--color-sidebar-nav-active-shadow: 0 1px 4px rgba(0,0,0,.4), 0 1px 2px rgba(0,0,0,.3);--color-sidebar-footer-border: #2c2c2a;--color-sidebar-user-name: #e8e8e4;--color-sidebar-user-role: #72726e;--color-sidebar-avatar-bg: #333330;--color-sidebar-avatar-text: #a0a09c;--color-sidebar-logout: #72726e;--color-sidebar-logout-hover-bg: rgba(239, 68, 68, .12);--color-sidebar-logout-hover-text: #ef4444;--color-focus-border: #555552;--color-focus-ring: rgba(255, 255, 255, .06);--color-success: #4ade80;--color-success-bg: rgba(74, 222, 128, .12);--color-success-border: rgba(74, 222, 128, .25);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .12);--color-warning-border: rgba(251, 191, 36, .25);--color-error: #f87171;--color-error-bg: rgba(248, 113, 113, .12);--color-error-border: rgba(248, 113, 113, .25);--color-info: #60a5fa;--color-info-bg: rgba(96, 165, 250, .12);--color-info-border: rgba(96, 165, 250, .25);--color-purple: #a78bfa;--color-purple-bg: rgba(167, 139, 250, .12);--color-orange: #fb923c;--color-orange-bg: rgba(251, 146, 60, .12)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-primary: #e8e8e4;--color-primary-hover: #cfcfcb;--color-primary-active: #b8b8b4;--color-primary-light: rgba(232, 232, 228, .06);--color-primary-muted: rgba(232, 232, 228, .08);--color-bg: #1c1c1a;--color-surface: #242422;--color-surface-raised: #2a2a28;--color-border: #333330;--color-border-light: #2c2c2a;--color-text-primary: #e8e8e4;--color-text-secondary: #a0a09c;--color-text-muted: #72726e;--color-text-inverse: #111111;--color-text-link: #e8e8e4;--color-sidebar-pill-bg: rgba(255, 255, 255, .05);--color-sidebar-pill-hover-bg: rgba(255, 255, 255, .09);--color-sidebar-bg: #1c1c1a;--color-sidebar-border: #333330;--color-sidebar-logo: #e8e8e4;--color-sidebar-nav-text: #c8c8c4;--color-sidebar-nav-hover-bg: rgba(255, 255, 255, .09);--color-sidebar-nav-hover-text: #e8e8e4;--color-sidebar-nav-active-bg: rgba(255, 255, 255, .22);--color-sidebar-nav-active-text: #ffffff;--color-sidebar-nav-active-shadow: 0 1px 4px rgba(0,0,0,.4), 0 1px 2px rgba(0,0,0,.3);--color-sidebar-footer-border: #2c2c2a;--color-sidebar-user-name: #e8e8e4;--color-sidebar-user-role: #72726e;--color-sidebar-avatar-bg: #333330;--color-sidebar-avatar-text: #a0a09c;--color-sidebar-logout: #72726e;--color-sidebar-logout-hover-bg: rgba(239, 68, 68, .12);--color-sidebar-logout-hover-text: #ef4444;--color-focus-border: #555552;--color-focus-ring: rgba(255, 255, 255, .06);--color-success: #4ade80;--color-success-bg: rgba(74, 222, 128, .12);--color-success-border: rgba(74, 222, 128, .25);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .12);--color-warning-border: rgba(251, 191, 36, .25);--color-error: #f87171;--color-error-bg: rgba(248, 113, 113, .12);--color-error-border: rgba(248, 113, 113, .25);--color-info: #60a5fa;--color-info-bg: rgba(96, 165, 250, .12);--color-info-border: rgba(96, 165, 250, .25);--color-purple: #a78bfa;--color-purple-bg: rgba(167, 139, 250, .12);--color-orange: #fb923c;--color-orange-bg: rgba(251, 146, 60, .12)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px;height:100%}body{min-height:100%;line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;border:none;background:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-md)}h6{font-size:var(--font-size-base)}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}small{font-size:var(--font-size-sm)}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg)}app-icon{display:inline-flex;align-items:center;flex-shrink:0}.form-field{display:flex;flex-direction:column;gap:var(--space-1)}.form-field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);letter-spacing:.01em}.form-field__input{width:100%;height:42px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.form-field__input::placeholder{color:var(--color-text-muted)}.form-field__input:focus{border-color:var(--color-focus-border);box-shadow:0 0 0 2px #0000000f}.form-field__input:disabled{background:var(--color-border-light);cursor:not-allowed;opacity:.7}.form-field__error{font-size:var(--font-size-xs);color:var(--color-error);margin-top:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:42px;padding:0 var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast),opacity var(--transition-fast),box-shadow var(--transition-fast);outline:none;border:none;white-space:nowrap}.btn--primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--primary:active:not(:disabled){background:var(--color-primary-active)}.btn--primary:focus-visible{box-shadow:0 0 0 3px #00000026}.btn--ghost{background:transparent;color:var(--color-text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--color-border-light);color:var(--color-text-primary)}.btn--danger{background:var(--color-error);color:var(--color-text-inverse)}.btn--danger:hover:not(:disabled){background:var(--color-error-hover, #dc2626)}.btn--full{width:100%}.btn--sm{height:34px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn__spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:btn-spin .65s linear infinite;flex-shrink:0}@keyframes btn-spin{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.02em}.badge--admin{background:var(--color-primary-muted);color:var(--color-primary)}.badge--staff{background:var(--color-border-light);color:var(--color-text-secondary)}.badge--success{background:var(--color-success-bg);color:var(--color-success)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge--error{background:var(--color-error-bg);color:var(--color-error)}.m-backdrop{position:fixed;inset:0;background:#0f0f0f73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);animation:m-backdrop-in .12s ease}.m-backdrop--out{animation:m-backdrop-out .15s ease forwards}.m-modal{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 0 0 1px #37352f0a,0 4px 12px #0f0f0f14,0 12px 40px #0f0f0f24,0 24px 64px #0f0f0f0f;width:100%;max-width:460px;display:flex;flex-direction:column;animation:m-modal-in .22s cubic-bezier(.16,1,.3,1);overflow:hidden}.m-modal--sm{max-width:360px}.m-modal--lg{max-width:548px}.m-modal--out{animation:m-modal-out .15s ease forwards}.m-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid var(--color-border)}.m-modal__title{font-size:15px;font-weight:600;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.3}.m-modal__close{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:none;border-radius:6px;color:var(--color-text-muted);cursor:pointer;transition:background 80ms ease,color 80ms ease;flex-shrink:0}.m-modal__close:hover{background:var(--color-primary-light);color:var(--color-text-primary)}.m-modal__body{padding:var(--space-5);display:flex;flex-direction:column;gap:18px;max-height:65vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.m-modal__error{margin:0 20px;padding:9px 12px;font-size:13px;color:var(--color-error);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:6px;line-height:1.45}.m-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:12px 20px;border-top:1px solid var(--color-border);background:transparent}.m-modal__cancel{height:38px;padding:0 var(--space-4);border:none;background:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast)}.m-modal__cancel:hover{background:var(--color-border-light)}.m-modal__submit{display:inline-flex;align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-5);background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;cursor:pointer;transition:background var(--transition-fast)}.m-modal__submit:hover:not(:disabled){background:var(--color-primary-hover)}.m-modal__submit:disabled{opacity:.45;cursor:not-allowed}.m-modal__spinner{width:12px;height:12px;border:1.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:m-spin .6s linear infinite;flex-shrink:0}.m-field{display:flex;flex-direction:column;gap:6px}.m-field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.m-field__required{color:var(--color-error);margin-left:2px}.m-field__hint{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-regular);margin-left:4px}.m-field__input{height:42px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:0 var(--space-4);font-size:var(--font-size-base);color:var(--color-text-primary);font-family:inherit;outline:none;width:100%;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.m-field__input::placeholder{color:var(--color-text-muted)}.m-field__input:hover{border-color:var(--color-text-muted)}.m-field__input:focus{border-color:var(--color-focus-border);box-shadow:0 0 0 2px #0000000f}.m-field__input--error{border-color:var(--color-error);box-shadow:none}.m-field__select{height:42px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:0 var(--space-4);font-size:var(--font-size-base);color:var(--color-text-primary);font-family:inherit;outline:none;width:100%;box-sizing:border-box;cursor:pointer;transition:border-color var(--transition-fast)}.m-field__select:hover{border-color:var(--color-text-muted)}.m-field__select:focus{border-color:var(--color-focus-border);box-shadow:0 0 0 2px #0000000f}.m-field__error{font-size:var(--font-size-xs);color:var(--color-error)}.m-form{display:flex;flex-direction:column;gap:18px}.m-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.parties-phones{display:flex;flex-direction:column;gap:6px}.parties-phones__row{display:flex;align-items:center;gap:6px}.parties-phones__remove{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;border:none;background:none;border-radius:5px;color:var(--color-text-muted);cursor:pointer;transition:background 80ms ease,color 80ms ease}.parties-phones__remove:hover{background:var(--color-error-bg);color:var(--color-error)}.parties-phones__add{align-self:flex-start;height:32px;padding:0 var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:none;font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.parties-phones__add:hover{border-color:var(--color-text-muted);color:var(--color-text-secondary)}@keyframes m-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes m-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes m-modal-in{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes m-modal-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-6px)}}@keyframes m-spin{to{transform:rotate(360deg)}}.c-modal-backdrop{position:fixed;inset:0;background:#0000004d;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:backdrop-in .12s ease}.c-modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:400px;margin:var(--space-4);animation:modal-in .15s ease}.c-modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border-light)}.c-modal__title{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary);letter-spacing:-.015em}.c-modal__close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.c-modal__close:hover{background:var(--color-border-light);color:var(--color-text-primary)}.c-modal__form{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.c-modal__field{display:flex;flex-direction:column;gap:var(--space-1)}.c-modal__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.c-modal__input{height:38px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:0 var(--space-3);font-size:var(--font-size-base);color:var(--color-text-primary);font-family:inherit;outline:none;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.c-modal__input::placeholder{color:var(--color-text-muted)}.c-modal__input:focus{border-color:var(--color-focus-border);box-shadow:0 0 0 2px #0000000f}.c-modal__input--error{border-color:var(--color-error)}.c-modal__input--sm{width:100px}.c-modal__field-error{font-size:var(--font-size-xs);color:var(--color-error)}.c-modal__hint{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-snug)}.c-modal__error{font-size:var(--font-size-sm);color:var(--color-error);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);padding:9px var(--space-3)}.c-modal--sm{max-width:340px}.c-modal__message{padding:var(--space-4) var(--space-5) 0;font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.c-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-light)}.c-modal__footer--confirm{padding:var(--space-4) var(--space-5) var(--space-5);border-top:none}.c-modal__cancel{height:34px;padding:0 var(--space-3);border:none;background:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;font-family:inherit;transition:background var(--transition-fast)}.c-modal__cancel:hover{background:var(--color-border-light)}.c-modal__save{height:34px;padding:0 var(--space-4);background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:var(--space-2);transition:background var(--transition-fast),opacity var(--transition-fast)}.c-modal__save:hover:not(:disabled){background:var(--color-primary-hover)}.c-modal__save:disabled{opacity:.5;cursor:not-allowed}.c-modal__save--danger{background:var(--color-error)}.c-modal__save--danger:hover:not(:disabled){background:var(--color-error-hover, #dc2626)}.c-modal__spinner{width:13px;height:13px;border:1.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:scale(.97) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.97) translateY(-6px)}}.c-modal-backdrop--closing{animation:backdrop-out .15s ease forwards}.c-modal--closing{animation:modal-out .15s ease forwards}@keyframes spin{to{transform:rotate(360deg)}}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.alert--error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error)}.alert--success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:#065f46}
