:root{--panel: rgba(255, 250, 241, .86);--ink: #2f211a;--muted: #8f7d71;--accent: #c14d2d;--success: #6f8b6d;--shadow: 0 24px 80px rgba(71, 46, 28, .18);--date-width: 56px;--task-plan-size: 18px;--task-control-size: 20px;--due-date-plan-tighten: 3px;--due-plan-check-tighten: 7px}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Trebuchet MS,Aptos,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,rgba(255,255,255,.55),transparent 28%),radial-gradient(circle at bottom right,rgba(193,77,45,.18),transparent 26%),linear-gradient(135deg,#f5ead8,#ebd9bf 42%,#dfc39d);padding:36px 18px}button,input,textarea,select{font:inherit}.shell{max-width:1320px;margin:0 auto}.hero{display:grid;gap:12px;margin-bottom:24px;padding:0 6px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:#2f211aa6;font-weight:700}.hero-row{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.brand-lockup{display:inline-flex;align-items:center;gap:14px}.brand-title-stack{display:grid;gap:4px}.brand-icon{width:clamp(56px,8vw,78px);aspect-ratio:1;display:block;flex:0 0 auto}.hero h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.3rem,4vw,4rem);line-height:.95}.brand-version{padding-left:2px;color:#2f211a8a;font-size:.64rem;font-weight:700;letter-spacing:.1em;line-height:1;text-transform:uppercase}.hero-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero-chip{display:inline-flex;align-items:center;min-height:48px;padding:0 16px;border-radius:999px;border:1px solid rgba(71,46,28,.08);background:#ffffff80;font-size:.92rem;line-height:1}.account-menu-shell{position:relative}.account-menu-trigger{gap:12px;cursor:pointer;text-align:left;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.signed-user-chip{flex-wrap:nowrap;max-width:min(480px,100%);padding-block:8px}.signed-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;overflow:hidden;flex:0 0 auto;background:linear-gradient(135deg,#c14d2d2e,#472e1c2e);color:#2f211ac2;font-size:.88rem;font-weight:800}.signed-user-avatar img{width:100%;height:100%;object-fit:cover}.signed-user-copy{display:grid;min-width:0;gap:2px}.signed-user-name{font-weight:800;white-space:nowrap}.signed-user-email{min-width:0;max-width:260px;overflow:hidden;color:#2f211a9e;font-size:.84rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.account-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:25;display:grid;min-width:min(320px,calc(100vw - 24px));padding:10px;border:1px solid rgba(71,46,28,.12);border-radius:20px;background:#fff8edfa;box-shadow:0 20px 42px #29181033;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.account-menu-profile{display:flex;align-items:center;gap:12px;padding:8px 8px 12px;margin-bottom:6px;border-bottom:1px solid rgba(71,46,28,.08)}.menu-avatar{width:42px;height:42px;font-size:1rem}.account-menu-profile-copy{min-width:0}.account-menu-profile-name{font-weight:800}.account-menu-profile-email{overflow:hidden;color:#2f211a9e;font-size:.84rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.account-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:0;border-radius:14px;background:transparent;color:var(--ink);padding:12px 14px;font-size:.94rem;font-weight:800;text-align:left;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.account-menu-item:hover:not(:disabled),.account-menu-trigger:hover:not(:disabled){background:#fff9}.account-menu-item:disabled{opacity:.55;cursor:not-allowed}.auth-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:48px;padding:0 16px;border:1px solid rgba(71,46,28,.1);border-radius:999px;background:#472e1c14;color:var(--ink);cursor:pointer;font-size:.92rem;font-weight:800;line-height:1;box-shadow:0 8px 18px #472e1c14;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.window{background:#fff8ed94;border:1px solid rgba(255,255,255,.55);border-radius:32px;box-shadow:var(--shadow);overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.window-bar{display:flex;align-items:center;gap:16px;padding:16px 22px;background:#5c3e2c14;border-bottom:1px solid rgba(71,46,28,.08)}.dots{display:flex;gap:8px}.dot{width:12px;height:12px;border-radius:999px;background:#2f211a38}.board{padding:28px 28px 34px;position:relative}.action-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:2px 0 12px}.create-button,.close-day-button,.send-plans-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:16px;padding:14px 18px;font-weight:700;font-size:.96rem;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.action-row-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0 2px;background:transparent;color:#2f211abd;font-size:.94rem;font-weight:700;text-decoration:underline;text-underline-offset:.18em;cursor:pointer}.create-button{min-width:260px;background:linear-gradient(135deg,#ca5735,#a93f22);color:#fff9f3;box-shadow:0 10px 22px #a93f2233}.close-day-button,.send-plans-button{min-width:210px;background:#472e1c14;color:var(--ink);border:1px solid rgba(71,46,28,.1);box-shadow:0 8px 18px #472e1c14}.create-button:hover:not(:disabled),.close-day-button:hover:not(:disabled),.send-plans-button:hover:not(:disabled),.action-row-link:hover:not(:disabled),.auth-button:hover:not(:disabled),.task-edit-button:hover:not(:disabled),.task-copy-button:hover:not(:disabled),.task-delete-button:hover:not(:disabled),.task-confirm-button:hover:not(:disabled),.task-cancel-button:hover:not(:disabled),.create-task-ok:hover:not(:disabled),.create-task-cancel:hover:not(:disabled),.create-task-clear:hover:not(:disabled),.create-task-assign-button:hover:not(:disabled),.create-task-tag:hover:not(:disabled){filter:brightness(1.02)}.create-button:active:not(:disabled),.close-day-button:active:not(:disabled),.send-plans-button:active:not(:disabled),.action-row-link:active:not(:disabled),.auth-button:active:not(:disabled),.task-edit-button:active:not(:disabled),.task-copy-button:active:not(:disabled),.task-delete-button:active:not(:disabled),.task-confirm-button:active:not(:disabled),.task-cancel-button:active:not(:disabled),.create-task-ok:active:not(:disabled),.create-task-cancel:active:not(:disabled),.create-task-clear:active:not(:disabled),.create-task-assign-button:active:not(:disabled),.create-task-tag:active:not(:disabled){transform:translateY(1px) scale(.985);box-shadow:inset 0 2px 5px #0000001f}button:disabled{opacity:.55;cursor:not-allowed}.status-banner{display:none;margin-bottom:18px;padding:14px 16px;border-radius:16px;border:1px solid rgba(71,46,28,.08);background:var(--panel)}.status-banner.visible{display:block}.status-banner.error{color:#7a2514;background:#c14d2d1a}.status-banner.warning{color:#7a5314;background:#c5913229}.groups{display:grid;gap:18px}.drop-slot{display:none;margin:0 10px 6px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(71,46,28,.18);color:#2f211a94;font-size:.88rem;background:#ffffff52}.drop-slot.active{display:block}.drop-slot.over{border-color:#c14d2d8c;background:#c14d2d14;color:var(--accent)}.group{background:var(--panel);border:1px solid rgba(71,46,28,.08);border-radius:28px;padding:18px 18px 14px;position:relative;overflow:hidden}.group:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:999px;background:linear-gradient(180deg,#c14d2de6,#c14d2d33)}.group.completed:before{background:linear-gradient(180deg,#6f8b6de6,#6f8b6d2e)}.group.future:before{background:linear-gradient(180deg,#472e1c5c,#472e1c1a)}.group-header{padding:2px 0 10px 10px}.group-header h2{margin:0;font-size:1.05rem;letter-spacing:.02em}.tasks{display:grid;gap:0}.tasks.empty-drop-target{min-height:52px;border-radius:16px;border:1px dashed transparent}.tasks.empty-drop-target.over{border-color:#c14d2d6b;background:#c14d2d0f}.empty-state{padding:12px 10px 8px;color:var(--muted)}.task{display:grid;grid-template-columns:var(--date-width) var(--task-plan-size) var(--task-control-size) minmax(0,1fr) auto var(--task-control-size);align-items:center;gap:12px;min-height:calc(var(--task-control-size) + 4px);padding:2px 10px;border-radius:14px;border:1px solid transparent;background:transparent}.task.sortable-row{cursor:grab;touch-action:none}.task.sortable-row:active{cursor:grabbing}.task:hover{background:#ffffff7a;border-color:#472e1c12}.action-row-link:disabled{opacity:.55;cursor:not-allowed}.task.dragging{opacity:.92;background:#fff8edf5;border-color:#c14d2d2e;box-shadow:0 14px 28px #472e1c1f;z-index:2}.task.completed,.task.completed .task-title{color:#8f8a85}.task.due .task-title{font-weight:800}.task.done-in-due{color:#8f8a85}.task.done-in-due .task-title{font-weight:600}.task.completed .task-description-text,.task.done-in-due .task-description-text{text-decoration:line-through}.date{grid-column:1;font-variant-numeric:tabular-nums;font-weight:700;color:#2f211ab3;letter-spacing:.03em}.task-marker,.task-body{min-width:0}.task-plan-slot{grid-column:2;display:inline-grid;place-items:center;width:var(--task-plan-size);min-height:var(--task-control-size);justify-self:center}.task.due .task-plan-slot{margin-left:calc(var(--due-date-plan-tighten) * -1)}.task-plan-icon{width:16px;height:16px;display:block;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(71,46,28,.12))}.task-marker,.due-check{grid-column:3}.task-body{grid-column:4;min-width:0}.task-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.98rem;line-height:1.18}.task-description-text{min-width:0}.task-schedule-tag,.task-tag,.task-source-tag{display:inline-flex;align-items:center;min-height:18px;padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:800;line-height:1;white-space:nowrap}.task-schedule-tag{background:#472e1c14;border:1px solid rgba(71,46,28,.07);color:#2f211a9e}.task-source-tag{background:#dbeafe;color:#1d4ed8}.task-tag{background:var(--task-tag-background);border:1px solid var(--task-tag-border);color:var(--task-tag-color)}.due-check{display:inline-grid;place-items:center;width:var(--task-control-size);height:var(--task-control-size);justify-self:center}.task.due .due-check{margin-left:calc(var(--due-plan-check-tighten) * -1)}.task-marker{width:var(--task-control-size);height:var(--task-control-size)}.due-check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;margin:0;border-radius:6px;border:1.5px solid rgba(71,46,28,.26);background:#ffffffc7;display:grid;place-items:center;cursor:pointer}.due-check input:after{content:"";width:8px;height:4px;border-left:2px solid white;border-bottom:2px solid white;transform:rotate(-45deg);margin-top:-1px;opacity:0}.due-check input:checked{background:var(--success);border-color:var(--success)}.due-check input:checked:after{opacity:1}.task-actions{grid-column:5;display:flex;gap:8px;justify-self:end;align-items:center;flex-wrap:wrap}.task-edit-button,.task-copy-button,.task-delete-button,.task-confirm-button,.task-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;padding:5px 11px;font-size:.76rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 6px 14px #472e1c14;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.task-edit-button,.task-copy-button,.task-cancel-button{border:1px solid rgba(71,46,28,.14);background:#ffffffad;color:var(--ink)}.task-delete-button{border:1px solid rgba(193,77,45,.2);background:#c14d2d1a;color:#9a381d}.task-confirm-button{border:1px solid transparent;background:linear-gradient(135deg,#ca5735,#a93f22);color:#fff9f3}.drag{grid-column:6;width:var(--task-control-size);height:var(--task-control-size);border-radius:10px;border:1px solid rgba(71,46,28,.1);display:grid;place-items:center;color:#2f211a73;background:#ffffff85;justify-self:end;-webkit-user-select:none;user-select:none}.drag:before{content:"⋮⋮";line-height:1;letter-spacing:-.18em;transform:translate(-2px)}.saving-scrim{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#25171157;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20}.create-task-modal{width:min(100%,520px);background:#fff8edf5;border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 32px 80px #2918103d;padding:26px 26px 28px}.reassigned-tasks-modal{width:min(100%,960px)}.statistics-modal{width:min(100%,680px)}.create-task-header{display:grid;gap:8px;margin-bottom:18px}.create-task-header h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,2.4rem);line-height:.96}.create-task-header p{margin:0;color:#2f211ab8}.create-task-field{display:grid;gap:10px}.create-task-due-date-field{margin-top:14px}.create-task-schedule-field,.create-task-tags-field{margin-top:16px}.create-task-field>span{font-size:.84rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#2f211aa3}.create-task-field input{width:100%;border:1px solid rgba(71,46,28,.14);border-radius:18px;background:#ffffffd6;padding:15px 18px;color:var(--ink);outline:none;box-shadow:inset 0 1px #ffffffa6}.create-task-field input:focus{border-color:#c14d2d9e;box-shadow:0 0 0 4px #c14d2d24,inset 0 1px #ffffffb3}.create-task-field input[aria-invalid=true]{border-color:#c14d2db8}.create-task-error{margin-top:8px;color:#9a381d;font-size:.92rem;line-height:1.3}.create-task-tags{display:flex;flex-wrap:wrap;gap:9px}.create-task-tag{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:34px;padding:8px 14px;border-radius:999px;border:1px solid rgba(71,46,28,.14);background:#fff8edf5;color:var(--ink);font-weight:800;line-height:1;cursor:pointer;box-shadow:0 6px 14px #472e1c0f;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.create-task-tag.selected{border-color:transparent;background:linear-gradient(135deg,#ca5735,#a93f22);color:#fff9f3;box-shadow:0 10px 22px #a93f2233}.create-task-tags-empty{color:var(--muted);font-size:.92rem}.create-task-date-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);align-items:center;gap:10px}.create-task-date-input{width:100%;min-width:0;padding:12px 14px}.create-task-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:14px;padding:11px 14px;font-weight:700;background:#472e1c14;color:var(--ink);border:1px solid rgba(71,46,28,.1);cursor:pointer;box-shadow:0 8px 18px #472e1c14;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.create-task-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:20px;flex-wrap:wrap}.create-task-primary-actions,.create-task-assign{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.create-task-assign{position:relative;margin-right:auto}.create-task-assign-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:14px;padding:12px 14px;max-width:260px;font-weight:700;border:1px solid rgba(71,46,28,.1);background:#472e1c14;color:var(--ink);cursor:pointer;box-shadow:0 8px 18px #472e1c14;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.create-task-assign-button:after{content:"";display:inline-block;width:7px;height:7px;margin-left:10px;border-right:2px solid rgba(47,33,26,.58);border-bottom:2px solid rgba(47,33,26,.58);transform:translateY(-2px) rotate(45deg)}.create-task-assign-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;display:grid;min-width:210px;max-width:min(320px,78vw);padding:6px;border:1px solid rgba(71,46,28,.14);border-radius:14px;background:#fff8edfa;box-shadow:0 18px 42px #29181033}.create-task-assign-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;border:0;border-radius:10px;background:transparent;color:var(--ink);padding:10px 12px;font-weight:700;text-align:left;cursor:pointer}.create-task-assign-option:hover,.create-task-assign-option[aria-selected=true]{background:#c14d2d1a}.create-task-assign-option span{color:#2f211a8f;font-size:.82rem;font-weight:700}.create-task-ok,.create-task-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:14px;padding:12px 18px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background .12s ease}.create-task-ok{background:linear-gradient(135deg,#ca5735,#a93f22);color:#fff9f3;box-shadow:0 10px 22px #a93f2233}.create-task-ok:disabled,.create-task-clear:disabled{opacity:.55;cursor:not-allowed}.create-task-cancel{background:#472e1c14;color:var(--ink);border-color:#472e1c1a;box-shadow:0 8px 18px #472e1c14}.reassigned-table-wrap{max-height:min(58vh,520px);overflow:auto;border:1px solid rgba(71,46,28,.08);border-radius:20px;background:#ffffff80}.reassigned-table{width:100%;border-collapse:collapse}.reassigned-table th,.reassigned-table td{padding:14px 16px;text-align:left;vertical-align:top}.reassigned-table thead th{position:sticky;top:0;z-index:1;background:#fff8edfa;border-bottom:1px solid rgba(71,46,28,.1);font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#2f211aa3}.reassigned-row td{border-bottom:1px solid rgba(71,46,28,.08)}.reassigned-row.completed .task-description-text{color:#8f8a85;text-decoration:line-through}.reassigned-empty-state{color:var(--muted)}.reassigned-dialog-actions{display:flex;justify-content:flex-end;margin-top:20px}.statistics-chart-shell{display:grid;gap:6px}.statistics-chart{width:100%;height:auto;display:block;border:1px solid rgba(71,46,28,.08);border-radius:24px;background:radial-gradient(circle at top left,rgba(255,255,255,.64),transparent 32%),linear-gradient(180deg,#fffcf8fa,#f7ecdcfa)}.statistics-grid-line{stroke:#472e1c1f;stroke-width:1}.statistics-axis-line{stroke:#472e1c4d;stroke-width:1.5}.statistics-line{fill:none;stroke:#c14d2d;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.statistics-point{fill:#fff7ef;stroke:#a93f22;stroke-width:2.5}.statistics-point-value{fill:#8f341b;font-size:12px;font-weight:800;text-anchor:middle}.statistics-point-delta{font-size:10px;font-weight:800;text-anchor:middle}.statistics-point-delta-created{fill:#b63f24}.statistics-point-delta-completed{fill:#5e7f5d}.statistics-tick-label{fill:#2f211aad;font-size:12px;font-weight:700}.statistics-y-tick-label{text-anchor:end}.statistics-day-label{text-anchor:middle}.statistics-axis-label{color:#2f211ab8;font-size:.84rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.statistics-axis-label-y{padding-left:8px}.statistics-axis-label-x{text-align:center}.statistics-empty-state{padding:38px 20px;border:1px solid rgba(71,46,28,.08);border-radius:24px;background:#ffffff85;color:var(--muted);text-align:center}@media (max-width: 720px){body{padding:20px 12px}.board,.window-bar{padding-left:16px;padding-right:16px}.account-menu{right:auto;left:0}.task{grid-template-columns:minmax(0,1fr) var(--task-plan-size) var(--task-control-size);gap:8px 10px}.date,.task-plan-slot,.task-marker,.due-check,.task-body,.task-actions,.task-edit-button,.drag{grid-column:auto}.drag,.task-actions{justify-self:start}.task-body,.task-actions,.drag{grid-column:1 / -1}.create-task-modal{padding:22px 18px 20px}.reassigned-table th,.reassigned-table td{padding:12px 10px}.statistics-tick-label,.statistics-point-value{font-size:10px}.statistics-point-delta{font-size:9px}.create-task-actions{justify-content:stretch}.create-task-primary-actions,.create-task-assign{width:100%}.create-task-assign-button{width:100%;max-width:none}.create-task-assign-menu{width:100%}.create-task-ok,.create-task-cancel,.create-task-clear{flex:1 1 150px}}
