:root{--slate-800: #1e293b;--slate-200: #e2e8f0;--slate-400: #94a3b8;--color-white: #ffffff;--slate-500: #64748b;--blue-500: #3b82f6;--slate-100: #f1f5f9;--blue-600: #2563eb;--slate-50: #f8fafc;--slate-300: #cbd5e1;--slate-600: #475569;--green-500: #22c55e;--red-100: #fee2e2;--red-700: #b91c1c;--amber-500: #f59e0b;--blue-50: #eff6ff;--red-600: #dc2626;--red-500: #ef4444;--slate-700: #334155;--red-300: #fca5a5;--blue-700: #1d4ed8;--emerald-700: #047857;--amber-700: #b45309;--indigo-500: #6366f1;--amber-50: #fffbeb;--violet-600: #7c3aed;--teal-600: #0d9488;--green-50: #f0fdf4;--blue-100: #dbeafe;--blue-200: #bfdbfe;--green-800: #166534;--amber-100: #fef3c7;--red-200: #fecaca;--emerald-100: #d1fae5;--green-600: #16a34a;--green-700: #15803d;--red-50: #fef2f2;--indigo-50: #eef2ff;--slate-tint-custom: #eef2f6;--emerald-50: #ecfdf5;--green-100: #dcfce7;--amber-800: #92400e;--violet-700: #6d28d9;--gray-700: #374151;--emerald-500: #10b981;--teal-700: #0f766e;--slate-900: #0f172a;--radius-6: 6px;--radius-10: 10px;--radius-8: 8px;--radius-4: 4px;--radius-5: 5px;--radius-7: 7px;--radius-full: 50%;--radius-2: 2px;--radius-16: 16px;--radius-3: 3px;--radius-12: 12px;--radius-14: 14px;--radius-20: 20px;--shadow-card: 0 1px 4px rgba(0, 0, 0, .07);--shadow-focus-blue: 0 0 0 3px rgba(59, 130, 246, .15);--shadow-button-primary: 0 2px 6px rgba(37, 99, 235, .35);--shadow-modal: 0 20px 60px rgba(0,0,0,.2);--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .06);--shadow-focus-blue-soft: 0 0 0 3px rgba(59, 130, 246, .12);--shadow-popover: 0 8px 32px rgba(15, 23, 42, .2);--shadow-button-primary-lg: 0 2px 8px rgba(37, 99, 235, .35);--shadow-button-success-alt: 0 2px 6px rgba(5, 150, 105, .35);--shadow-button-success: 0 2px 6px rgba(22, 163, 74, .35);--shadow-button-danger: 0 2px 6px rgba(220, 38, 38, .35);--shadow-button-violet: 0 2px 6px rgba(124, 58, 237, .35);--shadow-modal-lg: 0 24px 60px -20px rgba(0, 0, 0, .45);--shadow-warning: 0 1px 3px rgba(245, 158, 11, .12);--shadow-subtle-alt: 0 1px 3px rgba(0, 0, 0, .1);--shadow-subtle: 0 1px 3px rgba(0,0,0,.06);--shadow-focus-indigo: 0 0 0 2px rgba(99,102,241,.15);--shadow-focus-blue-2: 0 0 0 2px rgba(59, 130, 246, .15);--shadow-focus-amber: 0 0 0 2px rgba(245, 158, 11, .2);--text-0875rem: .875rem;--text-08rem: .8rem;--text-085rem: .85rem;--text-09rem: .9rem;--text-075rem: .75rem;--text-072rem: .72rem;--text-13px: 13px;--text-07rem: .7rem;--text-11px: 11px;--text-078rem: .78rem;--text-095rem: .95rem;--text-11rem: 1.1rem;--text-105rem: 1.05rem;--text-12px: 12px;--text-082rem: .82rem;--text-074rem: .74rem;--text-15rem: 1.5rem;--text-10px: 10px;--text-068rem: .68rem;--text-1rem: 1rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5;color:var(--slate-800);background:#f5f7fa;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;min-height:100vh;max-width:1100px;margin:0 auto;padding:24px 20px 40px;gap:16px}.app-header{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);padding:16px 24px;box-shadow:var(--shadow-subtle);display:flex;align-items:center;justify-content:space-between}.app-header h1{color:var(--blue-500);font-size:1.4rem;font-weight:600;letter-spacing:-.01em}.app-logo{display:flex;flex-direction:column;line-height:1.1}.app-logo-do{font-style:italic;font-size:var(--text-15rem);font-weight:700;color:var(--blue-500)}.app-logo-plan{font-size:var(--text-085rem);font-weight:500;color:var(--slate-500);letter-spacing:.08em;text-transform:uppercase}.app-main{flex:1;display:flex;flex-direction:column;gap:16px}.app-center{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f5f7fa;color:var(--slate-500);font-size:var(--text-095rem)}.app-error{color:var(--red-600);font-weight:500}.save-error{background:var(--red-100);color:var(--red-600);border:1px solid var(--red-300);border-radius:var(--radius-6);padding:8px 14px;font-size:var(--text-085rem);font-weight:500}.task-table-wrapper{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);overflow:hidden}table{width:100%;border-collapse:collapse}thead th{background:var(--slate-100);color:var(--slate-500);font-size:var(--text-07rem);font-weight:600;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 12px;border-bottom:1px solid var(--slate-200);white-space:nowrap}thead th:nth-child(1){width:30%}thead th:nth-child(2){width:130px}thead th:nth-child(3){width:70px}thead th:nth-child(4){width:70px}thead th:nth-child(5){width:70px}thead th:nth-child(6){width:70px}thead th:nth-child(7){width:56px;text-align:center}thead th:nth-child(8){width:56px;text-align:center}tbody tr{border-bottom:1px solid var(--slate-100);transition:background .1s ease}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--slate-50)}tbody tr.row--conflict{background:var(--amber-50)}tbody tr.row--conflict td:first-child{border-left:3px solid var(--amber-500)}tbody tr.row--conflict:hover{background:var(--amber-100)}td{padding:6px 12px;vertical-align:middle}td input[type=text],td input[type=number],td input[type=date]{width:100%;border:none;background:transparent;padding:4px 6px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);border-radius:var(--radius-4);outline:none;transition:box-shadow .15s ease,background .15s ease}td input[type=text]:focus,td input[type=number]:focus,td input[type=date]:focus{background:var(--blue-50);box-shadow:0 0 0 2px var(--blue-500)}td input[type=text]::placeholder{color:var(--slate-400)}td input[type=number]::-webkit-inner-spin-button,td input[type=number]::-webkit-outer-spin-button{opacity:.4}td input[type=checkbox]{display:block;margin:0 auto;width:15px;height:15px;cursor:pointer;accent-color:var(--blue-500)}td button{display:block;margin:0 auto;border:none;background:transparent;color:var(--red-500);font-size:var(--text-11rem);line-height:1;padding:2px 6px;border-radius:var(--radius-4);cursor:pointer;transition:color .15s ease,background .15s ease}td button:hover{color:var(--red-700);background:var(--red-100)}.task-row-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:none;background:transparent;color:var(--slate-500);font-size:var(--text-07rem);line-height:1;padding:0;border-radius:var(--radius-4);cursor:pointer;transition:color .15s ease,background .15s ease}.task-row-expand-btn:hover{color:var(--slate-800);background:var(--slate-100)}.task-description-row td{padding:0 12px 10px;background:var(--slate-50);border-bottom:1px solid var(--slate-200)}.task-description-textarea{width:100%;border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:8px 10px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.task-description-textarea:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.task-unlinked-badge{flex-shrink:0;white-space:nowrap;background:var(--slate-100);color:var(--slate-500);font-size:var(--text-068rem);font-weight:600;letter-spacing:.02em;padding:1px 7px;border-radius:var(--radius-10)}.task-goal-link-row{display:flex;gap:16px;margin-top:8px}.task-goal-link-row label{display:flex;flex-direction:column;gap:3px;font-size:var(--text-072rem);font-weight:600;color:var(--slate-500)}.task-goal-link-row select{font-family:inherit;font-size:var(--text-0875rem);font-weight:400;color:var(--slate-800);border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:5px 8px;background:var(--color-white)}.task-description-textarea::placeholder{color:var(--slate-400)}form{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:flex-start;padding:14px 16px;border-top:1px solid var(--slate-200);background:var(--slate-50)}form>div{display:flex;flex-direction:column;gap:3px;flex:1 1 auto;min-width:120px}form>div:first-child{flex:3 1 180px}form input[type=text],form input[type=number],form input[type=date]{border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:7px 10px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}form input[type=text]:focus,form input[type=number]:focus,form input[type=date]:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}form input::placeholder{color:var(--slate-400)}form select{border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:7px 10px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;width:100%;transition:border-color .15s ease,box-shadow .15s ease}form select:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}form div.add-task-goal-field{flex:0 1 200px}.form-error{font-size:var(--text-075rem);color:var(--red-600);font-weight:500;line-height:1.3}form button[type=submit]{align-self:flex-start;margin-top:0;padding:8px 18px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s ease,box-shadow .15s ease;line-height:1.5}form button[type=submit]:hover{background:var(--blue-600);box-shadow:var(--shadow-button-primary)}form button[type=submit]:active{background:var(--blue-700)}.conflict-panel{background:var(--amber-50);border:1px solid var(--amber-500);border-radius:var(--radius-10);padding:14px 18px;box-shadow:var(--shadow-warning)}.conflict-panel h2{color:var(--amber-800);font-size:var(--text-09rem);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.conflict-panel ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.conflict-panel li{font-size:var(--text-0875rem);color:#44403c;padding:3px 0}.conflict-panel li:before{content:"⚠ ";color:var(--amber-500);font-size:var(--text-08rem)}.app-tabs{display:flex;gap:4px}.tab-btn{padding:6px 16px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:transparent;color:var(--slate-500);font-size:var(--text-0875rem);font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.tab-btn:hover{background:var(--slate-100);color:var(--slate-800)}.tab-btn--active{background:var(--blue-500);color:var(--color-white);border-color:var(--blue-500)}.tab-btn--active:hover{background:var(--blue-600)}.ai-coach-container{display:flex;flex-direction:column;gap:12px}.ai-coach-sub-tabs{display:flex;gap:6px;flex-wrap:wrap}.ai-coach-sub-tab-btn{padding:6px 18px;border:1px solid var(--slate-200);border-radius:var(--radius-20);background:var(--color-white);color:var(--slate-500);font-size:var(--text-0875rem);font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.ai-coach-sub-tab-btn:hover{background:var(--slate-100);color:var(--slate-800)}.ai-coach-sub-tab-btn--active{background:var(--blue-500);color:var(--color-white);border-color:var(--blue-500)}.ai-coach-sub-tab-btn--active:hover{background:var(--blue-600)}.gantt-wrapper{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);overflow:hidden;padding:16px}.gantt--empty{display:flex;align-items:center;justify-content:center;min-height:120px;color:var(--slate-400);font-size:var(--text-095rem)}.gantt-scroll{overflow-x:auto;font-size:var(--text-08rem)}.gantt-inner{display:flex;flex-direction:column;min-width:max-content}.gantt-header-row{display:flex;position:sticky;top:0;z-index:3;background:var(--color-white)}.gantt-label-cell{position:sticky;left:0;z-index:2;background:var(--color-white);width:180px;flex-shrink:0}.gantt-label-cell--header{z-index:4}.gantt-days-header{display:grid;border-bottom:1px solid var(--slate-200);flex:1}.gantt-day-header{padding:4px 2px;text-align:center;color:var(--slate-500);font-size:var(--text-07rem);border-right:1px solid var(--slate-100);white-space:nowrap;overflow:hidden}.gantt-row{display:flex}.gantt-label-cell--row{height:36px;display:flex;align-items:center;padding:0 8px 0 0;color:var(--slate-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--slate-100)}.gantt-timeline{display:grid;position:relative;flex:1}.gantt-conflict-col{background:var(--red-100);opacity:.5;pointer-events:none}.gantt-bar{height:22px;margin:7px 2px;border-radius:var(--radius-4);background:var(--blue-500);z-index:1;align-self:center}.gantt-bar--completed{background:var(--slate-400)}.gantt-cell{height:36px;border-right:1px solid var(--slate-100);border-bottom:1px solid var(--slate-100)}.timer-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;align-items:center;gap:20px}.timer-title{font-size:var(--text-11rem);font-weight:600;color:var(--slate-800);align-self:flex-start}.timer-schedule-suggestion{width:100%;max-width:400px;display:flex;align-items:center;gap:12px;background:var(--blue-50);border:1px solid var(--blue-200);border-radius:var(--radius-8);padding:10px 14px}.timer-schedule-suggestion-label{font-size:var(--text-07rem);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-600);white-space:nowrap;flex-shrink:0}.timer-schedule-suggestion-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.timer-schedule-suggestion-time{font-size:var(--text-075rem);font-weight:700;color:var(--blue-500);font-variant-numeric:tabular-nums}.timer-schedule-suggestion-action{font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-schedule-suggestion-task{font-size:var(--text-075rem);color:var(--slate-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-schedule-suggestion-actions{display:flex;flex-direction:column;gap:5px;flex-shrink:0}.timer-schedule-suggestion-btn{padding:5px 14px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-08rem);font-weight:600;font-family:inherit;cursor:pointer;flex-shrink:0;transition:background .15s ease}.timer-schedule-suggestion-btn:hover{background:var(--blue-600)}.timer-schedule-suggestion-btn--focus{background:var(--violet-600)}.timer-schedule-suggestion-btn--focus:hover{background:var(--violet-700)}.timer-task-select{width:100%;max-width:400px;padding:8px 12px;border:1px solid var(--slate-300);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.timer-task-select:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.timer-task-select:disabled{background:var(--slate-100);color:var(--slate-400);cursor:not-allowed}.timer-display{font-size:3.5rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--slate-800);letter-spacing:.04em;padding:16px 32px;background:var(--slate-50);border:2px solid var(--slate-200);border-radius:var(--radius-12);min-width:200px;text-align:center}.timer-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.timer-btn{padding:10px 24px;border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,opacity .15s ease}.timer-btn:disabled{opacity:.45;cursor:not-allowed}.timer-btn--start{background:var(--green-500);color:var(--color-white)}.timer-btn--start:hover:not(:disabled){background:var(--green-600);box-shadow:var(--shadow-button-success)}.timer-btn--stop{background:var(--red-500);color:var(--color-white)}.timer-btn--stop:hover:not(:disabled){background:var(--red-600);box-shadow:var(--shadow-button-danger)}.timer-btn--preset{background:var(--blue-500);color:var(--color-white)}.timer-btn--preset:hover:not(:disabled){background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.timer-break-label{display:block;font-size:var(--text-075rem);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--amber-500);margin-top:4px}.timer-completion-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:100}.timer-completion-dialog{background:var(--color-white);border-radius:var(--radius-14);padding:32px 40px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:var(--shadow-popover);min-width:260px}.timer-completion-title{font-size:var(--text-11rem);font-weight:700;color:var(--slate-800);margin:0 0 4px}.timer-completion-btn{width:100%;padding:11px 24px;border:none;border-radius:var(--radius-7);font-size:var(--text-09rem);font-weight:600;font-family:inherit;cursor:pointer;background:var(--blue-500);color:var(--color-white);transition:background .15s ease,box-shadow .15s ease}.timer-completion-btn:hover{background:var(--blue-600);box-shadow:var(--shadow-button-primary-lg)}.timer-completion-btn--stop{background:var(--slate-100);color:var(--slate-500)}.timer-completion-btn--stop:hover{background:var(--slate-200);box-shadow:none}.timer-log{width:100%;max-width:400px;border-top:1px solid var(--slate-200);padding-top:16px}.timer-log-title{font-size:var(--text-09rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.timer-log p{color:var(--slate-400);font-size:var(--text-0875rem)}.timer-log-entry{font-size:var(--text-0875rem);color:var(--slate-800);padding:4px 0}.timer-log-total{font-size:var(--text-0875rem);font-weight:600;color:var(--slate-800);padding-top:8px;margin-top:8px;border-top:1px solid var(--slate-200)}.timer-achievements{width:100%;border-top:1px solid var(--slate-200);padding-top:16px;margin-top:4px}.timer-achievements-title{font-size:var(--text-09rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.timer-achievements-input-row{display:flex;gap:6px;margin-bottom:10px}.timer-achievements-input{flex:1;padding:7px 10px;border:1px solid var(--slate-300);border-radius:var(--radius-6);font-size:var(--text-0875rem);color:var(--slate-800);background:var(--color-white);outline:none;transition:border-color .15s ease}.timer-achievements-input:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue-2)}.timer-achievements-input::placeholder{color:var(--slate-400)}.timer-achievements-add-btn{padding:7px 14px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:500;cursor:pointer;transition:background .15s ease;white-space:nowrap}.timer-achievements-add-btn:hover:not(:disabled){background:var(--blue-600)}.timer-achievements-add-btn:disabled{opacity:.45;cursor:not-allowed}.timer-achievements-list{list-style:none;margin:0;padding:0;background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);overflow:hidden}.timer-achievements-item{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--slate-200);transition:background .1s ease}.timer-achievements-item:last-child{border-bottom:none}.timer-achievements-item:hover{background:var(--slate-100)}.timer-achievements-time{font-size:var(--text-08rem);font-weight:700;color:var(--blue-500);font-variant-numeric:tabular-nums;min-width:34px;flex-shrink:0}.timer-achievements-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.timer-achievements-text{font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-achievements-meta{font-size:var(--text-078rem);color:var(--slate-400)}.timer-achievements-remove{background:none;border:none;color:var(--slate-400);font-size:var(--text-075rem);cursor:pointer;padding:2px 4px;border-radius:var(--radius-4);flex-shrink:0;line-height:1;transition:color .15s ease,background .15s ease}.timer-achievements-remove:hover{color:var(--red-500);background:var(--red-100)}.timer-achievements-empty{color:var(--slate-400);font-size:var(--text-0875rem)}.settings-layout{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}.settings-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;max-width:480px;flex:0 1 480px}.settings-diagnostics-box{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:18px;flex:1 1 240px;min-width:220px;max-width:360px;position:sticky;top:24px}.settings-title{font-size:var(--text-11rem);font-weight:600;color:var(--slate-800);margin-bottom:20px}.settings-subtitle{font-size:var(--text-095rem);font-weight:600;color:var(--slate-700);margin:20px 0 8px}.settings-hint{font-size:var(--text-08rem);color:var(--slate-500);line-height:1.45;margin:0 0 12px}.settings-field--checkbox .settings-label{flex-direction:row;align-items:center;gap:8px;text-transform:none;letter-spacing:normal;cursor:pointer}.settings-field--checkbox input[type=checkbox]{width:auto}.diagnostics-list{max-height:320px;overflow-y:auto;border:1px solid var(--slate-200);border-radius:var(--radius-6);margin-bottom:8px}.diagnostics-row{padding:6px 10px;border-bottom:1px solid var(--slate-100);font-size:var(--text-075rem)}.diagnostics-row:last-child{border-bottom:none}.diagnostics-row--flagged{background:var(--amber-50)}.diagnostics-row-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.diagnostics-row-title{color:var(--slate-700);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diagnostics-row-detail{color:var(--slate-400);font-size:var(--text-07rem);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diagnostics-score{color:var(--slate-400)}.diagnostics-margin{font-variant-numeric:tabular-nums;color:var(--slate-500);flex-shrink:0}.diagnostics-row--flagged .diagnostics-margin{color:var(--amber-700);font-weight:600}.diagnostics-fallback-mark{color:var(--slate-400);margin-left:2px;cursor:help}.settings-error{color:var(--red-600);font-size:var(--text-085rem);font-weight:500;margin-bottom:12px}.settings-field{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.settings-label{font-size:var(--text-08rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.04em}.settings-input{border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:8px 12px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.settings-input:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.settings-save-btn{padding:8px 24px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.settings-save-btn:hover{background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.settings-save-btn:active{background:var(--blue-700)}.cal-sources-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.cal-source-row{display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-6);font-size:var(--text-085rem)}.cal-source-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.cal-source-name{flex:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-source-error{color:var(--red-500);font-size:var(--text-075rem)}.cal-source-synced{color:var(--green-500);font-size:var(--text-075rem)}.cal-source-delete{background:none;border:1px solid var(--slate-200);border-radius:var(--radius-4);padding:2px 8px;font-size:var(--text-075rem);cursor:pointer;color:var(--slate-500)}.cal-source-delete:hover{background:var(--red-100);color:var(--red-500);border-color:var(--red-300)}.cal-add-form{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.gcal-status{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--green-50);border:1px solid #bbf7d0;border-radius:var(--radius-8);font-size:var(--text-085rem);color:var(--green-800);margin-bottom:8px}.gcal-status__dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green-500);margin-right:6px}.gcal-status__calendar{font-size:var(--text-08rem);color:var(--green-800);display:flex;align-items:center;gap:6px}.gcal-status__badge{font-size:var(--text-07rem);background:#3f51b5;color:var(--color-white);border-radius:var(--radius-4);padding:1px 5px;font-weight:500}.gcal-disconnect-btn{align-self:flex-start;margin-top:4px;background:var(--red-100)!important;color:var(--red-700)!important;border-color:var(--red-300)!important}.gcal-disconnect-btn:hover{background:var(--red-200)!important}.archive-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:16px 20px}.archive-title{font-size:var(--text-1rem);font-weight:600;color:var(--slate-800);margin-bottom:12px}.archive-empty{color:var(--slate-400);font-size:var(--text-095rem);padding:24px 0;text-align:center}.archive-table{width:100%;border-collapse:collapse}.archive-table thead th{background:var(--slate-100);color:var(--slate-500);font-size:var(--text-07rem);font-weight:600;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 12px;border-bottom:1px solid var(--slate-200);white-space:nowrap}.archive-table tbody tr{border-bottom:1px solid var(--slate-100);transition:background .1s ease}.archive-table tbody tr:last-child{border-bottom:none}.archive-table tbody tr:hover{background:var(--slate-50)}.archive-table td{padding:8px 12px;vertical-align:middle;font-size:var(--text-0875rem);color:var(--slate-800)}.archive-restore-btn{padding:4px 12px;border:1px solid var(--blue-500);border-radius:var(--radius-4);background:transparent;color:var(--blue-500);font-size:var(--text-08rem);font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.archive-restore-btn:hover{background:var(--blue-500);color:var(--color-white)}.progress-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px}.progress-title{font-size:var(--text-11rem);font-weight:600;color:var(--slate-800);margin-bottom:20px}.progress-empty{color:var(--slate-400);font-size:var(--text-095rem);text-align:center;padding:24px 0}.progress-item{margin-bottom:20px}.progress-item:last-child{margin-bottom:0}.progress-item-title{font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800);margin-bottom:6px}.progress-bar-container{width:100%;height:24px;background:var(--slate-200);border-radius:var(--radius-6);overflow:hidden}.progress-bar-fill{height:100%;background:var(--green-500);border-radius:var(--radius-6) 0 0 var(--radius-6);transition:width .3s ease}.progress-bar-label{font-size:var(--text-08rem);color:var(--slate-500);margin-top:4px}.daily-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px}.daily-title{font-size:var(--text-11rem);font-weight:600;color:var(--slate-800);margin-bottom:16px}.daily-summary{display:flex;gap:24px;margin-bottom:24px;padding:12px 16px;background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8)}.daily-summary-item{font-size:var(--text-0875rem);color:var(--slate-800)}.daily-summary-item strong{font-weight:600}.daily-empty{color:var(--slate-400);font-size:var(--text-095rem);text-align:center;padding:24px 0}.daily-item{margin-bottom:20px}.daily-item:last-child{margin-bottom:0}.daily-item-title{font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800);margin-bottom:6px}.daily-bar-container{width:100%;height:24px;background:var(--slate-200);border-radius:var(--radius-6);overflow:hidden}.daily-bar-fill{height:100%;background:var(--green-500);border-radius:var(--radius-6) 0 0 var(--radius-6);transition:width .3s ease}.daily-bar-label{font-size:var(--text-08rem);color:var(--slate-500);margin-top:4px}.progress-complete-badge{font-size:var(--text-075rem);color:var(--green-500);font-weight:600;margin-top:2px}.cal-wrapper{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);overflow:hidden;display:flex;flex-direction:column}.cal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--slate-200);background:var(--slate-50);flex-shrink:0}.cal-header-nav{display:flex;align-items:center;gap:6px}.cal-nav-btn{padding:5px 10px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:var(--color-white);color:var(--slate-800);font-size:var(--text-09rem);font-family:inherit;cursor:pointer;line-height:1;transition:background .12s ease,border-color .12s ease}.cal-nav-btn:hover{background:var(--slate-100);border-color:var(--slate-300)}.cal-nav-btn--today{font-size:var(--text-08rem);font-weight:600}.cal-period-label{font-size:var(--text-095rem);font-weight:600;color:var(--slate-800);margin-left:8px}.cal-view-switcher{display:flex;gap:2px;background:var(--slate-200);border-radius:var(--radius-7);padding:2px}.cal-view-btn{padding:4px 12px;border:none;border-radius:var(--radius-5);background:transparent;color:var(--slate-500);font-size:var(--text-08rem);font-weight:500;font-family:inherit;cursor:pointer;transition:background .12s ease,color .12s ease}.cal-view-btn:hover{color:var(--slate-800)}.cal-view-btn--active{background:var(--color-white);color:var(--slate-800);box-shadow:var(--shadow-subtle-alt)}.cal-month{flex:1}.cal-weekday-header{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--slate-200)}.cal-weekday-label{padding:8px 4px;text-align:center;font-size:var(--text-072rem);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-400)}.cal-month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,auto)}.cal-day-cell{min-height:90px;border-right:1px solid var(--slate-100);border-bottom:1px solid var(--slate-100);padding:5px 6px 4px;cursor:pointer;transition:background .1s ease;display:flex;flex-direction:column;gap:2px;overflow:hidden}.cal-day-cell:nth-child(7n){border-right:none}.cal-day-cell:hover{background:var(--slate-50)}.cal-day-cell--today{background:var(--blue-50)}.cal-day-cell--today:hover{background:var(--blue-100)}.cal-day-cell--other{background:#fafafa}.cal-day-cell--other .cal-day-num{color:var(--slate-300)}.cal-day-num{font-size:var(--text-08rem);font-weight:500;color:var(--slate-500);line-height:1;margin-bottom:2px;flex-shrink:0}.cal-day-num--today{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:var(--blue-500);color:var(--color-white);border-radius:50%;font-weight:700}.cal-chip{display:block;padding:1px 5px;border-radius:var(--radius-3);font-size:var(--text-07rem);font-weight:500;color:var(--color-white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;line-height:1.5}.cal-chip--done{background:var(--green-500)!important}.cal-chip--more{background:var(--slate-200)!important;color:var(--slate-500)}.cal-chip--event{background:#0891b2!important;opacity:.9}.cal-hours-bar-wrap{margin-top:auto;padding-top:3px;display:flex;align-items:center;gap:4px;min-height:14px}.cal-hours-bar-fill{flex:1;height:4px;background:#93c5fd;border-radius:var(--radius-2);min-width:0}.cal-hours-bar-fill--full{background:var(--green-500)}.cal-hours-badge{font-size:.65rem;color:var(--slate-500);white-space:nowrap;flex-shrink:0}.cal-grid-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.cal-grid-header{display:grid;border-bottom:2px solid var(--slate-200);flex-shrink:0}.cal-time-gutter-header{border-right:1px solid var(--slate-200)}.cal-col-header{padding:8px 6px 6px;border-right:1px solid var(--slate-100);display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;transition:background .1s ease}.cal-col-header:last-child{border-right:none}.cal-col-header:hover{background:var(--slate-50)}.cal-col-header--today{background:var(--blue-50)}.cal-col-day-name{font-size:var(--text-07rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400)}.cal-col-day-num{font-size:var(--text-085rem);font-weight:600;color:var(--slate-800);line-height:1}.cal-col-day-num--today{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--blue-500);color:var(--color-white);border-radius:50%}.cal-col-hours-tag{font-size:var(--text-068rem);color:var(--slate-500)}.cal-col-fill-bar{width:80%;height:3px;background:var(--slate-200);border-radius:var(--radius-2);overflow:hidden}.cal-col-fill-inner{height:100%;background:#93c5fd;border-radius:var(--radius-2);transition:width .2s ease}.cal-col-fill-inner--full{background:var(--green-500)}.cal-allday-row{display:grid;border-bottom:1px solid var(--slate-200);flex-shrink:0}.cal-allday-label{font-size:.65rem;font-weight:600;color:var(--slate-400);text-transform:uppercase;letter-spacing:.04em;padding:4px 6px;border-right:1px solid var(--slate-200);display:flex;align-items:center;justify-content:flex-end}.cal-allday-cell{padding:4px 3px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--slate-100);min-height:28px}.cal-allday-cell:last-child{border-right:none}.cal-day-task-list{display:flex;flex-direction:column;gap:4px;padding:8px 12px;border-bottom:1px solid var(--slate-200);flex-shrink:0}.cal-day-task-row{display:flex;align-items:center;gap:10px;padding:5px 10px;border-left:3px solid var(--blue-500);background:var(--slate-50);border-radius:0 var(--radius-5) var(--radius-5) 0}.cal-day-task-name{flex:1;font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-day-task-meta{font-size:var(--text-075rem);color:var(--slate-400);white-space:nowrap}.cal-day-start-btn{padding:3px 10px;border:1px solid var(--green-500);border-radius:var(--radius-4);background:transparent;color:var(--green-500);font-size:var(--text-075rem);font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease}.cal-day-start-btn:hover{background:var(--green-500);color:var(--color-white)}.cal-time-scroll{flex:1;overflow-y:auto}.cal-time-grid{display:grid;min-height:max-content}.cal-hour-gutter{border-right:1px solid var(--slate-200);display:flex;flex-direction:column}.cal-hour-label{height:48px;font-size:.65rem;color:var(--slate-400);text-align:right;padding:2px 6px 0 0;flex-shrink:0;line-height:1;-webkit-user-select:none;user-select:none}.cal-hour-col{position:relative;border-right:1px solid var(--slate-100)}.cal-hour-col:last-child{border-right:none}.cal-hour-col--today{background:#eff6ff80}.cal-hour-cell{height:48px;border-bottom:1px solid var(--slate-100);flex-shrink:0}.cal-time-block{position:absolute;left:2px;right:2px;border-radius:var(--radius-4);opacity:.9;overflow:hidden;display:flex;align-items:flex-start;padding:2px 4px;cursor:default}.cal-time-block:hover{opacity:1;z-index:1}.cal-time-block--event{background:#0891b2;left:4px;right:4px;border-left:3px solid #0e7490}.cal-time-block-label{font-size:.65rem;color:var(--color-white);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.cal-day-view-layout{display:flex;gap:16px;align-items:flex-start}.cal-day-content{flex:1;min-width:0}.cal-day-detail{width:320px;flex-shrink:0;background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:16px;display:flex;flex-direction:column;gap:0}.cal-day-detail-date{font-size:var(--text-09rem);font-weight:600;color:var(--slate-800);padding-bottom:12px;border-bottom:1px solid var(--slate-200);margin-bottom:0}.cal-day-detail-section{padding:12px 0;border-bottom:1px solid var(--slate-100)}.cal-day-detail-section:last-child{border-bottom:none}.cal-day-detail-section-label{font-size:var(--text-068rem);font-weight:600;color:var(--slate-400);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px}.cal-day-detail-empty{font-size:var(--text-08rem);color:var(--slate-400);font-style:italic;margin:0}.cal-day-detail-total{font-size:var(--text-082rem);color:var(--slate-600);margin-bottom:10px}.cal-day-detail-bar-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.cal-day-detail-bar-label{font-size:var(--text-075rem);color:var(--slate-800);width:100px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-day-detail-bar-track{flex:1;height:10px;background:var(--slate-100);border-radius:var(--radius-5);overflow:hidden}.cal-day-detail-bar-fill{height:100%;border-radius:var(--radius-5);transition:width .3s ease}.cal-day-detail-bar-time{font-size:var(--text-072rem);color:var(--slate-500);white-space:nowrap;min-width:36px;text-align:right}.cal-day-detail-session-list{display:flex;flex-direction:column;gap:6px}.cal-day-detail-session{padding:5px 8px;border-left:3px solid var(--slate-400);border-radius:0 var(--radius-4) var(--radius-4) 0;background:var(--slate-50)}.cal-day-detail-session-name{font-size:var(--text-078rem);font-weight:500;color:var(--slate-800)}.cal-day-detail-session-action{font-size:.73rem;color:var(--slate-600);margin-top:1px}.cal-day-detail-session-meta{font-size:var(--text-07rem);color:var(--slate-400);margin-top:2px}.cal-day-detail-achievement-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cal-day-detail-achievement{font-size:var(--text-08rem);color:var(--slate-800);padding:4px 0;border-bottom:1px solid var(--slate-100);display:flex;align-items:flex-start;gap:6px}.cal-day-detail-achievement:before{content:"•";color:var(--emerald-500);font-weight:700;flex-shrink:0}.cal-day-detail-achievement:last-child{border-bottom:none}@media(max-width:780px){.app{padding:16px 12px 32px}thead th:nth-child(2){width:auto}thead th:nth-child(3),thead th:nth-child(4){width:68px}form{flex-direction:column}form>div,form>div:first-child{flex:1 1 auto;min-width:0;width:100%}form button[type=submit]{width:100%;text-align:center}}.actions-window{padding:20px;font-family:inherit}.actions-window-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.actions-window-header .actions-window-title{margin-bottom:0}.actions-window-delete-all-btn{padding:5px 12px;font-size:var(--text-08rem);font-family:inherit;background:var(--red-100);color:var(--red-700);border:1px solid var(--red-300);border-radius:var(--radius-6);cursor:pointer;transition:background .15s ease}.actions-window-delete-all-btn:hover{background:var(--red-200)}.actions-window-title{font-size:1.2rem;font-weight:600;color:var(--slate-800);margin-bottom:16px}.actions-window-select{width:100%;padding:8px 12px;border:1px solid var(--slate-300);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;cursor:pointer;margin-bottom:16px;transition:border-color .15s ease,box-shadow .15s ease}.actions-window-select:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.actions-window-list{list-style:none;margin-bottom:20px}.actions-window-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-6);margin-bottom:8px;background:var(--slate-50)}.actions-window-item-info{display:flex;flex-direction:column;gap:2px}.actions-window-item-title{font-size:var(--text-0875rem);font-weight:500;color:var(--slate-800)}.actions-window-item-timer{font-size:var(--text-075rem);color:var(--slate-500)}.actions-window-item-description{display:block;font-size:var(--text-075rem);color:var(--slate-400);margin-top:2px}.actions-window-item-hint{display:block;font-size:var(--text-075rem);color:var(--amber-700);font-style:italic;margin-top:2px}.actions-window-item-hint-scores{color:var(--slate-400);font-style:normal}.actions-window-item-buttons{display:flex;gap:4px;align-items:center}.actions-window-start-btn{border:none;background:transparent;color:var(--green-500);font-size:var(--text-09rem);cursor:pointer;padding:4px 8px;border-radius:var(--radius-4);transition:background .15s ease,opacity .15s ease}.actions-window-start-btn:hover:not(:disabled){background:var(--green-100)}.actions-window-start-btn:disabled{opacity:.3;cursor:not-allowed}.actions-window-delete-btn{border:none;background:transparent;color:var(--red-500);font-size:var(--text-1rem);cursor:pointer;padding:4px 8px;border-radius:var(--radius-4);transition:background .15s ease}.actions-window-delete-btn:hover:not(:disabled){background:var(--red-100)}.actions-window-delete-btn:disabled{opacity:.3;cursor:not-allowed}.actions-window-form{display:flex;gap:8px;align-items:flex-end}.actions-window-field{display:flex;flex-direction:column;gap:4px;flex:1}.actions-window-field:last-of-type{flex:0 0 80px}.actions-window-label{font-size:var(--text-075rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.04em}.actions-window-input{border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:7px 10px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.actions-window-input:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.actions-window-add-btn{padding:7px 16px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s ease}.actions-window-add-btn:hover{background:var(--blue-600)}.actions-window-add-btn:disabled{opacity:.45;cursor:not-allowed}.unsolved-task-group{margin-bottom:12px}.unsolved-task-group-title{margin:8px 0 4px;font-size:var(--text-0875rem);color:var(--slate-400);font-weight:600}.unsolved-add-form{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--slate-700)}.actions-window-empty{color:var(--slate-400);font-size:var(--text-0875rem);text-align:center;padding:16px 0}.actions-window-description-field{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.actions-window-description-label{font-size:var(--text-075rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.04em}.actions-window-description-textarea{width:100%;border:1px solid var(--slate-300);border-radius:var(--radius-6);padding:8px 10px;font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.actions-window-description-textarea:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.actions-window-description-textarea::placeholder{color:var(--slate-400)}.timer-action-select{width:100%;max-width:400px;padding:8px 12px;border:1px solid var(--slate-300);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white);outline:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.timer-action-select:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.timer-action-select:disabled{background:var(--slate-100);color:var(--slate-400);cursor:not-allowed}.timer-quick-add{width:100%;max-width:400px;margin-top:16px;padding-top:16px;border-top:1px solid var(--slate-200)}.timer-quick-add-title{margin:0 0 8px;font-size:var(--text-0875rem);font-weight:600;color:var(--slate-500);text-transform:uppercase;letter-spacing:.05em}.timer-quick-add-hint{margin:0 0 10px;font-size:.8125rem;line-height:1.45;color:var(--slate-500)}.timer-quick-buffer-list{list-style:none;margin:10px 0 0;padding:0}.timer-quick-buffer-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 10px;margin-bottom:6px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:var(--slate-50);font-size:.8125rem}.timer-quick-buffer-text{display:flex;flex-direction:column;gap:4px;min-width:0}.timer-quick-buffer-title{font-weight:600;color:var(--slate-800)}.timer-quick-buffer-desc{color:var(--slate-500);white-space:pre-wrap;word-break:break-word}.timer-quick-buffer-remove{flex-shrink:0;padding:2px 8px;border:none;border-radius:var(--radius-4);background:transparent;color:var(--slate-500);cursor:pointer;font-size:var(--text-1rem);line-height:1}.timer-quick-buffer-remove:hover{color:var(--red-600);background:var(--red-100)}.timer-quick-add-input{display:block;width:100%;padding:7px 10px;margin-bottom:6px;border:1px solid var(--slate-300);border-radius:var(--radius-6);background:var(--color-white);color:var(--slate-800);font-size:var(--text-0875rem);font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.timer-quick-add-input:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.timer-quick-add-input::placeholder{color:var(--slate-400)}.timer-quick-add-input:disabled{background:var(--slate-100);color:var(--slate-400);cursor:not-allowed}.timer-quick-add-btn{margin-top:4px;padding:7px 16px;border:none;border-radius:var(--radius-6);background:var(--blue-500);color:var(--color-white);cursor:pointer;font-size:var(--text-0875rem);font-weight:600;font-family:inherit;transition:background .15s ease,box-shadow .15s ease}.timer-quick-add-btn:hover:not(:disabled){background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.timer-quick-add-btn:disabled{opacity:.45;cursor:not-allowed}.review-panel{display:flex;flex-direction:column;gap:16px;background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);padding:24px;box-shadow:var(--shadow-subtle);min-height:500px}.review-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.review-hint{color:var(--slate-500);font-size:var(--text-09rem);text-align:center;margin:40px 0}.review-summarize-btn{padding:8px 20px;border:none;border-radius:var(--radius-7);background:var(--blue-500);color:var(--color-white);font-size:var(--text-09rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;white-space:nowrap}.review-summarize-btn:hover:not(:disabled){background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.review-summarize-btn:disabled{opacity:.5;cursor:not-allowed}.review-report-btn{padding:8px 20px;border:none;border-radius:var(--radius-7);background:var(--emerald-500);color:var(--color-white);font-size:var(--text-09rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;white-space:nowrap}.review-report-btn:hover:not(:disabled){background:#059669;box-shadow:var(--shadow-button-success-alt)}.review-report-btn:disabled{opacity:.5;cursor:not-allowed}.review-chat{display:flex;flex-direction:column;gap:12px;flex:1;overflow-y:auto;max-height:420px;padding-right:4px}.review-message{display:flex;flex-direction:column;gap:4px;max-width:88%}.review-message--user{align-self:flex-end}.review-message--assistant,.review-message--info,.review-message--error{align-self:flex-start}.review-message-label{font-size:var(--text-072rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400)}.review-message--user .review-message-label{text-align:right}.review-message-content{padding:10px 14px;border-radius:var(--radius-10);font-size:var(--text-09rem);line-height:1.55;white-space:pre-wrap;word-break:break-word}.review-message--user .review-message-content{background:var(--blue-500);color:var(--color-white);border-bottom-right-radius:3px}.review-message--assistant .review-message-content{background:var(--slate-100);color:var(--slate-800);border-bottom-left-radius:3px}.review-message--info .review-message-content{background:var(--emerald-50);color:#065f46;font-size:.83rem;padding:6px 12px;border-left:3px solid var(--emerald-500)}.review-message--error .review-message-content{background:var(--red-50);color:#991b1b;font-size:.83rem;padding:6px 12px;border-left:3px solid var(--red-500)}.review-thinking{color:var(--slate-400);font-style:italic}.review-input-row{display:flex;gap:10px;align-items:flex-end;border-top:1px solid var(--slate-200);padding-top:14px}.review-input{flex:1;padding:10px 12px;border:1px solid var(--slate-300);border-radius:var(--radius-8);font-family:inherit;font-size:var(--text-09rem);line-height:1.4;resize:none;color:var(--slate-800);background:var(--slate-50);transition:border-color .15s ease,box-shadow .15s ease}.review-input:focus{outline:none;border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue-soft)}.review-input:disabled{opacity:.5}.review-send-btn{padding:10px 20px;border:none;border-radius:var(--radius-8);background:var(--blue-500);color:var(--color-white);font-size:var(--text-09rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;white-space:nowrap}.review-send-btn:hover:not(:disabled){background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.review-send-btn:disabled{opacity:.45;cursor:not-allowed}.review-nav-btn{padding:4px 10px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:var(--color-white);color:var(--slate-600);font-size:var(--text-11rem);cursor:pointer;line-height:1;transition:background .15s ease}.review-nav-btn:hover{background:var(--slate-100)}.review-task-select{padding:6px 10px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:var(--color-white);font-size:var(--text-09rem);color:var(--slate-800);flex:1;min-width:0}.review-preset-btns{display:flex;gap:6px}.review-preset-btn{padding:5px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-6);background:var(--color-white);color:var(--slate-600);font-size:var(--text-085rem);cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease}.review-preset-btn:hover{background:var(--slate-100)}.review-preset-btn--active{background:var(--blue-50);border-color:var(--blue-500);color:var(--blue-700);font-weight:600}.timer-tab-layout{display:flex;gap:16px;align-items:flex-start}.timer-tab-layout .timer-panel{flex:0 0 auto;width:380px}.timer-chat-column{display:flex;flex-direction:column;gap:16px;flex:1;min-width:0}.task-chat-panel{flex:1 1 0;min-width:260px;background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:20px;display:flex;flex-direction:column;gap:12px;max-height:700px}.task-chat-header{display:flex;flex-direction:column;gap:2px}.task-chat-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-chat-start-btn{font-size:var(--text-08rem);font-weight:600;padding:5px 12px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);cursor:pointer;white-space:nowrap}.task-chat-start-btn:hover{background:var(--blue-600)}.task-chat-title{font-size:var(--text-1rem);font-weight:600;color:var(--slate-800)}.task-chat-task-name{font-size:var(--text-08rem);color:var(--slate-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-chat-hint{font-size:var(--text-085rem);color:var(--slate-400);text-align:center;padding:20px 0}.task-chat-messages{flex:1 1 0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;min-height:200px;max-height:500px}.task-chat-message{display:flex;gap:8px;align-items:flex-start}.task-chat-message-label{font-size:var(--text-07rem);font-weight:700;color:var(--slate-400);padding-top:3px;min-width:22px;text-transform:uppercase;letter-spacing:.03em}.task-chat-message--user .task-chat-message-label{color:var(--blue-500)}.task-chat-message--error .task-chat-message-label{color:var(--red-500)}.task-chat-message--info .task-chat-message-label{color:var(--green-500)}.task-chat-message-content{font-size:var(--text-0875rem);color:var(--slate-800);line-height:1.5;flex:1;white-space:pre-wrap;word-break:break-word}.task-chat-message--user .task-chat-message-content{background:var(--blue-50);border-radius:var(--radius-6);padding:6px 10px}.task-chat-message--info .task-chat-message-content{color:var(--green-600);font-size:var(--text-08rem)}.task-chat-message--error .task-chat-message-content{color:var(--red-600);font-size:var(--text-08rem)}.task-chat-thinking{color:var(--slate-400);font-style:italic;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.task-chat-input-row{display:flex;gap:8px;align-items:flex-end}.task-chat-input{flex:1;padding:8px 10px;border:1px solid var(--slate-300);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);resize:none;outline:none;transition:border-color .15s ease,box-shadow .15s ease;line-height:1.4}.task-chat-input:focus{border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue)}.task-chat-input:disabled{background:var(--slate-50);color:var(--slate-400);cursor:not-allowed}.task-chat-send-btn{padding:8px 14px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:500;cursor:pointer;transition:background .15s ease;white-space:nowrap}.task-chat-send-btn:hover:not(:disabled){background:var(--blue-600)}.task-chat-send-btn:disabled{background:var(--slate-300);cursor:not-allowed}.task-chat-notes{border-top:1px solid var(--slate-200);padding-top:12px;display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto}.task-chat-notes-title{font-size:var(--text-075rem);font-weight:700;color:var(--slate-500);text-transform:uppercase;letter-spacing:.05em}.task-chat-notes-empty{font-size:var(--text-08rem);color:var(--slate-400);font-style:italic}.task-chat-notes-list{list-style:none;display:flex;flex-direction:column;gap:8px}.task-chat-note-item{display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:var(--slate-50);border:1px solid var(--slate-200);border-left:3px solid var(--blue-500);border-radius:var(--radius-4)}.task-chat-note-title{font-size:var(--text-085rem);font-weight:600;color:var(--slate-800)}.task-chat-note-desc{font-size:var(--text-08rem);color:var(--slate-600);line-height:1.45}.planner-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:20px 24px;display:flex;flex-direction:column;gap:16px;width:100%}.planner-agent-dialog{display:flex;flex-direction:column;gap:12px}.planner-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.planner-header-left{display:flex;align-items:center;gap:10px}.planner-title{font-size:var(--text-11rem);font-weight:600;color:var(--slate-800);margin:0}.planner-progress-badge{background:var(--blue-50);color:var(--blue-600);border:1px solid var(--blue-200);border-radius:var(--radius-12);padding:2px 10px;font-size:var(--text-08rem);font-weight:600}.planner-header-actions{display:flex;gap:8px}.planner-start-btn{padding:7px 16px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.planner-start-btn:hover{background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.planner-reset-btn{padding:7px 14px;background:var(--slate-100);color:var(--slate-500);border:1px solid var(--slate-200);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease}.planner-reset-btn:hover{background:var(--slate-200);color:var(--slate-600)}.planner-checklist{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);overflow:hidden}.planner-checklist-header{padding:10px 16px;font-size:var(--text-08rem);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--slate-500);background:var(--slate-100);border-bottom:1px solid var(--slate-200)}.planner-checklist-list{list-style:none;margin:0;padding:0}.planner-checklist-item{border-bottom:1px solid var(--slate-200);transition:background .1s ease}.planner-checklist-item:last-child{border-bottom:none}.planner-checklist-item:hover{background:var(--slate-100)}.planner-checklist-item--done{opacity:.55}.planner-checklist-item--done .planner-checklist-action{text-decoration:line-through;color:var(--slate-400)}.planner-checklist-row{display:flex;align-items:center}.planner-checklist-label{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;flex:1;min-width:0}.planner-checklist-controls{display:flex;align-items:center;gap:2px;padding-right:8px;flex-shrink:0;opacity:0;transition:opacity .15s ease}.planner-checklist-item:hover .planner-checklist-controls{opacity:1}.planner-item-focus-btn{padding:2px 8px;background:#ede9fe;color:var(--violet-700);border:1px solid #c4b5fd;border-radius:var(--radius-4);font-size:var(--text-07rem);font-weight:600;font-family:inherit;cursor:pointer;line-height:1.4;transition:background .15s ease}.planner-item-focus-btn:hover{background:#ddd6fe}.planner-checklist-ctrl-btn{background:none;border:none;cursor:pointer;padding:3px 6px;border-radius:var(--radius-4);color:var(--slate-400);font-size:var(--text-07rem);line-height:1}.planner-checklist-ctrl-btn:hover:not(:disabled){background:var(--slate-200);color:var(--slate-600)}.planner-checklist-ctrl-btn:disabled{opacity:.2;cursor:default}.planner-checklist-ctrl-btn--remove:hover:not(:disabled){background:var(--red-100);color:var(--red-500)}.planner-checklist-checkbox{width:16px;height:16px;flex-shrink:0;accent-color:var(--blue-500);cursor:pointer}.planner-checklist-time{font-size:var(--text-085rem);font-weight:700;color:var(--blue-500);font-variant-numeric:tabular-nums;min-width:38px;flex-shrink:0}.planner-checklist-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.planner-checklist-action{font-size:var(--text-09rem);font-weight:500;color:var(--slate-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-checklist-meta{font-size:var(--text-078rem);color:var(--slate-400)}.planner-checklist-end{font-size:var(--text-078rem);color:var(--slate-400);font-variant-numeric:tabular-nums;flex-shrink:0}.planner-checklist-break{color:var(--amber-500)}.planner-blockers{margin-bottom:12px;border:1px solid var(--red-300);border-radius:var(--radius-8);overflow:hidden;background:#fff5f5}.planner-blockers-header{font-size:var(--text-08rem);font-weight:600;color:var(--red-700);padding:6px 12px;background:var(--red-100);border-bottom:1px solid var(--red-300)}.planner-blockers-list{list-style:none;margin:0;padding:0}.planner-blockers-item{display:flex;gap:8px;padding:7px 12px;border-bottom:1px solid var(--red-200);font-size:var(--text-085rem)}.planner-blockers-item:last-child{border-bottom:none}.planner-blockers-task{font-weight:600;color:var(--red-700);flex-shrink:0;white-space:nowrap}.planner-blockers-text{color:#7f1d1d;flex:1}.planner-blockers-item--resolving{flex-direction:column;gap:0}.planner-blockers-item-header{display:flex;gap:8px;align-items:baseline;width:100%}.planner-blocker-resolve-btn{flex-shrink:0;padding:2px 10px;background:var(--color-white);border:1px solid var(--red-700);border-radius:var(--radius-4);color:var(--red-700);font-size:var(--text-078rem);font-weight:500;cursor:pointer;transition:background .12s ease,color .12s ease}.planner-blocker-resolve-btn:hover{background:var(--red-700);color:var(--color-white)}.blocker-resolution-chat{margin-top:8px;border-top:1px solid var(--red-200);padding-top:8px;width:100%}.blocker-resolution-messages{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.blocker-resolution-msg{font-size:var(--text-082rem);padding:4px 8px;border-radius:var(--radius-4);line-height:1.4}.blocker-resolution-msg--assistant{background:var(--red-50);color:#7f1d1d;align-self:flex-start}.blocker-resolution-msg--user{background:var(--green-50);color:#14532d;align-self:flex-end;text-align:right}.blocker-resolution-msg--info{background:var(--green-50);color:var(--green-800);font-weight:500}.blocker-resolution-msg--error{background:#fff1f2;color:#9f1239}.blocker-resolution-thinking{opacity:.6;font-style:italic}.blocker-resolution-input-row{display:flex;flex-direction:column;gap:6px}.blocker-resolution-input{width:100%;padding:6px 8px;border:1px solid var(--red-300);border-radius:var(--radius-4);font-size:var(--text-082rem);font-family:inherit;resize:none;background:var(--color-white);color:var(--slate-800);box-sizing:border-box}.blocker-resolution-input:focus{outline:none;border-color:var(--red-700)}.blocker-resolution-actions{display:flex;gap:6px;justify-content:flex-end}.blocker-resolution-send-btn{padding:3px 12px;background:var(--red-700);color:var(--color-white);border:none;border-radius:var(--radius-4);font-size:var(--text-078rem);font-weight:500;cursor:pointer}.blocker-resolution-send-btn:disabled{opacity:.4;cursor:not-allowed}.blocker-resolution-cancel-btn{padding:3px 10px;background:transparent;color:var(--red-700);border:1px solid var(--red-300);border-radius:var(--radius-4);font-size:var(--text-078rem);cursor:pointer}.blocker-resolution-cancel-btn:hover{background:#fff5f5}.review-close-btn{padding:6px 14px;background:var(--slate-900);color:var(--slate-100);border:none;border-radius:var(--radius-6);font-size:var(--text-085rem);font-weight:500;cursor:pointer;transition:background .15s ease}.review-close-btn:hover:not(:disabled){background:var(--slate-700)}.review-close-btn:disabled{opacity:.4;cursor:not-allowed}.planner-hint{color:var(--slate-500);font-size:var(--text-09rem);padding:8px 0}.planner-chat{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto;padding:4px 0}.planner-message{display:flex;gap:10px;align-items:flex-start}.planner-message-label{font-size:var(--text-075rem);font-weight:700;text-transform:uppercase;letter-spacing:.05em;min-width:80px;padding-top:2px;flex-shrink:0}.planner-message--user .planner-message-label{color:var(--blue-500)}.planner-message--assistant .planner-message-label{color:var(--violet-600)}.planner-message--info .planner-message-label{color:var(--green-600)}.planner-message--error .planner-message-label{color:var(--red-600)}.planner-message-content{font-size:var(--text-09rem);color:var(--slate-800);line-height:1.55;white-space:pre-wrap;word-break:break-word}.planner-message--error .planner-message-content{color:var(--red-600)}.planner-message--info .planner-message-content{color:var(--green-700)}.planner-thinking{color:var(--slate-400);font-style:italic}.planner-input-row{display:flex;gap:8px;align-items:flex-end}.planner-input{flex:1;padding:8px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-6);font-size:var(--text-0875rem);font-family:inherit;line-height:1.5;resize:vertical;color:var(--slate-800);background:var(--color-white);transition:border-color .15s ease,box-shadow .15s ease}.planner-input:focus{outline:none;border-color:var(--blue-500);box-shadow:var(--shadow-focus-blue-soft)}.planner-input:disabled{background:var(--slate-100);opacity:.6;cursor:not-allowed}.planner-send-btn{padding:8px 18px;background:var(--blue-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;flex-shrink:0}.planner-send-btn:hover:not(:disabled){background:var(--blue-600);box-shadow:var(--shadow-button-primary)}.planner-send-btn:disabled{opacity:.5;cursor:not-allowed}.routines-panel{padding:20px 24px;max-width:760px}.routines-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.routines-title{font-size:var(--text-11rem);font-weight:700;color:var(--slate-800);margin:0}.routines-add-btn{padding:6px 14px;background:var(--teal-600);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer}.routines-add-btn:hover{background:var(--teal-700)}.routines-empty{color:var(--slate-500);font-size:var(--text-09rem);font-style:italic;margin:12px 0}.routines-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.routines-item{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px;border-left:3px solid var(--teal-600)}.routines-item--inactive{opacity:.55;border-left-color:var(--slate-400)}.routines-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.routines-item-title{font-weight:600;color:var(--slate-800);font-size:var(--text-095rem)}.routines-recurrence-badge{background:#ccfbf1;color:var(--teal-700);font-size:var(--text-072rem);font-weight:600;padding:1px 7px;border-radius:var(--radius-10);text-transform:lowercase}.routines-goal-badge{background:var(--blue-100);color:var(--blue-700);font-size:var(--text-072rem);font-weight:600;padding:1px 7px;border-radius:var(--radius-10);white-space:nowrap}.routines-inactive-badge{background:var(--slate-100);color:var(--slate-400);font-size:var(--text-072rem);font-weight:600;padding:1px 7px;border-radius:var(--radius-10)}.routines-item-meta{font-size:var(--text-082rem);color:var(--slate-500);margin-bottom:4px}.routines-item-desc{font-size:var(--text-085rem);color:var(--slate-600);margin-bottom:6px}.routines-item-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.routines-action-btn{padding:3px 10px;background:var(--slate-100);color:var(--slate-700);border:1px solid var(--slate-200);border-radius:var(--radius-5);font-size:var(--text-08rem);font-family:inherit;cursor:pointer}.routines-action-btn:hover{background:var(--slate-200)}.routines-action-btn--muted{color:var(--slate-400)}.routines-action-btn--danger{color:var(--red-500)}.routines-action-btn--danger:hover{background:var(--red-100)}.routines-form{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:14px;margin-bottom:12px;display:flex;flex-direction:column;gap:10px}.routines-form-input{padding:7px 10px;border:1px solid var(--slate-300);border-radius:var(--radius-5);font-size:var(--text-0875rem);font-family:inherit;background:var(--color-white);color:var(--slate-800)}.routines-form-input--short{width:80px}.routines-form-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.routines-form-label{font-size:var(--text-08rem);color:var(--slate-500);white-space:nowrap}.routines-form-select{padding:6px 10px;border:1px solid var(--slate-300);border-radius:var(--radius-5);font-size:var(--text-0875rem);font-family:inherit;background:var(--color-white);color:var(--slate-800)}.routines-form-textarea{padding:7px 10px;border:1px solid var(--slate-300);border-radius:var(--radius-5);font-size:var(--text-0875rem);font-family:inherit;background:var(--color-white);color:var(--slate-800);resize:vertical}.routines-days-picker{display:flex;gap:4px;flex-wrap:wrap}.routines-day-btn{padding:3px 9px;border:1px solid var(--slate-300);border-radius:var(--radius-5);font-size:var(--text-08rem);font-family:inherit;background:var(--slate-100);color:var(--slate-600);cursor:pointer;-webkit-user-select:none;user-select:none}.routines-day-btn--on{background:var(--teal-600);color:var(--color-white);border-color:var(--teal-600)}.routines-form-actions{display:flex;gap:8px}.routines-save-btn{padding:6px 16px;background:var(--teal-600);color:var(--color-white);border:none;border-radius:var(--radius-5);font-size:var(--text-0875rem);font-weight:600;font-family:inherit;cursor:pointer}.routines-save-btn:disabled{opacity:.5;cursor:not-allowed}.routines-cancel-btn{padding:6px 14px;background:var(--slate-100);color:var(--slate-600);border:1px solid var(--slate-200);border-radius:var(--radius-5);font-size:var(--text-0875rem);font-family:inherit;cursor:pointer}.planner-checklist-item--routine{border-left:3px solid var(--teal-600)}.planner-checklist-meta--routine{color:var(--teal-700);font-style:italic}.goals-panel{display:flex;flex-direction:column;gap:16px}.goals-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.goals-filter-tabs{display:flex;gap:6px}.goals-empty{color:var(--slate-500);font-style:italic;padding:24px 0;text-align:center}.goals-list{display:flex;flex-direction:column;gap:12px}.goal-card{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);padding:16px;box-shadow:var(--shadow-subtle);position:relative}.goal-card-header{display:flex;flex-direction:column;gap:6px}.goal-card-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.goal-card-title{font-size:15px;font-weight:600;color:var(--slate-800)}.goal-card-status{font-size:var(--text-11px);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.goal-card-horizon{font-size:var(--text-11px);color:var(--slate-500);background:var(--slate-100);border-radius:var(--radius-4);padding:1px 6px}.goal-card-date{font-size:var(--text-12px);color:var(--slate-500)}.goal-card-vision{font-size:var(--text-13px);color:var(--slate-600);font-style:italic}.goal-progress-bar-wrap{position:relative;height:6px;background:var(--slate-200);border-radius:var(--radius-3);margin-top:4px}.goal-progress-bar{height:100%;background:var(--indigo-500);border-radius:var(--radius-3);transition:width .3s}.goal-progress-label{position:absolute;right:0;top:-18px;font-size:var(--text-11px);color:var(--slate-500)}.goal-expand-arrow{font-size:var(--text-11px);color:var(--slate-400);align-self:flex-end;margin-top:4px}.goal-card-body{margin-top:12px;padding-top:12px;border-top:1px solid var(--slate-100);display:flex;flex-direction:column;gap:10px}.goal-section{font-size:var(--text-13px);color:var(--slate-700)}.goal-criteria-list,.goal-tasks-list,.goal-phases-list,.goal-breakthroughs-list{margin-top:4px;margin-left:16px;display:flex;flex-direction:column;gap:3px;font-size:var(--text-12px);color:var(--slate-600)}.goal-task--done{text-decoration:line-through;color:var(--slate-400)}.goal-task-criteria{color:var(--slate-400);font-size:var(--text-11px)}.breakthrough--met{color:var(--green-500);font-weight:700}.breakthrough--partial{color:var(--amber-500);font-weight:700}.goal-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.goal-btn{font-size:var(--text-12px);padding:4px 10px;border-radius:var(--radius-6);border:1px solid;cursor:pointer;font-weight:500}.goal-btn--pause{border-color:var(--amber-500);color:var(--amber-800);background:var(--amber-50)}.goal-btn--activate{border-color:var(--green-500);color:#14532d;background:var(--green-50)}.goal-btn--achieve{border-color:var(--indigo-500);color:#312e81;background:var(--indigo-50)}.goal-btn--delete{border-color:var(--red-300);color:#991b1b;background:var(--red-50)}.goal-priority-control{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;border-radius:var(--radius-6);border:1px solid var(--slate-300);background:var(--slate-50)}.goal-priority-label{font-size:var(--text-12px);font-weight:500;color:var(--slate-600)}.goal-priority-btn{width:20px;height:20px;line-height:1;border-radius:var(--radius-5);border:1px solid var(--slate-300);background:var(--color-white);color:var(--slate-700);font-weight:700;cursor:pointer}.goal-priority-btn:disabled{opacity:.4;cursor:default}.breakthrough-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.breakthrough-dialog{background:var(--color-white);border-radius:var(--radius-14);padding:28px;width:520px;max-width:95vw;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;gap:16px}.breakthrough-dialog-header{border-bottom:1px solid var(--slate-200);padding-bottom:12px}.breakthrough-title{font-size:16px;font-weight:700;color:var(--slate-800)}.breakthrough-criteria-block{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px}.breakthrough-criteria-label{font-size:var(--text-11px);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-500);display:block;margin-bottom:4px}.breakthrough-criteria-text{font-size:var(--text-13px);color:var(--slate-700);font-style:italic}.breakthrough-field{display:flex;flex-direction:column;gap:6px}.breakthrough-label{font-size:var(--text-13px);font-weight:600;color:var(--gray-700)}.breakthrough-textarea{border:1px solid #d1d5db;border-radius:var(--radius-8);padding:10px 12px;font-size:var(--text-13px);font-family:inherit;resize:vertical;color:var(--slate-800)}.breakthrough-textarea:focus{outline:none;border-color:var(--indigo-500);box-shadow:var(--shadow-focus-indigo)}.breakthrough-met-row{display:flex;align-items:center;gap:8px;font-size:var(--text-13px);color:var(--gray-700)}.breakthrough-met-label{display:flex;align-items:center;gap:6px;cursor:pointer}.breakthrough-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.breakthrough-save-btn{background:var(--indigo-500);color:var(--color-white);border:none;border-radius:var(--radius-8);padding:8px 18px;font-size:var(--text-13px);font-weight:600;cursor:pointer}.breakthrough-save-btn:disabled{background:#a5b4fc;cursor:not-allowed}.breakthrough-skip-btn{background:var(--slate-50);color:var(--slate-500);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:8px 14px;font-size:var(--text-13px);cursor:pointer}.win-dialog{background:var(--color-white);border-radius:var(--radius-16);padding:28px;width:560px;max-width:95vw;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;gap:18px;border-top:4px solid var(--indigo-500)}.revision-proposal-dialog{max-height:85vh}.revision-proposal-scroll{overflow-y:auto;min-height:0}.win-dialog-header{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding-bottom:12px;border-bottom:1px solid var(--slate-200)}.win-trophy{font-size:32px;line-height:1}.win-title{font-size:18px;font-weight:700;color:var(--slate-800)}.win-vision{font-size:var(--text-13px);color:var(--slate-500);font-style:italic;max-width:440px}.win-section{display:flex;flex-direction:column;gap:8px}.win-section-label{font-size:var(--text-11px);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--slate-500)}.win-breakthroughs-list{list-style:none;display:flex;flex-direction:column;gap:4px;font-size:var(--text-12px);color:var(--slate-600);padding-left:4px}.win-criteria-list{list-style:none;display:flex;flex-direction:column;gap:6px}.win-criterion-item{font-size:var(--text-13px);color:var(--gray-700)}.win-criterion-label{display:flex;align-items:flex-start;gap:8px;cursor:pointer;line-height:1.4}.win-outcome-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.win-draft-btn{background:var(--indigo-50);color:#4338ca;border:1px solid #c7d2fe;border-radius:var(--radius-6);padding:4px 10px;font-size:var(--text-12px);font-weight:500;cursor:pointer;white-space:nowrap}.win-draft-btn:disabled{opacity:.6;cursor:not-allowed}.win-draft-error{font-size:var(--text-12px);color:var(--red-600)}.win-save-btn{background:var(--indigo-500);color:var(--color-white);border:none;border-radius:var(--radius-8);padding:8px 18px;font-size:var(--text-13px);font-weight:600;cursor:pointer}.win-save-btn:disabled{background:#a5b4fc;cursor:not-allowed}.goal-ready-badge{font-size:var(--text-11px);font-weight:600;color:var(--green-700);background:var(--green-100);border-radius:var(--radius-10);padding:2px 8px;animation:pulse-green 2s infinite}@keyframes pulse-green{0%,to{opacity:1}50%{opacity:.7}}.goal-win-badge{font-size:var(--text-11px);color:var(--violet-600);background:#ede9fe;border-radius:var(--radius-10);padding:2px 8px}.goal-reliability-badge{font-size:var(--text-11px);font-weight:600;border-radius:var(--radius-10);padding:2px 8px}.goal-reliability-badge--behind{color:var(--red-700);background:var(--red-100);animation:pulse-green 2s infinite}.goal-reliability-badge--ahead{color:var(--blue-700);background:var(--blue-100)}.goal-forecast-panel{display:flex;flex-direction:column;gap:8px}.goal-forecast-summary{font-size:var(--text-13px);color:var(--slate-600)}.goal-forecast-empty{font-size:var(--text-13px);color:var(--slate-400);font-style:italic}.goal-breakthrough-forecast{font-size:var(--text-13px);color:var(--slate-600);margin-top:4px}.goal-breakthrough-forecast-debug{margin-top:4px;font-size:var(--text-12px);color:var(--slate-500)}.goal-breakthrough-forecast-debug summary{cursor:pointer;color:var(--indigo-500)}.goal-breakthrough-forecast-debug-table{margin-top:6px;border-collapse:collapse;font-family:monospace}.goal-breakthrough-forecast-debug-table td{padding:2px 8px 2px 0;vertical-align:top}.goal-breakthrough-forecast-debug-table td:first-child{color:var(--slate-400);white-space:nowrap}.goal-win-block{background:linear-gradient(135deg,#fdf4ff 0%,var(--indigo-50) 100%);border:1px solid #ddd6fe;border-radius:var(--radius-8);padding:12px;display:flex;flex-direction:column;gap:6px}.goal-win-label{font-size:var(--text-11px);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--violet-600)}.goal-win-outcome{font-size:var(--text-13px);color:var(--slate-800);line-height:1.5}.goal-win-criteria{list-style:none;display:flex;flex-direction:column;gap:2px;font-size:var(--text-12px);margin-top:4px}.win-cr--met{color:var(--green-700)}.win-cr--missed{color:var(--red-600)}.timer-btn--focus{background:#8b5cf6;color:var(--color-white)}.timer-btn--focus:hover:not(:disabled){background:var(--violet-600);box-shadow:var(--shadow-button-violet)}.timer-btn--interrupt{background:var(--amber-500);color:var(--color-white);padding:8px 18px;border:none;border-radius:var(--radius-7);font-size:var(--text-085rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease}.timer-btn--interrupt:hover:not(:disabled){background:#d97706}.timer-btn--resume{background:var(--green-500);color:var(--color-white);padding:8px 18px;border:none;border-radius:var(--radius-7);font-size:var(--text-085rem);font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease}.timer-btn--resume:hover{background:var(--green-600)}.timer-focus-label{display:block;font-size:var(--text-07rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8b5cf6;margin-top:4px}.timer-interrupt-label{display:block;font-size:var(--text-07rem);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--amber-500);margin-top:4px}.timer-interrupt-form{background:var(--amber-50);border:1px solid #fcd34d;border-radius:var(--radius-10);padding:14px 16px;width:100%;max-width:400px;display:flex;flex-direction:column;gap:8px}.timer-interrupt-form-title{font-size:var(--text-085rem);font-weight:600;color:var(--amber-800);margin:0}.timer-interrupt-form-input,.timer-interrupt-form-select{padding:7px 10px;border:1px solid #fcd34d;border-radius:var(--radius-6);font-size:var(--text-085rem);font-family:inherit;background:var(--color-white);color:var(--slate-800);outline:none}.timer-interrupt-form-input:focus,.timer-interrupt-form-select:focus{border-color:var(--amber-500);box-shadow:var(--shadow-focus-amber)}.timer-interrupt-form-actions{display:flex;gap:8px}.timer-interrupt-form-confirm{flex:1;padding:7px 14px;background:var(--amber-500);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-085rem);font-weight:600;font-family:inherit;cursor:pointer}.timer-interrupt-form-confirm:hover{background:#d97706}.timer-interrupt-form-cancel{padding:7px 14px;background:var(--slate-100);color:var(--slate-500);border:none;border-radius:var(--radius-6);font-size:var(--text-085rem);font-weight:600;font-family:inherit;cursor:pointer}.timer-interrupt-form-cancel:hover{background:var(--slate-200)}.timer-focus-actions{width:100%;max-width:400px;display:flex;flex-direction:column;gap:8px;margin-top:4px}.timer-focus-interruption-log{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:var(--slate-50);border-radius:var(--radius-6);border:1px solid var(--slate-200)}.timer-focus-interruption-item{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-08rem)}.timer-focus-interruption-reason{color:var(--slate-600)}.timer-focus-interruption-dur{font-weight:600;color:var(--slate-500);font-size:var(--text-075rem)}.timer-focus-interruption-dur--active{color:var(--amber-500);font-style:italic}.timer-focus-summary{width:100%;max-width:400px;background:var(--green-50);border:1px solid #86efac;border-radius:var(--radius-10);padding:14px 16px;display:flex;flex-direction:column;gap:8px}.timer-focus-summary-title{font-size:var(--text-085rem);font-weight:700;color:var(--green-800);margin:0;text-transform:uppercase;letter-spacing:.06em}.timer-focus-summary-stats{display:flex;gap:16px;flex-wrap:wrap}.timer-focus-summary-stats span{font-size:var(--text-082rem);font-weight:600;color:var(--green-700)}.timer-focus-summary-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.timer-focus-summary-list li{font-size:var(--text-08rem);color:var(--slate-600)}.timer-focus-summary-close{align-self:flex-start;padding:5px 14px;background:var(--green-100);color:var(--green-800);border:1px solid #86efac;border-radius:var(--radius-6);font-size:var(--text-08rem);font-weight:600;font-family:inherit;cursor:pointer;margin-top:2px}.timer-focus-summary-close:hover{background:#bbf7d0}.timer-focus-summary-markdone{align-self:flex-start;padding:5px 14px;background:var(--violet-600);color:var(--color-white);border:none;border-radius:var(--radius-6);font-size:var(--text-08rem);font-weight:600;font-family:inherit;cursor:pointer;margin-top:2px}.timer-focus-summary-markdone:hover{background:var(--violet-700)}.analysis-pre{font-family:Courier New,Courier,monospace;font-size:var(--text-08rem);line-height:1.55;color:var(--slate-800);background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:18px 20px;overflow-x:auto;overflow-y:auto;max-height:70vh;white-space:pre;margin:0}.calib-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:20px}.calib-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.calib-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.calib-sub{font-size:var(--text-08rem);color:var(--slate-400)}.calib-empty{color:var(--slate-500);max-width:60ch;display:flex;flex-direction:column;gap:10px}.calib-empty strong{color:var(--slate-800)}.calib-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.calib-tile{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px}.calib-tile--hero{grid-column:span 1}.calib-tile--hero.is-good{background:var(--emerald-50);border-color:#a7f3d0}.calib-tile-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600}.calib-tile-value{font-size:var(--text-15rem);font-weight:650;color:var(--slate-800);margin-top:4px;letter-spacing:-.01em}.calib-tile--hero.is-good .calib-tile-value{color:var(--emerald-700)}.calib-tile-value.calib-muted{font-size:var(--text-105rem);color:var(--slate-500);font-weight:600}.calib-tile-note{font-size:var(--text-074rem);color:var(--slate-500);margin-top:3px;line-height:1.35}.calib-chart{display:flex;flex-direction:column;gap:10px}.calib-chart svg{width:100%;height:auto;display:block;overflow:visible}.calib-gl{stroke:var(--slate-tint-custom);stroke-width:1}.calib-axis{stroke:var(--slate-300);stroke-width:1}.calib-axis-txt{font-size:var(--text-11px);fill:var(--slate-400);font-family:inherit}.calib-band{fill:#3b82f621}.calib-band-line{stroke:#3b82f673;stroke-width:8;stroke-linecap:round}.calib-median{fill:none;stroke:var(--blue-600);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.calib-est-mark{fill:var(--blue-600)}.calib-actual{fill:var(--slate-800);stroke:var(--color-white);stroke-width:2;cursor:pointer;transition:r .08s ease}.calib-actual.is-out{fill:var(--color-white);stroke:var(--slate-800);stroke-width:2}.calib-conf-high{fill:var(--blue-500)}.calib-conf-low{fill:var(--color-white);stroke:var(--slate-300);stroke-width:1.5}.calib-tip-rule{stroke:var(--slate-300);stroke-width:1;stroke-dasharray:3 3}.calib-tip-box{fill:var(--slate-800)}.calib-tip-t1{fill:var(--color-white);font-size:var(--text-11px);font-weight:600;font-family:inherit}.calib-tip-t2{fill:var(--slate-300);font-size:var(--text-10px);font-family:inherit}.calib-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:var(--text-078rem);color:var(--slate-500)}.calib-lg{display:inline-flex;align-items:center;gap:7px}.calib-sw{display:inline-block}.calib-sw-band{width:14px;height:10px;border-radius:var(--radius-2);background:#3b82f640}.calib-sw-median{width:18px;height:3px;border-radius:var(--radius-2);background:var(--blue-600)}.calib-sw-actual{width:11px;height:11px;border-radius:50%;background:var(--slate-800);border:2px solid var(--color-white);box-shadow:0 0 0 1px var(--slate-300)}.calib-sw-conflow{width:10px;height:10px;border-radius:50%;background:var(--color-white);border:1.5px solid var(--slate-300)}.calib-details{font-size:var(--text-085rem)}.calib-details summary{cursor:pointer;color:var(--blue-500);font-weight:500;-webkit-user-select:none;user-select:none}.calib-table-wrap{overflow-x:auto;margin-top:12px}.calib-table{border-collapse:collapse;width:100%;min-width:560px}.calib-table th{text-align:left;font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.03em;color:var(--slate-400);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--slate-200)}.calib-table td{padding:8px 10px;border-bottom:1px solid var(--slate-100);color:var(--slate-600);white-space:nowrap}.calib-td-title{max-width:220px;overflow:hidden;text-overflow:ellipsis;color:var(--slate-800)}.calib-over{color:var(--amber-700)}.calib-under{color:#0369a1}.calib-foot{font-size:var(--text-074rem);color:var(--slate-400);margin-top:8px}.rhythm-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:20px}.rhythm-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.rhythm-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.rhythm-sub{font-size:var(--text-08rem);color:var(--slate-400)}.rhythm-empty{color:var(--slate-500);max-width:60ch;display:flex;flex-direction:column;gap:10px}.rhythm-empty strong{color:var(--slate-800)}.rhythm-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.rhythm-tile{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px}.rhythm-tile--hero{background:var(--blue-50);border-color:var(--blue-200)}.rhythm-tile-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600}.rhythm-tile-value{font-size:var(--text-15rem);font-weight:650;color:var(--slate-800);margin-top:4px;letter-spacing:-.01em}.rhythm-tile--hero .rhythm-tile-value{color:var(--blue-600)}.rhythm-tile-value small{font-size:var(--text-085rem);font-weight:550;color:var(--slate-500)}.rhythm-tile-note{font-size:var(--text-074rem);color:var(--slate-500);margin-top:3px;line-height:1.35}.rhythm-chart{display:flex;flex-direction:column;gap:12px}.rhythm-chart svg{width:100%;max-width:560px;height:auto;display:block;overflow:visible}.rhythm-axis-txt{font-size:9px;fill:var(--slate-400);font-family:inherit}.rhythm-cell{stroke:var(--color-white);stroke-width:1}.rhythm-cell.is-hover{stroke:var(--slate-800);stroke-width:1.5}.rhythm-l0{fill:#ebeef3}.rhythm-l1{fill:#cfe0fb}.rhythm-l2{fill:#93b8f0}.rhythm-l3{fill:#4a8ae6}.rhythm-l4{fill:var(--blue-600)}span.rhythm-sw{width:12px;height:12px;border-radius:var(--radius-3);display:inline-block}span.rhythm-sw.rhythm-l0{background:#ebeef3}span.rhythm-sw.rhythm-l1{background:#cfe0fb}span.rhythm-sw.rhythm-l2{background:#93b8f0}span.rhythm-sw.rhythm-l3{background:#4a8ae6}span.rhythm-sw.rhythm-l4{background:var(--blue-600)}.rhythm-tip-box{fill:var(--slate-800)}.rhythm-tip-t1{fill:var(--color-white);font-size:var(--text-11px);font-weight:600;font-family:inherit}.rhythm-tip-t2{fill:var(--slate-300);font-size:var(--text-10px);font-family:inherit}.rhythm-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.rhythm-legend-scale{display:inline-flex;align-items:center;gap:4px}.rhythm-legend-label{font-size:var(--text-074rem);color:var(--slate-400);margin:0 4px}.rhythm-legend-note{font-size:var(--text-078rem);color:var(--slate-500);font-style:italic}.records-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:20px}.records-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.records-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.records-sub{font-size:var(--text-08rem);color:var(--slate-400)}.records-empty{color:var(--slate-500);max-width:60ch;display:flex;flex-direction:column;gap:10px}.records-empty strong{color:var(--slate-800)}.records-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.records-tile{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px}.records-tile-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600}.records-tile-value{font-size:var(--text-15rem);font-weight:650;color:var(--slate-800);margin-top:4px;letter-spacing:-.01em}.records-tile-value small{font-size:var(--text-085rem);font-weight:550;color:var(--slate-500)}.records-tile-note{font-size:var(--text-074rem);color:var(--slate-400);margin-top:3px;display:flex;align-items:center;gap:6px}.records-new{color:var(--emerald-700);font-weight:600}.records-feed{display:flex;flex-direction:column}.records-feed-head{font-size:var(--text-078rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600;margin-bottom:4px}.records-feed-empty{font-size:var(--text-085rem);color:var(--slate-400);font-style:italic}.records-row{display:flex;gap:12px;padding:11px 0;border-top:1px solid var(--slate-100);align-items:flex-start}.records-row:first-of-type{border-top:none}.records-badge{font-size:.62rem;font-weight:700;letter-spacing:.03em;padding:3px 7px;border-radius:var(--radius-5);white-space:nowrap;margin-top:1px;flex:none}.records-badge--win{background:var(--blue-100);color:var(--blue-700)}.records-badge--breakthrough{background:var(--amber-100);color:var(--amber-700)}.records-badge--achievement{background:var(--emerald-100);color:var(--emerald-700)}.records-row-body{flex:1;min-width:0}.records-row-title{font-size:var(--text-09rem);color:var(--slate-800);font-weight:500}.records-row-sub{font-size:var(--text-082rem);color:var(--slate-500);margin-top:2px}.records-row-date{font-size:.76rem;color:var(--slate-400);white-space:nowrap;margin-top:2px}.records-more{font-size:var(--text-078rem);color:var(--slate-400);padding-top:11px;border-top:1px solid var(--slate-100)}.trends-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:18px}.trends-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.trends-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.trends-sub{font-size:var(--text-08rem);color:var(--slate-400)}.trends-empty{color:var(--slate-500);max-width:62ch;display:flex;flex-direction:column;gap:10px}.trends-empty strong{color:var(--slate-800)}.trends-goalpicker{display:flex;flex-wrap:wrap;gap:6px}.trends-goal-btn{padding:5px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-16);background:var(--color-white);color:var(--slate-500);font-size:var(--text-08rem);font-weight:500;cursor:pointer;font-family:inherit}.trends-goal-btn:hover{background:var(--slate-100);color:var(--slate-800)}.trends-goal-btn.is-active{background:var(--blue-600);color:var(--color-white);border-color:var(--blue-600)}.trends-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.trends-chart{display:flex;flex-direction:column;gap:8px}.trends-chart-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.trends-chart-title{font-size:var(--text-09rem);font-weight:600;color:var(--slate-800)}.trends-est{font-size:var(--text-072rem);font-weight:500;color:var(--slate-400)}.trends-svg{width:100%;height:auto;display:block;overflow:visible}.trends-nodata{font-size:var(--text-082rem);color:var(--slate-400);font-style:italic;padding:24px 0;text-align:center}.trends-legend{font-size:var(--text-072rem);color:var(--slate-400)}.trends-gl{stroke:var(--slate-tint-custom);stroke-width:1}.trends-axis-txt{font-size:var(--text-10px);fill:var(--slate-400);font-family:inherit}.trends-band{fill:#10a30c14}.trends-ref{stroke:var(--slate-400);stroke-width:1;stroke-dasharray:3 3}.trends-zero{stroke:var(--slate-300);stroke-width:1}.trends-line{fill:none;stroke:var(--blue-600);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.trends-dot{fill:var(--blue-600);stroke:var(--color-white);stroke-width:1.5}.trends-dot.pos{fill:var(--blue-600)}.trends-dot.neg{fill:#d03b3b}.trends-endlabel{font-size:var(--text-10px);fill:var(--slate-800);font-weight:600;font-family:inherit}.trends-badge{font-size:var(--text-068rem);font-weight:700;letter-spacing:.02em;padding:3px 9px;border-radius:var(--radius-12);white-space:nowrap}.trends-badge--ok{background:var(--emerald-100);color:var(--emerald-700)}.trends-badge--warn{background:var(--amber-100);color:var(--amber-700)}.trends-badge--ahead{background:var(--blue-100);color:var(--blue-700)}.trends-note-inline{font-size:var(--text-072rem);color:var(--slate-400);font-style:italic}.burndown-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:18px}.burndown-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.burndown-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.burndown-sub{font-size:var(--text-08rem);color:var(--slate-400)}.burndown-empty{color:var(--slate-500);max-width:62ch;display:flex;flex-direction:column;gap:10px}.burndown-empty strong{color:var(--slate-800)}.burndown-goalpicker{display:flex;flex-wrap:wrap;gap:6px}.burndown-goal-btn{padding:5px 12px;border:1px solid var(--slate-200);border-radius:var(--radius-16);background:var(--color-white);color:var(--slate-500);font-size:var(--text-08rem);font-weight:500;cursor:pointer;font-family:inherit}.burndown-goal-btn:hover{background:var(--slate-100);color:var(--slate-800)}.burndown-goal-btn.is-active{background:var(--blue-600);color:var(--color-white);border-color:var(--blue-600)}.burndown-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.burndown-tile{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px}.burndown-tile--eta{background:var(--blue-50);border-color:var(--blue-200)}.burndown-tile-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600}.burndown-tile-value{font-size:var(--text-15rem);font-weight:650;color:var(--slate-800);margin-top:4px;letter-spacing:-.01em}.burndown-tile--eta .burndown-tile-value{color:var(--blue-600)}.burndown-tile-value small{font-size:var(--text-085rem);font-weight:550;color:var(--slate-500)}.burndown-tile-note{font-size:var(--text-074rem);color:var(--slate-500);margin-top:3px}.burndown-chart{display:flex;flex-direction:column;gap:10px}.burndown-chart svg{width:100%;height:auto;display:block;overflow:visible}.burndown-gl{stroke:var(--slate-tint-custom);stroke-width:1}.burndown-axis{stroke:var(--slate-300);stroke-width:1}.burndown-axis-txt{font-size:var(--text-10px);fill:var(--slate-400);font-family:inherit}.burndown-area{fill:#2563eb14}.burndown-line{fill:none;stroke:var(--blue-600);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.burndown-now{fill:var(--blue-600);stroke:var(--color-white);stroke-width:2}.burndown-cone{fill:#2563eb1a;stroke:none}.burndown-proj{stroke:var(--blue-600);stroke-width:1.5;stroke-dasharray:5 4;opacity:.65}.burndown-today{stroke:var(--slate-300);stroke-width:1;stroke-dasharray:2 3}.burndown-mark{fill:var(--color-white);stroke:var(--blue-600);stroke-width:2}.burndown-mark-txt{font-size:var(--text-10px);fill:var(--slate-800);font-weight:600;font-family:inherit}.burndown-legend{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:var(--text-078rem);color:var(--slate-500)}.burndown-lg{display:inline-flex;align-items:center;gap:7px}.burndown-sw{display:inline-block}.burndown-sw-line{width:18px;height:3px;border-radius:var(--radius-2);background:var(--blue-600)}.burndown-sw-cone{width:12px;height:11px;border-radius:var(--radius-2);background:#2563eb33}.burndown-legend-note{color:var(--slate-400);font-style:italic}.goalsprog-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:18px}.goalsprog-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.goalsprog-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.goalsprog-sub{font-size:var(--text-08rem);color:var(--slate-400)}.goalsprog-empty{color:var(--slate-500);max-width:60ch;display:flex;flex-direction:column;gap:10px}.goalsprog-empty strong{color:var(--slate-800)}.goalsprog-allocation-summary{font-size:var(--text-08rem);color:var(--slate-500);background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:8px 12px;margin-top:10px}.goalsprog-list{display:flex;flex-direction:column;gap:18px;margin-top:14px}.goalsprog-row{display:flex;flex-direction:column;gap:6px}.goalsprog-row-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.goalsprog-name{font-size:var(--text-095rem);font-weight:600;color:var(--slate-800)}.goalsprog-pct{font-size:var(--text-08rem);color:var(--slate-500);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.goalsprog-badge{font-size:.66rem;font-weight:700;letter-spacing:.02em;padding:2px 7px;border-radius:var(--radius-10);background:var(--emerald-100);color:var(--emerald-700)}.goalsprog-final{font-size:.66rem;font-weight:700;letter-spacing:.02em;padding:2px 7px;border-radius:var(--radius-10);background:var(--blue-50);color:var(--blue-700)}.goalsprog-track{height:12px;background:#eef2f7;border-radius:var(--radius-7);overflow:hidden}.goalsprog-fill{height:100%;border-radius:var(--radius-7);background:#60a5fa;transition:width .2s ease}.goalsprog-fill.is-final{background:var(--blue-600)}.goalsprog-fill.is-complete{background:#10a30c}.goalsprog-meta{font-size:.76rem;color:var(--slate-400)}.fq-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:24px;display:flex;flex-direction:column;gap:16px}.fq-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.fq-title{font-size:var(--text-105rem);font-weight:600;color:var(--slate-800)}.fq-sub{font-size:var(--text-08rem);color:var(--slate-400)}.fq-empty{color:var(--slate-500);max-width:60ch;display:flex;flex-direction:column;gap:10px}.fq-empty strong{color:var(--slate-800)}.fq-banner{font-size:var(--text-08rem);color:var(--amber-700);background:var(--amber-50);border:1px solid #fde68a;border-radius:var(--radius-8);padding:8px 12px}.fq-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.fq-tile{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:12px 14px}.fq-tile-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600}.fq-tile-value{font-size:1.6rem;font-weight:650;color:var(--slate-800);margin-top:4px;letter-spacing:-.01em}.fq-delta{font-size:var(--text-078rem);font-weight:600;margin-top:3px}.fq-delta--good{color:var(--emerald-700)}.fq-delta--bad{color:var(--red-700)}.fq-delta--neutral{color:var(--blue-600)}.fq-delta--flat{color:var(--slate-400)}.fq-tile-note{font-size:var(--text-072rem);color:var(--slate-400);margin-top:4px}.fq-caveat{font-size:var(--text-078rem);color:var(--slate-400);font-style:italic;line-height:1.45}.recap-overlay{position:fixed;inset:0;z-index:1000;background:#0f172a8c;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto}.recap-modal{position:relative;width:100%;max-width:560px;background:var(--color-white);border-radius:var(--radius-16);box-shadow:var(--shadow-modal-lg)}.recap-close{position:absolute;top:12px;right:12px;z-index:2;width:30px;height:30px;border-radius:50%;border:none;background:#ffffffb3;color:var(--slate-700);font-size:1.2rem;line-height:1;cursor:pointer;font-family:inherit}.recap-close:hover{background:var(--color-white)}.recap-panel-wrap{max-width:560px}.recap{border-radius:var(--radius-16);overflow:hidden;border:1px solid var(--slate-200);background:radial-gradient(1200px 200px at 10% -40%,rgba(37,99,235,.14),transparent 60%),linear-gradient(180deg,#f5f8ff 0%,var(--color-white) 120px);padding:30px 28px 26px;display:flex;flex-direction:column;gap:14px}.recap-eyebrow{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.12em;color:var(--blue-600);font-weight:700}.recap-month{font-size:1.9rem;font-weight:720;color:var(--slate-900);letter-spacing:-.02em;margin:0}.recap-headline{font-size:1.15rem;font-weight:600;color:var(--slate-800);margin-top:-6px}.recap-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:6px}.recap-stat{background:var(--color-white);border:1px solid #e6ebf2;border-radius:var(--radius-10);padding:12px 6px;text-align:center}.recap-stat-val{font-size:var(--text-15rem);font-weight:680;color:var(--slate-900);letter-spacing:-.02em}.recap-stat-val small{font-size:var(--text-08rem);font-weight:560;color:var(--slate-500)}.recap-stat-lbl{font-size:var(--text-068rem);color:var(--slate-400);text-transform:uppercase;letter-spacing:.03em;margin-top:2px}.recap-callout{display:flex;gap:10px;align-items:flex-start;background:var(--emerald-50);border:1px solid #a7f3d0;border-radius:var(--radius-10);padding:12px 14px;font-size:var(--text-09rem);color:#065f46}.recap-callout strong{color:var(--emerald-700)}.recap-callout-icon{color:#059669;font-weight:700}.recap-records{display:flex;flex-wrap:wrap;gap:8px}.recap-record{font-size:var(--text-08rem);color:var(--slate-800);background:var(--blue-50);border:1px solid var(--blue-200);border-radius:var(--radius-8);padding:6px 10px}.recap-record strong{color:var(--blue-700)}.recap-section-label{font-size:var(--text-072rem);text-transform:uppercase;letter-spacing:.04em;color:var(--slate-400);font-weight:600;margin-bottom:6px}.recap-highlights{display:flex;flex-direction:column}.recap-hl-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--slate-100)}.recap-hl-row:first-of-type{border-top:none}.recap-badge{font-size:.6rem;font-weight:700;letter-spacing:.02em;padding:2px 6px;border-radius:var(--radius-5);white-space:nowrap}.recap-badge--win{background:var(--blue-100);color:var(--blue-700)}.recap-badge--breakthrough{background:var(--amber-100);color:var(--amber-700)}.recap-badge--achievement{background:var(--emerald-100);color:var(--emerald-700)}.recap-hl-title{flex:1;font-size:.88rem;color:var(--slate-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recap-hl-date{font-size:var(--text-074rem);color:var(--slate-400);white-space:nowrap}.recap-goals{font-size:.88rem;color:var(--slate-700)}.recap-goals strong{color:var(--slate-800)}.recap-goals-icon{color:var(--blue-600)}.recap-fresh{font-size:var(--text-09rem);color:var(--blue-600);font-weight:600;text-align:center;padding-top:8px;border-top:1px solid #eef2f7;margin-top:4px}.recap-empty{color:var(--slate-500);font-size:.92rem;line-height:1.5}@media(max-width:480px){.recap-stats{grid-template-columns:repeat(2,1fr)}}.graph-panel-loading{padding:40px;text-align:center;color:var(--slate-500);font-size:var(--text-09rem)}.graph-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:16px}.graph-panel-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}.graph-panel-label{font-size:var(--text-08rem);font-weight:600;color:var(--slate-500)}.graph-panel-select{padding:5px 10px;border:1px solid var(--slate-200);border-radius:var(--radius-6);font-size:var(--text-085rem);color:var(--slate-800);background:var(--color-white)}.graph-panel-hint{font-size:var(--text-075rem);color:var(--slate-400);margin-left:auto}.graph-panel-body{display:flex;gap:12px}.graph-panel-canvas{flex:1 1 auto;height:70vh;min-height:420px;border:1px solid var(--slate-100);border-radius:var(--radius-8);background:#fafafa}.graph-panel-detail{flex:0 0 260px;border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:14px;align-self:flex-start;max-height:70vh;overflow-y:auto}.graph-panel-detail-type{font-size:var(--text-068rem);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--slate-400);margin-bottom:4px}.graph-panel-detail-title{font-size:var(--text-095rem);color:var(--slate-800);margin:0 0 10px;line-height:1.35}.graph-panel-detail-field{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-top:1px solid var(--slate-100)}.graph-panel-detail-field:first-of-type{border-top:none}.graph-panel-detail-field-label{font-size:var(--text-068rem);font-weight:600;color:var(--slate-400)}.graph-panel-detail-field-value{font-size:var(--text-082rem);color:var(--slate-700);line-height:1.4;white-space:pre-wrap}.graph-mode-switch-wrap{display:flex;flex-direction:column;gap:10px}.graph-mode-switch{display:inline-flex;align-self:flex-start;border:1px solid var(--slate-200);border-radius:var(--radius-8);padding:3px;gap:3px;background:var(--slate-50)}.graph-mode-btn{padding:5px 14px;border:none;border-radius:var(--radius-6);background:transparent;color:var(--slate-500);font-size:var(--text-082rem);font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.graph-mode-btn:hover{color:var(--slate-800)}.graph-mode-btn--active{background:var(--color-white);color:var(--slate-800);box-shadow:var(--shadow-subtle-alt)}.graph-panel-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer}.capture-inbox-panel{background:var(--color-white);border:1px solid var(--slate-200);border-radius:var(--radius-10);box-shadow:var(--shadow-card);padding:20px;display:flex;flex-direction:column;gap:12px}.capture-inbox-header{display:flex;align-items:center;justify-content:space-between}.capture-inbox-title{font-size:var(--text-1rem);font-weight:600;color:var(--slate-800)}.capture-inbox-refresh-btn{background:none;border:1px solid var(--slate-200);border-radius:var(--radius-4);color:var(--slate-600);font-size:var(--text-0875rem);padding:4px 10px;cursor:pointer}.capture-inbox-refresh-btn:hover{background:var(--slate-100)}.capture-inbox-empty{color:var(--slate-400);font-size:var(--text-095rem);padding:24px 0;text-align:center}.capture-inbox-error{color:var(--red-700);background:var(--red-100);border:1px solid var(--red-300);border-radius:var(--radius-4);padding:8px 12px;font-size:var(--text-0875rem)}.capture-inbox-row{border:1px solid var(--slate-200);border-radius:var(--radius-4);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.capture-inbox-row-meta{display:flex;gap:10px;align-items:center;font-size:var(--text-08rem);color:var(--slate-500)}.capture-inbox-duration{font-weight:600;color:var(--slate-800)}.capture-inbox-transcript{font-size:var(--text-095rem);color:var(--slate-800);font-style:italic;display:flex;align-items:baseline;gap:8px}.capture-inbox-transcript--empty{color:var(--slate-400);font-style:normal}.capture-inbox-edit-btn{background:none;border:none;color:var(--blue-500);font-size:var(--text-08rem);font-style:normal;cursor:pointer;padding:0}.capture-inbox-edit-btn:hover{text-decoration:underline}.capture-inbox-edit{display:flex;flex-direction:column;gap:6px}.capture-inbox-edit-textarea{width:100%;font-size:var(--text-095rem);font-family:inherit;padding:8px;border:1px solid var(--slate-200);border-radius:var(--radius-4);resize:vertical;box-sizing:border-box}.capture-inbox-edit-actions{display:flex;gap:8px}.capture-inbox-edit-save-btn{background:var(--blue-500);color:#fff;border:none;border-radius:var(--radius-4);padding:4px 12px;font-size:var(--text-08rem);cursor:pointer}.capture-inbox-edit-save-btn:disabled{opacity:.6;cursor:default}.capture-inbox-edit-cancel-btn{background:none;border:1px solid var(--slate-200);border-radius:var(--radius-4);padding:4px 12px;font-size:var(--text-08rem);color:var(--slate-600);cursor:pointer}.capture-inbox-suggestions-loading{font-size:var(--text-08rem);color:var(--slate-400)}.capture-inbox-suggestions{display:flex;flex-wrap:wrap;gap:6px}.capture-inbox-suggestion-chip{padding:4px 10px;border:1px solid var(--blue-500);border-radius:999px;background:transparent;color:var(--blue-500);font-size:var(--text-08rem);cursor:pointer;font-family:inherit;transition:all .15s ease}.capture-inbox-suggestion-chip:hover,.capture-inbox-suggestion-chip--selected{background:var(--blue-500);color:var(--color-white)}.capture-inbox-picker{display:flex;gap:8px;flex-wrap:wrap}.capture-inbox-picker select{padding:6px 10px;border:1px solid var(--slate-200);border-radius:var(--radius-4);font-size:var(--text-0875rem);font-family:inherit;color:var(--slate-800);background:var(--color-white)}.capture-inbox-row-error{color:var(--red-700);font-size:var(--text-08rem)}.capture-inbox-row-actions{display:flex;gap:8px;justify-content:flex-end}.capture-inbox-attribute-btn{padding:6px 16px;border:none;border-radius:var(--radius-4);background:var(--green-500);color:var(--color-white);font-size:var(--text-08rem);font-weight:500;cursor:pointer;font-family:inherit;transition:opacity .15s ease}.capture-inbox-attribute-btn:disabled{opacity:.5;cursor:not-allowed}.capture-inbox-discard-btn{padding:6px 16px;border:1px solid var(--red-500);border-radius:var(--radius-4);background:transparent;color:var(--red-500);font-size:var(--text-08rem);font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.capture-inbox-discard-btn:hover:not(:disabled){background:var(--red-500);color:var(--color-white)}.capture-inbox-discard-btn:disabled{opacity:.5;cursor:not-allowed}
