:root{color-scheme:light;--bg: #f7f7f5;--surface: #ffffff;--surface-muted: #f1f2f0;--text: #1f1f1d;--muted: #666761;--border: #d9d9d5;--border-strong: #c3c3bd;--accent: #f2b705;--accent-hover: #e1a900;--danger: #b42318;--focus: rgba(242, 183, 5, .35);--radius: 8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.45;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#ffffffb8,#fff0 220px),var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--text);outline:none}input,select{min-height:44px;padding:0 12px}textarea{min-height:132px;padding:12px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}.screen-center{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.app-shell{width:min(1120px,100%);margin:0 auto;padding:28px 20px 42px}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:26px}.header-title{display:grid;gap:10px}.app-header h1,.login-panel h1{margin:0;font-size:34px;line-height:1.1;letter-spacing:0}.section-tabs{display:inline-flex;width:fit-content;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);padding:3px}.section-tabs button,.mode-switch button{border:0;background:transparent;color:var(--muted);border-radius:6px;min-height:38px;padding:0 18px}.section-tabs button.active,.mode-switch button.active{background:#fff;color:var(--text);box-shadow:0 1px 2px #1f1e1a14}.text-action{border:0;background:transparent;padding:7px 0;color:var(--text)}.surface{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.primary-button,.secondary-button{min-height:44px;border-radius:var(--radius);padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;font-weight:600}.primary-button{background:var(--accent);color:#191710;border-color:#dcaa10}.primary-button:hover{background:var(--accent-hover)}.secondary-button{background:#fff;color:var(--text);border-color:var(--border)}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text)}.icon-button:hover{background:var(--surface-muted)}.comment-button.has-comment{color:var(--accent)}.comment-button.has-comment:hover{background:#f2b70524}.danger,.danger-text{color:var(--danger)}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-panel{width:min(390px,100%);display:grid;gap:18px;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.eyebrow{margin:0 0 8px;color:var(--muted);font-size:14px}.field{display:grid;gap:7px}.field span{color:var(--muted);font-size:14px}.form-error{border:1px solid rgba(180,35,24,.28);background:#fff5f3;color:var(--danger);border-radius:var(--radius);padding:11px 12px}.task-toolbar{display:grid;grid-template-columns:1fr 1fr minmax(240px,.7fr) auto;gap:14px;align-items:end;margin-bottom:22px}.filter-select{display:grid;gap:7px}.filter-select span{color:var(--muted);font-size:13px}.mode-switch{display:grid;grid-template-columns:1fr 1fr;min-height:46px;padding:3px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted)}.add-task-button{min-width:152px}.empty-state,.loading-line{padding:22px;margin-bottom:20px}.empty-state h2,.stats-panel h2,.project-list h2{margin:0;font-size:22px;line-height:1.25}.empty-state p{margin:8px 0 18px;color:var(--muted)}.task-list{overflow:hidden}.task-section+.task-section{border-top:1px solid var(--border)}.section-header{width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;background:transparent;padding:0 22px;color:var(--text);font-size:21px;font-weight:700;text-align:left}.task-table-head,.task-row{display:grid;grid-template-columns:136px minmax(220px,1fr) 150px 128px 120px;gap:14px;align-items:center}.task-table-head{min-height:44px;padding:0 22px;color:var(--muted);border-top:1px solid var(--border);font-size:14px}.task-row{min-height:82px;padding:12px 22px;border-top:1px solid var(--border)}.compact-select{position:relative;display:flex;align-items:center;min-height:44px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.compact-select select{border:0;background:transparent;padding-left:35px;min-height:42px;font-size:14px}.status-dot{position:absolute;left:12px;width:14px;height:14px;border-radius:50%;background:var(--accent)}.status-dot.new{background:#e3a400}.status-dot.today{background:#0f8f6b}.status-dot.done{background:#58616a}.status-dot.frozen{background:#8c7a57}.task-title-cell{display:grid;gap:5px;min-width:0}.title-button,.kanban-title{border:0;background:transparent;padding:0;color:var(--text);text-align:left}.title-button{width:fit-content;max-width:100%;font-size:16px;font-weight:600}.inline-project{width:fit-content;max-width:100%;min-height:28px;padding:0 22px 0 0;border:0;color:var(--muted);background:transparent;font-size:13px}.date-input,.amount-input{min-height:40px;font-size:14px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:3px}.mobile-row-meta{display:none}.empty-row{padding:18px 22px;color:var(--muted);border-top:1px solid var(--border)}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(230px,1fr));gap:14px;overflow-x:auto;padding-bottom:4px}.kanban-column{min-height:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.kanban-column.over{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--focus)}.kanban-column-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-weight:700}.kanban-column-head b{min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:var(--surface-muted);font-size:13px}.kanban-cards{display:grid;gap:10px}.kanban-card{position:relative;z-index:1;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.kanban-card.dragging{z-index:4;box-shadow:0 12px 28px #1f1e1a1f}.kanban-card-top{display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:start}.drag-handle{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:6px;background:var(--surface-muted);color:var(--muted);touch-action:none}.kanban-title{font-weight:700;line-height:1.35}.kanban-meta{display:grid;gap:3px;margin:10px 0 12px 35px;color:var(--muted);font-size:13px}.kanban-actions{display:flex;justify-content:flex-end;gap:2px}.kanban-empty{border:1px dashed var(--border);border-radius:var(--radius);padding:18px;color:var(--muted);text-align:center}.stats-panel{margin-top:22px;padding:18px 22px 20px}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);margin-top:14px}.stat-item{display:grid;gap:4px;justify-items:center;text-align:center;padding:4px 14px;border-left:1px solid var(--border)}.stat-item:first-child{border-left:0}.stat-item span{color:var(--muted);font-size:14px}.stat-item strong{font-size:22px;line-height:1.2;letter-spacing:0}.projects-page{display:grid;gap:20px}.project-create{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;padding:20px}.project-list{overflow:hidden}.project-list h2{padding:18px 22px}.project-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;min-height:68px;padding:12px 22px;border-top:1px solid var(--border)}.project-row div:first-child{display:grid;gap:3px}.project-row span{color:var(--muted);font-size:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:18px;background:#1f1e1a47}.modal-panel{width:min(560px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.modal-header{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:22px}.form-grid,.comment-modal,.delete-project{display:grid;gap:16px;padding:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-actions{display:flex;justify-content:flex-end;gap:10px}.vertical-actions{display:grid}.muted-text,.delete-project p{margin:0;color:var(--muted)}@media (max-width: 860px){.app-shell{padding:28px 14px 32px}.task-toolbar{grid-template-columns:1fr 1fr}.mode-switch{grid-column:1 / 2}.add-task-button{grid-column:2 / 3;min-width:0}.task-table-head,.task-row{grid-template-columns:128px minmax(0,1fr) 46px}.task-table-head span:nth-child(3),.task-table-head span:nth-child(4),.date-input,.amount-input,.row-edit{display:none}.task-row{min-height:92px;gap:10px}.row-actions{flex-direction:column}.mobile-row-meta{grid-column:2 / 3;display:flex;gap:12px;color:var(--muted);font-size:13px;margin-top:-16px}.stats-grid{grid-template-columns:repeat(3,1fr);row-gap:14px}.stat-item:nth-child(4){border-left:0}.kanban-board{grid-template-columns:repeat(4,260px);margin-inline:-14px;padding-inline:14px}}@media (max-width: 560px){.app-header{align-items:flex-start}.app-header h1,.login-panel h1{font-size:30px}.section-tabs button{padding:0 13px}.task-toolbar{grid-template-columns:1fr 1fr;gap:12px}.filter-select span{font-size:12px}.mode-switch,.add-task-button{min-height:48px}.section-header{min-height:54px;padding:0 16px;font-size:18px}.task-table-head,.task-row{padding-inline:16px}.status-dot{width:18px;height:18px}.stats-panel{padding:18px 16px 20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-item,.stat-item:nth-child(4){border-left:0}.stat-item:nth-child(2n){border-left:1px solid var(--border)}.project-create,.project-row{grid-template-columns:1fr}.project-row .row-actions{flex-direction:row;justify-content:flex-start}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .primary-button,.form-actions .secondary-button{width:100%}}
