:root{--bg: #131316;--surface: #1c1c21;--border: rgba(255, 255, 255, .1);--text: #f4f4f5;--muted: #9ca3af;--accent: #6366f1;--accent-2: #818cf8;--green: #34d399;--red: #f87171;--radius: 12px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14.5px;line-height:1.45}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:32px;width:340px;display:flex;flex-direction:column;gap:12px}.auth-logo{width:44px;height:44px;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px}.auth-title{font-size:20px;margin:0}.auth-sub{margin:0 0 4px;color:var(--muted);font-size:13.5px}.error-text{color:var(--red);font-size:13.5px}.hint-text{color:var(--muted);font-size:12.5px;line-height:1.5;margin:4px 0 0}.input{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);min-width:0}.input:focus{outline:none;border-color:var(--accent)}.btn{border:none;border-radius:8px;padding:8px 14px;font-weight:600;background:#ffffff14;color:var(--text);transition:.15s}.btn:hover{background:#ffffff24}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-2)}.btn-danger{background:#f8717126;color:var(--red)}.btn-ghost{background:transparent;border:1px solid var(--border)}.btn-xs{padding:5px 10px;font-size:13px}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:default}.center{display:flex;align-items:center;justify-content:center;min-height:100vh}.muted{color:var(--muted)}.small{font-size:13px}.dash{padding:28px 32px;max-width:900px;margin:0 auto}.dash-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.dash-title{font-size:22px;font-weight:800;letter-spacing:-.4px}.dash-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:12px;padding:16px 12px;background:var(--surface);border-right:1px solid var(--border);position:sticky;top:0;height:100vh}.sidebar-logo{font-weight:800;font-size:15px;padding:4px 8px;letter-spacing:-.3px}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1}.sidebar-footer{display:flex;flex-direction:column;gap:8px;padding:0 4px}.sidebar-footer-actions{display:flex;gap:8px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:none;background:transparent;color:var(--text);font-size:14px}.nav-item:hover{background:#ffffff12}.nav-item-active{background:#6366f12e;font-weight:600}.nav-item-disabled{opacity:.45;cursor:default}.nav-item-icon{font-size:15px}.main{flex:1;min-width:0}.screen{padding:24px 28px;max-width:1100px}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}.screen-head h2{margin:0;font-size:21px;letter-spacing:-.3px}.head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--border)}.table td{padding:10px;border-bottom:1px solid var(--border)}.table-row-link{cursor:pointer}.table-row-link:hover{background:#ffffff0a}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}@media (max-width: 900px){.detail-grid{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:14px}.card-title{font-weight:700;margin-bottom:10px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.card-head .card-title{margin:0}.kv{display:grid;grid-template-columns:130px 1fr;gap:6px 12px;margin:0}.kv dt{color:var(--muted);font-size:13px}.kv dd{margin:0;overflow-wrap:break-word}.link{color:var(--accent-2)}.note-item{padding:8px 2px;border-bottom:1px solid var(--border);border-radius:4px}.note-item:last-child{border-bottom:none}.form-row{display:flex;gap:10px}.form-row .form-group{flex:1}.modal.modal-wide{max-width:720px}.form-group{margin-bottom:10px;display:flex;flex-direction:column;gap:4px}.form-label{font-size:12.5px;color:var(--muted)}textarea.input{resize:vertical}.tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--border)}.tag-active{background:#34d39926;color:var(--green)}.tag-muted{background:#9ca3af26;color:var(--muted)}.notif-root{position:relative;display:inline-flex}.notif-bell{position:relative;font-size:15px}.notif-badge{position:absolute;top:-6px;right:-8px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;line-height:17px;font-weight:700;text-align:center}.notif-panel{position:absolute;bottom:calc(100% + 8px);left:0;z-index:50;width:320px;max-height:420px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #00000059;padding:8px}.notif-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px 8px;border-bottom:1px solid var(--border);margin-bottom:6px}.notif-panel-title{font-weight:700;font-size:13.5px}.notif-empty{padding:10px 6px}.notif-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:8px 6px;border:none;border-radius:6px;background:transparent;color:var(--text);cursor:pointer}.notif-item:hover{background:#ffffff0d}.notif-item-unread{background:#6366f11f;font-weight:600}.notif-item-title{font-size:13.5px}.notif-item-body{font-size:12.5px;color:var(--muted);font-weight:400}.notif-item-date{font-size:11.5px;font-weight:400}.print-root{padding:20px}.print-toolbar{display:flex;gap:10px;margin-bottom:16px}.print-sheet{width:210mm;max-width:100%;min-height:297mm;margin:0 auto;padding:15mm 12mm;background:#fff;color:#111;font-size:13px;line-height:1.4;box-shadow:0 4px 24px #0006}.print-head{display:flex;justify-content:space-between;gap:10mm;margin-bottom:6mm}.print-party-title{font-weight:700;margin-bottom:2mm}.print-doc{text-align:right;min-width:55mm}.print-doc-title{font-size:20px;font-weight:800;letter-spacing:2px;margin-bottom:3mm}.print-doc-row{margin-bottom:1mm}.print-buyer{margin-bottom:6mm}.print-requisites{border-collapse:collapse}.print-requisites th{text-align:left;font-weight:400;color:#555;padding:.5mm 3mm .5mm 0;white-space:nowrap;vertical-align:top}.print-requisites td{padding:.5mm 0}.print-items{width:100%;border-collapse:collapse;margin-bottom:6mm}.print-items th,.print-items td{border:1px solid #333;padding:1.5mm 2mm}.print-items th{background:#eee;font-weight:600}.print-totals{margin-left:auto;width:80mm;margin-bottom:6mm}.print-total-row{display:flex;justify-content:space-between;gap:4mm;padding:1mm 0}.print-total-grand{font-weight:800;font-size:15px;border-top:1px solid #333;margin-top:1mm;padding-top:1.5mm}.print-notes{margin-bottom:8mm}.print-sign{display:flex;justify-content:space-between;align-items:flex-end;gap:10mm}.print-sign-line{width:70mm;text-align:right}.print-line{border-bottom:1px solid #111;height:8mm}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:6px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:3px}.stat-label{font-size:12.5px;color:var(--muted)}.stat-value{font-size:18px;font-weight:700;letter-spacing:-.3px}.stat-value-red{color:var(--red)}.stat-value-green{color:var(--green)}.rep-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}.rep-head .card-title{margin:0}.rep-empty{padding:4px 0}.margin-positive{color:var(--green)}.margin-negative{color:var(--red)}@media print{.no-print{display:none}body *{visibility:hidden}.print-root,.print-root *{visibility:visible}.print-root{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;background:#fff}.print-sheet{box-shadow:none;margin:0;width:100%;max-width:none;min-height:auto}}.lic-banner{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);color:var(--text);padding:8px 12px;border-radius:10px;margin-bottom:14px;font-size:13.5px}.lic-banner-error{background:#ef44441f;border-color:#ef444466}.lic-activate{display:flex;gap:6px;align-items:center;margin-left:auto}.lic-activate .input{width:240px}:root{--color-primary: oklch(.52 .19 var(--color-primary-hue, 278));--color-on-primary: oklch(1 0 0);--color-primary-hover: oklch(.46 .2 var(--color-primary-hue, 278));--color-primary-active: oklch(.42 .19 var(--color-primary-hue, 278));--color-primary-container: oklch(.9 .05 var(--color-primary-hue, 280));--color-on-primary-container: oklch(.15 .04 var(--color-primary-hue, 280));--color-accent: oklch(.72 .19 45);--color-accent-container: oklch(.94 .06 45);--color-info: oklch(.62 .15 230);--color-info-container: oklch(.93 .04 230);--color-muted: oklch(.55 .01 280);--color-error: oklch(.5 .2 25);--color-on-error: oklch(1 0 0);--color-error-container: oklch(.92 .08 25);--color-success: oklch(.5 .18 145);--color-on-success: oklch(1 0 0);--color-warning: oklch(.7 .18 75);--color-on-warning: oklch(.2 .02 75);--color-warning-text: oklch(.5 .18 75);--color-warning-container: oklch(.92 .06 75);--color-on-warning-container: oklch(.32 .13 60);--color-on-info-container: oklch(.32 .18 230);--bg: oklch(.965 .005 280);--bg-secondary: oklch(.93 .008 280);--bg-tertiary: oklch(.9 .01 280);--text: oklch(.15 .02 280);--text-secondary: oklch(.4 .02 280);--text-tertiary: oklch(.45 .015 280);--border: oklch(.7 .015 280);--surface-0: oklch(.985 .003 280);--surface-1: oklch(1 0 0);--surface-2: oklch(.97 .005 280);--surface-3: oklch(.92 .008 280);--border-subtle: oklch(.78 .009 280);--border-default: oklch(.7 .012 280);--border-strong: oklch(.55 .014 280);--surface: var(--surface-1);--text-muted: var(--text-tertiary);--color-danger: var(--color-error);--priority-high: var(--color-error);--priority-medium: var(--color-primary);--priority-low: var(--color-success);--shadow-sm: 0 1px 2px oklch(0 0 0 / .06), 0 1px 1px oklch(0 0 0 / .04);--shadow-md: 0 4px 6px oklch(0 0 0 / .07), 0 2px 4px oklch(0 0 0 / .06);--shadow-lg: 0 10px 15px oklch(0 0 0 / .1), 0 4px 6px oklch(0 0 0 / .05);--shadow-xl: 0 20px 25px oklch(0 0 0 / .15), 0 8px 10px oklch(0 0 0 / .1);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--font-sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-ui: .875rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.625rem;--text-3xl: 2rem;--leading-tight: 1.1;--leading-normal: 1.5;--leading-relaxed: 1.6;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--sidebar-width: 240px;--toolbar-height: 56px;--content-max-width: 960px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--focus-ring: 2px solid var(--color-primary);--z-sticky: 20;--z-header: 30;--z-nav: 60;--z-fab: 70;--z-dropdown: 90;--z-panel: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 400;--z-backdrop: 1000;--z-skip-link: 9999;--md-editor-height: max(360px, 42vh)}@media (max-width: 768px){:root{--md-editor-height: max(280px, 35vh)}}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-primary: oklch(.7 .15 var(--color-primary-hue, 278));--color-on-primary: oklch(.1 .02 280);--color-primary-hover: oklch(.76 .16 var(--color-primary-hue, 278));--color-primary-active: oklch(.8 .15 var(--color-primary-hue, 278));--color-primary-container: oklch(.25 .08 var(--color-primary-hue, 280));--color-on-primary-container: oklch(.9 .05 var(--color-primary-hue, 280));--color-accent: oklch(.75 .17 45);--color-accent-container: oklch(.3 .08 45);--color-info: oklch(.72 .13 230);--color-info-container: oklch(.28 .07 230);--color-muted: oklch(.6 .01 280);--color-error: oklch(.78 .16 25);--color-on-error: oklch(.15 .03 25);--color-error-container: oklch(.32 .1 25);--color-success: oklch(.65 .15 145);--color-on-success: oklch(.15 .02 145);--color-warning: oklch(.75 .15 75);--color-on-warning: oklch(.2 .02 75);--color-warning-text: oklch(.75 .15 75);--color-warning-container: oklch(.28 .04 75);--color-on-warning-container: oklch(.92 .13 80);--color-on-info-container: oklch(.88 .13 230);--bg: oklch(.12 .006 280);--bg-secondary: oklch(.15 .008 280);--bg-tertiary: oklch(.19 .01 280);--text: oklch(.93 .012 280);--text-secondary: oklch(.72 .014 280);--text-tertiary: oklch(.68 .014 280);--border: oklch(.4 .024 280);--surface-0: oklch(.11 .014 280);--surface-1: oklch(.17 .013 280);--surface-2: oklch(.21 .015 280);--surface-3: oklch(.25 .016 280);--border-subtle: oklch(.38 .019 280);--border-default: oklch(.46 .021 280);--border-strong: oklch(.62 .024 280);--shadow-sm: 0 1px 2px oklch(0 0 0 / .3), 0 1px 1px oklch(0 0 0 / .2);--shadow-md: 0 4px 6px oklch(0 0 0 / .35), 0 2px 4px oklch(0 0 0 / .3);--shadow-lg: 0 10px 15px oklch(0 0 0 / .4), 0 4px 6px oklch(0 0 0 / .35);--shadow-xl: 0 20px 25px oklch(0 0 0 / .5), 0 8px 10px oklch(0 0 0 / .4);--focus-ring: 2px solid var(--color-primary)}}:root[data-theme=dark]{--color-primary: oklch(.7 .15 var(--color-primary-hue, 278));--color-on-primary: oklch(.1 .02 280);--color-primary-hover: oklch(.76 .16 var(--color-primary-hue, 278));--color-primary-active: oklch(.8 .15 var(--color-primary-hue, 278));--color-primary-container: oklch(.25 .08 var(--color-primary-hue, 280));--color-on-primary-container: oklch(.9 .05 var(--color-primary-hue, 280));--color-accent: oklch(.75 .17 45);--color-accent-container: oklch(.3 .08 45);--color-info: oklch(.72 .13 230);--color-info-container: oklch(.28 .07 230);--color-muted: oklch(.6 .01 280);--color-error: oklch(.78 .16 25);--color-on-error: oklch(.15 .03 25);--color-error-container: oklch(.32 .1 25);--color-success: oklch(.65 .15 145);--color-on-success: oklch(.15 .02 145);--color-warning: oklch(.75 .15 75);--color-on-warning: oklch(.2 .02 75);--color-warning-text: oklch(.75 .15 75);--color-warning-container: oklch(.28 .04 75);--color-on-warning-container: oklch(.92 .13 80);--color-on-info-container: oklch(.88 .13 230);--bg: oklch(.12 .006 280);--bg-secondary: oklch(.15 .008 280);--bg-tertiary: oklch(.19 .01 280);--text: oklch(.93 .012 280);--text-secondary: oklch(.72 .014 280);--text-tertiary: oklch(.68 .014 280);--border: oklch(.4 .024 280);--surface-0: oklch(.11 .014 280);--surface-1: oklch(.17 .013 280);--surface-2: oklch(.21 .015 280);--surface-3: oklch(.25 .016 280);--border-subtle: oklch(.38 .019 280);--border-default: oklch(.46 .021 280);--border-strong: oklch(.62 .024 280);--shadow-sm: 0 1px 2px oklch(0 0 0 / .3), 0 1px 1px oklch(0 0 0 / .2);--shadow-md: 0 4px 6px oklch(0 0 0 / .35), 0 2px 4px oklch(0 0 0 / .3);--shadow-lg: 0 10px 15px oklch(0 0 0 / .4), 0 4px 6px oklch(0 0 0 / .35);--shadow-xl: 0 20px 25px oklch(0 0 0 / .5), 0 8px 10px oklch(0 0 0 / .4);--focus-ring: 2px solid var(--color-primary)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-ui, var(--text-base));line-height:var(--leading-normal);color:var(--text);background:var(--bg);overflow:hidden;transition:background-color var(--transition-normal),color var(--transition-normal);font-feature-settings:"cv02","cv03","cv04","ss01";padding-block-end:env(safe-area-inset-bottom,0px)}h1,h2,h3{text-wrap:balance}p,.task-description{text-wrap:pretty;-webkit-hyphens:auto;hyphens:auto}::selection{background:var(--color-primary);color:var(--color-on-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:inherit;line-height:1;transition:background var(--transition-fast),opacity var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);min-height:36px;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(180deg,oklch(.56 .19 278) 0%,var(--color-primary) 100%);color:var(--color-on-primary);box-shadow:inset 0 1px #ffffff26,0 1px 2px #24255e4d;border:1px solid oklch(.42 .17 278)}.btn-primary:hover{background:linear-gradient(180deg,#6768f0,#504bd1);box-shadow:inset 0 1px #fff3,0 2px 6px #24255e59}.btn-primary:active{background:linear-gradient(180deg,var(--color-primary-active, oklch(.42 .19 278)),oklch(.46 .2 278));box-shadow:inset 0 1px #ffffff1a,0 1px 2px #24255e40}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .btn-primary{background:linear-gradient(180deg,oklch(.74 .16 278) 0%,var(--color-primary) 100%);box-shadow:inset 0 1px #ffffff2e,0 1px 2px #3e427266;border:1px solid oklch(.62 .13 278)}:root:not([data-theme=light]) .btn-primary:hover{background:linear-gradient(180deg,#a7b0ff,#9099ff);background:linear-gradient(180deg,color(xyz 0.522 0.458 1.267),color(xyz 0.411 0.36 1.008));box-shadow:inset 0 1px #ffffff38,0 2px 6px #3e427273}}:root[data-theme=dark] .btn-primary{background:linear-gradient(180deg,oklch(.74 .16 278) 0%,var(--color-primary) 100%);box-shadow:inset 0 1px #ffffff2e,0 1px 2px #3e427266;border:1px solid oklch(.62 .13 278)}:root[data-theme=dark] .btn-primary:hover{background:linear-gradient(180deg,#a7b0ff,#9099ff);background:linear-gradient(180deg,color(xyz 0.522 0.458 1.267),color(xyz 0.411 0.36 1.008));box-shadow:inset 0 1px #ffffff38,0 2px 6px #3e427273}.btn-danger{background:var(--color-error);color:var(--color-on-error)}.btn-danger:hover{opacity:.9}.btn.btn-sm.btn-danger{background:transparent;color:var(--text-tertiary);border:1px solid transparent}.btn.btn-sm.btn-danger:hover{background:var(--color-error-container);color:color-mix(in srgb,var(--color-error) 60%,var(--text));opacity:1}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;pointer-events:none}.welcome-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#0006;display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.welcome-dialog{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:var(--space-xl);max-width:560px;width:100%}.welcome-title{margin:0 0 var(--space-xs);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text)}.welcome-subtitle{margin:0 0 var(--space-lg);font-size:var(--text-ui);color:var(--text-secondary)}.welcome-scenarios{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-sm);margin-block-end:var(--space-lg)}.welcome-scenario{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast)}.welcome-scenario:hover{border-color:var(--border-strong);background:var(--surface-2)}.welcome-scenario:focus-visible{outline:var(--focus-ring);outline-offset:2px}.welcome-scenario-active{border-color:var(--color-primary);background:var(--color-primary-container)}.welcome-scenario-icon{font-size:var(--text-xl)}.welcome-scenario-label{font-size:var(--text-base);font-weight:var(--weight-semibold)}.welcome-scenario-hint{font-size:var(--text-sm);color:var(--text-secondary)}.welcome-buttons{display:flex;justify-content:space-between;gap:var(--space-sm)}@media (max-width: 640px){.welcome-scenarios{grid-template-columns:1fr 1fr}.welcome-buttons{flex-direction:column-reverse}}.onboarding-popup{position:fixed;max-width:320px;pointer-events:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:var(--space-lg)}.onboarding-popup h3{margin:0 0 var(--space-sm);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text)}.onboarding-popup p{margin:0 0 var(--space-md);font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.onboarding-buttons{display:flex;justify-content:flex-end;gap:var(--space-sm)}.btn-ghost{background:var(--bg-tertiary);color:var(--text)}.btn-ghost:hover{background:var(--border)}.btn-sm{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs);min-height:28px}.btn-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:var(--bg-tertiary);cursor:pointer;font-size:var(--text-md);color:var(--text);transition:background var(--transition-fast),transform var(--transition-fast)}.btn-icon:focus-visible{outline:var(--focus-ring);outline-offset:2px}.btn-icon:active{transform:scale(.98)}.btn-icon:disabled{opacity:.55;cursor:not-allowed}.btn-icon:hover{background:var(--border)}.card:focus-visible,.task-card:focus-visible,.btn-icon:focus-visible,.nav-item:focus-visible{outline:var(--focus-ring);outline-offset:2px}@media (hover: hover) and (prefers-reduced-motion: no-preference){.card:hover,.task-card:hover{transform:translateY(-1px)}}.input,.textarea,.select{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--text-ui);font-family:inherit;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);line-height:var(--leading-normal)}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-container)}.input:not(:focus):not(:disabled):hover,.textarea:not(:focus):not(:disabled):hover,.select:not(:focus):not(:disabled):hover{border-color:var(--border-strong)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.textarea{resize:vertical;min-height:120px}.select{-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' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-inline-end:32px;cursor:pointer}.form-group{margin-block-end:var(--space-lg)}.form-label{display:block;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-tertiary);margin-block-end:var(--space-xs);text-transform:none;letter-spacing:0}.password-wrapper{position:relative}.password-wrapper .input{padding-inline-end:44px}.password-toggle{position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);padding:4px 8px;min-height:auto;font-size:var(--text-md);line-height:1;border:none;background:none;cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-xs)}.password-toggle:hover{color:var(--text)}.password-toggle:focus-visible{outline:var(--focus-ring);outline-offset:2px}.input-error{border-color:var(--color-error)!important;box-shadow:0 0 0 2px #bb061e26!important}.field-error{display:block;font-size:var(--text-xs);color:var(--color-error);margin-block-start:var(--space-xs)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .15s ease-out;overscroll-behavior:contain}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;padding:0;margin:0;border:none;background:#0006;cursor:pointer;z-index:49;animation:fadeIn .15s ease-out;-moz-appearance:none;appearance:none;-webkit-appearance:none}.modal{background:var(--bg);border-radius:var(--radius-md);padding:var(--space-xl);width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:modalEnter .2s ease-out;border:1px solid var(--border)}@keyframes modalEnter{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin-block-end:var(--space-lg)}.modal-actions{display:flex;gap:var(--space-sm);justify-content:flex-end;margin-block-start:var(--space-xl)}.tag{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-xs);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.4;min-height:24px;transition:filter var(--transition-fast),transform var(--transition-fast)}.auth-screen{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;background:var(--bg)}.auth-box{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-2xl);width:min(340px,90vw);text-align:center;box-shadow:var(--shadow-md)}.auth-box h1{font-size:var(--text-2xl);font-weight:var(--weight-bold);margin-block-end:var(--space-sm)}.auth-box p{color:var(--text-secondary);margin-block-end:var(--space-xl);font-size:var(--text-sm)}.auth-error{color:var(--color-error);font-size:var(--text-sm);margin-block-end:var(--space-md);padding:var(--space-sm);background:var(--color-error-container);border-radius:var(--radius-sm)}.error-boundary-box{text-align:center}.error-boundary-title{font-size:var(--text-xl);margin-block-end:var(--space-sm)}.error-boundary-text{color:var(--text-secondary);margin:12px 0;font-size:var(--text-md)}.empty-state{text-align:center;padding:var(--space-3xl) var(--space-xl);color:var(--text-secondary);animation:slideUp .25s ease-out}.empty-state-icon{font-size:3rem;margin-block-end:var(--space-md);display:block;opacity:.85}:root{--accent: var(--color-primary);--amber: var(--color-accent);--green: var(--color-success);--red: var(--color-error);--muted: var(--text-secondary);--radius: 10px;--border: var(--border-default)}
