:root{color-scheme:dark;--bg:#161719;--panel:#1e2023;--raised:#272a2d;--ink:#f3f1ee;--muted:#a8aaa9;--line:#34373b;--accent:#a7d8c5;--accent-ink:#172d25;--error:#ffaaa9;--shadow:0 12px 40px #0004}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.015em}body.light{color-scheme:light;--bg:#f8f7f4;--panel:#fff;--raised:#efeeeb;--ink:#242728;--muted:#646969;--line:#dedfda;--accent:#367c64;--accent-ink:#fff;--error:#a32432;--shadow:0 12px 40px #25252512}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px 14px;min-height:44px;transition:background .15s}button:hover{background:var(--raised)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,article:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:650}.primary:hover{filter:brightness(.94);background:var(--accent)}.quiet{border-color:transparent;background:transparent;color:var(--muted)}.danger{color:var(--error)}input,select,textarea{background:var(--bg);border:1px solid var(--line);border-radius:10px;min-height:46px;padding:10px 12px;width:100%;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent)}textarea{min-height:94px;resize:vertical}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--accent)}label{display:block;font-size:13px;color:var(--muted);margin-bottom:14px}label input,label select,label textarea{margin-top:6px;color:var(--ink)}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-size:40px;font-weight:400;letter-spacing:-.045em;line-height:1.15;margin-bottom:12px}h2{font-size:20px;letter-spacing:-.035em;margin-bottom:4px}h3{font-size:16px;margin-bottom:8px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-weight:650}.brand{display:flex;align-items:center;gap:10px;font-weight:650;font-size:20px;letter-spacing:-.04em}.brand-mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:11px;background:var(--accent);color:var(--accent-ink);font:22px Georgia,serif}.shell{max-width:1190px;margin:0 auto;padding:0 36px 120px}.topbar{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:40px}.nav{display:flex;gap:6px}.nav button{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:8px}.nav button.active{background:var(--raised);color:var(--accent);font-weight:650}.nav svg{width:20px;height:20px}.head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:26px}.head p{color:var(--muted);margin:0}.date{margin-bottom:12px}.counter{display:flex;gap:18px;align-items:center;font-size:13px;padding-top:25px;color:var(--muted);white-space:nowrap}.counter b{color:var(--accent);font-size:25px;margin-right:6px;font-weight:550}.tools{display:flex;gap:12px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.search{position:relative;flex:1;min-width:160px}.search input{padding-left:40px;background:var(--panel)}.search svg{position:absolute;left:13px;top:14px;width:18px;height:18px;color:var(--muted)}.segmented{display:flex;background:var(--panel);border:1px solid var(--line);padding:3px;border-radius:11px}.segmented button{background:transparent;border:0;min-height:38px;padding:6px 13px;color:var(--muted);border-radius:8px}.segmented button.active{color:var(--ink);background:var(--raised);font-weight:600}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:28px}.chip{border-radius:25px;padding:5px 12px;font-size:13px;display:inline-flex;align-items:center;gap:7px;min-height:40px;background:transparent}.chip.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.chip span.count{opacity:.65;font-size:12px;margin-left:2px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}.board{display:grid;grid-template-columns:1fr 1fr;gap:28px}.column-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.column-head p{font-size:12px;color:var(--muted);margin:0}.list-count{display:grid;place-items:center;border:1px solid var(--line);min-width:28px;height:28px;border-radius:8px;color:var(--muted);font-size:12px}.task{position:relative;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:17px 17px 14px;margin-bottom:10px;cursor:pointer}.task:hover{border-color:var(--muted)}.task.progress{border-left:3px solid var(--accent)}.task-row{display:flex;gap:10px;align-items:flex-start}.check{width:44px;min-width:44px;min-height:44px;display:grid;place-items:center;border:0;background:transparent;padding:0;margin:-5px -7px -5px -6px}.circle{border:1.5px solid var(--muted);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px}.done .circle{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.task.done .task-title{text-decoration:line-through;color:var(--muted)}.task-title{font-size:16px;font-weight:550;overflow-wrap:anywhere;line-height:1.45}.task-detail{font-size:13px;color:var(--muted);margin:7px 0 11px;overflow-wrap:anywhere}.task-body{flex:1;min-width:0}.task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.area{background:var(--raised);border-radius:5px;padding:3px 7px;font-size:11px}.target{display:inline-flex;gap:4px;align-items:center}.progress-button{font-size:11px;min-height:30px;padding:3px 7px;background:transparent;border-color:transparent;border-radius:6px;margin-left:auto;color:var(--muted)}.progress-button.on{color:var(--accent);background:var(--raised)}.add-line{display:block;width:100%;text-align:left;color:var(--muted);background:transparent;border:1px dashed var(--line);margin-top:10px}.empty{padding:24px 18px;border:1px dashed var(--line);border-radius:13px;color:var(--muted);font-size:14px}.empty strong{display:block;color:var(--ink);font-weight:500;margin-bottom:4px}details.done-list{margin-top:18px;color:var(--muted)}summary{cursor:pointer;padding:12px 0;font-size:13px}details .task{margin-top:8px}.quick{display:grid;grid-template-columns:90px 1fr 130px 100px auto;gap:9px;background:var(--panel);padding:12px;border:1px solid var(--line);border-radius:13px;margin-bottom:26px}.quick input,.quick select{font-size:13px;min-width:0}.fab{position:fixed;right:max(24px,calc((100vw - 1118px)/2));bottom:28px;box-shadow:var(--shadow);border-radius:18px;padding:13px 20px;display:flex;gap:8px;align-items:center;z-index:15}.fab svg{width:20px;height:20px}.panel{background:var(--panel);border:1px solid var(--line);padding:24px;border-radius:16px;margin-bottom:18px}.panel p{color:var(--muted);font-size:14px}.settings{max-width:730px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.setting-row:last-child{margin-bottom:0}.setting-row p{margin:0}.status{border-radius:8px;background:var(--raised);padding:12px 14px;font-size:13px;color:var(--muted);margin:14px 0}.status.error,.error{color:var(--error)}.error{font-size:13px;margin:10px 0;white-space:pre-wrap}.sync-line{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:12px}.lock{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:30px}.lock-box{width:100%;max-width:340px;text-align:center}.lock .brand-mark{width:60px;height:60px;font-size:38px;border-radius:20px;margin-bottom:30px}.lock h1{font-size:38px}.lock p{color:var(--muted);margin-bottom:32px}.lock label{text-align:left}.lock input{text-align:center;font-size:24px;letter-spacing:.3em}.lock button{width:100%}.lock small{color:var(--muted);display:block;margin-top:28px;font-size:11px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px;flex-wrap:wrap}.period{display:flex;align-items:center;gap:6px}.period h2{font-size:19px;min-width:165px}.icon-button{padding:8px 12px;font-size:20px}.month{border:1px solid var(--line);border-radius:14px;overflow:hidden}.weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:var(--panel);color:var(--muted);font-size:11px;text-align:center;padding:12px 0}.day-cell{border-radius:0;border:0;border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:100px;padding:10px 7px;text-align:left;display:flex;flex-direction:column;gap:4px;overflow:hidden;background:transparent;min-width:0}.day-cell:nth-child(7n){border-right:0}.day-cell.outside{opacity:.35}.day-cell.selected{background:var(--raised)}.day-num{font-size:12px;display:inline-flex;justify-content:center;align-items:center;width:25px;height:25px;border-radius:50%}.today .day-num{background:var(--accent);color:var(--accent-ink);font-weight:650}.mini-event{font-size:10px;background:var(--raised);padding:2px 4px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;border-left:2px solid var(--accent)}.day-dots{display:flex;gap:3px;flex-wrap:wrap}.calendar-details{margin-top:25px}.event-card{display:flex;align-items:flex-start;gap:13px;width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:15px;margin-bottom:9px;cursor:pointer}.event-time{color:var(--muted);font-size:12px;width:70px;flex-shrink:0;padding-top:2px}.event-main{flex:1;min-width:0}.event-main strong{font-size:14px;font-weight:550;overflow-wrap:anywhere}.event-main p{color:var(--muted);font-size:12px;margin:3px 0 8px;overflow-wrap:anywhere}.calendar-tag{display:inline-flex;align-items:center;gap:5px;font-size:10px;border:1px solid var(--line);border-radius:5px;padding:2px 6px;color:var(--muted)}.read-only{font-size:10px;color:var(--muted);margin-left:6px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.week-column{border:1px solid var(--line);border-radius:10px;min-height:260px;overflow:hidden;padding:10px 6px}.week-column h3{text-align:center;font-size:12px;color:var(--muted);margin-bottom:15px}.week-column .event-card{padding:8px 5px;display:block}.week-column .event-time{width:auto;margin-bottom:5px}.week-column .calendar-tag{font-size:9px}.week-column .event-main strong{font-size:12px}.agenda-date{font-size:12px;color:var(--muted);margin:22px 0 9px}.dialog{width:min(540px,calc(100% - 24px));max-height:90dvh;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:26px;border-radius:20px;box-shadow:var(--shadow);overscroll-behavior:contain}.dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dialog-head h2{font:28px Georgia,serif}.close{font-size:25px;min-width:44px;min-height:44px;padding:0;background:transparent;border:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-top:10px}.dialog-actions .push{margin-right:auto}.check-label{display:flex;gap:10px;align-items:center;color:var(--ink)}#toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:12px;font-size:13px;box-shadow:var(--shadow);z-index:100;max-width:90vw;display:none}#toast.visible{display:block}.install-note{font-size:12px;color:var(--muted)}.area-row{display:flex;gap:8px;margin-top:10px}.area-row input{flex:1;min-width:0}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.offline{background:var(--raised);padding:10px;border-radius:8px;font-size:12px;color:var(--error);margin-bottom:15px}
@media(max-width:700px){.shell{padding:0 20px 160px}.topbar{height:75px;margin-bottom:30px}.brand{font-size:18px}.top-hint{font-size:10px}.nav{position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--panel);padding:7px 14px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);justify-content:space-around;gap:0}.nav button{flex:1;flex-direction:column;gap:2px;font-size:10px;min-height:52px;border-radius:9px}.nav button.active{background:transparent}.nav svg{width:22px;height:22px}.head{display:block;margin-bottom:23px}h1{font-size:34px}.date{font-size:10px}.counter{padding-top:8px;font-size:12px}.counter b{font-size:20px}.board{grid-template-columns:1fr;gap:30px}.tools{gap:9px}.tools .segmented{order:1}.tools .search{flex-basis:100%;order:2}.chips{margin-bottom:23px;gap:6px}.chip{font-size:12px;min-height:40px;padding:5px 11px}.task{padding:16px}.task-title{font-size:15px}.quick{grid-template-columns:1fr 1fr;gap:8px;padding:11px}.quick [name=title]{grid-column:1/-1;grid-row:1}.quick button{grid-column:1/-1}.quick [name=area]{grid-column:1}.quick [name=day]{grid-column:2;grid-row:3}.quick [name=list]{grid-column:1;grid-row:2}.quick [name=area]{grid-column:2;grid-row:2}.quick [name=day]{grid-column:1/-1;grid-row:3}.fab{bottom:calc(82px + env(safe-area-inset-bottom));right:20px;padding:13px 18px;border-radius:16px}.calendar-toolbar{align-items:flex-start}.calendar-toolbar .segmented{width:100%;justify-content:space-between}.calendar-toolbar .segmented button{flex:1}.period{width:100%;justify-content:space-between}.period h2{font-size:21px;text-align:center;margin:0}.day-cell{min-height:66px;padding:6px 3px;gap:3px}.day-num{width:23px;height:23px;font-size:11px}.mini-event{font-size:8px;padding:1px 2px}.day-dots{gap:2px}.dot{width:6px;height:6px}.week-grid{gap:4px}.week-column{padding:6px 2px;min-height:160px;border-radius:7px}.week-column h3{font-size:9px}.week-column .event-card{padding:5px 3px;display:block;margin-bottom:6px}.week-column .event-time{font-size:8px}.week-column .event-main strong{font-size:9px;line-height:1.3;display:block;word-break:break-word}.week-column .calendar-tag{padding:1px;font-size:8px;overflow-wrap:anywhere;display:block}.week-column .calendar-tag .dot{display:none}.week-column .read-only,.week-column .event-main p{display:none}.week-note{display:block;color:var(--muted);font-size:12px;margin-top:12px}.panel{padding:19px}.form-grid{gap:0 10px}.dialog{padding:20px;max-height:92dvh}.setting-row{align-items:flex-start}.event-time{width:60px}.event-card{gap:10px}.area-row{flex-wrap:wrap}.area-row input{flex-basis:100%}#toast{bottom:calc(155px + env(safe-area-inset-bottom));width:max-content;text-align:center}.sync-line{align-items:flex-start;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.week-mobile-details{display:none}.period{min-width:0}.period h2{min-width:0}.week-column:focus{outline:1px solid var(--accent)}
@media(max-width:700px){.quick{grid-template-columns:1fr 1fr 1fr}.quick [name=title]{grid-column:1/-1}.quick [name=list]{grid-column:1;grid-row:2}.quick [name=area]{grid-column:2;grid-row:2}.quick [name=day]{grid-column:3;grid-row:2}.quick button{grid-column:1/-1}.quick [name=day]{padding:10px 8px}.head{margin-bottom:20px}.quick{margin-bottom:22px}.week-column{min-height:95px;cursor:pointer}.week-column .event-card{min-height:14px;height:14px;padding:3px;background:var(--accent);opacity:.8;overflow:hidden;border:0}.week-column .event-card *{display:none!important}.week-mobile-details{display:block;margin-top:24px}.period{gap:2px}.period button{padding-left:9px;padding-right:9px}.period h2{font-size:18px}.task .progress-button{min-height:44px}.task-meta{min-height:38px}}
.quick-wrap{margin-bottom:25px}.quick-wrap summary{border:1px solid var(--line);border-radius:10px;padding:12px 15px;color:var(--muted);list-style:none;background:var(--panel)}.quick-wrap .quick{margin:10px 0 0}.quick-wrap summary::-webkit-details-marker{display:none}@media(min-width:701px){.quick-wrap summary{display:none}.quick-wrap .quick{margin-top:0}}@media(max-width:700px){.topbar{height:66px;margin-bottom:24px}.head h1{font-size:29px;line-height:1.18}.head p{font-size:13px}.date{margin-bottom:9px}.head{margin-bottom:20px}.chips{margin-bottom:18px}.tools{margin-bottom:15px}.day-cell{min-height:47px;padding:3px}.day-num{height:20px;width:20px;font-size:10px}.mini-event{font-size:8px;line-height:1.3}.weekdays{padding:8px 0}.calendar-toolbar{margin-bottom:15px}.calendar-details{margin-top:20px}.task-meta .area{line-height:1.5}.week-column h3{margin-bottom:8px}}
@media(min-width:701px){.quick-wrap:not([open])>.quick{display:grid}.quick-wrap:not([open])>#quick-error{display:block}}
