:root,[data-theme=dark]{--font-display:"Sora", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-sans:"Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--font-family:var(--font-sans);--color-bg:#08070c;--color-surface:#100f16;--color-surface-elevated:#161420;--color-surface-hover:#221f2f;--color-surface-subtle:#14121d;--color-text-main:#fff;--color-text-muted:#a59ec2;--color-text-light:#7e779c;--color-border:#ffffff1a;--color-border-hover:#a855f773;--color-border-input:#ffffff24;--color-primary:oklch(62% .26 295);--color-primary-glow:oklch(74% .22 296);--color-primary-deep:oklch(40% .24 290);--color-primary-hover:#a855f7;--color-primary-light:#a855f726;--color-primary-light-hover:#a855f73d;--color-primary-border:#a855f766;--color-accent-fuchsia:#d946ef;--color-accent-indigo:#6366f1;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-danger-light:#ef444429;--color-danger-text:#fca5a5;--color-danger-bg:#ef444429;--color-success:#10b981;--color-success-hover:#059669;--color-success-light:#10b98126;--color-success-text:#6ee7b7;--color-success-bg:#10b98126;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-warning-light:#f59e0b29;--color-warning-text:#fcd34d;--color-warning-bg:#f59e0b29;--color-info:#38bdf8;--color-info-hover:#0284c7;--color-info-light:#38bdf826;--color-info-text:#7dd3fc;--color-info-bg:#38bdf826;--color-focus-ring:#a855f773;--shadow-card:0 16px 36px -12px #0009, inset 0 1px #ffffff14;--shadow-modal:0 24px 64px #000000b8, inset 0 1px #ffffff1f;--shadow-glow:0 0 35px -5px #a855f780, inset 0 1px #ffffff59;--gradient-brand:linear-gradient(135deg, #a855f7 0%, #7c3aed 55%, #581c87 100%);--gradient-surface:linear-gradient(135deg, #ffffff0d, #ffffff04), #100f16;--header-bg:linear-gradient(135deg, #ffffff0d, #ffffff04), #100a16c7;--shimmer-bg:linear-gradient(90deg, #161420 25%, #221f2f 37%, #161420 63%);font-family:var(--font-family);color:var(--color-text-main);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}[data-theme=light]{--font-display:"Sora", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-sans:"Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--font-family:var(--font-sans);--color-bg:#faf8fd;--color-surface:#fff;--color-surface-elevated:#f4f0fa;--color-surface-hover:#eee8f8;--color-surface-subtle:#f3eff9;--color-text-main:#09080e;--color-text-muted:#585070;--color-text-light:#786f94;--color-border:#00000014;--color-border-hover:#9333ea59;--color-border-input:#6d28d933;--color-primary:oklch(58% .24 295);--color-primary-glow:oklch(68% .22 296);--color-primary-deep:oklch(42% .22 290);--color-primary-hover:#6d28d9;--color-primary-light:#f2ebff;--color-primary-light-hover:#e8dbfc;--color-primary-border:#d8b4fe;--color-accent-fuchsia:#c026d3;--color-accent-indigo:#4f46e5;--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-danger-light:#fee2e2;--color-danger-text:#991b1b;--color-danger-bg:#fee2e2;--color-success:#059669;--color-success-hover:#047857;--color-success-light:#d1fae5;--color-success-text:#065f46;--color-success-bg:#d1fae5;--color-warning:#d97706;--color-warning-hover:#b45309;--color-warning-light:#fef3c7;--color-warning-text:#92400e;--color-warning-bg:#fef3c7;--color-info:#0284c7;--color-info-hover:#0369a1;--color-info-light:#e0f2fe;--color-info-text:#075985;--color-info-bg:#e0f2fe;--color-focus-ring:#7c3aed59;--shadow-card:0 16px 36px -12px #7c3aed14, 0 4px 12px #0000000a;--shadow-modal:0 20px 50px -15px #09080e29;--shadow-glow:0 0 30px -6px #9333ea59;--gradient-brand:linear-gradient(135deg, #7c3aed 0%, #9333ea 100%);--gradient-surface:#fff;--header-bg:#ffffffd9;--shimmer-bg:linear-gradient(90deg, #e4ddf2 25%, #f4f0fa 37%, #e4ddf2 63%)}*{box-sizing:border-box}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#a855f740;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#a855f780}::selection{color:#fff;background:#a855f74d}body{background:radial-gradient(ellipse 80% 50% at 50% -15%, #9333ea24, transparent 70%), var(--color-bg);min-width:320px;min-height:100vh;color:var(--color-text-main);margin:0;transition:background-color .25s,color .25s}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em}button,input,select,textarea{font:inherit;color:inherit}.shell{background:radial-gradient(circle at 50% 20%, #a855f72e 0%, transparent 60%), radial-gradient(circle at 80% 80%, #d946ef14 0%, transparent 50%), var(--color-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.card{border:1px solid var(--color-border);background:var(--gradient-surface);-webkit-backdrop-filter:blur(20px)saturate(160%);width:min(100%,420px);box-shadow:var(--shadow-card);border-radius:20px;padding:36px}.eyebrow{color:var(--color-primary);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin:0 0 22px;font-size:.78rem;font-weight:700}h1{letter-spacing:-.03em;font-size:1.8rem;font-weight:700;font-family:var(--font-display);margin:0 0 8px}.muted{color:var(--color-text-muted);margin:0 0 24px;line-height:1.5}form{gap:12px;display:grid}label{color:var(--color-text-main);font-size:.875rem;font-weight:600}input,select,textarea{border:1px solid var(--color-border-input);background:var(--color-surface-elevated);border-radius:10px;width:100%;min-height:44px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-border-hover)}.password-field{position:relative}.password-field input{padding-right:3.25rem}.password-visibility{width:36px;min-height:36px;color:var(--color-text-muted);background:0 0;border-radius:6px;padding:0;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-visibility:hover:not(:disabled){background:var(--color-primary-light);color:var(--color-primary)}.password-visibility svg{width:19px;height:19px}textarea{resize:vertical;min-height:90px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}button{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:0 16px;font-weight:650;transition:background .2s,box-shadow .2s,transform .2s,filter .2s,opacity .15s;display:inline-flex}button:disabled{cursor:not-allowed;opacity:.6}.shell form button[type=submit],.primary-button{color:#fff;background:var(--gradient-brand);box-shadow:var(--shadow-glow);border:1px solid #ffffff2e}.shell form button[type=submit]:hover:not(:disabled),.primary-button:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.primary-button.small{min-height:34px;padding:0 12px;font-size:.85rem}.secondary,.secondary-button{color:var(--color-primary);background:var(--color-primary-light);border:1px solid var(--color-primary-border)}.secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){background:var(--color-primary-light-hover)}.danger-button{color:#fff;background:var(--color-danger)}.danger-button:hover:not(:disabled){background:var(--color-danger-hover)}.text-button{color:var(--color-primary);background:0 0;min-height:40px;padding:0 8px;font-weight:600}.text-button:hover:not(:disabled){text-decoration:underline}.cancel{color:var(--color-text-muted);background:0 0}.cancel:hover:not(:disabled){background:var(--color-surface-hover)}.status{color:var(--color-text-muted);font-weight:500}.notice{color:var(--color-danger);margin:10px 0 2px;font-size:.9rem;line-height:1.45}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand-logo-container{align-items:center;gap:12px;display:flex}.brand-logo{object-fit:contain;width:auto;height:32px;display:block}.login-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.login-brand-wrapper{align-items:center;gap:12px;display:flex}.login-brand-logo{object-fit:contain;width:auto;height:36px;display:block}.login-brand-wrapper .eyebrow{margin:0}.header-icon-button{background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text-main);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;min-height:38px;margin:0;padding:0;transition:all .15s;display:inline-flex;position:relative}.header-icon-button:hover:not(:disabled){border-color:var(--color-primary-border);color:var(--color-primary);background:var(--color-primary-light);transform:translateY(-1px)}.header-icon-button.active{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border);box-shadow:0 0 14px -4px #a855f766}.action-icon,.theme-icon{stroke:currentColor;width:18px;height:18px;display:block}.notifications-badge{background:var(--color-danger,#ef4444);color:#fff;border:2px solid var(--header-bg);border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.68rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 6px #ef444473}.app-layout{flex-direction:column;min-width:0;max-width:100%;min-height:100vh;display:flex;overflow-x:hidden}.app-header{background:var(--header-bg);-webkit-backdrop-filter:blur(20px)saturate(160%);border-bottom:1px solid var(--color-border);z-index:20;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:0 24px;display:flex;position:sticky;top:0}.header-brand-container{flex:1;align-items:center;min-width:0;display:flex}.brand-logo-button{cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;margin:0;padding:4px 6px;transition:opacity .2s,transform .2s;display:inline-flex}.brand-logo-button:hover{opacity:.95;transform:translateY(-1px)}.brand-logo-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.orium-brand-logo{-webkit-user-select:none;user-select:none;align-items:center;gap:12px;display:inline-flex}.orium-logo-mark{flex-shrink:0;transition:transform .25s cubic-bezier(.4,0,.2,1);display:block}.brand-logo-button:hover .orium-logo-mark{transform:scale(1.06)}.orium-ring-path{transition:fill .2s}.orium-brand-text{text-align:left;flex-direction:column;gap:2px;line-height:1;display:flex}.orium-brand-name{font-family:var(--font-display);letter-spacing:.18em;color:var(--color-text-main);text-transform:uppercase;font-size:1.12rem;font-weight:800}.orium-brand-tagline{font-family:var(--font-display);letter-spacing:.44em;color:var(--color-primary);text-transform:uppercase;padding-left:2px;font-size:.58rem;font-weight:700}.header-center-nav{flex-shrink:0;justify-content:center;align-items:center;gap:6px;display:flex}.nav-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;min-height:38px;margin:0;padding:8px 14px;font-size:.92rem;font-weight:600;transition:all .15s}.nav-tab:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.nav-tab.active{background:var(--color-primary-light);color:var(--color-text-main);border-color:var(--color-primary-border);box-shadow:0 0 18px -6px #a855f759}.header-actions-container{flex:1;justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:flex}.header-quick-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-divider{background:var(--color-border);flex-shrink:0;width:1px;height:24px}.header-profile-wrapper{align-items:center;display:inline-flex;position:relative}.profile-avatar-trigger{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s;display:inline-flex;position:relative}.profile-avatar-trigger:hover,.profile-avatar-trigger.active{transform:scale(1.05)}.user-avatar-circle{border:2px solid var(--color-primary-border);width:38px;height:38px;color:var(--color-primary);font-family:var(--font-display);letter-spacing:.02em;background:linear-gradient(135deg,#a855f759,#6366f173);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.88rem;font-weight:750;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 2px 10px -2px #a855f759}.profile-avatar-trigger:hover .user-avatar-circle,.profile-avatar-trigger.active .user-avatar-circle{border-color:var(--color-primary);box-shadow:0 0 0 3px #a855f740,0 4px 16px -2px #a855f766}.google-profile-dropdown{background:var(--color-surface-elevated,#18181b);-webkit-backdrop-filter:blur(28px)saturate(180%);border:1px solid var(--color-border);z-index:100;border-radius:24px;flex-direction:column;gap:12px;width:330px;padding:16px;animation:.2s cubic-bezier(.16,1,.3,1) profilePopIn;display:flex;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 20px 50px -10px #0000008c,0 0 0 1px #ffffff0f}@keyframes profilePopIn{0%{opacity:0;transform:scale(.94)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.profile-dropdown-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:4px 4px 6px;display:flex}.profile-dropdown-user{align-items:center;gap:12px;min-width:0;display:flex}.profile-dropdown-avatar-large{border:2px solid var(--color-primary);color:#fff;width:52px;height:52px;font-family:var(--font-display);background:linear-gradient(135deg,#a855f766,#6366f180);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:750;display:flex;box-shadow:0 4px 16px -2px #a855f773}.profile-dropdown-info{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-dropdown-name{font-family:var(--font-display);color:var(--color-text-main);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;overflow:hidden}.profile-dropdown-email{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.profile-dropdown-badge-container{margin-top:4px}.profile-dropdown-close{width:30px;height:30px;min-height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:-2px -2px 0 0;padding:0;transition:all .15s;display:flex}.profile-dropdown-close:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.profile-dropdown-divider{background:var(--color-border);height:1px;margin:0}.profile-dropdown-menu{flex-direction:column;gap:6px;display:flex}.profile-dropdown-item{background:var(--color-surface);border:1px solid var(--color-border);width:100%;color:var(--color-text-main);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:12px;min-height:52px;margin:0;padding:10px 12px;transition:all .15s;display:flex}.profile-dropdown-item:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-primary-border);transform:translateY(-1px)}.profile-dropdown-item.danger-action:hover:not(:disabled){background:#ef444414;border-color:#ef444466}.profile-dropdown-item:disabled{opacity:.6;cursor:not-allowed}.profile-dropdown-item-icon{background:var(--color-surface-elevated);width:32px;height:32px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.profile-dropdown-item-icon.danger{color:#ef4444}.profile-dropdown-item-text{flex-direction:column;flex:1;min-width:0;display:flex}.profile-dropdown-item-title{color:var(--color-text-main);font-size:.88rem;font-weight:650}.profile-dropdown-item.danger-action .profile-dropdown-item-title{color:#ef4444}.profile-dropdown-item-desc{color:var(--color-text-muted);font-size:.72rem;line-height:1.25}.profile-dropdown-item-arrow{color:var(--color-text-muted);opacity:.6;flex-shrink:0;transition:transform .15s,opacity .15s}.profile-dropdown-item:hover .profile-dropdown-item-arrow{opacity:1;color:var(--color-primary);transform:translate(2px)}.role-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:.7rem;font-weight:700;display:inline-block}.role-badge.admin{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border)}.role-badge.collab{background:var(--color-surface-elevated);color:var(--color-text-muted);border:1px solid var(--color-border)}.main-content{flex:1;width:100%;min-width:0;max-width:1560px;margin:0 auto;padding:24px 20px 60px}.view-panel{flex-direction:column;gap:20px;display:flex}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-subtitle{color:var(--color-text-muted);margin:4px 0 0;font-size:.95rem}.toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.search-form{flex:1;align-items:center;gap:8px;max-width:480px;display:flex}.search-form input{min-height:40px}.search-form button{white-space:nowrap;min-height:40px;margin:0}.filter-group{align-items:center;gap:6px;display:flex}.filter-label{color:var(--color-text-muted);margin-right:4px;font-size:.85rem;font-weight:600}.filter-button,.filter-btn{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;height:32px;min-height:32px;margin:0;padding:0 12px;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.filter-button:hover,.filter-btn:hover{background:var(--color-surface-hover);color:var(--color-text-main);border-color:var(--color-primary-border);transform:translateY(-1px)}.filter-button.active,.filter-btn.active,.filter-button[aria-pressed=true],.filter-btn[aria-pressed=true]{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 0 14px -2px #a855f773}.alert-banner{border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:.9rem;display:flex}.alert-banner.success{background:var(--color-success-light);border:1px solid var(--color-success);color:var(--color-success-text)}.alert-banner.error{background:var(--color-danger-light);border:1px solid var(--color-danger);color:var(--color-danger-text);flex-direction:column;align-items:flex-start}.close-alert{color:inherit;cursor:pointer;background:0 0;border:0;min-height:auto;margin:0;padding:4px;font-size:1rem}.table-container{background:var(--color-surface);border:1px solid var(--color-border);-webkit-overflow-scrolling:touch;border-radius:12px;min-width:0;max-width:100%;overflow-x:auto;box-shadow:0 2px 8px #00000005}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.925rem}.data-table th{background:var(--color-surface-subtle);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:.8rem;font-weight:650}.data-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:14px 16px}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--color-surface-hover)}.row-archived,.row-inactive{background:var(--color-surface-subtle);opacity:.82}.client-name,.user-table-name{color:var(--color-text-main);font-weight:650}.client-notes{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:320px;margin-top:3px;font-size:.825rem;overflow:hidden}.contact-info{font-size:.875rem;line-height:1.4}.client-phone{color:var(--color-text-muted);font-size:.825rem}.self-tag{color:var(--color-primary);margin-left:6px;font-size:.8rem;font-weight:600}.status-badge{white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:.775rem;font-weight:650;display:inline-block}.status-badge.active{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success)}.status-badge.archived{background:var(--color-surface-subtle);color:var(--color-text-light);border:1px solid var(--color-border)}.text-right{text-align:right}.muted-dash{color:var(--color-text-light)}.action-buttons{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.action-btn{white-space:nowrap;border:1px solid #0000;border-radius:6px;flex-shrink:0;min-height:32px;margin:0;padding:0 10px;font-size:.825rem;font-weight:600}.action-btn.edit{background:var(--color-surface-subtle);color:var(--color-text-main);border-color:var(--color-border)}.action-btn.edit:hover:not(:disabled){background:var(--color-surface-hover)}.action-btn.archive,.action-btn.danger{background:var(--color-surface);color:var(--color-danger);border-color:var(--color-danger)}.action-btn.archive:hover:not(:disabled),.action-btn.danger:hover:not(:disabled){background:var(--color-danger-light)}.action-btn.restore{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success)}.action-btn.restore:hover:not(:disabled){background:var(--color-success-bg)}.action-btn.role-change{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.action-btn.role-change:hover:not(:disabled){background:var(--color-primary-light-hover)}.pagination-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:6px 4px;display:flex}.pagination-info{color:var(--color-text-muted);font-size:.875rem}.pagination-controls{gap:8px;display:flex}.pagination-controls button{min-height:36px;padding:0 14px;font-size:.85rem}.empty-state{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-title{color:var(--color-text-main);margin:0;font-size:1.1rem;font-weight:650}.empty-description{color:var(--color-text-muted);max-width:440px;margin:0;font-size:.95rem}.status-text{color:var(--color-text-muted);margin:0;font-weight:500}.error-text{color:var(--color-danger);margin:0;font-weight:600}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);background:#08070cb8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border);width:min(100%,540px);max-height:90vh;box-shadow:var(--shadow-modal);border-radius:16px;padding:28px;overflow-y:auto}.modal-panel.confirm-modal{width:min(100%,440px)}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h2{letter-spacing:-.02em;margin:0;font-size:1.35rem}.close-button{color:var(--color-text-muted);background:0 0;border:0;border-radius:8px;min-width:36px;min-height:36px;margin:0;padding:0;font-size:1.1rem}.close-button:hover{background:var(--color-surface-hover);color:var(--color-text-main)}.modal-body{margin-bottom:24px;font-size:.95rem;line-height:1.5}.modal-body p{margin:0 0 10px}.muted-text{color:var(--color-text-muted);font-size:.875rem}.form-field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.inline-panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:12px;margin-bottom:24px;padding:24px}.panel-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}dialog.native-dialog{border:1px solid var(--color-border);background:var(--color-surface);width:min(90vw,440px);box-shadow:var(--shadow-modal);color:var(--color-text-main);border-radius:16px;margin:auto;padding:28px}dialog.native-dialog::backdrop{-webkit-backdrop-filter:blur(8px);background:#08070cb8}.dialog-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dialog-header h2{letter-spacing:-.02em;margin:0;font-size:1.25rem}.dialog-body{margin-bottom:24px;font-size:.95rem;line-height:1.5}.dialog-body p{margin:0 0 10px}.dialog-actions{justify-content:flex-end;gap:10px;display:flex}@media (width<=860px){.app-header{flex-wrap:wrap;gap:10px;padding:10px 14px}.header-brand-container{flex:none}.header-center-nav{order:3;justify-content:flex-start;width:100%;padding-bottom:2px;overflow-x:auto}.header-actions-container{flex:1;justify-content:flex-end}}@media (width<=640px){.app-header{padding:10px 12px}.nav-tab{min-height:34px;padding:6px 10px;font-size:.85rem}.header-user-card{background:0 0;border-color:#0000;padding:2px 4px}.header-user-card .user-info,.header-divider{display:none}.main-content{padding:18px 14px 40px}.toolbar{flex-direction:column;align-items:stretch}.search-form{max-width:100%}.filter-group{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.form-row{grid-template-columns:1fr}.modal-panel{padding:20px 16px}.pagination-bar{flex-direction:column;align-items:stretch}.pagination-controls{justify-content:space-between}}.demand-title{color:var(--color-text-main);font-weight:650}.priority-badge{white-space:nowrap;border:1px solid #0000;border-radius:6px;padding:3px 8px;font-size:.775rem;font-weight:650;display:inline-block}.priority-badge.normal{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.priority-badge.low{background:var(--color-surface-elevated);color:var(--color-text-muted);border-color:var(--color-border)}.priority-badge.high{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning)}.priority-badge.urgent{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger)}.task-badge{white-space:nowrap;vertical-align:middle;border-radius:5px;margin-left:6px;padding:2px 7px;font-size:.725rem;font-weight:650;display:inline-block}.task-badge.status-blocked{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger)}.task-badge.status-paused{background:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border)}.task-badge.status-ready{background:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info)}.task-badge.status-in_production{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border)}.task-badge.status-in_review{color:#f0abfc;border:1px solid var(--color-accent-fuchsia);background:#d946ef29}[data-theme=light] .task-badge.status-in_review{color:#86198f;background:#fae8ff;border-color:#d946ef}.task-badge.status-changes_requested{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning)}.task-badge.status-completed{background:var(--color-success-light);color:var(--color-success-text);border:1px solid var(--color-success)}.status-badge.open{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning)}.status-badge.complete{background:var(--color-success-light);color:var(--color-success-text);border:1px solid var(--color-success)}.date-value{font-variant-numeric:tabular-nums}.back-row{margin-bottom:6px}.back-row .text-button{padding-left:0}.description-text{color:var(--color-text-muted);white-space:pre-wrap;margin:0 0 18px;line-height:1.55}.detail-actions{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.section-heading-row{justify-content:space-between;align-items:center;gap:12px;margin:26px 0 12px;display:flex}.section-heading{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:700}.history-panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:14px;margin-bottom:8px;padding:20px 22px}.event-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.event-item{border-left:3px solid var(--color-primary);background:var(--color-surface-elevated);border-radius:8px;padding:10px 14px}.event-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.event-action{color:var(--color-text-main);font-size:.9rem;font-weight:650}.event-reason{color:var(--color-text-muted);margin:6px 0 0;font-size:.85rem;line-height:1.45}.fieldset-block{border:1px solid var(--color-border);background:var(--color-surface-subtle);border-radius:10px;margin:4px 0 12px;padding:14px 16px 16px}.fieldset-legend{color:var(--color-text-main);padding:0 6px;font-size:.875rem;font-weight:700}.fieldset-label{font-size:.875rem;font-weight:600}.requirement-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.requirement-input{flex:1;min-height:40px}.requirement-draft{color:var(--color-text-muted);margin:2px 0 8px;font-size:.8rem}.checkbox-label-wrapper{color:var(--color-text-main);cursor:pointer;align-items:center;gap:8px;font-size:.875rem;font-weight:500;display:inline-flex}.checkbox-label-wrapper input{width:auto;min-height:auto;margin:0}.dependency-list{gap:8px;margin-bottom:4px;display:grid}.secondary-button.small{min-height:34px;padding:0 12px;font-size:.85rem}.task-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.task-list-item{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;transition:border-color .2s,transform .2s;display:flex}.task-list-item:hover{border-color:var(--color-border-hover);transform:translateY(-1px)}.task-item-title{color:var(--color-text-main);font-weight:650;line-height:1.4}.task-item-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:8px;margin-top:4px;font-size:.85rem;display:flex}.task-detail-shell{margin-top:4px}.detail-card{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:16px;padding:24px}.badge{white-space:nowrap;border:1px solid #0000;border-radius:6px;padding:3px 8px;font-size:.775rem;font-weight:650;display:inline-block}.badge-success{background:var(--color-success-light);color:var(--color-success-text);border-color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning)}.badge-low{background:var(--color-surface-subtle);color:var(--color-text-muted);border-color:var(--color-border)}.badge-normal{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.badge-high{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning)}.badge-urgent{background:var(--color-danger-light);color:var(--color-danger-text);border-color:var(--color-danger)}.badge-status-completed{background:var(--color-success-light);color:var(--color-success-text);border-color:var(--color-success)}.badge-status-blocked{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger)}.badge-status-paused{background:var(--color-surface-subtle);color:var(--color-text-muted);border-color:var(--color-border)}.badge-status-ready{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info)}.badge-status-in_production{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.badge-status-in_review{color:#f0abfc;border-color:var(--color-accent-fuchsia);background:#d946ef29}[data-theme=light] .badge-status-in_review{color:#86198f;background:#fae8ff;border-color:#d946ef}.badge-status-changes_requested{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning)}@media (width<=640px){.inline-panel{padding:16px 12px}.panel-actions{flex-direction:column-reverse;align-items:stretch}.panel-actions button{width:100%}.detail-actions{flex-direction:column;align-items:stretch}.detail-actions button{width:100%}.requirement-row{flex-wrap:wrap}.requirement-input{flex-basis:100%}.task-list-item{flex-direction:column;align-items:flex-start}.event-header{flex-direction:column;gap:4px}}.dashboard-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dashboard-updated-at{color:var(--color-text-muted);font-size:.82rem}.dashboard-sections{flex-direction:column;gap:24px;display:flex}.dashboard-section{flex-direction:column;gap:12px;display:flex}.dashboard-section-pending{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:20px}.dashboard-pending-groups{flex-direction:column;gap:20px;display:flex}.dashboard-pending-groups .dashboard-section{background:0 0;border:none;padding:0}.dashboard-count{color:var(--color-text-main);white-space:nowrap;font-size:.9rem;font-weight:600}.dashboard-limit-note{color:var(--color-text-muted);font-weight:400}.dashboard-item-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.dashboard-item{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;outline:none;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex}.dashboard-item:hover{border-color:var(--color-border-hover);transform:translateY(-2px);box-shadow:0 10px 24px -6px #0006}.dashboard-item:hover .dashboard-title-text{color:var(--color-primary)}.dashboard-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.dashboard-open-btn{white-space:nowrap;background:var(--color-surface-subtle);border:1px solid var(--color-border);min-width:118px;height:32px;color:var(--color-text-main);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.8rem;font-weight:650;transition:all .18s;display:inline-flex}.dashboard-item:hover .dashboard-open-btn,.dashboard-open-btn:hover{background:var(--color-primary-light-hover);color:var(--color-primary-hover);border-color:var(--color-primary-border);box-shadow:0 0 12px #a855f740}[data-theme=light] .dashboard-item:hover .dashboard-open-btn,[data-theme=light] .dashboard-open-btn:hover,[data-theme=light] .dashboard-item:hover .action-btn.edit,[data-theme=light] .dashboard-item .action-btn.edit:hover{color:#581c87!important;background:#ede4fb!important;border-color:#c084fc!important;box-shadow:0 2px 8px #7c3aed2e!important}[data-theme=dark] .dashboard-item:hover .dashboard-open-btn,[data-theme=dark] .dashboard-open-btn:hover,[data-theme=dark] .dashboard-item:hover .action-btn.edit,[data-theme=dark] .dashboard-item .action-btn.edit:hover{color:#fff!important;background:#a855f738!important;border-color:#a855f780!important;box-shadow:0 0 12px #a855f759!important}.dashboard-item:hover .dashboard-open-btn svg,.dashboard-open-btn:hover svg{transform:translate(2px)}.dashboard-item-main{flex-direction:column;gap:6px;min-width:0;display:flex}.dashboard-item-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-title-text{color:var(--color-text-main);font-weight:600}.dashboard-kind{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:700}.dashboard-kind.task,.dashboard-kind.demand{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.dashboard-item-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:6px 14px;font-size:.85rem;display:flex}.dashboard-item-meta strong{color:var(--color-text-main);font-weight:600}.dashboard-item-reason{color:var(--color-danger-text);background:var(--color-danger-light);border:1px solid var(--color-danger);border-radius:8px;margin:2px 0 0;padding:8px 12px;font-size:.85rem}.dashboard-skeleton{flex-direction:column;gap:10px;margin-top:8px;display:flex}.skeleton-line{background:var(--shimmer-bg);background-size:400% 100%;border-radius:8px;height:16px;animation:1.4s infinite skeleton-shimmer}.dashboard-skeleton .skeleton-line:nth-child(2){width:80%}.dashboard-skeleton .skeleton-line:nth-child(3){width:55%}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.workload-table-wrap{overflow-x:auto}.workload-table{border-collapse:collapse;width:100%;font-size:.9rem}.workload-table th,.workload-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:10px 12px}.workload-table th{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.workload-table td.text-right,.workload-table th.text-right{text-align:right}.workload-table tr:last-child td{border-bottom:none}@media (width<=640px){.dashboard-item{flex-direction:column;align-items:stretch}.dashboard-item .action-btn{align-self:flex-start}.dashboard-section-pending{padding:16px}}.materials-view{min-width:0;max-width:100%}.materials-view .materials-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-width:0;max-width:100%;margin-bottom:20px;display:flex}.materials-view .filter-controls{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;max-width:100%;display:flex}.materials-view .filter-group{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.client-select-filter{border:1px solid var(--color-border);background:var(--color-surface);min-height:36px;color:var(--color-text-main);border-radius:8px;min-width:180px;padding:0 12px;font-size:.875rem}.material-form-panel{margin-bottom:24px}.immutable-links-box{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;margin-top:8px;padding:12px 16px}.immutable-links-box .box-title{color:var(--color-text-main);margin:0 0 4px;font-size:.85rem;font-weight:650}.immutable-links-box .links-summary{color:var(--color-text-muted);margin:0 0 4px;font-size:.85rem}.conflict-actions{align-items:center;gap:10px;margin-top:10px;display:flex}.material-title-cell{flex-direction:column;gap:4px;display:flex}.material-title-text{color:var(--color-text-main);font-weight:650}.material-desc-muted{color:var(--color-text-muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:320px;font-size:.8rem;line-height:1.35;display:-webkit-box;overflow:hidden}.external-link-anchor{color:var(--color-primary);word-break:break-all;align-items:center;gap:6px;font-size:.85rem;text-decoration:none;display:inline-flex}.external-link-anchor:hover{text-decoration:underline}.link-icon{flex-shrink:0;font-size:.85rem}.link-url-text{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.material-bindings-cell{flex-direction:column;gap:3px;font-size:.825rem;display:flex}.binding-client{color:var(--color-text-main);font-weight:650}.binding-demand,.binding-task{color:var(--color-text-muted);font-size:.8rem}.material-version-cell{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-size:.825rem}.material-date-text{color:var(--color-text-muted);font-size:.825rem}.action-btn.secondary{background:var(--color-surface-subtle);color:var(--color-text-main);border:1px solid var(--color-border)}.action-btn.secondary:hover:not(:disabled){background:var(--color-surface-hover)}.action-btn.history{background:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border)}.action-btn.history:hover:not(:disabled){background:var(--color-surface-hover)}.native-dialog.history-dialog{border-radius:12px;width:92vw;max-width:640px;padding:24px}.history-material-name{color:var(--color-primary);word-break:break-all;font-weight:650}.event-list{flex-direction:column;gap:12px;max-height:55vh;margin:16px 0;padding:0;list-style:none;display:flex;overflow-y:auto}.event-item{border:1px solid var(--color-border);background:var(--color-surface-subtle);border-radius:8px;padding:12px 14px}.event-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.event-action{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-main);font-size:.85rem;font-weight:700}.event-meta{color:var(--color-text-muted);font-size:.775rem}.event-changes-diff{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;margin-top:8px;padding:8px 10px;font-size:.8rem}.change-row{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.change-row:last-child{margin-bottom:0}.change-field{min-width:80px;color:var(--color-text-muted);font-weight:650}.change-before{color:var(--color-danger-text);word-break:break-all;text-decoration:line-through}.change-arrow{color:var(--color-text-light)}.change-after{color:var(--color-success-text);word-break:break-all;font-weight:600}.target-selector-box{flex-direction:column;gap:8px;width:100%;display:flex}.target-search-row{width:100%;display:flex}.target-search-input{border:1px solid var(--color-border);background:var(--color-surface-subtle);width:100%;color:var(--color-text-main);border-radius:6px;padding:6px 10px;font-size:.8rem}.target-search-input:focus{background:var(--color-surface);border-color:var(--color-primary);outline:none}.target-error-inline{background:var(--color-danger-light);color:var(--color-danger-text);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;display:flex}.target-pagination-inline{justify-content:space-between;align-items:center;gap:8px;padding:4px 2px;display:flex}.target-page-text{color:var(--color-text-muted);font-size:.775rem}.client-timeline-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;min-width:0;max-width:100%;margin-bottom:24px;padding:20px;box-shadow:0 2px 8px #00000005}.timeline-panel-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.timeline-title-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.timeline-heading{color:var(--color-text-main);margin:0;font-size:1.1rem;font-weight:700}.timeline-client-badge{background:var(--color-primary-light);color:var(--color-primary);border-radius:6px;padding:3px 8px;font-size:.8rem;font-weight:650}.timeline-count-badge{color:var(--color-text-muted);font-size:.8rem}.timeline-header-actions{align-items:center;gap:8px;display:flex}.timeline-events-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.timeline-event-card{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:8px;padding:12px 16px;transition:background .15s;display:flex}.timeline-event-card:hover{background:var(--color-surface-subtle)}.timeline-event-meta{flex-wrap:wrap;align-items:center;gap:8px;font-size:.8rem;display:flex}.timeline-source-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 7px;font-size:.75rem;font-weight:700}.timeline-source-badge.source-demand{background:var(--color-info-bg);color:var(--color-info-text)}.timeline-source-badge.source-task{background:var(--color-warning-bg);color:var(--color-warning-text)}.timeline-source-badge.source-material{background:var(--color-success-bg);color:var(--color-success-text)}.timeline-action-badge{color:var(--color-text-main);font-weight:600}.timeline-actor-name{color:var(--color-text-muted)}.timeline-timestamp{color:var(--color-text-light);margin-left:auto}.timeline-event-body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.timeline-event-title{color:var(--color-text-main);word-break:break-word;font-size:.9rem;font-weight:600}.timeline-event-actions{align-items:center;gap:6px;display:flex}.timeline-pagination{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:12px;display:flex}.timeline-empty-state{text-align:center;color:var(--color-text-muted);padding:24px;font-size:.9rem}.timeline-error-banner{margin:8px 0}@media (width<=640px){html,body{overflow-x:hidden}.app-layout{min-width:0;max-width:100vw;overflow-x:hidden}.main-content{min-width:0;max-width:100%;padding:18px 12px 40px}.view-panel{min-width:0;max-width:100%}.materials-view .materials-toolbar,.materials-view .filter-controls{flex-direction:column;align-items:stretch;min-width:0;max-width:100%}.materials-view .filter-group{flex-wrap:wrap;min-width:0;max-width:100%}.materials-view .search-form{min-width:0;max-width:100%}.client-select-filter{width:100%;min-width:0}.link-url-text{max-width:140px}.native-dialog.history-dialog{width:96vw;padding:16px}}.notifications-counter{background:var(--color-danger);color:#fff;vertical-align:middle;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.notifications-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.notification-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.notification-item.unread{background:var(--color-primary-light);border-color:var(--color-primary-border)}.notification-item-main{flex-direction:column;gap:6px;min-width:0;display:flex}.notification-item-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notification-kind{color:var(--color-text-main);align-items:center;font-size:.9rem;font-weight:700;display:inline-flex}.notification-kind.unread{color:var(--color-primary)}.notification-unread-dot{background:var(--color-primary);border-radius:50%;flex:none;width:8px;height:8px}.notification-item-meta{color:var(--color-text-main);font-size:.9rem;line-height:1.45}.notification-item-meta strong{font-weight:650}.notification-delivery{color:var(--color-text-main);font-size:.9rem}.notification-delivery strong{font-weight:650}.notification-meta-row{width:100%}.muted-notification{color:var(--color-text-muted);font-size:.82rem}.notification-actions{flex:none;align-items:center;gap:8px;display:flex}@media (width<=640px){.notification-item{flex-direction:column;align-items:stretch}.notification-actions{flex-wrap:wrap;justify-content:flex-start}}.modal-card{background:var(--color-surface);border:1px solid var(--color-border);width:min(100%,540px);max-height:90vh;box-shadow:var(--shadow-modal);border-radius:16px;padding:28px;overflow-y:auto}.modal-card.wide,.modal-panel.wide{width:min(100%,820px)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:20px 0;display:grid}.kpi-card{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;padding:18px 20px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.kpi-card:hover{border-color:var(--color-border-hover);transform:translateY(-2px)}.kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);font-size:.78rem;font-weight:650}.kpi-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--color-text-main);letter-spacing:-.025em;margin:6px 0 4px;font-size:1.9rem;font-weight:700}.kpi-help{color:var(--color-text-light);font-size:.78rem;line-height:1.4}.report-filters{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:14px;margin-bottom:24px;padding:16px 20px}.report-section{border-top:1px solid var(--color-border);margin-top:32px;padding-top:24px}.category-badge{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:650}.template-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:16px;display:grid}.template-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;gap:8px;padding:16px;transition:transform .2s,border-color .2s;display:flex}.template-card:hover{border-color:var(--color-border-hover);transform:translateY(-2px)}.template-card-header{justify-content:space-between;align-items:center;display:flex}.template-card-title{font-family:var(--font-display);color:var(--color-text-main);margin:0;font-size:1.02rem;font-weight:700}.template-card-desc{color:var(--color-text-muted);flex:1;margin:0;font-size:.85rem;line-height:1.45}.template-card-meta{color:var(--color-text-light);border-top:1px dashed var(--color-border);align-items:center;gap:6px;padding:6px 0;font-size:.78rem;display:flex}.template-card-actions{margin-top:4px}.template-banner-info{background:var(--color-primary-light);border:1px solid var(--color-primary-border);color:var(--color-text-main);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:.88rem;display:flex}.template-tasks-section{border-top:1px solid var(--color-border);padding-top:16px}.template-task-list{flex-direction:column;gap:10px;display:flex}.template-task-preview-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.task-preview-info{flex:1;min-width:240px}.task-preview-title{align-items:center;gap:8px;margin-bottom:4px;font-size:.92rem;display:flex}.task-preview-index{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:4px;padding:2px 6px;font-size:.72rem;font-weight:700}.task-preview-meta{color:var(--color-text-muted);gap:6px;font-size:.78rem;display:flex}.task-preview-desc{color:var(--color-text-muted);margin:4px 0 0;font-size:.82rem}.task-preview-assignment select{min-width:220px;padding:6px 10px;font-size:.85rem}.template-tasks-draft-list{flex-direction:column;gap:12px;display:flex}.template-task-draft-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:10px;padding:14px}.draft-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.kpi-metric,.dashboard-kpi-value,.summary-metric-value,.report-kpi-value,.stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums}.dashboard-view-switcher{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex}.view-switch-btn{min-height:32px;color:var(--color-text-muted);background:0 0;border:1px solid #0000;border-radius:7px;gap:6px;padding:0 12px;font-size:.84rem;font-weight:650}.view-switch-btn:hover{color:var(--color-text-main);background:var(--color-surface-hover)}.view-switch-btn.active{color:#fff;background:var(--gradient-brand);box-shadow:var(--shadow-glow);border-color:#ffffff29}.dashboard-kanban-wrapper{flex-direction:column;gap:20px;display:flex}.kanban-controls-bar{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:16px;flex-direction:column;gap:14px;padding:16px 18px;display:flex}.kanban-quick-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.kanban-quick-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kanban-quick-pill{background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:7px;padding:6px 13px;font-size:.82rem;font-weight:600;transition:all .18s;display:inline-flex}.kanban-quick-pill:hover{border-color:var(--color-border-hover);color:var(--color-text-main);transform:translateY(-1px)}.kanban-quick-pill.active{background:var(--gradient-brand);color:#fff;box-shadow:var(--shadow-glow);border-color:#fff3}.quick-pill-badge{background:var(--color-surface-subtle);min-width:20px;height:18px;color:var(--color-text-main);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.72rem;font-weight:700;transition:background .18s,color .18s;display:inline-flex}.kanban-quick-pill.active .quick-pill-badge{color:#fff;background:#ffffff40}.quick-pill-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.quick-pill-dot.danger{background:var(--color-danger);box-shadow:0 0 6px var(--color-danger)}.quick-pill-dot.warning{background:var(--color-warning)}.quick-pill-dot.urgent{background:var(--color-accent-fuchsia);box-shadow:0 0 6px var(--color-accent-fuchsia)}.kanban-quick-pill.pill-danger:hover,.kanban-quick-pill.pill-danger.active{border-color:var(--color-danger)}.kanban-quick-pill.pill-danger.active{background:var(--color-danger);box-shadow:0 0 14px #ef444466}.kanban-quick-pill.pill-warning:hover,.kanban-quick-pill.pill-warning.active{border-color:var(--color-warning)}.kanban-quick-pill.pill-warning.active{background:var(--color-warning);color:#1e1b4b;box-shadow:0 0 14px #f59e0b66}.kanban-quick-pill.pill-warning.active .quick-pill-badge{color:#1e1b4b;background:#0003}.kanban-quick-pill.pill-urgent:hover,.kanban-quick-pill.pill-urgent.active{border-color:var(--color-accent-fuchsia)}.kanban-quick-pill.pill-urgent.active{background:var(--color-accent-fuchsia);box-shadow:0 0 14px #ec489966}.kanban-stat-counter{color:var(--color-text-muted);font-size:.82rem}.kanban-stat-counter strong{color:var(--color-text-main);font-weight:700}.kanban-filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.kanban-search-box{flex:1;align-items:center;min-width:240px;max-width:380px;display:flex;position:relative}.kanban-search-box .search-icon{pointer-events:none;color:var(--color-text-muted);position:absolute;left:12px}.kanban-search-box .kanban-search-input{background:var(--color-surface);border:1px solid var(--color-border);width:100%;min-height:38px;color:var(--color-text-main);border-radius:10px;padding:6px 34px 6px 36px;font-size:.86rem;transition:border-color .2s,box-shadow .2s}.kanban-search-box .kanban-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.search-clear-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:.82rem;line-height:1;position:absolute;right:10px}.search-clear-btn:hover{color:var(--color-text-main)}.kanban-filter-select{background:var(--color-surface);border:1px solid var(--color-border);width:auto;min-width:180px;min-height:38px;color:var(--color-text-main);cursor:pointer;border-radius:10px;padding:6px 12px;font-size:.84rem}.kanban-clear-filters-btn{border:1px dashed var(--color-border);min-height:38px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:5px;padding:0 12px;font-size:.82rem;font-weight:600;transition:all .18s;display:inline-flex}.kanban-clear-filters-btn:hover{border-color:var(--color-danger);color:var(--color-danger-text);background:var(--color-danger-bg)}.kanban-overdue-demands-bar{background:var(--color-danger-bg);border:1px solid var(--color-danger);color:var(--color-danger-text);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;font-size:.86rem;display:flex}.kanban-overdue-demands-title{align-items:center;gap:8px;display:flex}.kanban-overdue-demands-list{flex-wrap:wrap;gap:8px;display:flex}.kanban-overdue-demand-chip{background:var(--color-surface);border:1px solid var(--color-danger);min-height:30px;color:var(--color-text-main);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:4px 12px;font-size:.8rem;font-weight:600;transition:all .18s;display:inline-flex}.kanban-overdue-demand-chip:hover{border-color:var(--color-primary);background:var(--color-surface-hover);transform:translateY(-1px)}.kanban-overdue-demand-chip .chip-meta{color:var(--color-text-muted);font-size:.74rem;font-weight:400}.kanban-board-grid{scroll-behavior:smooth;grid-template-columns:repeat(4,minmax(260px,1fr));align-items:start;gap:14px;width:100%;min-width:0;padding:4px 4px 16px;display:grid;overflow-x:auto}.kanban-board-grid::-webkit-scrollbar{width:6px;height:8px}.kanban-column-body::-webkit-scrollbar{width:6px;height:8px}.kanban-board-grid::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.kanban-column-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.kanban-board-grid::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.kanban-column-body::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.kanban-column{background:var(--color-surface);border:1px solid var(--color-border);min-height:420px;max-height:1480px;box-shadow:var(--shadow-card);border-radius:16px;flex-direction:column;min-width:0;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.kanban-column:hover{border-color:var(--color-border-hover)}.kanban-column.col-blocked{border-top:3.5px solid #ef4444}.kanban-column.col-ready{border-top:3.5px solid #06b6d4}.kanban-column.col-production{border-top:3.5px solid #8b5cf6}.kanban-column.col-review{border-top:3.5px solid #ec4899}.kanban-column.col-changes{border-top:3.5px solid #f59e0b}.kanban-column.col-paused{border-top:3.5px solid #64748b}.kanban-column-header{border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);padding:14px 16px 12px}.kanban-column-title-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.kanban-column-title-group{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.kanban-status-icon-badge{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.kanban-status-icon-badge.col-blocked{color:#ef4444;background:#ef444426}.kanban-status-icon-badge.col-ready{color:#06b6d4;background:#06b6d426}.kanban-status-icon-badge.col-production{color:#8b5cf6;background:#8b5cf626;box-shadow:0 0 10px #8b5cf64d}.kanban-status-icon-badge.col-review{color:#ec4899;background:#ec489926}.kanban-status-icon-badge.col-changes{color:#f59e0b;background:#f59e0b26}.kanban-status-icon-badge.col-paused{color:#94a3b8;background:#64748b26}.kanban-column-title{color:var(--color-text-main);white-space:normal;word-break:break-word;margin:0;font-size:.88rem;font-weight:700;line-height:1.25}.kanban-column-header-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.kanban-col-alert-tag{color:#ef4444;background:#ef444429;border:1px solid #ef44444d;border-radius:999px;align-items:center;padding:1px 7px;font-size:.72rem;font-weight:700;animation:2s ease-in-out infinite pulse-soft;display:inline-flex}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.kanban-column-count{background:var(--color-primary-light);min-width:24px;height:22px;color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:.76rem;font-weight:700;transition:all .2s;display:inline-flex}.kanban-column-count.col-blocked{color:#f87171;background:#ef444429;border-color:#ef444459}.kanban-column-count.col-ready{color:#38bdf8;background:#06b6d429;border-color:#06b6d459}.kanban-column-count.col-production{color:#c084fc;background:#a855f72e;border-color:#a855f761}.kanban-column-count.col-review{color:#f472b6;background:#ec489929;border-color:#ec489959}.kanban-column-subtitle{color:var(--color-text-muted);margin:4px 0 0;font-size:.74rem;line-height:1.35}.kanban-column-body{flex:1;padding:12px;overflow-y:auto}.kanban-empty-slot{border:1.5px dashed var(--color-border);text-align:center;background:var(--color-surface-subtle);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:32px 14px;display:flex}.kanban-empty-icon{background:var(--color-surface);width:32px;height:32px;color:var(--color-text-light);opacity:.7;border-radius:50%;justify-content:center;align-items:center;margin-bottom:2px;display:flex}.kanban-empty-title{color:var(--color-text-muted);font-size:.82rem;font-weight:600}.kanban-empty-desc{color:var(--color-text-light);font-size:.74rem}.kanban-card-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.kanban-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;outline:none;flex-direction:column;gap:8px;padding:11px 12px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative}.kanban-card:hover{border-color:var(--color-border-hover);transform:translateY(-3px);box-shadow:0 12px 24px -6px #0006}.kanban-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.kanban-card.is-overdue{border-color:#ef444473;box-shadow:0 4px 18px -4px #ef444429}.kanban-card.is-urgent{box-shadow:0 0 16px -4px #ef444466}.kanban-card-top{flex-direction:column;gap:6px;width:100%;display:flex}.kanban-card-top-row{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.kanban-card-client{text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary);background:var(--color-primary-light);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex-shrink:0;align-items:center;gap:5px;max-width:180px;padding:2px 7px;font-size:.72rem;font-weight:700;display:inline-flex;overflow:hidden}.kanban-card-sub-row{align-items:center;width:100%;display:flex}.kanban-card-demand-tag{color:var(--color-text-muted);background:var(--color-surface-subtle);border:1px solid var(--color-border);white-space:normal;word-break:break-word;border-radius:6px;max-width:100%;padding:2px 7px;font-size:.72rem;font-weight:600;line-height:1.35}.kanban-card-title{color:var(--color-text-main);word-break:break-word;margin:0;font-size:.91rem;font-weight:650;line-height:1.4}.kanban-card:hover .kanban-card-title{color:var(--color-primary)}.kanban-card-reason{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--color-warning-text);border-radius:7px;align-items:flex-start;gap:6px;margin:0;padding:6px 9px;font-size:.76rem;line-height:1.35;display:flex}.kanban-card-reason svg{flex-shrink:0;margin-top:1px}.kanban-card-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:2px;padding-top:8px;display:flex}.kanban-card-meta{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.kanban-card-date-badge{color:var(--color-text-muted);align-items:center;gap:4px;font-size:.74rem;font-weight:600;display:inline-flex}.kanban-card-date-badge.date-overdue{color:var(--color-danger-text);background:var(--color-danger-bg);border-radius:6px;padding:2px 6px;font-weight:700}.kanban-card-date-badge.date-today{color:var(--color-warning-text);background:var(--color-warning-bg);border-radius:6px;padding:2px 6px;font-weight:700}.kanban-card-assignee{color:var(--color-text-main);align-items:center;gap:5px;font-size:.75rem;font-weight:600;display:inline-flex}.kanban-card-assignee .assignee-avatar{background:var(--gradient-brand);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:19px;height:19px;font-size:.68rem;font-weight:700;display:inline-flex}.kanban-card-assignee .assignee-name{white-space:nowrap;text-overflow:ellipsis;max-width:80px;overflow:hidden}.kanban-card-unassigned{color:var(--color-text-light);font-size:.72rem;font-style:italic}.kanban-card-action-hint{color:var(--color-primary-glow,#d8b4fe);opacity:.8;align-items:center;gap:4px;font-size:.76rem;font-weight:700;transition:all .18s;display:inline-flex;transform:translate(0)}[data-theme=light] .kanban-card-action-hint{color:#7c3aed;opacity:.85}.kanban-card:hover .kanban-card-action-hint{opacity:1;color:#fff;transform:translate(3px)}[data-theme=light] .kanban-card:hover .kanban-card-action-hint{color:#581c87}@media (prefers-reduced-motion:reduce){.kanban-card:hover,.kpi-card:hover,.template-card:hover,.dashboard-item:hover,.task-list-item:hover,.primary-button:hover:not(:disabled),.shell form button[type=submit]:hover:not(:disabled){transform:none}.skeleton-line{animation:none}}.print-paste-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.print-paste-hint{color:var(--color-text-muted);font-size:.78rem}.comment-prints-grid,.comment-prints-draft-grid{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.comment-print-draft-item{display:inline-flex;position:relative}.comment-print-thumb-btn{background:var(--color-surface-elevated);border:1px solid var(--color-border);cursor:zoom-in;border-radius:10px;margin:0;padding:0;transition:border-color .2s,transform .2s;display:inline-flex;overflow:hidden}.comment-print-thumb-btn:hover{border-color:var(--color-primary);transform:translateY(-1px)}.comment-print-thumb{object-fit:cover;width:auto;max-width:200px;height:auto;max-height:140px;display:block}.comment-print-remove-btn{background:var(--color-danger);color:#fff;border:2px solid var(--color-surface);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:24px;min-width:24px;height:24px;min-height:24px;padding:0;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 8px #00000059}.comment-print-remove-btn:hover{filter:brightness(1.1)}.print-lightbox-card{background:var(--color-surface);border:1px solid var(--color-border);max-width:min(94vw,1200px);max-height:92vh;box-shadow:var(--shadow-modal);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.print-lightbox-header{border-bottom:1px solid var(--color-border);color:var(--color-text-main);justify-content:space-between;align-items:center;padding:12px 18px;font-weight:650;display:flex}.print-lightbox-body{background:#00000040;justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.print-lightbox-img{border-radius:8px;width:auto;max-width:100%;height:auto;max-height:calc(92vh - 96px);display:block}.user-avatar-image{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.profile-view-panel{gap:24px}.profile-page-header{align-items:center;padding-bottom:4px}.profile-title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.profile-role-pill{border-radius:999px;padding:4px 10px;font-size:.76rem}.profile-header-status{align-items:center;gap:8px;display:flex}.profile-layout-grid{grid-template-columns:1.25fr 1fr;align-items:start;gap:24px;display:grid}.profile-card{background:var(--gradient-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:18px;flex-direction:column;gap:20px;padding:28px;display:flex}.profile-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-card-title{color:var(--color-text-main);margin:0 0 4px;font-size:1.25rem;font-weight:700}.profile-card-subtitle{color:var(--color-text-muted);margin:0;font-size:.88rem;line-height:1.45}.profile-identity-banner{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:18px;padding:18px 20px;display:flex}.profile-avatar-xl{background:var(--gradient-brand);border:2px solid var(--color-primary-border);color:#fff;width:64px;height:64px;font-family:var(--font-display);letter-spacing:.02em;box-shadow:var(--shadow-glow);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.45rem;font-weight:750;display:flex;overflow:hidden}.profile-avatar-xl-img{object-fit:cover;width:100%;height:100%;display:block}.profile-identity-details{flex-direction:column;gap:3px;min-width:0;display:flex}.profile-identity-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-identity-name{font-family:var(--font-display);color:var(--color-text-main);font-size:1.1rem;font-weight:700}.profile-identity-email{color:var(--color-text-muted);word-break:break-all;font-size:.88rem}.profile-identity-id{font-family:var(--font-mono);color:var(--color-text-light);font-size:.74rem}.profile-alert-content{align-items:center;gap:10px;display:flex}.profile-form{flex-direction:column;gap:14px;display:flex}.profile-form .form-field{margin-bottom:0}.profile-label-with-badge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.verified-email-badge{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:.74rem;font-weight:700;display:inline-flex}.profile-readonly-input{background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:not-allowed;opacity:.85;border-style:dashed}.sr-only-file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.profile-photo-upload-box{flex-direction:column;gap:10px;display:flex}.profile-photo-upload-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-upload-trigger-btn{align-items:center;gap:8px;min-height:38px;padding:0 14px;font-size:.85rem;font-weight:600;display:inline-flex}.profile-remove-photo-btn{min-height:38px;color:var(--color-danger-text);border:1px solid var(--color-danger);background:var(--color-danger-bg);border-radius:10px;padding:0 12px;font-size:.82rem}.profile-remove-photo-btn:hover:not(:disabled){background:var(--color-danger);color:#fff}.profile-uploaded-file-pill{background:var(--color-primary-light);max-width:100%;color:var(--color-primary);border:1px solid var(--color-primary-border);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:.78rem;font-weight:600;display:inline-flex;overflow:hidden}.profile-field-hint{color:var(--color-text-muted);margin:0;font-size:.78rem;line-height:1.4}.profile-field-mismatch{color:var(--color-danger);font-size:.8rem;font-weight:600}.profile-form-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:6px;display:flex}.profile-section-divider{background:var(--color-border);height:1px;margin:4px 0}.profile-permissions-section{flex-direction:column;gap:14px;display:flex}.profile-permissions-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-section-subtitle{color:var(--color-text-main);margin:0 0 4px;font-size:1rem;font-weight:700}.profile-permissions-count{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;font-size:.76rem;font-weight:700;display:inline-flex}.permissions-chip-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.permission-chip-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:11px;flex-direction:column;gap:4px;padding:10px 12px;transition:border-color .15s,transform .15s;display:flex}.permission-chip-card:hover{border-color:var(--color-primary-border);transform:translateY(-1px)}.permission-chip-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.permission-chip-category{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);font-size:.68rem;font-weight:700}.permission-chip-dot{background:var(--color-success);width:7px;height:7px;box-shadow:0 0 6px var(--color-success);border-radius:50%}.permission-chip-label{color:var(--color-text-main);font-size:.84rem;font-weight:650}.permission-chip-code{font-family:var(--font-mono);color:var(--color-text-light);font-size:.72rem}.security-policy-box{background:var(--color-primary-light);border:1px solid var(--color-primary-border);border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.security-policy-icon{background:var(--color-surface);width:36px;height:36px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.security-policy-text{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:.82rem;line-height:1.45;display:flex}.security-policy-text strong{color:var(--color-text-main)}.security-policy-text p{margin:0}@media (width<=980px){.profile-layout-grid{grid-template-columns:1fr}}@media (width<=640px){.profile-card{padding:20px 16px}.profile-identity-banner{flex-direction:column;align-items:flex-start}.profile-form-actions{flex-direction:column-reverse;align-items:stretch}}.backups-view-panel{flex-direction:column;gap:20px;display:flex}.backups-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.backups-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.backup-run-cta{align-items:center;gap:8px;display:inline-flex}.backups-kpi-grid{grid-template-columns:repeat(4,minmax(200px,1fr));gap:16px;display:grid}.backup-kpi-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.backup-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);font-size:.76rem;font-weight:700}.backup-kpi-value{font-family:var(--font-display);color:var(--color-text-main);font-size:1.25rem;font-weight:750}.backup-kpi-value.text-success{color:var(--color-success)}.backup-kpi-value.text-warning{color:var(--color-warning)}.backup-kpi-meta{color:var(--color-text-muted);font-size:.8rem}.backup-pipeline-steps{grid-template-columns:repeat(5,minmax(170px,1fr));gap:12px;display:grid}.backup-pipeline-step{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:6px;padding:14px;transition:border-color .2s,transform .2s;display:flex}.backup-pipeline-step.done{border-color:var(--color-primary-border)}.backup-pipeline-step-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.backup-step-number{font-family:var(--font-mono);letter-spacing:.06em;color:var(--color-primary);font-size:.7rem;font-weight:700}.backup-step-dot{background:var(--color-border-hover);border-radius:50%;width:8px;height:8px}.backup-step-dot.done{background:var(--color-success);box-shadow:0 0 6px var(--color-success)}.backup-step-title{color:var(--color-text-main);font-size:.88rem;font-weight:700}.backup-step-desc{color:var(--color-text-muted);margin:0;font-size:.78rem;line-height:1.4}.backup-file-cell{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.backup-filename{font-family:var(--font-mono);color:var(--color-text-main);font-size:.8rem}.backup-sha-cell{align-items:center;gap:8px;display:flex}.backup-sha-code{font-family:var(--font-mono);color:var(--color-text-muted);background:var(--color-surface-subtle);border-radius:6px;padding:2px 6px;font-size:.76rem}.backup-copy-sha-btn{min-height:26px;padding:2px 8px;font-size:.74rem}@media (width<=1100px){.backups-kpi-grid,.backup-pipeline-steps{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.backups-kpi-grid,.backup-pipeline-steps{grid-template-columns:1fr}}
