:root{--bg: #f0f2f5;--bg-card: #fff;--bg-elevated: #fff;--text: #1d1d1f;--text-muted: #6b6b6f;--border: #e5e7eb;--border-light: #f0f0f2;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-contrast: #fff;--primary-light: #eff6ff;--success: #059669;--success-light: #ecfdf5;--warning: #d97706;--warning-light: #fffbeb;--error: #dc2626;--error-light: #fef2f2;--input-bg: #fff;--shadow: rgba(0, 0, 0, .06);--shadow-md: rgba(0, 0, 0, .08);--radius: 8px;--radius-sm: 6px;--radius-lg: 12px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.75rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.6;--input-h: 2.25rem;--input-h-lg: 2.5rem;--btn-h: 2.25rem;--btn-h-lg: 2.5rem;--scrollbar-h: 6px}[data-theme=dark]{--bg: #0f1114;--bg-card: #181b1f;--bg-elevated: #1e2228;--text: #e8eaed;--text-muted: #9aa0a6;--border: #2d3238;--border-light: #252a30;--primary: #60a5fa;--primary-hover: #93c5fd;--primary-contrast: #0f1114;--primary-light: #1e3a5f;--success: #34d399;--success-light: #064e3b;--warning: #fbbf24;--warning-light: #422006;--error: #f87171;--error-light: #450a0a;--input-bg: #252a30;--shadow: rgba(0, 0, 0, .25);--shadow-md: rgba(0, 0, 0, .35)}[data-theme="1c"]{--bg: #f0f0f0;--bg-card: #ffffff;--bg-elevated: #eaeaea;--text: #000000;--text-muted: #333333;--border: #d3d3d3;--border-light: #c0c0c0;--primary: #1a1a1a;--primary-hover: #333;--primary-contrast: #fff;--primary-light: #fdee88;--success: #2d5a27;--success-light: #e8f0e6;--warning: #8b6914;--warning-light: #f5f0d8;--error: #d9534f;--error-light: #fde8e8;--input-bg: #fff;--shadow: rgba(0, 0, 0, .06);--shadow-md: rgba(0, 0, 0, .1);--radius: 4px;--radius-sm: 3px;--radius-lg: 5px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}[data-theme="1c"] .sidebar{background:#eaeaea;border-right:1px solid #d3d3d3}[data-theme="1c"] .sidebar-brand{background:#fadb50;border-bottom:1px solid #e0c840;color:#000;padding:.7rem 1rem;font-size:1.1rem;font-weight:700}[data-theme="1c"] .sidebar-brand a{color:#000}[data-theme="1c"] .sidebar-nav{background:#f5f5f5}[data-theme="1c"] .sidebar-nav a:hover{background:#ebebeb}[data-theme="1c"] .sidebar-nav a.active{background:#fdee88;color:#000;border-left:none;margin-left:0;padding-left:1rem;font-weight:600}[data-theme="1c"] .sidebar-footer{border-top-color:#d3d3d3;background:#f5f5f5}[data-theme="1c"] .card{border:1px solid #d3d3d3;background:#fff;box-shadow:0 1px 1px #0000000d}[data-theme="1c"] button{background:linear-gradient(180deg,#f5f5f5,#e0e0e0);border:1px solid #c0c0c0;color:#000;border-radius:4px}[data-theme="1c"] button:hover{background:linear-gradient(180deg,#ebebeb,#d8d8d8);border-color:#b0b0b0}[data-theme="1c"] button.primary{background:#fadb50;border:1px solid #e0c840;color:#000}[data-theme="1c"] button.primary:hover{background:#f5d030;border-color:#d4b030}[data-theme="1c"] a{color:#036}[data-theme="1c"] .tasks-list-item{border-color:#d3d3d3}[data-theme="1c"] .tasks-list-item:hover{background:#f5f5f5}[data-theme="1c"] .tasks-list-item.active{background:#fdee88;border-color:#e0c840;color:#000;box-shadow:none}[data-theme="1c"] .tasks-list-panel{background:transparent}[data-theme="1c"] .tasks-quick-add.card,[data-theme="1c"] .tasks-detail-panel.card{border:1px solid #d3d3d3}[data-theme="1c"] .badge.new{background:#fdee88;color:#000;border:1px solid #e0c840}[data-theme="1c"] .badge.in_progress{background:#f5f0d8;color:#8b6914}[data-theme="1c"] .badge.done{background:#e8f0e6;color:#2d5a27}[data-theme="1c"] .badge.cancelled{background:#fde8e8;color:#d9534f}[data-theme="1c"] .calendar-cell.selected{background:#fdee88;color:#000}[data-theme="1c"] .calendar-cell.selected .calendar-cell-pill-created,[data-theme="1c"] .calendar-cell.selected .calendar-cell-pill-deadline,[data-theme="1c"] .calendar-cell.selected .calendar-cell-pill-completed,[data-theme="1c"] .calendar-cell.selected .calendar-cell-pill-reports{background:#00000026;color:#000}[data-theme="1c"] .calendar-cell-today:not(.selected){background:#f5f0d8}[data-theme="1c"] .calendar-wrap,[data-theme="1c"] input,[data-theme="1c"] select,[data-theme="1c"] textarea{border-color:#d3d3d3}[data-theme="1c"] input:focus,[data-theme="1c"] select:focus,[data-theme="1c"] textarea:focus{border-color:#fc0;box-shadow:0 0 0 2px #fc06;outline:none}[data-theme="1c"] .clients-table th{background:#eaeaea;border-color:#d3d3d3}[data-theme="1c"] .notification-center-trigger:hover{background:#fdee88;border-color:#e0c840;color:#000}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:var(--text-base);line-height:var(--leading-normal);background:var(--bg);color:var(--text);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#root{min-height:100vh;min-height:100dvh}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg-card);color:var(--text);padding:var(--space-2) var(--space-4);min-height:var(--btn-h);border-radius:var(--radius-sm);transition:background .15s,border-color .15s,color .15s}button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}input,select{font-size:var(--text-base);padding:var(--space-2) var(--space-3);min-height:var(--input-h);border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:var(--radius-sm);width:100%;transition:border-color .15s,box-shadow .15s}textarea{font-size:var(--text-base);padding:var(--space-2) var(--space-3);min-height:4rem;border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:var(--radius-sm);width:100%;transition:border-color .15s,box-shadow .15s;resize:vertical}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}input.input-readonly{background:var(--bg);color:var(--text-muted);cursor:default}label{display:block;margin-bottom:var(--space-1);color:var(--text);font-size:var(--text-sm);font-weight:500}.form-group{margin-bottom:var(--space-4)}.form-group:last-child{margin-bottom:0}.form-label-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:400;font-size:var(--text-sm);color:var(--text);cursor:pointer}.form-label-checkbox input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--primary);cursor:pointer}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.client-autocomplete{position:relative}.client-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin:var(--space-1) 0 0 0;padding:0;list-style:none;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 16px var(--shadow-md);max-height:260px;overflow-y:auto;z-index:100}.client-autocomplete-dropdown li{padding:var(--space-2) var(--space-3);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.client-autocomplete-dropdown li:hover,.client-autocomplete-dropdown li.highlight{background:var(--primary);color:#fff}.client-autocomplete-inn{font-size:var(--text-sm);opacity:.9}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);box-shadow:0 1px 3px var(--shadow)}.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:9999;display:flex;flex-direction:column;gap:var(--space-2);max-width:380px}.toast{padding:var(--space-3) var(--space-4);border-radius:var(--radius);border-left:4px solid var(--primary);background:var(--bg-card);color:var(--text);box-shadow:0 4px 16px var(--shadow-md);animation:slideIn .25s ease;font-size:var(--text-sm)}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--error)}.toast.warning{border-left-color:var(--warning)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:999px;letter-spacing:.02em;background:var(--border);color:var(--text)}.badge.new{background:var(--primary-light);color:var(--primary)}.badge.in_progress{background:var(--warning-light);color:var(--warning)}.badge.done{background:var(--success-light);color:var(--success)}.badge.cancelled{background:var(--error-light);color:var(--error)}[data-theme=dark] .badge.new{background:var(--primary-light);color:var(--primary)}[data-theme=dark] .badge.in_progress{background:var(--warning-light);color:var(--warning)}[data-theme=dark] .badge.done{background:var(--success-light);color:var(--success)}[data-theme=dark] .badge.cancelled{background:var(--error-light);color:var(--error)}.badge-global{background:var(--primary-light);color:var(--primary);margin-left:var(--space-2)}html,body{overflow-x:hidden}.layout{display:flex;min-height:100vh;min-height:100dvh;overflow-x:hidden}.layout-mobile-menu-btn,.sidebar-close-mobile{display:none}.sidebar{position:fixed;top:0;left:0;z-index:100;width:240px;height:100vh;flex-shrink:0;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}.main{margin-left:240px}.sidebar-brand{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light);font-weight:700;font-size:var(--text-xl);letter-spacing:-.02em}.sidebar-brand a{color:var(--text);text-decoration:none;transition:color .15s}.sidebar-brand a:hover{color:var(--primary)}.sidebar-nav{flex:1;padding:var(--space-3) var(--space-2)}.sidebar-nav a{display:block;padding:var(--space-2) var(--space-4);margin:0 var(--space-1);color:var(--text-muted);text-decoration:none;font-size:var(--text-base);border-radius:var(--radius-sm);transition:color .15s,background .15s}.sidebar-nav a:hover{color:var(--text);background:var(--bg)}.sidebar-nav a.active{color:var(--primary);font-weight:600;background:var(--primary-light)}.sidebar-animation-area{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative;z-index:1}.sidebar-animation-video{flex-shrink:0;width:100%;height:220px;object-fit:cover;pointer-events:none;display:block;position:relative;z-index:2}.sidebar-animation-video::-webkit-media-controls,.sidebar-animation-video::-webkit-media-controls-panel,.sidebar-animation-video::-webkit-media-controls-play-button,.sidebar-animation-video::-webkit-media-controls-enclosure{display:none!important}[data-theme=dark] .sidebar-animation-area{display:none}.sidebar-footer{padding:var(--space-5) var(--space-5);border-top:1px solid var(--border-light);background:var(--bg);display:flex;flex-direction:column;gap:var(--space-4);align-items:stretch;box-shadow:0 -1px 0 var(--border-light)}.sidebar-footer-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sidebar-footer-row .notification-center{width:auto}.sidebar-footer-row .notification-center-trigger{border-radius:var(--radius);box-shadow:0 1px 2px var(--shadow);border-color:var(--border-light)}.sidebar-footer-row .notification-center-trigger:hover{box-shadow:0 2px 4px var(--shadow)}.sidebar-online-wrap{position:relative;display:inline-flex;align-items:center;align-self:flex-start;padding:var(--space-2) var(--space-3);border-radius:999px;background:var(--success-light);color:var(--success);font-size:var(--text-sm);font-weight:500;gap:.25rem;cursor:default;border:1px solid rgba(34,197,94,.15);box-shadow:0 1px 2px #22c55e14;transition:background .2s,border-color .2s,box-shadow .2s}.sidebar-online{display:inline-flex;align-items:baseline;gap:.25rem}.sidebar-online-wrap:hover{background:#22c55e29;border-color:#22c55e59;box-shadow:0 1px 4px #22c55e1f}.sidebar-online-num{font-weight:700;font-size:1rem;line-height:1}.sidebar-online-label{color:var(--success);opacity:.95;font-weight:500}[data-theme=dark] .sidebar-online-label{color:var(--success);opacity:.9}.sidebar-online-tooltip{position:absolute;bottom:100%;left:0;margin-bottom:var(--space-2);padding:var(--space-3) var(--space-4);min-width:140px;max-width:260px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px var(--shadow);font-size:var(--text-sm);color:var(--text);white-space:normal;line-height:1.5;visibility:hidden;opacity:0;transition:opacity .2s,visibility .2s,transform .2s;transform:translateY(4px);z-index:100;pointer-events:none}.sidebar-online-wrap:hover .sidebar-online-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.sidebar-online-tooltip-list{list-style:none;padding:0;margin:0}.sidebar-online-tooltip-list li{padding:.15rem 0;padding-left:var(--space-3);position:relative}.sidebar-online-tooltip-list li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--success)}.notification-center{position:relative;width:100%;max-width:100%}.notification-center-trigger{position:relative;display:flex;align-items:center;justify-content:center;width:var(--input-h);height:var(--input-h);padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.notification-center-trigger:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.notification-center-icon{font-size:1.1rem}.notification-center-badge{position:absolute;top:-2px;right:-2px;min-width:1.1rem;height:1.1rem;padding:0 4px;font-size:.7rem;font-weight:600;line-height:1.1rem;text-align:center;color:#fff;background:var(--error);border-radius:10px}.notification-center-dropdown{display:flex;flex-direction:column;min-width:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014}.notification-center-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);flex-shrink:0;background:var(--bg)}.notification-center-title{font-weight:600;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.notification-center-read-all{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border:none;background:transparent;color:var(--primary);cursor:pointer;flex-shrink:0;font-weight:500;border-radius:var(--radius-sm);transition:background .15s,color .15s}.notification-center-read-all:hover{background:var(--primary-light);color:var(--primary)}.notification-center-list{list-style:none;margin:0;padding:0;overflow-y:auto;min-height:0;flex:1;-webkit-overflow-scrolling:touch}.notification-center-empty{padding:var(--space-5) var(--space-4);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.notification-center-item{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-1);transition:background .15s}.notification-center-item:last-child{border-bottom:none}.notification-center-item:hover{background:var(--bg)}.notification-center-item.read{opacity:.8}.notification-center-item.read .notification-center-item-title{font-weight:500}.notification-center-item-title{font-size:var(--text-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.notification-center-item-message{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-center-item-time{font-size:var(--text-xs);color:var(--text-muted);margin-top:.125rem}.sidebar-user-block{padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius);box-shadow:0 1px 2px var(--shadow);transition:box-shadow .2s}.sidebar-user-block:hover{box-shadow:0 2px 6px var(--shadow)}.sidebar-user{font-size:var(--text-sm);font-weight:600;color:var(--text);display:block;line-height:1.3}.sidebar-role{font-size:var(--text-xs);font-weight:500;color:var(--text-muted);display:block;margin-top:.15rem;text-transform:uppercase;letter-spacing:.04em}.sidebar-logout{width:100%;text-align:center;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius);transition:color .2s,background .2s,border-color .2s,box-shadow .2s;margin-top:var(--space-1);box-shadow:0 1px 2px var(--shadow)}.sidebar-logout:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sidebar-logout:hover{color:var(--error);background:var(--error-light);border-color:var(--error);box-shadow:0 2px 4px #dc26261f}.main{flex:1;min-width:0;padding:var(--space-6) var(--space-8);overflow:auto;min-height:100vh}.main-content{max-width:1200px;margin:0 auto}.task-page-standalone{max-width:1024px}.task-page-back{margin-bottom:var(--space-4)}.task-page-back a,.task-page-back .link-button{font-size:var(--text-base);font-weight:500}.task-page-back .link-button{background:none;border:none;padding:0;cursor:pointer;color:var(--primary);text-align:left}.task-page-back .link-button:hover{text-decoration:underline}.task-view-subtask-focus .task-view-subtask-focus-back{margin-bottom:var(--space-4)}.task-view-subtask-focus .task-view-subtask-focus-content{padding-left:var(--space-4)}.task-view-subtask-focus .task-view-subtask-focus-head{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.task-view-subtask-focus .task-subtask-focus-title{margin:0 0 var(--space-1) 0;font-size:var(--text-xl);font-weight:600}.task-view-subtask-focus .task-view-subtask-focus-timer{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.task-view-subtask-focus .task-view-subtask-focus-actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.task-page-card{padding:var(--space-6) var(--space-6);border-radius:var(--radius-lg);box-shadow:0 1px 3px var(--shadow);border:1px solid var(--border-light);background:var(--bg-card)}@media (min-width: 900px){.task-page-card{padding:var(--space-8) var(--space-8)}}.task-page-delete-wrap{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.task-page-delete-btn{padding:.5rem 1rem;font-size:var(--text-sm);border:1px solid var(--error);border-radius:var(--radius-sm);background:transparent;color:var(--error);cursor:pointer;transition:background .15s ease,color .15s ease}.task-page-delete-btn:hover:not(:disabled){background:var(--error-light);color:var(--error)}.task-page-delete-btn:disabled{opacity:.6;cursor:not-allowed}.page-header{margin:0 0 var(--space-2) 0;font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em;line-height:var(--leading-tight);color:var(--text)}.page-description{color:var(--text-muted);margin:0 0 var(--space-6) 0;font-size:var(--text-base);line-height:var(--leading-normal)}.links-page .page-description{margin-bottom:var(--space-6)}.links-add-card{margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6)}.links-add-heading{margin:0 0 var(--space-4) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.links-add-open{min-height:var(--btn-h-lg);padding:.5rem 1.25rem;font-weight:500}.links-add-form{display:flex;flex-direction:column;gap:var(--space-4);max-width:420px}.links-add-form .form-group{margin-bottom:0}.links-add-input{width:100%;min-height:var(--input-h-lg);padding:.5rem .75rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.links-add-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.links-add-input::placeholder{color:var(--text-muted)}.links-add-global{margin-bottom:0}.links-add-error{margin:0;font-size:var(--text-sm);color:var(--error)}.links-add-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.links-list-card{padding:var(--space-5) var(--space-6)}.links-list-heading{margin:0 0 var(--space-4) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.links-empty{text-align:center;padding:var(--space-10) var(--space-6)}.links-empty-icon{display:block;font-size:2.5rem;margin-bottom:var(--space-3);opacity:.7}.links-empty-text{margin:0 0 var(--space-2) 0;font-size:var(--text-md);font-weight:500;color:var(--text)}.links-empty-hint{margin:0;font-size:var(--text-sm)}.links-list{list-style:none;padding:0;margin:0}.links-section-label{padding:var(--space-2) 0 var(--space-1) 0;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);list-style:none}.links-item{list-style:none;margin:0;padding:0;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-1)}.links-item:last-child{margin-bottom:0}.links-item-inner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);text-decoration:none;color:var(--text);background:var(--bg);border:1px solid var(--border-light);border-radius:var(--radius-sm);transition:background .15s ease,border-color .15s ease,color .15s ease}.links-item-inner:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.links-item-icon{flex-shrink:0;width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-md);color:var(--text-muted);transition:color .15s ease}.links-item-inner:hover .links-item-icon{color:var(--primary)}.links-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.links-item-title{font-weight:500;font-size:var(--text-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.links-item-url{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.links-item-inner:hover .links-item-url{color:var(--primary);opacity:.9}.links-item-badge{flex-shrink:0;padding:.2rem .5rem;font-size:var(--text-xs);font-weight:500;color:var(--text-muted);background:var(--border-light);border-radius:var(--radius-sm)}.links-item-remove{flex-shrink:0;margin-left:var(--space-2);width:2rem;height:2rem;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.links-item-remove:hover{background:var(--error-light);color:var(--error)}.links-item{display:flex;align-items:stretch;gap:0}.links-item .links-item-inner{flex:1;min-width:0}.materials-page .page-description{margin-bottom:var(--space-6)}.materials-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--space-6);align-items:start;min-height:400px}@media (max-width: 768px){.materials-layout{grid-template-columns:1fr}}.materials-sidebar{display:flex;flex-direction:column;gap:var(--space-3);position:sticky;top:var(--space-4)}.materials-sidebar-filters{display:flex;flex-direction:column;gap:var(--space-2)}.materials-sidebar-search,.materials-sidebar-type{width:100%;min-height:var(--input-h);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.materials-sidebar-nav{display:flex;flex-wrap:wrap;gap:var(--space-1)}.materials-sidebar-item{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.materials-sidebar-item:hover{border-color:var(--border);color:var(--text)}.materials-sidebar-item.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:500}.materials-sidebar-item-badge{margin-left:var(--space-1);font-size:var(--text-xs);opacity:.9}.materials-sidebar-add{width:100%;min-height:var(--btn-h-lg);font-weight:500}.materials-sidebar-new-cat{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:border-color .15s ease,color .15s ease}.materials-sidebar-new-cat:hover{border-color:var(--primary);color:var(--primary)}.materials-sidebar-new-cat-inline{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.materials-sidebar-new-cat-input{width:100%;min-height:var(--input-h);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.materials-sidebar-new-cat-global{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.materials-sidebar-new-cat-err{margin:0;font-size:var(--text-xs);color:var(--error)}.materials-sidebar-new-cat-actions{display:flex;gap:var(--space-2)}.materials-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);max-height:50vh;overflow-y:auto}.materials-list-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);text-align:left;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;transition:background .15s ease,border-color .15s ease}.materials-list-item:hover{background:var(--border-light)}.materials-list-item.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:500}.materials-list-item-icon{flex-shrink:0;font-size:1rem}.materials-list-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.materials-list-item-pin{flex-shrink:0;font-size:.75rem}.materials-list-empty{padding:var(--space-4);font-size:var(--text-sm);color:var(--text-muted);text-align:center}.materials-detail{min-width:0}.materials-detail-card{padding:var(--space-6)}.materials-detail-form-title{margin:0 0 var(--space-4) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.materials-detail-form-body{display:flex;flex-direction:column;gap:var(--space-4)}.materials-detail-form-body .mat-modal-field{margin-bottom:0}.materials-detail-form-footer{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.materials-detail-view-head{margin-bottom:var(--space-4)}.materials-detail-view-title{margin:0 0 var(--space-2) 0;font-size:var(--text-xl);font-weight:600;color:var(--text)}.materials-detail-view-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.materials-detail-badge{display:inline-block;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm);background:var(--border-light);color:var(--text-muted)}.materials-detail-badge-cat{background:var(--primary-light);color:var(--primary)}.materials-detail-badge-global{background:var(--success-light);color:var(--success)}.materials-detail-view-body{margin-bottom:var(--space-5)}.materials-detail-guide-link-wrap{margin:var(--space-4) 0 0 0;padding-top:var(--space-4);border-top:1px solid var(--border-light)}.materials-detail-guide-link{font-size:var(--text-sm);color:var(--primary);text-decoration:none;font-weight:500}.materials-detail-guide-link:hover{text-decoration:underline}.materials-detail-open-wrap{margin:0 0 var(--space-2) 0}.materials-detail-open-wrap a{font-weight:500}.materials-detail-url-hint{display:block;font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-1)}.materials-detail-note-content{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text);white-space:pre-wrap;word-break:break-word}.materials-detail-view-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.materials-detail-delete-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);border:1px solid var(--error);border-radius:var(--radius-sm);background:transparent;color:var(--error);cursor:pointer;transition:background .15s ease,color .15s ease}.materials-detail-delete-btn:hover{background:var(--error-light)}.materials-detail-delete-confirm{padding:var(--space-2) 0}.materials-detail-delete-confirm p{margin:0 0 var(--space-4) 0;font-size:var(--text-base);color:var(--text)}.materials-detail-delete-confirm-actions{display:flex;gap:var(--space-2)}.materials-detail-empty{padding:var(--space-8) var(--space-4);text-align:center}.materials-detail-empty-text{margin:0 0 var(--space-4) 0;font-size:var(--text-base);color:var(--text-muted)}.materials-add-card{margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6)}.materials-add-heading{margin:0 0 var(--space-4) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.materials-add-open{min-height:var(--btn-h-lg);padding:.5rem 1.25rem;font-weight:500}.materials-add-form{display:flex;flex-direction:column;gap:var(--space-4);max-width:520px}.materials-add-form .form-group{margin-bottom:0}.materials-type-tabs{display:flex;gap:var(--space-1);flex-wrap:wrap}.materials-type-tab{padding:.4rem .9rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.materials-type-tab:hover{border-color:var(--border);color:var(--text)}.materials-type-tab.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:500}.materials-add-input{width:100%;min-height:var(--input-h-lg);padding:.5rem .75rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.materials-add-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.materials-add-textarea{width:100%;min-height:6rem;padding:.5rem .75rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.materials-add-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.materials-upload-file{margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.materials-file-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.materials-file-label{display:inline-block;padding:.4rem .75rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;transition:background .15s ease,border-color .15s ease}.materials-file-label:hover{border-color:var(--primary);color:var(--primary)}.materials-add-global{margin-bottom:0}.materials-add-error{margin:0;font-size:var(--text-sm);color:var(--error)}.materials-add-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.materials-list-card{padding:var(--space-5) var(--space-6)}.materials-list-heading{margin:0 0 var(--space-4) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.materials-empty{text-align:center;padding:var(--space-10) var(--space-6)}.materials-empty-icon{display:block;font-size:2.5rem;margin-bottom:var(--space-3);opacity:.7}.materials-empty-text{margin:0 0 var(--space-2) 0;font-size:var(--text-md);font-weight:500;color:var(--text)}.materials-empty-hint{margin:0;font-size:var(--text-sm)}.materials-list{list-style:none;padding:0;margin:0}.materials-section-label{padding:var(--space-2) 0 var(--space-1) 0;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);list-style:none}.materials-item{list-style:none;margin:0;padding:0;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-1);display:flex;align-items:stretch;gap:0}.materials-item:last-child{margin-bottom:0}.materials-item-inner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);text-decoration:none;color:var(--text);background:var(--bg);border:1px solid var(--border-light);border-radius:var(--radius-sm);transition:background .15s ease,border-color .15s ease,color .15s ease;flex:1;min-width:0}.materials-item-inner:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.materials-item-text{cursor:default}.materials-item-text:hover{background:var(--bg);border-color:var(--border-light);color:var(--text)}.material-item-icon{flex-shrink:0;width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-md);color:var(--text-muted);transition:color .15s ease}.materials-item-inner:hover .material-item-icon{color:var(--primary)}.materials-item-text:hover .material-item-icon{color:var(--text-muted)}.material-item-icon-file,.material-item-icon-text{font-size:1rem}.materials-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.materials-item-title{font-weight:500;font-size:var(--text-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.materials-item-title-btn{font:inherit;font-weight:500;font-size:var(--text-base);text-align:left;padding:0;margin:0;border:none;background:none;color:var(--text);cursor:pointer;transition:color .15s ease}.materials-item-title-btn:hover{color:var(--primary)}.materials-item-note-content{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-light);font-size:var(--text-sm);color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.materials-item-url{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.materials-item-inner:hover .materials-item-url{color:var(--primary);opacity:.9}.materials-item-badge{flex-shrink:0;padding:.2rem .5rem;font-size:var(--text-xs);font-weight:500;color:var(--text-muted);background:var(--border-light);border-radius:var(--radius-sm)}.materials-item-remove{flex-shrink:0;margin-left:var(--space-2);width:2rem;height:2rem;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.materials-item-remove:hover{background:var(--error-light);color:var(--error)}.materials-system{min-height:100%;display:flex;flex-direction:column}.mat-hero{padding:var(--space-8) 0;border-bottom:1px solid var(--border-light)}.mat-hero-title{margin:0 0 var(--space-2) 0;font-size:var(--text-2xl);font-weight:700;color:var(--text);letter-spacing:-.02em}.mat-hero-desc{margin:0;font-size:var(--text-base);color:var(--text-muted);max-width:480px;line-height:var(--leading-relaxed)}.mat-layout{display:flex;flex:1;min-height:0;gap:0}.mat-sidebar{width:220px;flex-shrink:0;padding:var(--space-5) var(--space-4);border-right:1px solid var(--border-light);display:flex;flex-direction:column;gap:var(--space-2)}.mat-sidebar-nav{display:flex;flex-direction:column;gap:2px}.mat-sidebar-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-3);font-size:var(--text-sm);color:var(--text);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .12s ease,color .12s ease}.mat-sidebar-item:hover{background:var(--primary-light);color:var(--primary)}.mat-sidebar-item.active{background:var(--primary-light);color:var(--primary);font-weight:600}.mat-sidebar-icon{flex-shrink:0;font-size:1.0625rem;opacity:.9}.mat-sidebar-badge{margin-left:auto;font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.mat-sidebar-add-cat{margin-top:var(--space-2);padding:var(--space-3) var(--space-3);font-size:var(--text-sm);font-weight:500;color:var(--primary);background:transparent;border:1px dashed var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .12s ease,background .12s ease}.mat-sidebar-add-cat:hover{border-color:var(--primary);background:var(--primary-light)}.mat-main{flex:1;min-width:0;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.mat-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-2) 0}.mat-search-wrap{flex:1;min-width:200px;max-width:360px;position:relative}.mat-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);font-size:var(--text-md);pointer-events:none;opacity:.6}.mat-search{width:100%;height:2.5rem;padding:0 var(--space-3) 0 2.25rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.mat-search::placeholder{color:var(--text-muted)}.mat-search:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.mat-toolbar-right{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.mat-sort{height:2.5rem;padding:0 var(--space-3);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);cursor:pointer}.mat-sort:focus{outline:none;border-color:var(--primary)}.mat-view-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.mat-view-toggle button{width:2.25rem;height:2.5rem;padding:0;font-size:1rem;border:none;background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.mat-view-toggle button:hover{color:var(--text)}.mat-view-toggle button.active{background:var(--primary-light);color:var(--primary)}.mat-add-btn{white-space:nowrap;font-weight:500}.mat-type-filter{min-width:7.5rem}.useful-links-all{text-decoration:none;font-weight:500}.useful-links-all:hover{text-decoration:underline}.mat-cards{display:flex;flex-direction:column;gap:var(--space-3)}.mat-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.mat-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease;position:relative}.mat-card:hover{border-color:var(--border);box-shadow:0 2px 8px var(--shadow)}.mat-card-link{flex-direction:column;align-items:stretch;padding:0;overflow:hidden}.mat-card-link:hover{border-color:var(--primary);box-shadow:0 4px 12px var(--shadow-md)}.mat-card-link-area{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);text-decoration:none;color:inherit;flex:1;min-width:0}.mat-card-link-area:hover{color:var(--primary)}.mat-card-link .mat-card-body{flex:1;min-width:0}.mat-card-grid{flex-direction:column;min-height:100px}.mat-card-grid.mat-card-link{min-height:0}.mat-card-list{flex-direction:row;align-items:center}.mat-card-list.mat-card-link{flex-direction:row;align-items:stretch}.mat-card-list .mat-card-link-area{flex:1;align-items:center}.mat-card-text{cursor:pointer}.mat-card-text:hover{border-color:var(--primary);box-shadow:0 4px 12px var(--shadow-md)}.mat-card-text.mat-card-expanded .mat-card-note-expanded{display:block}.mat-card-icon-wrap{flex-shrink:0;position:relative;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:var(--primary-light);border-radius:var(--radius-sm)}.mat-card-icon{font-size:1.25rem}.mat-card-icon-link{opacity:.9}.mat-card-icon-file,.mat-card-icon-text{font-size:1.1rem}.mat-card-pin{position:absolute;top:-4px;right:-4px;font-size:.7rem;opacity:.9}.mat-card-body{flex:1;min-width:0}.mat-card-title{margin:0 0 var(--space-1) 0;font-size:var(--text-base);font-weight:600;color:var(--text);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-card-subtitle{margin:0 0 var(--space-2) 0;font-size:var(--text-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-card-grid .mat-card-subtitle{white-space:nowrap}.mat-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.mat-card-type-badge,.mat-card-cat-badge,.mat-card-global-badge{padding:.15rem .5rem;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm)}.mat-card-type-badge{background:var(--border-light);color:var(--text-muted)}.mat-card-cat-badge{background:var(--primary-light);color:var(--primary)}.mat-card-global-badge{background:var(--success-light);color:var(--success)}.mat-card-date{font-size:var(--text-xs);color:var(--text-muted);margin-left:auto}.mat-card-note-expanded{display:none;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-light);font-size:var(--text-sm);color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.mat-card-actions{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-light);background:var(--bg)}.mat-card-text .mat-card-actions{border-top-color:var(--border-light)}.mat-card-link .mat-card-actions{padding:var(--space-2) var(--space-4)}.mat-card-list .mat-card-actions{border-top:none;border-left:1px solid var(--border-light);padding:var(--space-2) var(--space-3)}.mat-card-action-btn{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:500;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;text-decoration:none;transition:background .12s ease,color .12s ease}.mat-card-action-btn:hover{background:var(--primary-light);color:var(--primary)}.mat-card-action-open{color:var(--primary)}.mat-card-action-open:hover{background:var(--primary-light);color:var(--primary-hover)}.mat-card-action-delete:hover{background:var(--error-light);color:var(--error)}.mat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-12) var(--space-6);min-height:280px}.mat-empty-icon{font-size:3rem;margin-bottom:var(--space-4);opacity:.4}.mat-empty-title{margin:0 0 var(--space-2) 0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.mat-empty-hint{margin:0 0 var(--space-5) 0;font-size:var(--text-sm);color:var(--text-muted);max-width:340px;line-height:var(--leading-relaxed)}.mat-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.mat-modal{width:100%;max-width:460px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:0 24px 48px var(--shadow-md)}.mat-modal-sm{max-width:380px}.mat-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light)}.mat-modal-header h2{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.mat-modal-close{width:2.25rem;height:2.25rem;padding:0;font-size:1.5rem;line-height:1;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:background .12s ease,color .12s ease}.mat-modal-close:hover{background:var(--border-light);color:var(--text)}.mat-modal-body{padding:var(--space-5) var(--space-6);flex:1;overflow:auto}.mat-modal-field{margin-bottom:var(--space-4)}.mat-modal-field:last-of-type{margin-bottom:0}.mat-modal-field label{display:block;margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--text)}.mat-modal-field input[type=text],.mat-modal-field input[type=search],.mat-modal-field select,.mat-modal-field textarea{width:100%;min-height:var(--input-h-lg);padding:.5rem var(--space-3);font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.mat-modal-field textarea{min-height:6rem;resize:vertical}.mat-type-tabs{display:flex;gap:var(--space-1)}.mat-type-tabs button{padding:.4rem .9rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.mat-type-tabs button.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:500}.mat-modal-upload{margin-top:var(--space-2)}.mat-modal-upload input[type=file]{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.mat-modal-upload label{display:inline-block;padding:.4rem .75rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.mat-modal-upload label:hover{border-color:var(--primary);color:var(--primary)}.mat-modal-checkbox{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--text);cursor:pointer}.mat-modal-checkbox input{width:auto}.mat-modal-error{margin:0 0 var(--space-3) 0;font-size:var(--text-sm);color:var(--error)}.mat-modal-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-5) var(--space-6);border-top:1px solid var(--border-light)}.mat-btn-danger{background:var(--error)!important;color:var(--primary-contrast)!important}.mat-btn-danger:hover{background:var(--error)!important;filter:brightness(1.1)}.guide-view-backdrop{align-items:flex-start;padding:var(--space-4);overflow-y:auto}.guide-view-modal{max-width:720px;margin:auto;max-height:none}.guide-view-header{flex-wrap:wrap;gap:var(--space-2)}.guide-view-title{font-size:var(--text-xl);font-weight:700;color:var(--text);margin:0;flex:1;min-width:0}.guide-view-header-actions{display:flex;align-items:center;gap:var(--space-2)}.guide-view-body{padding-top:var(--space-4);padding-bottom:var(--space-8)}.guide-view-blocks{display:flex;flex-direction:column;gap:var(--space-5)}.guide-view-empty{color:var(--text-muted);font-size:var(--text-sm);margin:0}.guide-block-heading{margin:0;color:var(--text);font-weight:600;line-height:var(--leading-tight)}.guide-block-heading:first-child{margin-top:0}.guide-view-blocks h2.guide-block-heading{font-size:1.5rem;margin-top:var(--space-4)}.guide-view-blocks h3.guide-block-heading{font-size:1.25rem;margin-top:var(--space-4)}.guide-view-blocks h4.guide-block-heading{font-size:1.1rem;margin-top:var(--space-3)}.guide-block-text{margin:0;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text);white-space:pre-wrap;word-break:break-word}.guide-block-image-wrap{margin:var(--space-2) 0;border-radius:var(--radius-md);overflow:hidden;background:var(--border-light)}.guide-block-image{display:block;max-width:100%;height:auto;vertical-align:middle}.guide-block-file{margin:0}.guide-block-file-link{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--primary);text-decoration:none;font-weight:500;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--primary-light);transition:background .15s ease,color .15s ease}.guide-block-file-link:hover{background:var(--primary);color:var(--primary-contrast)}.guide-block-list{margin:0;padding-left:1.5rem;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--text)}.guide-block-list-item{margin-bottom:var(--space-1)}.guide-block-list-item:last-child{margin-bottom:0}.guide-editor{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--bg)}.guide-editor-hint{margin:0 0 var(--space-4) 0;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed)}.guide-editor-blocks{display:flex;flex-direction:column;gap:var(--space-4)}.guide-editor-block{position:relative;padding:var(--space-3);padding-right:2.5rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-card)}.guide-editor-block--heading{border-left:3px solid var(--primary);background:linear-gradient(to right,var(--primary-light),transparent 15%);padding-left:var(--space-4)}.guide-editor-block-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--text-muted)}.guide-editor-input{width:100%;min-height:4rem;padding:var(--space-2) var(--space-3);font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);resize:vertical}.guide-editor-heading-badge{display:inline-block;margin-bottom:var(--space-2);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--primary);background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--primary)}.guide-editor-heading-desc{margin:0 0 var(--space-3) 0;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed)}.guide-editor-heading-text-input{width:100%;margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);font-size:1.125rem;font-weight:600;line-height:1.35;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.guide-editor-heading-text-input::placeholder{color:var(--text-muted);font-weight:500}.guide-editor-heading-text-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.guide-editor-heading-level-wrap{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg);border:1px solid var(--border-light);border-radius:var(--radius-md)}.guide-editor-heading-level-label{font-size:var(--text-sm);color:var(--text-muted)}.guide-editor-heading-select{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);cursor:pointer}.guide-editor-select{flex-shrink:0;padding:var(--space-1) var(--space-2);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.guide-editor-upload-btn{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s ease,color .15s ease}.guide-editor-upload-btn:hover{border-color:var(--primary);color:var(--primary)}.guide-editor-upload-btn input[type=file]{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.guide-editor-image-preview,.guide-editor-file-preview{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.guide-editor-image-preview img{max-width:200px;max-height:120px;object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border-light)}.guide-editor-replace{padding:.25rem .5rem;font-size:var(--text-xs);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s ease,color .15s ease}.guide-editor-replace:hover{border-color:var(--primary);color:var(--primary)}.guide-editor-remove{position:absolute;top:var(--space-2);right:var(--space-2);width:1.75rem;height:1.75rem;padding:0;font-size:1.25rem;line-height:1;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:background .15s ease,color .15s ease}.guide-editor-remove:hover{background:var(--error-light);color:var(--error)}.guide-editor-add{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.guide-editor-add-label{font-size:var(--text-sm);color:var(--text-muted);margin:0}.guide-editor-add-btn{padding:.35rem .75rem;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.guide-editor-add-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.form-checkbox{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);cursor:pointer;font-size:var(--text-sm);color:var(--text-muted)}.form-checkbox input{width:auto}.tasks-page{display:flex;gap:1.5rem;height:calc(100vh - 3.5rem);margin:-.5rem 0 0;min-height:480px}.tasks-page-list{flex-direction:column}.tasks-page-list .tasks-list-only{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-4)}.tasks-page-list .tasks-list-only .tasks-list-scroll-area{flex:1;min-height:0;overflow:hidden}.tasks-page-list .tasks-list-only .tasks-list-toolbar-stable{flex-shrink:0;margin-bottom:var(--space-4)}.tasks-page-list .tasks-list-only .tasks-list-pagination{flex-shrink:0}.tasks-page-list .tasks-list-only .tasks-inline-list{max-height:none;overflow:visible;flex:0 0 auto;min-height:0;padding:0;gap:var(--space-3)}.tasks-page-list .tasks-list-only .tasks-list-item{padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;display:grid;grid-template-columns:auto 1fr auto auto;grid-template-areas:"id title load badge" "id inn inn inn" "id meta meta meta";align-items:start;text-align:left;gap:0 var(--space-2)}.tasks-page-list .tasks-list-only .tasks-list-item:hover{background:var(--bg);border-color:var(--border);box-shadow:0 2px 8px var(--shadow)}.tasks-page-list .tasks-list-only .tasks-list-item[data-status=new]{border-left:3px solid var(--primary)}.tasks-page-list .tasks-list-only .tasks-list-item[data-status=in_progress]{border-left:3px solid var(--warning)}.tasks-page-list .tasks-list-only .tasks-list-item[data-status=done]{border-left:3px solid var(--success)}.tasks-page-list .tasks-list-only .tasks-list-item[data-status=cancelled]{border-left:3px solid var(--text-muted)}.tasks-page-list .tasks-list-only .tasks-list-item-id{grid-area:id;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;font-size:var(--text-xs);color:var(--text-muted);font-weight:600;padding-right:var(--space-2);flex-shrink:0;align-self:center}.tasks-page-list .tasks-list-only .tasks-list-item-id-num{color:var(--text);white-space:nowrap}.tasks-page-list .tasks-list-only .tasks-list-item-id-period{font-weight:500;font-size:.7rem;opacity:.9}.tasks-page-list .tasks-list-only .tasks-list-item-id-empty{color:var(--text-muted);font-weight:500}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-title-wrap{grid-area:title;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.25rem}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-title-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;min-width:0;width:100%}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-title-row .tasks-list-item-title{min-width:0;flex:0 1 auto}.tasks-page-list .tasks-list-only .tasks-list-item-title{font-size:var(--text-base);font-weight:600;line-height:1.35;word-break:break-word;min-width:0}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-badges{grid-area:badge;display:flex;flex-wrap:wrap;gap:.35rem;align-self:start}.tasks-page-list .tasks-list-only .tasks-list-item>.badge{grid-area:badge}.tasks-page-list .tasks-list-only .tasks-list-item .badge{font-size:var(--text-xs);padding:.2rem .5rem;flex-shrink:0}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-badges .badge{margin:0}.badge-subtask-active{background:var(--primary-light);color:var(--primary);font-size:var(--text-xs);padding:.2rem .5rem}.badge-invoice{background:var(--primary-light);color:var(--primary)}.tasks-page-list .tasks-list-only .tasks-list-item-inn{font-size:var(--text-xs);color:var(--text-muted);grid-area:inn;margin-top:var(--space-1)}.tasks-page-list .tasks-list-only .tasks-list-item-load{grid-area:load;align-self:center;display:flex;align-items:center;justify-content:flex-end;min-width:0}.task-load-level-inline{display:inline-flex;align-items:center;gap:.3rem}.task-load-dot-inline{width:.75rem;height:.75rem;min-width:.75rem;min-height:.75rem;border-radius:50%;flex-shrink:0;border:1px solid var(--border);background:var(--bg);box-sizing:border-box}.task-load-dot-inline.filled{background:var(--primary);border-color:var(--primary)}.task-load-dot-inline.filled[data-level="1"],.task-load-dot-inline.filled[data-level="2"]{background:var(--success);border-color:var(--success)}.task-load-dot-inline.filled[data-level="3"],.task-load-dot-inline.filled[data-level="4"]{background:var(--warning);border-color:var(--warning)}.task-load-dot-inline.filled[data-level="5"]{background:var(--error);border-color:var(--error)}.tasks-page-list .tasks-list-only .task-load-level-done{opacity:.85}.tasks-page-list .tasks-list-only .tasks-list-item-duration-done{color:var(--text-muted)}.tasks-page-list .tasks-list-only .tasks-list-item-meta{font-size:var(--text-xs);color:var(--text-muted);grid-area:meta;margin-top:var(--space-1)}.tasks-list-item-duration{font-weight:600;color:var(--primary)}.tasks-page-list .tasks-list-only .tasks-list-item-duration{font-size:var(--text-sm)}.tasks-page-list .tasks-list-only .tasks-list-item-group{list-style:none;margin-bottom:0;padding:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--bg-card);align-self:flex-start;flex-shrink:0;width:100%}.tasks-page-list .tasks-list-only .tasks-list-item-group+.tasks-list-item-group{margin-top:var(--space-2)}.tasks-page-list .tasks-list-only .tasks-list-item-group .tasks-list-item-main{border-radius:0;border:none}.tasks-page-list .tasks-list-only .tasks-list-item-group .tasks-list-item-main[data-status=new]{border-left:3px solid var(--primary)}.tasks-page-list .tasks-list-only .tasks-list-item-group .tasks-list-item-main[data-status=in_progress]{border-left:3px solid var(--warning)}.tasks-page-list .tasks-list-only .tasks-list-item-group .tasks-list-item-main[data-status=done]{border-left:3px solid var(--success)}.tasks-page-list .tasks-list-only .tasks-list-item-group .tasks-list-item-main[data-status=cancelled]{border-left:3px solid var(--text-muted)}.tasks-page-list .tasks-list-only .tasks-list-item-group-has-subtasks .tasks-list-item-main{border-bottom:1px solid var(--border-light)}.tasks-page-list .tasks-list-only .tasks-list-subtasks-wrap{padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);margin:var(--space-1) var(--space-2) var(--space-2);border-left:2px solid var(--border-light);background:var(--bg);border-radius:0 var(--radius-sm) var(--radius-sm) 0;min-height:0;height:auto;flex-shrink:0;display:block}.tasks-page-list .tasks-list-only .tasks-list-subtasks-label{font-size:.65rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);opacity:.9}.tasks-page-list .tasks-list-only .tasks-list-subtasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);min-height:0;height:auto;flex:0 0 auto}.tasks-page-list .tasks-list-only .tasks-list-subtasks .tasks-list-item{margin:0;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);min-height:0}.tasks-page-list .tasks-list-only .tasks-list-item-subtask{background:var(--bg-card);border:1px solid var(--border-light);border-left:3px solid var(--primary);box-shadow:0 1px 2px #0000000a;transition:box-shadow .15s ease,border-color .15s ease}.tasks-page-list .tasks-list-only .tasks-list-item-subtask:hover{box-shadow:0 2px 6px #0000000f}.tasks-page-list .tasks-list-only .tasks-list-item-subtask[data-status=in_progress]{border-left-color:var(--warning)}.tasks-page-list .tasks-list-only .tasks-list-item-subtask[data-status=done]{border-left-color:var(--success)}.tasks-page-list .tasks-list-only .tasks-list-subtasks .tasks-list-item-title{font-weight:500}.tasks-page-list .tasks-list-only .tasks-list-item-subtask .tasks-list-item-subtask-id{color:var(--text-muted);font-size:var(--text-xs)}.tasks-page-list .tasks-list-only .tasks-list-subtasks .tasks-list-item-title,.tasks-page-list .tasks-list-only .tasks-list-subtasks .tasks-list-item-meta{font-size:var(--text-xs)}.tasks-page-list .tasks-list-only .tasks-list-subtasks .tasks-list-item .badge-subtask{padding:.15rem .35rem;font-size:.7rem}.tasks-page-list .tasks-list-only .tasks-list-item-subtask-parent-num{white-space:nowrap;color:var(--text-muted);font-weight:500}.tasks-page-list .tasks-list-only .tasks-list-item-subtask .tasks-list-item-subtask-badge{font-size:.65rem;font-weight:600;color:var(--text-muted);background:var(--border-light);padding:.1rem .3rem;border-radius:3px;margin-right:.25rem;flex-shrink:0}.tasks-page-list .tasks-list-only .tasks-list-item .badge-subtask{font-size:var(--text-xs);padding:.2rem .5rem}.tasks-page-list .tasks-list-only .tasks-list-empty{padding:var(--space-8) var(--space-4);min-height:120px;font-size:var(--text-base);color:var(--text-muted);background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius)}.tasks-page-list .tasks-list-only .tasks-list-pagination{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light);flex-wrap:wrap;gap:var(--space-2)}.tasks-page-list .tasks-list-only .tasks-list-pagination-info{width:100%;margin-left:0;margin-top:.25rem;order:10}.tasks-list-toolbar{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4);flex-shrink:0}.tasks-list-toolbar-compact{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.tasks-list-toolbar-compact .tasks-list-search{width:140px;min-width:100px;padding:var(--space-1) var(--space-2) var(--space-1) 1.5rem;font-size:var(--text-sm);min-height:var(--btn-h);background-size:12px;background-position:var(--space-1) center}.tasks-list-toolbar-compact .tasks-list-filter-select{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);min-width:100px;min-height:var(--btn-h)}.tasks-list-toolbar-compact .tasks-list-filter-reset{padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.tasks-list-toolbar-compact .tasks-list-result-info{font-size:var(--text-sm);margin-left:auto;color:var(--text-muted)}.tasks-list-toolbar-v2{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-2) var(--space-4);margin:0 0 var(--space-3) 0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.tasks-list-toolbar-stable{display:grid;grid-template-columns:280px 1fr auto;grid-template-areas:"search segments meta";flex-wrap:nowrap;min-height:calc(var(--btn-h) + var(--scrollbar-h) + var(--space-2));gap:var(--space-4);align-items:center}.tasks-list-toolbar-stable .tasks-list-toolbar-search-wrap{grid-area:search;width:280px;min-width:280px;max-width:280px}.tasks-list-toolbar-stable .tasks-list-status-segments{grid-area:segments;min-width:0;justify-content:flex-start;flex-wrap:nowrap;overflow-x:scroll;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:var(--scrollbar-h);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.tasks-list-toolbar-stable .tasks-list-status-segments .tasks-list-segment{flex-shrink:0}.tasks-list-toolbar-stable .tasks-list-status-segments::-webkit-scrollbar{height:var(--scrollbar-h)}.tasks-list-toolbar-stable .tasks-list-status-segments::-webkit-scrollbar-track{background:var(--bg);border-radius:var(--radius-sm)}.tasks-list-toolbar-stable .tasks-list-status-segments::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}.tasks-list-toolbar-stable .tasks-list-status-segments::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.tasks-list-toolbar-stable .tasks-list-status-segments::-webkit-scrollbar-button{display:none;width:0;height:0}.tasks-list-toolbar-stable .tasks-list-toolbar-meta{grid-area:meta;margin-left:0}@media (max-width: 900px){.tasks-list-toolbar-stable{grid-template-columns:1fr;grid-template-areas:"search" "segments" "meta";grid-template-rows:auto auto auto}.tasks-list-toolbar-stable .tasks-list-toolbar-search-wrap{width:100%;min-width:0;max-width:none}}.tasks-list-toolbar-search-wrap{position:relative;width:280px;flex-shrink:0}.tasks-list-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);font-size:var(--text-sm);color:var(--text-muted);pointer-events:none}.tasks-list-search-v2{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) 2rem;font-size:var(--text-sm);min-height:var(--input-h);border:1px solid transparent;border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);transition:border-color .15s,box-shadow .15s}.tasks-list-search-v2::placeholder{color:var(--text-muted)}.tasks-list-search-v2:hover{border-color:var(--border)}.tasks-list-search-v2:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.tasks-list-status-segments{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-1)}.tasks-list-segment{padding:0 var(--space-3);min-height:var(--btn-h);display:inline-flex;align-items:center;font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.tasks-list-segment:hover{color:var(--text);border-color:var(--border);background:var(--bg)}.tasks-list-segment.active{background:var(--primary);border-color:var(--primary);color:#fff}.tasks-list-segment.active:hover{background:var(--primary);color:#fff;opacity:.95}.tasks-list-toolbar-meta{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.tasks-list-select-v2{padding:var(--space-1) 1.75rem var(--space-1) var(--space-2);font-size:var(--text-sm);min-height:var(--btn-h);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23666' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E") no-repeat right var(--space-2) center;background-size:10px;color:var(--text);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0}.tasks-list-select-v2:hover{border-color:var(--border)}.tasks-list-select-v2:focus{outline:none;border-color:var(--primary)}.tasks-list-toolbar-clear{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);color:var(--text-muted);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer}.tasks-list-toolbar-clear:hover{color:var(--text);background:var(--bg)}.tasks-list-toolbar-count{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);padding-left:var(--space-2);border-left:1px solid var(--border);min-width:1.5rem;display:inline-block;text-align:right}.tasks-list-search{width:100%;padding:var(--space-2) var(--space-4) var(--space-2) 2.25rem;font-size:var(--text-base);min-height:var(--input-h);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23888' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E") no-repeat var(--space-3) center;color:var(--text)}.tasks-list-search::placeholder{color:var(--text-muted)}.tasks-list-search:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.tasks-list-filters-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.tasks-list-filter-select{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);min-height:var(--btn-h);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);min-width:140px}.tasks-list-filter-reset{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);margin-left:auto}.tasks-list-result-info{font-size:var(--text-sm);color:var(--text-muted)}.tasks-list-paginated{overflow:visible;flex:1;min-height:0;display:flex;flex-direction:column}.tasks-list-pagination{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0;padding:var(--space-2) 0 0;margin-top:var(--space-2);border-top:1px solid var(--border)}.tasks-list-pagination-btn{min-width:var(--space-8);height:var(--btn-h);padding:0 var(--space-1);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);cursor:pointer}.tasks-list-pagination-btn:hover:not(:disabled){background:var(--bg);border-color:var(--primary);color:var(--primary)}.tasks-list-pagination-btn:disabled{opacity:.5;cursor:default}.tasks-list-pagination-btn.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:600}.tasks-list-pagination-info{margin-left:var(--space-3);font-size:var(--text-sm);color:var(--text-muted)}.tasks-open-list-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);min-height:var(--btn-h);font-size:var(--text-base);font-weight:500;width:100%;justify-content:center}.tasks-open-list-count{display:inline-flex;align-items:center;justify-content:center;min-width:var(--space-6);height:var(--space-6);padding:0 var(--space-1);font-size:var(--text-xs);font-weight:600;background:#ffffff40;border-radius:999px}.tasks-inline-list-header{margin-bottom:var(--space-3)}.tasks-inline-list-title{margin:0 0 var(--space-2) 0;font-size:var(--text-md);font-weight:600;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.tasks-inline-list-count{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);background:var(--bg);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.tasks-inline-list-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.tasks-inline-list{max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2)}.tasks-new-form-divider{height:1px;background:var(--border);margin:var(--space-5) 0}.tasks-list-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:800}.tasks-list-drawer{position:fixed;top:0;left:0;bottom:0;width:420px;max-width:95vw;background:var(--bg-card);border-right:1px solid var(--border);box-shadow:4px 0 24px #00000026;z-index:801;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .25s ease}.tasks-list-drawer-open{transform:translate(0)}.tasks-list-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);flex-shrink:0}.tasks-list-drawer-header h2{margin:0;font-size:var(--text-lg);font-weight:600;flex:1;min-width:0}.tasks-list-drawer-subtitle{font-weight:500;color:var(--text-muted);font-size:var(--text-sm)}.tasks-list-drawer-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);flex-shrink:0}.tasks-list-filter-tabs{display:flex;gap:var(--space-1)}.tasks-list-filter-tabs button{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);min-height:var(--btn-h);border:1px solid var(--border);background:var(--bg);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.tasks-list-filter-tabs button:hover{color:var(--text);border-color:var(--border);background:var(--bg-card)}.tasks-list-filter-tabs button.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:500}.tasks-list-date-filter{font-size:var(--text-sm);padding:var(--space-1) var(--space-3);min-height:var(--btn-h);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);min-width:120px}.tasks-list-drawer-close{width:var(--btn-h);height:var(--btn-h);min-width:var(--btn-h);min-height:var(--btn-h);padding:0;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-2xl);line-height:1;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.tasks-list-drawer-close:hover{background:var(--bg);color:var(--text)}.tasks-list-drawer-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.tasks-list-drawer-body .tasks-list{flex:1;min-height:200px}.tasks-list-panel{width:380px;min-width:320px;flex-shrink:0;display:flex;flex-direction:column;gap:1rem;min-height:0;overflow:hidden}.tasks-page-create-single{display:block;max-width:960px;margin:0 auto;padding:0;width:100%}.create-task-empty{text-align:center;padding:var(--space-8);color:var(--text-muted)}.create-task-card{padding:var(--space-5) var(--space-5);border-radius:var(--radius-lg)}.create-task-header{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.create-task-header-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.create-task-title{margin:0;font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em;line-height:var(--leading-tight)}.create-task-mode{display:flex;gap:var(--space-1)}.create-task-mode-btn{padding:var(--space-1) var(--space-4);font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.create-task-mode-btn:hover{color:var(--text);border-color:var(--border);background:var(--bg)}.create-task-mode-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.create-task-subtitle{margin:var(--space-1) 0 0 0;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed)}.create-task-form{display:flex;flex-direction:column;gap:0}.create-task-error{margin-bottom:var(--space-3);font-size:var(--text-base)}.create-task-section{margin-bottom:var(--space-5)}.create-task-section-detail{padding-top:var(--space-2)}.create-task-section-title{margin:0 0 var(--space-2) 0;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.create-task-grid{display:flex;flex-direction:column;gap:var(--space-3)}.create-task-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3) var(--space-4)}@media (max-width: 560px){.create-task-grid-2{grid-template-columns:1fr}}.create-task-field{display:flex;flex-direction:column;gap:.5rem}.create-task-field-span-2{grid-column:1 / -1}.create-task-field-full{width:100%}.create-task-label{font-size:var(--text-sm);font-weight:500;color:var(--text)}.create-task-label .muted{font-weight:400;color:var(--text-muted)}.create-task-field input:not([type=file]):not([type=checkbox]),.create-task-field select,.create-task-field textarea{padding:var(--space-1) var(--space-3);font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);transition:border-color .15s,box-shadow .15s;width:100%;min-height:var(--input-h)}.create-task-field input:not([type=checkbox]):focus,.create-task-field select:focus,.create-task-field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.create-task-field-checkbox{flex-direction:row;align-items:center;margin-top:var(--space-1)}.create-task-label-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:400;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.create-task-label-checkbox input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.create-task-input{padding:var(--space-1) var(--space-3);font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);transition:border-color .15s,box-shadow .15s;min-height:var(--input-h)}.create-task-input:hover{border-color:var(--border)}.create-task-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.create-task-input.input-readonly{background:var(--bg);color:var(--text-muted)}.create-task-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23666' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:10px;padding-right:2.25rem}.create-task-textarea{resize:vertical;min-height:4rem;padding:var(--space-1) var(--space-3);font-size:var(--text-base)}.create-task-upload-btn{display:inline-block;padding:var(--space-1) var(--space-4);font-size:var(--text-sm);border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s;font-family:inherit}.create-task-upload-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.create-task-upload-btn:disabled{opacity:.7;cursor:wait}.create-task-attachments{margin-top:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.create-task-attachment-row{display:flex;gap:var(--space-2);align-items:center}.create-task-attachment-row .create-task-input-sm{flex:1;min-width:0}.create-task-input-sm{padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.create-task-attachment-remove{flex-shrink:0;width:var(--space-8);height:var(--space-8);padding:0;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-xl);line-height:1;cursor:pointer;border-radius:var(--radius-sm)}.create-task-attachment-remove:hover{background:var(--bg);color:var(--text)}.create-task-add-link{align-self:flex-start;font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}.create-task-footer{display:flex;align-items:center;gap:var(--space-4);padding-top:var(--space-4);margin-top:var(--space-2);border-top:1px solid var(--border)}.create-task-submit{padding:var(--space-2) var(--space-6);font-size:var(--text-base);font-weight:600;min-height:var(--btn-h);border-radius:var(--radius-sm)}.create-task-clear{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted)}.create-task-clear:hover{color:var(--text)}.tasks-quick-add{flex-shrink:0;border-radius:var(--radius-lg);overflow:visible}.tasks-quick-add-title{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:var(--text)}.tasks-quick-form{display:flex;flex-direction:column;gap:.5rem}.tasks-quick-form select,.tasks-quick-form input{width:100%}.tasks-quick-form button{align-self:flex-start}.tasks-list-header{flex-shrink:0;padding:.15rem 0}.tasks-list-header h2{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em}.tasks-list{list-style:none;padding:0;margin:0;overflow:auto;flex:1;min-height:280px;display:flex;flex-direction:column;gap:var(--space-2)}.tasks-list-empty{color:var(--text-muted);padding:var(--space-6) 0;text-align:center;font-size:var(--text-sm)}.tasks-list-item{padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--border);cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;display:flex;flex-direction:column;gap:var(--space-1)}.tasks-list-item:hover{background:var(--bg);border-color:var(--border)}.tasks-list-item.active{border-color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 1px var(--primary)}.tasks-list-item-title-wrap{display:flex;flex-direction:column;gap:.15rem}.tasks-list-item-monthly-no{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.tasks-list-item-title{display:block;font-weight:600;font-size:var(--text-base);line-height:var(--leading-tight)}.tasks-list-item-inn{display:block;font-size:var(--text-xs);color:var(--text-muted)}.tasks-list-item-meta{display:block;font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}.tasks-detail-panel{flex:1;min-width:0;min-height:0;overflow:auto;border-radius:var(--radius-lg);align-self:flex-start}.tasks-detail-empty{padding:var(--space-10);text-align:center;color:var(--text-muted);font-size:var(--text-base)}.tasks-detail-empty button{margin-top:var(--space-4)}.tasks-back-create{margin-bottom:var(--space-3);font-size:var(--text-sm);padding:var(--space-1) 0;color:var(--primary);background:none;border:none;cursor:pointer;font-weight:500}.tasks-back-create:hover{text-decoration:underline}.tasks-detail-head{display:flex;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.task-view .tasks-detail-head{margin-bottom:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.tasks-detail-head-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.tasks-detail-monthly-no{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.tasks-detail-head .panel-title{font-size:var(--text-xl);font-weight:600}.task-view .tasks-detail-desc{white-space:pre-wrap;color:var(--text);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tasks-detail-meta{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-5);font-size:var(--text-sm);margin-bottom:var(--space-4)}.tasks-detail-meta dt{color:var(--text-muted)}.tasks-history{list-style:none;padding:0;margin:0;font-size:var(--text-sm)}.tasks-history li{padding:var(--space-1) 0;border-bottom:1px solid var(--border)}.tasks-history .muted{color:var(--text-muted)}.tasks-form-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.form-error{color:var(--error);font-size:var(--text-sm);margin:var(--space-2) 0 0 0}.panel-title{margin:0 0 var(--space-1) 0;font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em}.panel-title-warn{color:var(--warning)}.panel-hint{color:var(--text-muted);font-size:var(--text-sm);margin:0 0 var(--space-5) 0;line-height:var(--leading-normal)}.task-form .form-section{margin-bottom:var(--space-6)}.form-section-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 var(--space-3) 0}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.attachment-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-2);align-items:center}.attachment-row input:first-of-type{flex:0 0 140px}.attachment-row input:last-of-type{flex:1}.input-file-hidden{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1;clip:rect(0,0,0,0)}.report-form-attach,.form-group.task-materials-upload,.form-group:has(.input-file-hidden),.create-task-field-full:has(.input-file-hidden){position:relative}.task-upload-wrap{position:relative}.task-upload-label{position:relative;display:inline-block;cursor:pointer}.task-upload-label .btn-upload{display:inline-block;pointer-events:none}.task-upload-input-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0;font-size:0;border:0}.task-upload-input-overlay:disabled{cursor:wait}.task-upload-label:has(.task-upload-input-overlay:disabled) .btn-upload{opacity:.7}.btn-upload{display:inline-block;padding:.5rem 1rem;border:1px dashed var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);font-size:var(--text-sm);transition:border-color .15s,color .15s;background:transparent;font-family:inherit}button.btn-upload:disabled{opacity:.7;cursor:wait}.btn-upload:hover{border-color:var(--primary);color:var(--primary)}.btn-upload:has(+input:disabled){opacity:.7;cursor:wait}.btn-ghost{background:transparent;border:none;color:var(--text-muted);padding:var(--space-1) 0;font-size:var(--text-sm);min-height:auto}.btn-ghost:hover{color:var(--primary)}.task-block{margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-light)}.task-block:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.task-view{--task-section-gap: var(--space-6)}.task-view .task-block{margin-bottom:var(--task-section-gap);padding-bottom:var(--space-5)}.task-view .task-block:last-child{margin-bottom:0;padding-bottom:0}.task-view-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--border-light)}.task-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem 1rem;font-size:var(--text-sm);font-weight:500;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.task-toolbar-btn:hover{background:var(--bg);color:var(--primary);border-color:var(--primary-light);box-shadow:0 1px 3px var(--shadow)}.task-toolbar-btn:active{box-shadow:inset 0 1px 2px var(--shadow)}.task-call-admin-btn:disabled{opacity:.7;cursor:default}.task-call-admin-btn:disabled:hover{background:var(--bg-card);color:var(--text-muted);border-color:var(--border);box-shadow:none}.task-subtasks-block{margin-top:var(--space-4);min-height:0;height:auto}.task-subtasks-list{list-style:none;padding:0;margin:0;min-height:0;height:auto}.task-subtasks-hint{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-2)}.task-subtask-add-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.task-subtask-input{flex:1;min-width:180px;max-width:320px}.task-subtask-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.task-subtask-item.task-subtask-in-progress{border-left:3px solid var(--warning)}.task-subtask-item.task-subtask-frozen{background:var(--primary-light);border-color:#2563eb4d}.task-subtask-title{font-weight:600;min-width:0;flex:1 1 140px}.task-subtask-duration{font-size:var(--text-sm);font-weight:600;color:var(--primary)}.badge-subtask.new{background:var(--primary-light);color:var(--primary)}.badge-subtask.in_progress{background:var(--warning-light);color:var(--warning)}.badge-subtask.done{background:var(--success-light);color:var(--success)}.task-subtask-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}.task-subtask-btn{font-size:var(--text-xs);padding:.35rem .65rem}.task-subtask-done{color:var(--success)}.task-subtask-done:hover{background:var(--success-light);border-color:var(--success);color:var(--success)}.task-frozen-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius);background:linear-gradient(135deg,#e0f4ff,#f0f8ff,#e8f4fc);border:1px solid rgba(100,180,255,.4);color:#1a5a8a;font-size:var(--text-sm);box-shadow:0 1px 3px #64b4ff26}[data-theme=dark] .task-frozen-banner{background:linear-gradient(135deg,#1e3a5f,#152d47,#1a3655);border-color:#64b4ff40;color:#93c5fd;box-shadow:0 1px 3px #0000004d}.task-frozen-icon{font-size:1.25rem;opacity:.9}.task-frozen-inline{color:var(--text-muted);font-size:var(--text-sm)}.task-timer-paused{color:var(--text-muted);font-size:var(--text-sm);font-weight:500}.task-action-freeze,.task-action-unfreeze{margin-top:var(--space-2)}.task-freeze-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) 0}.task-freeze-form label{width:100%}.task-freeze-form input[type=date]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input-bg);font-size:var(--text-base)}.task-freeze-form-buttons{display:flex;gap:var(--space-2)}.tasks-list-item-frozen{position:relative;overflow:hidden;background:linear-gradient(160deg,#e8f6fc,#d8eef8 22%,#c8e6f4 45%,#b8def0,#d0eaf6 85%,#e4f4fb)!important;border:1px solid rgba(140,200,230,.6)!important;border-left-width:4px!important;border-left-color:#6eb5dc!important;box-shadow:inset 0 2px #ffffffb3,inset 0 -1px #b4dcf080,0 1px 4px #64aad233}.tasks-list-item-frozen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,rgba(255,255,255,.4) 0%,transparent 40%,rgba(255,255,255,.2) 60%,transparent 100%);pointer-events:none}.tasks-list-item-frozen:hover{background:linear-gradient(160deg,#e0f2fa,#cce8f4,#b8dcee,#c8e4f2,#dceef8)!important;border-color:#78bee6b3!important;box-shadow:inset 0 2px #fffc,0 2px 8px #64aad240}.tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-title{color:#0d4a6e;font-weight:700}.tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-id-num{color:#1a5a82;font-weight:600}.tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-id-period{color:#2d6a8f;font-weight:600}.tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-inn,.tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-meta{color:#1a5a82;font-weight:600}.tasks-list-item-frozen-icon{margin-right:.4rem;font-size:1.15rem;color:#3a8fc4;display:inline-block;animation:tasks-frozen-icon-sway 2.5s ease-in-out infinite}.tasks-list-item-call-admin-icon{margin-left:.35rem;font-size:1.15rem;color:var(--error);display:inline-block;flex-shrink:0}.tasks-page-list .tasks-list-only .tasks-list-item .tasks-list-item-call-admin-icon{font-size:1.4rem;animation:task-call-admin-alert .9s ease-in-out infinite}@keyframes task-call-admin-alert{0%,to{opacity:1;transform:scale(1);filter:drop-shadow(0 0 2px rgba(220,38,38,.6))}50%{opacity:.9;transform:scale(1.12);filter:drop-shadow(0 0 8px rgba(220,38,38,.9))}}@keyframes tasks-frozen-icon-sway{0%,to{transform:translate(0);opacity:1}25%{transform:translate(3px);opacity:.9}75%{transform:translate(-3px);opacity:.9}}[data-theme=dark] .tasks-list-item-frozen{background:linear-gradient(160deg,#0f2438,#132d45,#163552,#122a42,#0e2238)!important;border-color:#5eb8f04d!important;border-left-color:#4a9ed4!important;box-shadow:inset 0 1px #5eb8f014,inset 0 -1px #0003,0 1px 6px #00000040}[data-theme=dark] .tasks-list-item-frozen:before{background:linear-gradient(110deg,rgba(94,184,240,.06) 0%,transparent 50%,rgba(255,255,255,.02) 100%)}[data-theme=dark] .tasks-list-item-frozen:hover{background:linear-gradient(160deg,#132d45,#163552,#14304a 70%,#10263d)!important;border-color:#5eb8f066!important;box-shadow:inset 0 1px #5eb8f01a,0 2px 10px #0000004d}[data-theme=dark] .tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-title{color:#93c5fd;font-weight:700}[data-theme=dark] .tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-id-num{color:#93c5fd;font-weight:600}[data-theme=dark] .tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-id-period{color:#7dd3fc;font-weight:600;opacity:.95}[data-theme=dark] .tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-inn{color:#93c5fd;font-weight:600}[data-theme=dark] .tasks-page-list .tasks-list-only .tasks-list-item-frozen .tasks-list-item-meta{color:#93c5fd;font-weight:600;opacity:.95}[data-theme=dark] .tasks-list-item-frozen-icon{color:#7dd3fc}.task-deadline-hint{font-size:var(--text-sm);color:var(--text-muted);padding:.4rem .75rem;border-radius:var(--radius-sm);background:var(--bg);border:1px solid transparent;font-weight:500}.task-deadline-hint.task-deadline-overdue{color:var(--error);font-weight:600;background:var(--error-light);border-color:var(--error)}.task-in-progress-timer{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.task-deadline-hint-inline{font-size:inherit;color:inherit}.task-deadline-hint-inline.task-deadline-overdue{color:var(--error);font-weight:500}.task-client-quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.task-quick-action-link{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--primary);text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.task-quick-action-link:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary);box-shadow:0 1px 3px var(--shadow)}@media print{.task-view-toolbar,.task-page-back,.task-page-delete-wrap{display:none!important}}.task-view .task-meta-inline{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-6);margin:0;font-size:var(--text-sm);line-height:1.5}.task-view .task-meta-inline dt{color:var(--text-muted);font-weight:500}.task-view .task-meta-inline dd{margin:0}.task-load-label{align-self:start;padding-top:2px}.task-load-cell{min-width:0}.task-load-picker{display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.task-load-picker-track{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:999px;box-shadow:inset 0 1px 2px var(--shadow)}.task-load-picker-track .task-load-picker-dot{flex:0 0 auto;width:1.25rem;height:1.25rem;max-width:1.25rem;max-height:1.25rem}.task-load-picker-dot{width:1.25rem!important;height:1.25rem!important;min-width:1.25rem!important;min-height:1.25rem!important;max-width:1.25rem!important;max-height:1.25rem!important;padding:0!important;border:none;border-radius:50%;background:var(--border-light);cursor:pointer;transition:background .2s ease,transform .15s ease;flex-shrink:0;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:0;overflow:hidden}.task-load-picker-dot:hover:not(:disabled):not(.filled){background:var(--border);transform:scale(1.08)}.task-load-picker-dot.filled{background:var(--primary);box-shadow:0 1px 3px var(--shadow)}.task-load-picker-dot:hover:not(:disabled).filled{background:var(--primary-hover);transform:scale(1.05)}.task-load-picker-dot:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.task-load-picker-dot:disabled{opacity:.6;cursor:not-allowed}.task-load-picker-dot-readonly{cursor:default;width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;max-width:1rem!important;max-height:1rem!important;padding:0!important;border-radius:50%;flex-shrink:0;box-sizing:border-box;display:inline-block;vertical-align:middle;line-height:0;overflow:hidden;background:var(--border-light);border:none}.task-load-picker-dot-readonly.filled{background:var(--primary)}.task-load-picker-track .task-load-picker-dot-readonly{flex:0 0 auto;width:1rem;height:1rem;max-width:1rem;max-height:1rem}.task-load-picker-labels{display:flex;justify-content:space-between;width:100%;padding:0 .25rem;font-size:var(--text-xs);color:var(--text-muted)}.task-load-picker-labels span:first-child{margin-right:auto}.task-load-picker-labels span:last-child{margin-left:auto}.task-load-picker-readonly .task-load-picker-track{padding:.35rem .6rem;cursor:default}.task-view .task-block .form-section-title{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 var(--space-4) 0;padding-left:var(--space-4);position:relative;line-height:1.3}.task-view .task-block .form-section-title:before{content:"";position:absolute;left:0;top:.1em;bottom:.1em;width:3px;background:var(--primary);border-radius:2px;opacity:.8}.task-actions-block{background:linear-gradient(to bottom,var(--bg) 0%,var(--bg-card) 100%);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6);margin-bottom:0;box-shadow:0 1px 3px var(--shadow)}.task-action-take{display:flex;flex-direction:column;gap:var(--space-4)}.task-action-take-hint{margin:0;font-size:var(--text-sm);color:var(--text-muted);line-height:1.55}.task-action-btn-take{align-self:flex-start;padding:var(--space-3) var(--space-8);font-weight:600;font-size:var(--text-base);border-radius:var(--radius);box-shadow:0 1px 2px var(--shadow);transition:transform .1s ease,box-shadow .15s ease}.task-action-btn-take:hover{transform:translateY(-1px);box-shadow:0 2px 6px var(--shadow-md)}.task-action-in-progress{display:flex;flex-direction:column;gap:var(--space-6)}.task-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.task-action-label{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);flex-shrink:0}.task-action-label-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--text);cursor:pointer}.task-action-label-checkbox input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.task-action-load .task-load-picker{margin-left:0}.task-action-report-form{display:flex;flex-direction:column;gap:var(--space-3)}.task-action-report-form textarea{min-height:4rem;resize:vertical;border-radius:var(--radius-sm)}.task-action-status-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-light)}.task-action-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2)}.report-form-attach{margin-top:var(--space-2)}.report-form-attach .btn-upload{margin-bottom:var(--space-2)}.report-form-files{list-style:none;padding:0;margin:0 0 var(--space-2) 0;font-size:var(--text-sm)}.report-form-files li{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.report-form-file-name{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-form-file-remove{flex-shrink:0;padding:.15rem .5rem;font-size:var(--text-xs)}.task-attachments{list-style:none;padding:0;margin:0}.task-attachments li{margin-bottom:.35rem}.task-attachments-media{display:flex;flex-wrap:wrap;gap:1rem}.task-attachment-item{margin-bottom:0}.task-attachment-image-link{display:block;border:1px solid var(--border);border-radius:8px;overflow:hidden;max-width:280px}.task-attachment-image{display:block;width:100%;height:auto;max-height:200px;object-fit:cover}.task-attachment-caption{display:block;padding:.35rem .5rem;font-size:.8rem;color:var(--text-muted);word-break:break-all}.task-attachment-video-wrap{max-width:400px;border:1px solid var(--border);border-radius:8px;overflow:hidden}.task-attachment-video{display:block;width:100%;max-height:240px}.task-reports{list-style:none;padding:0;margin:0 0 1rem}.task-reports li{padding:.75rem 0;border-bottom:1px solid var(--border)}.task-reports li:last-child{border-bottom:none}.task-report-meta{font-size:.8rem;color:var(--text-muted)}.task-report-text{margin:.35rem 0 0;font-size:.95rem;white-space:pre-wrap}.task-view .report-add-form textarea{width:100%;margin-bottom:var(--space-2);border-radius:var(--radius-sm);resize:vertical;min-height:4rem}.task-view-actions{margin-bottom:var(--space-5);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.tasks-detail-head-with-actions{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.tasks-detail-head-with-actions .tasks-detail-head-title-wrap{flex:1;min-width:0}.tasks-detail-head-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;flex-wrap:wrap}.tasks-detail-head-right .badge{padding:.35rem .65rem;font-size:var(--text-xs);font-weight:500;line-height:1.4;border-radius:var(--radius);border:none;box-shadow:0 1px 2px #0000000a}.task-status-head-select{height:32px;padding:0 1.75rem 0 .65rem;font-size:var(--text-xs);font-weight:500;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12' fill='none' stroke='%236b6b6f' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M3 4.5 L6 7.5 L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;box-shadow:0 1px 2px #0000000a;transition:border-color .15s,box-shadow .15s}.task-status-head-select:hover{border-color:var(--border);box-shadow:0 1px 3px #0000000f}.task-status-head-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb33}.task-status-head-dropdown-wrap{position:relative;display:inline-block}.task-status-head-trigger{min-width:7rem;text-align:left}.task-status-head-dropdown{position:absolute;top:100%;right:0;left:0;margin:var(--space-1) 0 0;padding:var(--space-1);list-style:none;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 20px #0000001a,0 2px 8px #0000000f;z-index:50;min-width:100%}.task-status-head-dropdown-item{padding:.5rem .65rem;font-size:var(--text-xs);font-weight:500;color:var(--text);cursor:pointer;border-radius:var(--radius-sm);transition:background .12s ease,color .12s ease}.task-status-head-dropdown-item:hover{background:var(--primary-light);color:var(--primary)}.task-card-edit-link{height:28px;padding:0 .75rem;font-size:var(--text-xs);font-weight:500;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;transition:border-color .15s,color .15s}.task-card-edit-link:hover{border-color:var(--primary);color:var(--primary)}.task-status-quick-label{font-size:var(--text-sm);color:var(--text-muted);margin-right:var(--space-2)}.task-status-quick-select{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);min-height:var(--btn-h);min-width:140px}.task-executor-take .primary{padding:var(--space-2) var(--space-5);font-weight:600}.task-materials-upload{margin-bottom:var(--space-3)}.executor-quick-edit{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.executor-quick-edit .form-group{margin-bottom:0}.task-history-block{padding-top:var(--space-5);border-top:1px solid var(--border-light)}.task-view .tasks-history{list-style:none;padding:0;margin:0;font-size:var(--text-sm)}.task-view .tasks-history li{padding:var(--space-2) 0;border-bottom:1px solid var(--border-light);line-height:1.5}.task-view .tasks-history li:last-child{border-bottom:none}.report-add-form textarea{border-radius:var(--radius-sm)}.report-add-form .primary{margin-top:var(--space-1)}.muted{color:var(--text-muted);font-size:var(--text-sm)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-6)}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0003;max-width:100%;max-height:calc(100vh - var(--space-12));display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);flex-shrink:0}.modal-title{margin:0;font-size:var(--text-lg);font-weight:600}.modal-close{width:var(--btn-h);height:var(--btn-h);min-width:var(--btn-h);min-height:var(--btn-h);padding:0;border:none;background:transparent;color:var(--text-muted);font-size:var(--text-2xl);line-height:1;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--bg);color:var(--text)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1;min-height:0}.client-edit-modal{padding:var(--space-5);max-width:420px}.client-edit-modal .modal-title{margin-bottom:var(--space-1)}.modal-hint{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--text-muted)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.client-card-page{max-width:900px}.client-card-breadcrumb{margin-bottom:var(--space-5);font-size:var(--text-sm)}.client-card-breadcrumb a{color:var(--primary);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) 0;border-radius:var(--radius-sm);transition:color .15s ease,background .15s ease}.client-card-breadcrumb a:hover{color:var(--primary-hover);background:var(--primary-light)}.client-card-breadcrumb-sep{margin:0 var(--space-2);color:var(--text-muted)}.client-card-breadcrumb-current{color:var(--text);font-weight:500}.client-card{padding:0;margin-bottom:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:0 2px 8px var(--shadow);overflow:hidden}.client-card-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-5);padding:var(--space-6) var(--space-6) var(--space-5);background:linear-gradient(180deg,var(--bg) 0%,var(--bg-card) 100%);border-bottom:1px solid var(--border-light)}.client-card-avatar{width:4rem;height:4rem;min-width:4rem;min-height:4rem;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:-.02em;flex-shrink:0}.client-card-hero{flex:1;min-width:0}.client-card-title{margin:0;font-size:1.75rem;font-weight:700;line-height:1.25;letter-spacing:-.02em;color:var(--text)}.client-card-hero-contact-wrap{margin-top:var(--space-3);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.client-card-hero-contact{font-size:1.125rem;font-weight:500;color:var(--text);word-break:break-all;line-height:1.4}.client-contact-link{color:var(--primary);text-decoration:none;transition:color .15s ease}.client-contact-link:hover{color:var(--primary-hover);text-decoration:underline}.client-contact-copy-btn{font-size:var(--text-xs);padding:.25rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.client-contact-copy-btn:hover{background:var(--primary-light);color:var(--primary)}.client-contact-copy-btn-inline{margin-left:var(--space-2)}.client-card-stats{padding:var(--space-3) var(--space-6);background:var(--bg);border-bottom:1px solid var(--border-light);font-size:var(--text-sm);color:var(--text-muted);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.client-card-stat strong{color:var(--text);font-weight:600}.client-card-stat-sep{color:var(--border)}.client-card-stat-muted{color:var(--text-muted)}.client-card-header-actions{flex-shrink:0;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.client-card-delete-btn{padding:.45rem .9rem;font-size:var(--text-sm);border:1px solid var(--error);border-radius:var(--radius-sm);background:transparent;color:var(--error);cursor:pointer;transition:background .15s ease,color .15s ease}.client-card-delete-btn:hover:not(:disabled){background:var(--error-light);color:var(--error)}.client-card-delete-btn:disabled{opacity:.6;cursor:not-allowed}.client-card-delete-error{font-size:var(--text-sm);color:var(--error)}.client-card-edit-actions{display:flex;gap:var(--space-2)}.client-card-section{margin:0;padding:var(--space-6) var(--space-6);border-bottom:1px solid var(--border-light)}.client-card-section:last-of-type{border-bottom:none}.client-card-sections-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--border-light)}.client-card-sections-row .client-card-section-half{border-bottom:none}.client-card-sections-row .client-card-section-half:first-child{border-right:1px solid var(--border-light)}@media (max-width: 640px){.client-card-sections-row{grid-template-columns:1fr}.client-card-sections-row .client-card-section-half:first-child{border-right:none;border-bottom:1px solid var(--border-light)}}.client-data-section{background:var(--bg)}.client-data-grid{display:flex;flex-direction:column;gap:0}.client-data-row{display:grid;grid-template-columns:10rem 1fr;gap:var(--space-4);align-items:baseline;min-height:2.75rem;padding:var(--space-3) 0;border-bottom:1px solid var(--border-light);font-size:var(--text-base)}.client-data-row:last-child{border-bottom:none}.client-data-label{color:var(--text-muted);font-weight:500}.client-data-value{color:var(--text);word-break:break-word}.client-data-value-empty{color:var(--text-muted);font-style:italic}.client-data-value-by-tasks{font-size:var(--text-sm);color:var(--text-muted)}.client-data-value-from-file{font-size:var(--text-sm);color:var(--primary);margin-left:.25rem}.client-data-input{width:100%;min-width:0;padding:.5rem .75rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text);box-sizing:border-box}.client-data-input::placeholder{color:var(--text-muted)}.client-card-empty-hint{margin:0;padding:var(--space-4);font-size:var(--text-base);color:var(--text-muted);background:var(--bg);border-radius:var(--radius);line-height:1.6}.client-card-section-title{font-size:var(--text-base);font-weight:600;margin:0 0 var(--space-4);color:var(--text);letter-spacing:0;text-transform:none}.client-card-hint{font-size:var(--text-sm);color:var(--text-muted);margin:0 0 var(--space-4);line-height:1.5}.client-card-hint-inline{margin:var(--space-2) 0 0}.client-card-empty-state{padding:var(--space-5);text-align:center;background:var(--bg);border-radius:var(--radius);border:1px dashed var(--border)}.client-card-empty-state-text{margin:0 0 var(--space-2);font-weight:500;color:var(--text)}.client-card-empty-state-hint{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--text-muted);line-height:1.5}.client-card-notes-wrap{margin:0}.client-contact-value-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.client-contact-value-link{color:var(--primary);text-decoration:none;word-break:break-all;transition:color .15s ease}.client-contact-value-link:hover{color:var(--primary-hover);text-decoration:underline}.client-contacts-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.client-contact-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);padding:var(--space-4) var(--space-4);background:var(--bg);border-radius:var(--radius);border-left:4px solid var(--primary);font-size:var(--text-base)}.client-contact-type-label{font-weight:600;color:var(--text-muted);font-size:var(--text-base);min-width:6rem}.client-contact-value-text{color:var(--text);word-break:break-word;font-size:var(--text-base)}.client-card-notes{margin:0;padding:var(--space-4);white-space:pre-wrap;word-break:break-word;color:var(--text);background:var(--bg);border-radius:var(--radius);line-height:1.65;font-size:var(--text-base)}.client-notes-edit{width:100%;min-height:7rem;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);font:inherit;font-size:var(--text-base);color:var(--text);background:var(--bg);box-sizing:border-box;line-height:1.6}.client-contacts-edit{margin-bottom:0}.client-contact-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;padding:var(--space-4);background:var(--bg);border-radius:var(--radius);margin-bottom:var(--space-3);border:1px solid var(--border)}.client-contact-type{width:160px;min-width:0;padding:.65rem .85rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text)}.client-contact-value{flex:1;min-width:180px;padding:.65rem .85rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text)}.client-contact-remove{width:2.5rem;height:2.5rem;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;border-radius:var(--radius);transition:background .15s ease,color .15s ease}.client-contact-remove:hover{background:var(--error-light);color:var(--error)}.client-add-contact{margin-top:var(--space-2);width:100%;padding:.75rem 1rem;border:1px dashed var(--border);border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:var(--text-base);transition:border-color .15s ease,color .15s ease}.client-add-contact:hover{border-color:var(--primary);color:var(--primary)}.client-tasks-section{margin-top:var(--space-6);padding:var(--space-6);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--shadow)}.client-tasks-section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.client-tasks-section-header .client-card-section-title{margin:0}.client-tasks-create-btn{flex-shrink:0}.client-tasks-section .client-card-section-title{margin-bottom:var(--space-4);font-size:var(--text-base)}.client-tasks-section-header+.client-tasks-list{margin-top:0}.client-card-skeleton .client-card-header{display:flex;gap:var(--space-4)}.client-card-skeleton-block{background:linear-gradient(90deg,var(--bg) 0%,var(--border-light) 50%,var(--bg) 100%);background-size:200% 100%;animation:client-card-skeleton-shimmer 1.2s ease-in-out infinite;border-radius:var(--radius)}.client-card-skeleton-title{height:2rem;width:60%;margin-top:var(--space-3)}.client-card-skeleton-line{height:1.25rem;width:45%;margin-top:var(--space-2)}.client-card-skeleton-heading{height:1.25rem;width:8rem;margin-bottom:var(--space-3)}.client-card-skeleton-label{height:1rem;width:5rem}.client-card-skeleton-value{height:1rem;width:70%}.client-card-skeleton-text{height:4rem;width:100%}@keyframes client-card-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.client-tasks-list{list-style:none;padding:0;margin:0 0 var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.client-task-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--bg);transition:background .12s ease}.client-task-item:hover{background:var(--primary-light)}.client-task-link{flex:1;min-width:0;color:var(--primary);text-decoration:none;font-weight:500;transition:color .15s ease}.client-task-link:hover{color:var(--primary-hover)}.client-task-status{font-size:var(--text-xs);padding:.25rem .6rem;border-radius:999px;background:var(--bg-card);color:var(--text-muted);font-weight:500}.client-task-item[data-status=new] .client-task-status{background:var(--primary-light);color:var(--primary)}.client-task-item[data-status=in_progress] .client-task-status{background:var(--warning-light);color:var(--warning)}.client-task-item[data-status=done] .client-task-status{background:var(--success-light);color:var(--success)}.client-task-item[data-status=cancelled] .client-task-status{background:var(--bg);color:var(--text-muted)}.client-task-date{font-size:var(--text-xs);color:var(--text-muted)}.client-card-page .button-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:.6rem 1.25rem;border-radius:var(--radius);font-weight:500;text-decoration:none}.calendar-page{max-width:900px}.calendar-header{margin-bottom:var(--space-5)}.calendar-header .page-description{margin-bottom:var(--space-4)}.calendar-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-3);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.calendar-controls button{padding:var(--space-2) var(--space-4);min-width:var(--space-10);min-height:var(--btn-h);font-weight:600;font-size:var(--text-base);border-radius:var(--radius-sm);transition:background .15s,border-color .15s}.calendar-controls button:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.calendar-month-title{font-weight:700;font-size:var(--text-md);min-width:180px;text-align:center;letter-spacing:-.02em}.calendar-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:0 2px 8px var(--shadow)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-1);margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.calendar-weekday{text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-cell{aspect-ratio:1;max-height:72px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;transition:background .2s,transform .15s}.calendar-cell-day{line-height:1.2}.calendar-cell.other-month{opacity:.35;cursor:default}.calendar-cell:not(.other-month):hover{background:var(--bg);transform:scale(1.02)}.calendar-cell.selected{background:var(--primary);color:#fff;box-shadow:0 2px 8px #00000026}.calendar-cell.selected .calendar-cell-pill-created,.calendar-cell.selected .calendar-cell-pill-deadline,.calendar-cell.selected .calendar-cell-pill-completed,.calendar-cell.selected .calendar-cell-pill-reports{background:#ffffff59;color:#fff}.calendar-cell-today{outline:2px solid var(--primary);outline-offset:1px}.calendar-cell-today:not(.selected){background:var(--primary-light)}.calendar-cell-dots{display:flex;align-items:center;justify-content:center;gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap}.calendar-cell-pill{font-size:var(--text-xs);font-weight:700;min-width:1.1rem;height:1.1rem;padding:0 var(--space-1);border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;line-height:1}.calendar-cell-pill-created{background:var(--primary-light);color:var(--primary)}.calendar-cell-pill-deadline{background:var(--warning-light);color:var(--warning)}.calendar-cell-pill-completed{background:var(--success-light);color:var(--success)}.calendar-cell-pill-reports{background:#e0f2fe;color:#0ea5e9}.calendar-legend{display:flex;align-items:center;justify-content:center;gap:var(--space-5);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light);font-size:var(--text-xs);color:var(--text-muted)}.calendar-legend-item{display:inline-flex;align-items:center;gap:var(--space-1)}.calendar-legend-dot{width:10px;height:10px;border-radius:50%}.calendar-legend-dot-created{background:var(--primary)}.calendar-legend-dot-deadline{background:var(--warning)}.calendar-day-list{margin-top:1rem}.calendar-task-list{list-style:none;padding:0;margin:0}.calendar-task-item{padding:.6rem 0;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.calendar-task-item:last-child{border-bottom:none}.calendar-task-link{background:none;border:none;padding:0;font:inherit;color:var(--primary);cursor:pointer;text-align:left;flex:1;min-width:0}.calendar-task-link:hover{text-decoration:underline}.calendar-task-meta{font-size:.85rem;color:var(--text-muted);width:100%}.calendar-day-modal{width:100%;min-width:320px;max-width:520px}.calendar-day-modal-body{display:flex;flex-direction:column;gap:1.5rem}.calendar-day-empty{text-align:center;padding:1.5rem}.calendar-day-section{border-radius:10px;overflow:hidden}.calendar-day-section-created{border:1px solid var(--border);border-left:4px solid var(--primary);background:var(--primary-light);background:linear-gradient(135deg,var(--primary-light) 0%,var(--bg-card) 100%)}.calendar-day-section-deadline{border:1px solid var(--border);border-left:4px solid var(--warning);background:var(--warning-light);background:linear-gradient(135deg,var(--warning-light) 0%,var(--bg-card) 100%)}.calendar-day-section-title{margin:0;padding:.75rem 1rem;font-size:var(--text-sm);font-weight:600;display:flex;align-items:center;gap:.5rem;background:#0000000a}.calendar-day-section-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.calendar-day-section-dot-created{background:var(--primary)}.calendar-day-section-dot-deadline{background:var(--warning)}.calendar-day-section-dot-completed{background:var(--success)}.calendar-day-section-dot-reports{background:#0ea5e9}.calendar-day-section-dot-frozen{background:#64748b}.calendar-day-section-dot-call-admin{background:#dc2626}.calendar-day-section-count{margin-left:auto;font-size:.8rem;font-weight:700;color:var(--text-muted);background:var(--bg-card);padding:.2rem .5rem;border-radius:6px}.calendar-day-section .calendar-task-list-modal{padding:.5rem 0}.calendar-day-section .calendar-task-item-modal{border-bottom-color:var(--border-light)}.calendar-day-section .calendar-task-item-modal:last-child{border-bottom:none}.calendar-day-section-empty{padding:.75rem 1rem;margin:0;font-size:.85rem}.calendar-task-list-modal{list-style:none;padding:0;margin:0}.calendar-task-item-modal{padding:0;border-bottom:1px solid var(--border)}.calendar-task-item-modal:last-child{border-bottom:none}.calendar-task-link-modal{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;width:100%;padding:1rem 1.25rem;text-align:left;background:none;border:none;font:inherit;color:var(--text);cursor:pointer;transition:background .15s}.calendar-task-link-modal:hover{background:var(--bg)}.calendar-task-frozen-row{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.15rem}.calendar-task-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;border-radius:6px;line-height:1.2}.calendar-task-badge-frozen{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;border:1px solid rgba(59,130,246,.35)}.calendar-task-frozen-icon{font-size:.95em;opacity:.95}.calendar-task-badge-deadline-moved{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#c2410c;border:1px solid rgba(234,88,12,.3)}[data-theme=dark] .calendar-task-badge-frozen{background:linear-gradient(135deg,#1e3a5f,#1e40af);color:#93c5fd;border-color:#60a5fa66}[data-theme=dark] .calendar-task-badge-deadline-moved{background:linear-gradient(135deg,#431407,#7c2d12);color:#fdba74;border-color:#fb923c59}.calendar-task-link-title{flex:1;min-width:0;font-weight:600}.badge-small{font-size:.7rem;padding:.15rem .4rem}.settings-card .page-header,.links-card .page-header{margin-bottom:.25rem}.settings-card h2,.links-card h2{margin:0 0 .5rem;font-size:1.0625rem;font-weight:600}.settings-card p,.links-card p{color:var(--text-muted);margin:0 0 1rem;font-size:var(--text-sm);line-height:1.5}.settings-card .card+.card{margin-top:1rem}.theme-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.stats-page .page-description{margin-bottom:var(--space-5);color:var(--text-muted);font-size:var(--text-sm)}.stats-controls{margin-bottom:var(--space-5)}.stats-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.stats-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);padding:var(--space-2)}.stats-tab{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.stats-tab:hover{background:var(--bg-hover);color:var(--text)}.stats-tab.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.stats-client-search-wrap{position:relative;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.stats-client-search-input-wrap{position:relative;display:inline-block}.stats-client-search-input{min-width:260px;max-width:360px;padding:var(--space-1) var(--space-2);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.stats-client-search-input::placeholder{color:var(--text-muted)}.stats-client-search-dropdown{position:absolute;top:100%;left:0;margin-top:var(--space-1);min-width:320px;max-width:480px;max-height:280px;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:20}.stats-client-search-loading,.stats-client-search-empty{padding:var(--space-3);font-size:var(--text-sm);color:var(--text-muted)}.stats-client-search-list{list-style:none;margin:0;padding:var(--space-1)}.stats-client-search-item{display:flex;flex-wrap:wrap;gap:var(--space-2);width:100%;padding:var(--space-2);font-size:var(--text-sm);text-align:left;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;transition:background .15s}.stats-client-search-item:hover{background:var(--bg-hover)}.stats-client-search-item-name{font-weight:500}.stats-client-search-item-contact{color:var(--text-muted)}.stats-client-search-item-inn{font-size:var(--text-xs);color:var(--text-muted)}.stats-client-selected{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm)}.stats-client-selected-label{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-client-clear{padding:0 var(--space-1);font-size:1.2em;line-height:1;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm)}.stats-client-clear:hover{color:var(--text);background:var(--bg-hover)}.stats-client-caption{margin-bottom:var(--space-4);padding:var(--space-3);font-size:var(--text-sm);color:var(--text-muted)}.stats-client-caption strong{color:var(--text)}.stats-period-quick{display:flex;flex-wrap:wrap;gap:var(--space-1)}.stats-period-btn{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.stats-period-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.stats-period-btn.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:500}.stats-filter-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.stats-filter-dates{margin-left:var(--space-2)}.stats-date-input{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;background:var(--bg);color:var(--text)}.stats-date-sep{color:var(--text-muted)}.stats-error{margin-bottom:var(--space-4);padding:var(--space-4);background:var(--error-light);color:var(--error);border-radius:var(--radius)}.stats-summary{margin-bottom:var(--space-5)}.stats-summary-pie-wrap{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.stats-pie-title{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.stats-section-title{margin:0 0 var(--space-4) 0;font-size:var(--text-base);font-weight:600}.stats-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-4)}.stats-card{display:flex;flex-direction:column;padding:var(--space-4);background:var(--bg);border:1px solid var(--border-light);border-radius:var(--radius)}.stats-card-value{font-size:1.5rem;font-weight:700;color:var(--primary);line-height:1.2}.stats-card-label{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-1)}.stats-tables .stats-section-title{margin-top:var(--space-5)}.stats-tables .stats-section-title:first-child{margin-top:0}.stats-table-wrap{overflow-x:auto;margin-bottom:var(--space-4)}.stats-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.stats-table th,.stats-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--border-light)}.stats-table th{font-weight:600;color:var(--text-muted);background:var(--bg)}.stats-table tbody tr:hover{background:var(--bg)}.stats-table-wrap-scroll{max-width:100%}.stats-table-row-selected{background:var(--primary-light)!important}.stats-table tbody tr[role=button]{cursor:pointer}.stats-table-cell-assignee{font-weight:600;min-width:10rem}.stats-table-hint{margin:0;font-size:var(--text-sm);color:var(--text-muted)}.stats-executor-detail{margin-bottom:var(--space-6)}.stats-executor-period{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--text-muted)}.stats-cards-compact .stats-card{min-width:6rem}.stats-executor-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.stats-charts{margin-bottom:var(--space-6)}.stats-chart-wrap{min-height:260px;padding:var(--space-4) 0}.stats-chart-pie{max-width:380px;margin:0 auto}.stats-chart-bar,.stats-chart-line{width:100%}.stats-tooltip{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);box-shadow:0 2px 8px var(--shadow)}.stats-tooltip strong{display:block;margin-bottom:var(--space-1)}.stats-btn-export-excel{font-weight:600}.clients-page .page-header{margin-bottom:var(--space-1)}.clients-page .page-description{margin-bottom:var(--space-5);color:var(--text-muted);font-size:var(--text-sm)}.clients-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.clients-view-toggle{display:inline-flex;padding:var(--space-1);background:var(--bg);border-radius:var(--radius);gap:0}.clients-view-toggle button{padding:.5rem 1.25rem;font-size:var(--text-sm);font-weight:500;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.clients-view-toggle button:hover{color:var(--text);background:var(--bg-card)}.clients-view-toggle button.active{background:var(--primary);color:var(--primary-contrast)}.clients-search-wrap{flex:1;min-width:220px}.clients-search-input{width:100%;max-width:360px;padding:.6rem 1rem;font-size:var(--text-base);border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.clients-search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.clients-search-input::placeholder{color:var(--text-muted)}.clients-view-btn{padding:.45rem .9rem;font-size:var(--text-sm);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--primary);cursor:pointer;text-decoration:none;transition:background .15s ease,color .15s ease}.clients-edit-btn:hover,.clients-view-btn:hover{background:var(--primary-light);color:var(--primary-hover)}.clients-actions-cell{display:flex;flex-wrap:nowrap;gap:var(--space-2);align-items:center;white-space:nowrap}.clients-mobile-actions{display:flex;flex-direction:column;gap:var(--space-3)}.clients-mobile-actions .clients-edit-btn,.clients-mobile-actions .clients-view-btn{width:100%;text-align:center}.clients-name-link{color:var(--text);text-decoration:none;font-weight:600;transition:color .15s ease}.clients-name-link:hover{color:var(--primary)}.clients-card-link{text-decoration:none;display:inline-block;box-sizing:border-box}.clients-empty{padding:var(--space-10);text-align:center;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius-lg)}.clients-empty .muted{font-size:var(--text-base);max-width:360px;margin:0 auto;line-height:1.5}.clients-mobile-list{display:none;list-style:none;padding:0;margin:0;gap:var(--space-4)}.clients-mobile-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);box-shadow:0 1px 3px var(--shadow);transition:box-shadow .15s ease,border-color .15s ease}.clients-mobile-card:hover{border-color:var(--border);box-shadow:0 4px 12px var(--shadow-md)}.clients-mobile-card-body{display:flex;flex-direction:column;gap:var(--space-2)}.clients-mobile-name{font-weight:600;font-size:var(--text-lg);color:var(--text);line-height:1.3}.clients-mobile-contact{font-size:var(--text-sm);color:var(--text-muted)}.clients-mobile-notes{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;word-break:break-word}.clients-mobile-meta{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}.clients-mobile-open{width:100%;min-height:48px;font-weight:500;border-radius:var(--radius)}.clients-desktop-wrap{overflow-x:hidden;max-width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 1px 3px var(--shadow)}.clients-table-wrap{overflow-x:auto;max-width:100%}.clients-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.clients-table th:nth-child(1),.clients-table td:nth-child(1){width:20%}.clients-table th:nth-child(2),.clients-table td:nth-child(2){width:14%}.clients-table th:nth-child(3),.clients-table td:nth-child(3){width:16%}.clients-table th:nth-child(4),.clients-table td:nth-child(4){width:6%}.clients-table th:nth-child(5),.clients-table td:nth-child(5){width:24%}.clients-table th:nth-child(6),.clients-table td:nth-child(6){width:20%}.clients-table th,.clients-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--border-light)}.clients-table tbody tr{transition:background .12s ease}.clients-table tbody tr:hover{background:var(--primary-light)}.clients-table tbody tr:last-child td{border-bottom:none}.clients-table th{font-weight:600;color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:var(--bg)}.clients-open-task-btn{white-space:nowrap;padding:.5rem 1rem;font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-sm)}.auth-page{max-width:400px;margin:3rem auto;padding:0 1rem}.auth-page .card{padding:1.75rem 1.5rem}.auth-page h1{margin:0 0 1.25rem;font-size:1.5rem;font-weight:600}.auth-page .primary{width:100%;padding:.6rem 1rem;font-weight:500}.auth-page .form-group{margin-bottom:1.25rem}.auth-page-footer{margin-top:1.25rem;font-size:var(--text-sm);color:var(--text-muted)}.auth-page-footer a{font-weight:500}.form-error-inline{color:var(--error);margin-bottom:1rem;font-size:var(--text-sm)}@media (max-width: 900px){.tasks-page{flex-direction:column;height:auto;min-height:70vh}.tasks-list-panel{width:100%;min-width:0}.tasks-list-drawer{width:100%;max-width:100%}}@media (max-width: 768px){.layout-mobile-menu-btn{display:flex;align-items:center;justify-content:center;position:fixed;top:max(.75rem,env(safe-area-inset-top));left:max(.75rem,env(safe-area-inset-left));z-index:700;width:3rem;height:3rem;min-width:44px;min-height:44px;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);font-size:1.35rem;cursor:pointer;box-shadow:0 2px 12px var(--shadow-md);touch-action:manipulation}.layout-mobile-menu-btn:active{background:var(--bg);transform:scale(.98)}.layout-mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:800;touch-action:none}.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(280px,85vw);padding-left:env(safe-area-inset-left);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);max-width:85vw;z-index:801;transform:translate(-100%);transition:transform .25s ease;box-shadow:none;overflow-y:auto;-webkit-overflow-scrolling:touch}.sidebar.sidebar-open{transform:translate(0);box-shadow:4px 0 24px #0003}.sidebar-nav a{min-height:48px;padding:.75rem 1rem;display:flex;align-items:center;font-size:var(--text-md)}.sidebar-animation-area{min-height:120px;justify-content:center;background:var(--bg)}.sidebar-animation-video{height:auto;min-height:100px;max-height:180px;width:100%;object-fit:contain;object-position:center center}.sidebar-close-mobile{display:flex;position:absolute;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0;border:none;background:var(--bg);color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:var(--radius-sm);touch-action:manipulation}.sidebar-close-mobile:hover,.sidebar-close-mobile:active{background:var(--border);color:var(--text)}.sidebar-logout{min-height:48px;padding:.75rem 1rem}.notification-center-trigger{min-width:44px;min-height:44px}.sidebar-user{word-break:break-word;line-height:1.4}.main{margin-left:0;padding:4rem 1rem 1rem;min-height:100vh;min-height:100dvh;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}.page-header{font-size:1.35rem;margin-bottom:.5rem}.page-description{font-size:var(--text-base);margin-bottom:1.25rem}.main-content{max-width:100%}.card{padding:1.25rem 1rem;border-radius:var(--radius)}input,select,textarea{min-height:48px;font-size:16px}textarea{min-height:120px}.tasks-list-toolbar-stable{gap:.75rem;padding:.75rem 0}.tasks-list-toolbar-meta{flex-wrap:wrap;gap:.5rem}.tasks-list-status-segments{-webkit-overflow-scrolling:touch}.tasks-list-search-v2,.tasks-list-search{min-height:48px;font-size:16px}.tasks-list-segment{min-height:44px;padding:0 1rem}.tasks-list-select-v2{min-height:44px}.tasks-list-pagination-btn{min-width:44px;height:44px}.create-task-card{padding:1.25rem 1rem}.create-task-title{font-size:1.35rem}.create-task-mode-btn{min-height:44px;padding:.6rem 1rem}.create-task-field input:not([type=file]),.create-task-field select,.create-task-field textarea,.create-task-input{min-height:48px;font-size:16px}.create-task-submit,.create-task-clear{min-height:48px;padding:.75rem 1.25rem}.tasks-page{min-height:auto;padding-top:0}.tasks-list-panel{width:100%;min-width:0}.tasks-detail-panel.card{padding:1rem 1.25rem}.task-page-standalone{max-width:100%}.task-page-card{padding:1rem 1.25rem}.tasks-detail-head-with-actions{flex-direction:column;align-items:flex-start;gap:.5rem}.tasks-detail-head-right{width:100%;flex-wrap:wrap}.task-view-actions{flex-wrap:wrap}.task-status-quick-select{min-width:120px}.form-row-2,.executor-quick-edit{grid-template-columns:1fr}.tasks-list-drawer{width:100%;max-width:100%;left:0}.tasks-list-drawer-body{padding:1rem}.tasks-list-item{padding:1rem;min-height:0;gap:.5rem;display:flex;flex-direction:column;align-items:flex-start}.tasks-list-item-title{font-size:var(--text-base);word-break:break-word;width:100%}.tasks-list-item-inn{font-size:var(--text-xs)}.tasks-list-item-meta{margin-top:0;font-size:var(--text-xs)}.tasks-list-item .badge{align-self:flex-start}.calendar-page{max-width:100%}.calendar-wrap{padding:.75rem}.calendar-cell{min-height:44px;max-height:56px;font-size:.85rem}.calendar-controls{flex-wrap:wrap;gap:.5rem}.calendar-month-title{min-width:140px;font-size:.95rem}.modal-overlay{padding:.75rem;align-items:flex-end}.modal-content{max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-header,.modal-body{padding:1rem}.calendar-day-modal{max-width:100%}.calendar-task-link-modal{padding:1rem;min-height:44px}.notification-center-dropdown-portal{max-height:min(300px,50vh)}.toast-container{left:1rem;right:1rem;top:auto;bottom:1rem;max-width:none}.toast{padding:1rem}.clients-mobile-list{display:flex;flex-direction:column}.clients-desktop-wrap{display:none}.clients-table-wrap{margin:0 -1rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.clients-table{font-size:.85rem;min-width:560px}.clients-table th,.clients-table td{padding:.6rem .75rem}.auth-page{margin:1.5rem 0;padding:0 .75rem;min-height:60vh;display:flex;align-items:center}.auth-page .card{padding:1.5rem 1.25rem;width:100%}.auth-page input{min-height:48px}.auth-page button[type=submit]{min-height:48px;width:100%}button:not(.btn-ghost):not(.task-card-edit-link):not(.modal-close):not(.sidebar-close-mobile):not(.notification-center-read-all){min-height:44px;padding:.6rem 1rem}.theme-buttons button{min-height:44px;flex:1;min-width:120px}.links-add-card,.links-list-card{padding:var(--space-4)}.settings-card .card,.links-card{margin-left:0;margin-right:0}.client-card-page{padding-left:0;padding-right:0}.client-card-breadcrumb{font-size:var(--text-sm);flex-wrap:wrap;gap:.25rem}.client-card-breadcrumb-current{word-break:break-word}.client-card{border-radius:0;margin-left:0;margin-right:0}.client-card-header{flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-4)}.client-card-hero{min-width:0}.client-card-title{font-size:1.35rem;word-break:break-word}.client-card-header-actions{flex-direction:column;width:100%}.client-card-header-actions .primary,.client-card-delete-btn{width:100%;justify-content:center;min-height:44px}.client-card-edit-actions{flex-direction:column;width:100%}.client-card-edit-actions button{width:100%;min-height:44px}.client-card-stats{padding:var(--space-3) var(--space-4);font-size:var(--text-xs)}.client-card-section,.client-card-sections-row .client-card-section-half{padding:var(--space-4)}.client-data-section{padding-left:var(--space-4);padding-right:var(--space-4)}.client-data-row{grid-template-columns:1fr;gap:var(--space-1);padding:var(--space-2) 0;min-height:0}.client-data-label{padding-top:var(--space-1)}.client-data-input{min-height:48px;font-size:16px}.client-contact-copy-btn{min-height:44px;padding:.35rem .75rem}.client-tasks-section{margin-left:0;margin-right:0;padding:var(--space-4);border-radius:0;border-left:none;border-right:none}.client-tasks-section-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.client-tasks-create-btn,.client-tasks-section .primary.button-link{width:100%;min-height:48px;justify-content:center}.client-tasks-list{margin-bottom:0}.client-task-item{padding:var(--space-3);gap:var(--space-2)}.client-task-link{width:100%}.client-card-empty-state{padding:var(--space-5) var(--space-4)}.client-card-notes-wrap,.client-contacts-edit{padding-left:0;padding-right:0}.client-contact-row{flex-wrap:wrap}.client-contact-type,.client-contact-value{min-width:0;flex:1 1 100%}.client-contact-remove{min-width:44px;min-height:44px}.task-form{padding:0}.task-form .form-section{margin-bottom:var(--space-4)}.tasks-form-actions{flex-direction:column;width:100%}.tasks-form-actions button{width:100%;min-height:48px}.attachment-row{flex-wrap:wrap}.attachment-row input:first-of-type{flex:1 1 100%}.links-page,.materials-page{max-width:100%}.links-add-card input,.links-list-card input,.materials-add-card input,.materials-list-card input{min-height:48px;font-size:16px}.settings-card{padding:var(--space-4)}.theme-buttons{flex-wrap:wrap}.clients-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-3)}.clients-view-toggle{width:100%;justify-content:stretch}.clients-view-toggle button{flex:1;min-height:44px}.clients-search-wrap{min-width:0}.clients-search-input{max-width:none;min-height:48px;font-size:16px}.clients-page .page-description{margin-bottom:var(--space-4)}}@media (max-width: 480px){.layout-mobile-menu-btn{top:max(.5rem,env(safe-area-inset-top));left:max(.5rem,env(safe-area-inset-left));width:2.75rem;height:2.75rem;min-width:44px;min-height:44px}.main{margin-left:0;padding:3.75rem .75rem .75rem;padding-left:max(.75rem,env(safe-area-inset-left));padding-right:max(.75rem,env(safe-area-inset-right));padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}.sidebar{width:min(260px,90vw);max-width:90vw}.sidebar-animation-video{max-height:160px}.page-header{font-size:1.25rem}.tasks-quick-add,.tasks-quick-add .card{padding:1rem}.tasks-open-list-btn{padding:.75rem 1rem;min-height:48px;font-size:var(--text-base)}.tasks-list{gap:.75rem}.tasks-list-item{padding:1rem;min-height:0}.task-page-back a{min-height:44px;display:inline-flex;align-items:center}.calendar-cell{font-size:.8rem;min-height:40px}.calendar-month-title{min-width:110px;font-size:var(--text-sm)}.calendar-controls button{min-height:44px}.task-page-back{margin-bottom:.75rem}.clients-table{min-width:480px}.clients-table th,.clients-table td{padding:.75rem .5rem}.toast-container{bottom:max(1rem,env(safe-area-inset-bottom));left:.75rem;right:.75rem}.client-card-header,.client-card-section,.client-card-sections-row .client-card-section-half,.client-tasks-section{padding:var(--space-3)}.client-card-title{font-size:1.2rem}.create-task-grid-2{grid-template-columns:1fr}.create-task-field-span-2{grid-column:1}}
