:root{--paper:#f6f2ea;--paper-2:#efeae0;--ink:#191a1c;--ink-2:#45474b;--ink-3:#797c7f;--line:#c9c0ae;--line-2:#dcd3bd;--ochre:#b97a1f;--ochre-soft:#e9d2a6;--ochre-ink:#5c3a0a;--danger:#a23b2e;--danger-soft:#ebd3cc;--r-1:2px;--r-2:8px;--r-3:14px;--r-pill:999px;--space-1:6px;--space-2:10px;--space-3:18px;--space-4:28px;--space-5:44px;--space-6:64px;--shadow-1:0 1px 0 var(--line-2)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:Inter,Helvetica Neue,Yu Gothic UI,Hiragino Kaku Gothic ProN,sans-serif;font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;background-image:radial-gradient(1200px 700px at 12% -10%,rgba(0,0,0,.025),transparent 60%),radial-gradient(900px 500px at 110% 10%,rgba(185,122,31,.05),transparent 70%)}button,input,textarea{font-family:inherit}.frame{max-width:1180px;margin:0 auto;padding:28px 28px 48px}header{display:grid;grid-template-columns:1fr auto;align-items:end;grid-gap:20px;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.eyebrow{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin:0 0 8px;display:flex;align-items:center;gap:8px}.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--ochre);box-shadow:0 0 0 4px var(--ochre-soft)}h1{font-weight:700;font-size:32px;line-height:1.1;letter-spacing:.005em;margin:0;color:var(--ink)}.h1-sub,h1{font-family:Shippori Mincho,serif}.h1-sub{font-weight:500;font-size:12px;color:var(--ink-3);margin-top:6px;letter-spacing:.04em}.header-aside{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.notice{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;background:transparent;border:1px solid var(--line);border-radius:var(--r-pill);font-size:11.5px;color:var(--ink-2);cursor:pointer;transition:background .18s ease,border-color .18s ease}.notice:hover{background:var(--paper-2);border-color:var(--line)}.notice .bell{width:16px;height:16px;border-radius:50%;background:var(--ochre-soft);position:relative;display:inline-flex;align-items:center;justify-content:center}.notice .bell:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--ochre-ink)}.notice.is-on .bell{background:#cfe3d2}.notice.is-on .bell:after{background:#2f6b3a}.notice .meta{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--ink-3);letter-spacing:.06em}.cta-new{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--ink);color:var(--paper);border-radius:var(--r-pill);font-size:12.5px;font-weight:500;letter-spacing:.02em;border:none;cursor:pointer;transition:transform .15s ease,background .15s ease}.cta-new:hover{background:var(--ochre-ink);transform:translateY(-1px)}.cta-new:disabled{opacity:.5;cursor:default;transform:none}.cta-new .plus{font-family:JetBrains Mono,monospace;font-size:14px;line-height:1}.btn-secondary{padding:9px 16px;border:1px solid var(--line);background:transparent;border-radius:var(--r-pill);color:var(--ink-2);font-size:12.5px;cursor:pointer;transition:background .15s ease,color .15s ease}.btn-secondary:hover{background:var(--paper-2);color:var(--ink)}.btn-secondary:disabled{opacity:.5;cursor:default}.btn-ghost{padding:6px 12px;border:1px solid var(--line);background:transparent;border-radius:var(--r-pill);color:var(--ink-2);font-size:11.5px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.btn-ghost:hover{background:var(--paper-2);color:var(--ink)}.btn-ghost.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn-ghost--danger{color:var(--danger);border-color:var(--danger-soft)}.btn-ghost--danger:hover{background:var(--danger-soft)}section+section{margin-top:22px}.search{display:grid;grid-template-columns:1fr auto;align-items:stretch;border:1px solid var(--line);border-radius:var(--r-3);background:hsla(0,0%,100%,.45);box-shadow:var(--shadow-1)}.field,.search{overflow:hidden}.field{border:1px solid var(--line);border-radius:var(--r-2);background:hsla(0,0%,100%,.55)}.field-input,.search-input{border:none;outline:none;background:transparent;padding:12px 14px;font:inherit;font-size:13.5px;color:var(--ink);width:100%}.field-input{padding:10px 12px;font-size:13px}.field-input::placeholder,.search-input::placeholder{color:var(--ink-3)}.search-btn{border:none;border-left:1px solid var(--line);background:var(--paper-2);padding:0 18px;font:inherit;font-size:12.5px;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.search-btn:hover{background:var(--ochre-soft);color:var(--ochre-ink)}.field-label{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 5px;display:block}.filters{display:flex;flex-wrap:wrap;gap:6px 4px;padding-bottom:6px;border-bottom:1px dashed var(--line-2)}.chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:7px 12px;font:inherit;font-size:12px;color:var(--ink-2);border-radius:var(--r-pill);cursor:pointer;position:relative;letter-spacing:.02em;transition:color .15s ease,background .15s ease}.chip:hover{background:var(--paper-2);color:var(--ink)}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper)}.canvas{margin-top:20px;padding:40px 24px 48px;border:1px solid var(--line);border-radius:var(--r-3);background:linear-gradient(180deg,hsla(0,0%,100%,.55),hsla(0,0%,100%,.25));position:relative;overflow:hidden}.canvas:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(transparent,transparent 27px,hsla(40,20%,74%,.32) 0,hsla(40,20%,74%,.32) 28px);opacity:.35;pointer-events:none;-webkit-mask:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent)}.canvas-inner{position:relative;text-align:center;max-width:480px;margin:0 auto}.canvas .glyph{font-family:Shippori Mincho,serif;font-size:48px;font-weight:500;color:var(--ochre-ink);background:var(--ochre-soft);width:72px;height:72px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;position:relative}.canvas .glyph:after{content:"";position:absolute;inset:-6px;border:1px dashed var(--ochre);border-radius:50%;opacity:.55}.canvas .lead{font-family:Shippori Mincho,serif;font-weight:700;font-size:18px;color:var(--ink);margin:0 0 8px;letter-spacing:.02em}.canvas .hint{font-size:12.5px;color:var(--ink-2);line-height:1.7;margin:0 0 20px}.canvas-actions{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center}.task-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.task-card{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-3);background:hsla(0,0%,100%,.5);transition:border-color .15s ease,box-shadow .15s ease}.task-card.is-highlight{border-color:var(--ochre);box-shadow:0 0 0 3px var(--ochre-soft)}.is-overdue{color:var(--danger)}.task-title{font-family:Shippori Mincho,serif;font-weight:700;font-size:16px;color:var(--ink);cursor:pointer;margin:0}.task-detail{font-size:12.5px;color:var(--ink-2);cursor:pointer;line-height:1.6;margin:0}.task-detail.is-empty{color:var(--ink-3);font-style:italic}.task-info-grid{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:1px 8px;gap:1px 8px;margin-top:2px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;letter-spacing:.03em;color:var(--ink-3)}.grid-detail-text{grid-column:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-detail-actions{grid-column:2}.grid-due-text,.grid-schedule-text{grid-column:1;cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-due-text:hover,.grid-schedule-text:hover{color:var(--ochre-ink)}.grid-due-actions{grid-column:2}.grid-span-2{grid-column:1/-1}.task-quick-actions{display:flex;flex-wrap:nowrap;gap:6px}.task-quick-actions .btn-ghost{flex-shrink:0;white-space:nowrap}.task-meta{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;letter-spacing:.03em;color:var(--ink-3)}.task-meta span{cursor:pointer}.task-meta span:hover{color:var(--ochre-ink)}.task-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line-2)}.inline-edit{display:flex;gap:6px;align-items:center;margin-top:6px}.inline-edit input{flex:1 1;border:1px solid var(--line);border-radius:var(--r-2);background:hsla(0,0%,100%,.7);padding:8px 10px;font:inherit;font-size:13px;color:var(--ink);outline:none}.inline-edit input:focus{border-color:var(--ochre)}.recurrence-line{margin-top:10px;font-size:11.5px;color:var(--ink-3);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recurrence-panel{margin-top:8px;padding:12px;border:1px dashed var(--line-2);border-radius:var(--r-2);background:var(--paper-2)}.weekday-row{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.weekday-btn{width:28px;height:28px;border:1px solid var(--line);background:hsla(0,0%,100%,.6);border-radius:50%;font-size:11.5px;color:var(--ink-2);cursor:pointer}.weekday-btn.is-selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.radio-row{display:flex;gap:16px;margin-bottom:8px;font-size:12.5px;color:var(--ink-2)}.radio-row label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.simple-card{padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-3);background:hsla(0,0%,100%,.5)}.simple-card+.simple-card{margin-top:10px}.simple-card .task-title{font-size:14.5px}.simple-card .task-meta{margin-top:6px}.form-panel{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:var(--r-3);background:linear-gradient(180deg,hsla(0,0%,100%,.6),hsla(0,0%,100%,.3))}.form-row{display:flex;gap:8px;margin-bottom:10px}.form-row .field-input{flex:1 1}.form-group,.similar-notice{margin-bottom:10px}.similar-notice{padding:12px 14px;border:1px solid var(--ochre-soft);background:hsla(39,60%,78%,.35);border-radius:var(--r-2);font-size:12.5px;color:var(--ochre-ink)}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:var(--r-pill);display:flex;align-items:center;gap:14px;font-size:12.5px;box-shadow:0 12px 30px rgba(0,0,0,.25);z-index:50}.toast .btn-ghost{color:var(--paper);border-color:hsla(40,40%,94%,.4)}.toast .btn-ghost:hover{background:hsla(40,40%,94%,.12)}.calendar-section{margin-top:28px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-3);background:hsla(0,0%,100%,.5)}.calendar-header{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px}.calendar-title{font-family:Shippori Mincho,serif;font-weight:700;font-size:14px;color:var(--ink);min-width:100px;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.calendar-weekday{text-align:center;font-size:10.5px;color:var(--ink-3);padding-bottom:5px}.calendar-cell{position:relative;min-height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:1px solid transparent;border-radius:var(--r-2);background:transparent;font-size:12.5px;color:var(--ink-2);cursor:pointer}.calendar-cell.is-empty{cursor:default}.calendar-cell:not(.is-empty):hover{background:var(--paper-2)}.calendar-cell.is-today{border-color:var(--line);font-weight:700;color:var(--ink)}.calendar-cell.is-selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.calendar-count{font-size:8.5px;line-height:1;min-height:9px;color:var(--ochre-ink)}.calendar-cell.is-selected .calendar-count{color:var(--paper)}.calendar-day-panel{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line-2)}.calendar-day-panel-header{margin-bottom:10px;font-size:12.5px;color:var(--ink-2)}.calendar-day-panel-header,footer{display:flex;align-items:center;justify-content:space-between}footer{margin-top:36px;padding-top:16px;border-top:1px solid var(--line);flex-wrap:wrap;gap:12px}.passkey{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-2);background:transparent;border:none;cursor:pointer;padding:5px 0}.passkey:hover{color:var(--ink)}.passkey .plus{font-size:13px;margin-right:2px;color:var(--ochre)}.passkey .plus,.tiny{font-family:JetBrains Mono,monospace}.tiny{font-size:10px;color:var(--ink-3);letter-spacing:.06em}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.footer-links a{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-2);text-decoration:none;padding:5px 0;border-bottom:1px solid transparent}.footer-links a:hover{color:var(--ochre);border-bottom-color:var(--ochre)}.auth-frame{max-width:420px;margin:100px auto 0;padding:0 24px;text-align:center}.auth-frame p{font-size:12.5px;color:var(--ink-2);line-height:1.7;margin-bottom:18px}.auth-error{color:var(--danger);margin-top:14px;font-size:11.5px}@media (max-width:760px){.frame{padding:18px 14px 32px}header{grid-template-columns:1fr;align-items:start;gap:12px}.header-aside{align-items:flex-start}h1{font-size:26px}.canvas{padding:32px 16px 40px}.search{grid-template-columns:1fr}.search-btn{border-left:none;border-top:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}