@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,sans-serif;color:#202124;background:#f7f7f5;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #202124;--muted: #777772;--quiet: #a4a49d;--canvas: #f7f7f5;--surface: #fff;--surface-soft: #f3f3f0;--line: #e5e5df;--line-strong: #d6d6ce;--accent: #e95b57;--accent-soft: #fff0ef;--mint: #dff4eb;--lavender: #eee7ff;--blue: #e3f2ff;--shadow: 0 16px 36px rgba(27, 27, 22, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;margin:0;background:var(--canvas)}button,input,select{font:inherit}button{color:inherit}button,select{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(233,91,87,.28);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{width:min(100%,1280px);min-height:100svh;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 20px calc(42px + env(safe-area-inset-bottom))}.app-header{display:flex;align-items:center;justify-content:space-between;min-height:44px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:9px;align-items:center;font-size:16px;font-weight:800;letter-spacing:-.04em}.brand-mark{display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:var(--ink);color:#fff}.header-context{display:inline-flex;gap:7px;align-items:center;color:var(--muted);font-size:12px;font-weight:600}.calendar-section{padding-top:30px}.calendar-toolbar{display:flex;gap:18px;align-items:end;justify-content:space-between;margin-bottom:24px}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;color:var(--ink);font-size:clamp(27px,4vw,42px);font-weight:800;letter-spacing:-.07em;line-height:1.05}h2{margin:0;color:var(--ink);font-size:18px;letter-spacing:-.045em}.calendar-controls{display:flex;gap:8px;align-items:center}.range-select select,.today-button,.arrow-controls button{min-height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.range-select select{padding:0 29px 0 11px}.today-button{padding:0 13px}.arrow-controls{display:flex;overflow:hidden;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.arrow-controls button{width:36px;min-height:38px;padding:0;border:0;border-radius:0}.arrow-controls button+button{border-left:1px solid var(--line-strong)}.range-select select:hover,.today-button:hover,.arrow-controls button:hover{background:var(--surface-soft)}.calendar-scroll{overflow-x:auto;padding-bottom:4px}.weekday-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(102px,1fr));min-width:714px}.weekday-row{border:1px solid var(--line);border-bottom:0;border-radius:11px 11px 0 0;background:var(--surface-soft)}.weekday-row span{padding:8px 11px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.calendar-grid{overflow:hidden;border:1px solid var(--line);border-radius:0 0 11px 11px;background:var(--line);gap:1px}.calendar-day{display:flex;min-height:136px;padding:10px;flex-direction:column;gap:8px;border:0;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:background-color .14s ease}.calendar-day:hover{background:#fcfcfa}.calendar-day.is-selected{background:#fffaf8;box-shadow:inset 0 0 0 2px var(--accent)}.date-number{display:flex;align-items:center;justify-content:space-between}.date-number small{color:var(--quiet);font-size:10px;font-weight:700;text-transform:uppercase}.date-number strong{display:grid;width:24px;height:24px;place-items:center;border-radius:7px;font-size:13px}.is-today .date-number strong{background:var(--accent);color:#fff}.day-events{display:grid;gap:4px}.calendar-event{display:block;overflow:hidden;padding:4px 5px;border-radius:4px;color:#3a3a36;font-size:10px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.calendar-event.assignee-owner{background:var(--blue)}.calendar-event.assignee-partner{background:var(--mint)}.calendar-event.assignee-both{background:var(--lavender)}.calendar-event.is-complete{opacity:.5;text-decoration:line-through}.more-events{color:var(--muted);font-size:10px;font-weight:700}.lower-workspace{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:18px 24px;align-items:start;margin-top:30px}.quick-add{grid-row:span 2;padding:22px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}.quick-add-heading{display:flex;gap:11px;align-items:center;margin-bottom:20px}.quick-add-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:var(--ink);color:#fff}.quick-add form{display:grid;gap:15px}.quick-add label{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:800}.quick-add input,.quick-add select{width:100%;min-height:46px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:600}.quick-add input{padding:0 12px}.quick-add select{padding:0 9px}.composer-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.add-button{display:inline-flex;gap:7px;align-items:center;justify-content:center;min-height:46px;padding:0 14px;border:1px solid var(--ink);border-radius:8px;background:var(--ink);color:#fff;font-size:12px;font-weight:800;cursor:pointer}.add-button:hover{background:#3a3a37}.add-button:disabled{opacity:.65;cursor:wait}.form-error{margin:-4px 0 0;color:#b23b38;font-size:12px;font-weight:600}.selected-day,.backlog-section{padding:4px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:11px}.section-heading>span{display:grid;min-width:24px;height:24px;padding:0 6px;place-items:center;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:10px;font-weight:800}.compact-heading{align-items:center}.compact-heading h2{font-size:14px}.agenda-list{display:grid;gap:7px}.agenda-task{display:grid;grid-template-columns:26px minmax(0,1fr) 32px;gap:10px;align-items:center;min-height:61px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.agenda-task.is-complete{opacity:.55}.agenda-task.is-complete strong{text-decoration:line-through}.check-button{display:grid;width:24px;height:24px;padding:0;place-items:center;border:1.5px solid #b8b8b0;border-radius:7px;background:transparent;cursor:pointer}.is-complete .check-button{border-color:var(--ink);background:var(--ink);color:#fff}.check-button:disabled,.delete-button:disabled{cursor:wait}.agenda-copy{display:grid;gap:2px;min-width:0}.agenda-copy strong{overflow:hidden;color:var(--ink);font-size:12px;font-weight:800;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.agenda-copy>span{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.assignee-label{width:max-content;max-width:100%;padding:2px 5px;border-radius:4px;font-size:9px;font-weight:800}.assignee-label.assignee-owner{background:var(--blue)}.assignee-label.assignee-partner{background:var(--mint)}.assignee-label.assignee-both{background:var(--lavender)}.delete-button{display:grid;width:32px;height:32px;padding:0;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--quiet);cursor:pointer}.delete-button:hover{background:var(--accent-soft);color:var(--accent)}.empty-day{margin:0;padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}.state-card{display:grid;min-height:180px;place-items:center;place-content:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);text-align:center}.state-card strong{color:var(--ink);font-size:14px}.state-card span{font-size:12px}.state-card button{min-height:38px;padding:0 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);font-size:12px;font-weight:700;cursor:pointer}.toast{position:fixed;z-index:10;bottom:calc(22px + env(safe-area-inset-bottom));left:50%;padding:10px 14px;border-radius:8px;background:var(--ink);box-shadow:var(--shadow);color:#fff;font-size:12px;font-weight:700;transform:translate(-50%)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px){.app-shell{padding:max(14px,env(safe-area-inset-top)) 14px calc(28px + env(safe-area-inset-bottom))}.header-context{font-size:10px}.calendar-section{padding-top:24px}.calendar-toolbar{align-items:start;flex-direction:column;margin-bottom:18px}.calendar-controls{width:100%}.range-select{flex:1}.range-select select{width:100%}.today-button{padding:0 10px}.calendar-day{min-height:122px}.lower-workspace{grid-template-columns:1fr;margin-top:22px}.quick-add{grid-row:auto;padding:18px}.composer-fields{grid-template-columns:1fr 1fr}.add-button{grid-column:span 2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.calendar-scroll{overflow-x:visible}.weekday-row,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.calendar-event.kind-event{background:#fff1c9}.calendar-event.kind-memory{background:#ffe5ed;color:#8b3e57}.zoom-button{min-height:40px;padding:0 11px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.zoom-button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.quick-add-icon.kind-event{background:#c89222}.quick-add-icon.kind-memory{background:#b74c6e;font-size:17px}.kind-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.kind-switch button{display:grid;min-height:50px;padding:7px 4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--muted);text-align:left;cursor:pointer}.kind-switch button strong{padding:0 7px;color:var(--ink);font-size:11px}.kind-switch button small{padding:2px 7px 0;font-size:9px;font-weight:700}.kind-switch button.is-active{border-color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--ink)}.composer-note textarea{width:100%;min-height:64px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;font-weight:500;line-height:1.45;resize:vertical}.composer-note em{color:var(--quiet);font-style:normal;font-weight:600}.entry-marker{display:grid;width:24px;height:24px;place-items:center;border-radius:7px;font-size:15px;font-weight:800}.entry-marker.kind-event{background:#fff1c9;color:#936c12}.entry-marker.kind-memory{background:#ffe5ed;color:#a84463;font-size:12px}.entry-meta{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.tag-chip{max-width:112px;overflow:hidden;padding:2px 5px;border-radius:4px;background:#edf0f2;color:#58616a;font-size:9px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.agenda-task{grid-template-columns:26px minmax(0,1fr) auto}.entry-actions{display:flex;gap:1px;align-items:center}.edit-button{display:grid;width:32px;height:32px;padding:0;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--quiet);cursor:pointer}.edit-button:hover{background:var(--surface-soft);color:var(--ink)}.edit-button:disabled{cursor:wait}.kind-label{width:max-content;padding:2px 5px;border-radius:4px;background:var(--surface-soft);color:var(--muted);font-size:9px;font-weight:800}.kind-label.kind-event{background:#fff1c9;color:#7b5d17}.kind-label.kind-memory{background:#ffe5ed;color:#91425a}.life-feed{grid-column:2;padding-top:4px;border-top:1px solid var(--line)}.entry-fab{position:fixed;z-index:20;right:50%;bottom:calc(18px + env(safe-area-inset-bottom));display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:48px;padding:0 17px;border:0;border-radius:10px;background:var(--ink);box-shadow:0 12px 28px #1b1b163d;color:#fff;font-size:12px;font-weight:800;cursor:pointer;transform:translate(50%)}.entry-fab:active{transform:translate(50%) scale(.97)}.sheet-layer{position:fixed;z-index:30;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;background:#19191657}.entry-sheet{width:min(100%,620px);max-height:min(88svh,760px);padding:10px 20px calc(22px + env(safe-area-inset-bottom));overflow-y:auto;border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;background:var(--surface);box-shadow:0 -14px 48px #1b1b1629}.sheet-handle{width:36px;height:4px;margin:0 auto 17px;border-radius:99px;background:var(--line-strong)}.sheet-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.sheet-close{display:grid;width:36px;height:36px;padding:0;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.entry-sheet .quick-add{grid-row:auto;padding:0;border:0;border-radius:0;box-shadow:none}.entry-sheet .quick-add-heading{margin-bottom:15px}.calendar-scroll.is-large .calendar-day{min-height:185px}.calendar-scroll.is-large .calendar-event{overflow:visible;white-space:normal;font-size:12px;line-height:1.35}.calendar-scroll.is-large .day-events{gap:6px}@media(max-width:760px){.lower-workspace,.quick-add,.kind-switch,.composer-fields{min-width:0;max-width:100%}.weekday-row{display:none}.calendar-scroll{width:100%;max-width:100%}.calendar-grid{width:100%;max-width:100%;grid-template-columns:repeat(7,minmax(0,1fr))!important;border-radius:11px}.calendar-day{min-width:0!important;min-inline-size:0;min-height:112px;padding:5px;gap:4px;overflow:hidden}.date-number{align-items:flex-start;flex-direction:column-reverse;gap:2px}.date-number small{font-size:8px;letter-spacing:0}.date-number strong{width:20px;height:20px;border-radius:6px;font-size:11px}.day-events{gap:2px}.calendar-event{padding:3px;border-radius:3px;font-size:8px;line-height:1.15}.more-events{font-size:8px}.kind-switch button{min-width:0;overflow:hidden}.kind-switch button strong,.kind-switch button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.life-feed{grid-column:auto}.zoom-button{padding:0 9px}.calendar-scroll.is-large .calendar-grid{grid-template-columns:1fr!important}.calendar-scroll.is-large .calendar-day{min-height:92px;padding:10px;flex-direction:row;align-items:flex-start;gap:12px}.calendar-scroll.is-large .date-number{flex:0 0 40px;align-items:flex-start;flex-direction:column-reverse}.calendar-scroll.is-large .date-number small{font-size:10px}.calendar-scroll.is-large .date-number strong{width:28px;height:28px;font-size:13px}.calendar-scroll.is-large .day-events{flex:1;min-width:0;padding-top:1px}.calendar-scroll.is-large .calendar-event{padding:6px 7px;font-size:12px}.entry-sheet{padding-right:16px;padding-left:16px}}.event-time-fields{display:grid;grid-template-columns:minmax(120px,.8fr) 1fr 1fr;gap:10px;align-items:end}.event-time-fields .all-day-toggle{display:flex;min-height:46px;flex-direction:row;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);font-size:12px}.event-time-fields .all-day-toggle input{width:17px;min-height:17px;margin:0;padding:0}@media(max-width:520px){.event-time-fields{grid-template-columns:1fr 1fr}.event-time-fields .all-day-toggle{grid-column:span 2}}
