:root{--bg:#f7f5f2;--surface:#fff;--surface-alt:#fbf9f5;--ink:#1a1a1c;--ink-soft:#4a4a4e;--ink-muted:#7a7a7e;--line:#e6e2db;--line-soft:#efebe3;--q1:#c2410c;--q1-bg:#ffefe4;--q2:#0f766e;--q2-bg:#e0f1ee;--q3:#7c6a00;--q3-bg:#f7f0d4;--q4:#6b7280;--q4-bg:#edeef1;--accent:#c2410c;--danger:#b42318;--ok:#0f766e;--keyboard-height:0px}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;height:100%;font-size:100%}body{height:100%;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.0625rem;line-height:1.5;overflow:hidden}#root{flex-direction:column;height:100%;display:flex}.app{width:100%;max-width:100%;min-height:0;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);flex-direction:column;flex:1;display:flex}img{max-width:100%;height:auto}button{color:inherit;cursor:pointer;background:0 0;border:0;font-family:inherit;font-size:1rem}input,textarea,select{color:inherit;font-family:inherit;font-size:1.0625rem}.shell{flex-direction:column;flex:1;width:100%;max-width:60rem;min-height:0;margin:0 auto;display:flex}.shell-header{padding:max(1rem, env(safe-area-inset-top)) 1.25rem .75rem;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.shell-brand{letter-spacing:-.01em;align-items:center;gap:.625rem;font-size:1.0625rem;font-weight:600;display:flex}.shell-brand-mark{grid-template-rows:repeat(2,.75rem);grid-template-columns:repeat(2,.75rem);gap:.125rem;display:grid}.shell-brand-mark span{border-radius:.1875rem}.shell-brand-mark span:first-child{background:var(--q1)}.shell-brand-mark span:nth-child(2){background:var(--q2)}.shell-brand-mark span:nth-child(3){background:var(--q3)}.shell-brand-mark span:nth-child(4){background:var(--q4)}.shell-spacer{flex:1}.conn{color:var(--ink-muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;display:inline-flex}.conn-dot{background:var(--ink-muted);border-radius:999px;width:.5rem;height:.5rem}.conn-live .conn-dot{background:var(--ok)}.conn-wait .conn-dot{background:#d97706}.conn-err .conn-dot{background:var(--danger)}.shell-main{min-height:0;padding:.5rem 1.25rem max(2rem, env(safe-area-inset-bottom));flex:1;overflow:hidden auto}.scope-toggle{background:var(--surface);border:1px solid var(--line);border-radius:999px;margin-bottom:1rem;padding:.25rem;display:inline-flex}.scope-btn{color:var(--ink-muted);border-radius:999px;min-height:2.5rem;padding:.5rem 1rem;font-size:.9375rem;font-weight:500;transition:background .12s,color .12s}.scope-btn[aria-pressed=true]{background:var(--ink);color:var(--surface)}.focus-now{background:var(--surface);border:1px solid var(--line);border-radius:1rem;margin-bottom:1.5rem;padding:1.25rem 1.25rem 1.125rem;position:relative;box-shadow:0 1px 3px #1a1a1c0a}.focus-now-label{letter-spacing:.08em;text-transform:uppercase;color:var(--q1);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.focus-now-text{letter-spacing:-.015em;color:var(--ink);margin-bottom:1rem;font-size:1.375rem;font-weight:600;line-height:1.3}.focus-now-actions{flex-wrap:wrap;gap:.5rem;display:flex}.focus-now-empty{color:var(--ink-muted);font-size:1rem;font-style:italic}.focus-now-inner{align-items:center;gap:1.25rem;display:flex}.focus-now-body{flex:1;min-width:0}.focus-now-ring{flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (width<=480px){.focus-now-inner{flex-direction:column-reverse;align-items:stretch;gap:.875rem}.focus-now-ring{align-self:center}}.timer-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.timer-ring svg{display:block}.timer-ring-label{font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--ink);justify-content:center;align-items:center;font-size:1.25rem;font-weight:600;display:flex;position:absolute;inset:0}.timer-ring-alarm{animation:.8s ease-in-out infinite ring-pulse}@keyframes ring-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.timer-ring-alarm{animation:none}}.focus-now-running{border-color:color-mix(in srgb, var(--ok) 30%, var(--line));box-shadow:0 1px 0 color-mix(in srgb, var(--ok) 18%, transparent), 0 1px 3px #1a1a1c0a}.focus-now-paused{border-color:color-mix(in srgb, var(--ink-muted) 30%, var(--line))}.focus-now-alarm{border-color:var(--danger);background:#fff7ec;animation:1.4s ease-in-out infinite alarm-bg}@keyframes alarm-bg{0%,to{background:#fff7ec}50%{background:#ffecd1}}@media (prefers-reduced-motion:reduce){.focus-now-alarm{animation:none}}.focus-now-alarm .focus-now-label{color:var(--danger)}.focus-now-running .focus-now-label{color:var(--ok)}.focus-now-paused .focus-now-label{color:var(--ink-muted)}.btn{border-radius:.625rem;justify-content:center;align-items:center;gap:.5rem;min-width:2.75rem;min-height:2.75rem;padding:.625rem 1.125rem;font-size:.9375rem;font-weight:500;transition:background .12s,transform .12s,box-shadow .12s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--ink);color:var(--surface)}.btn-primary:hover{background:#2a2a2c}.btn-ghost{background:var(--surface-alt);color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{background:var(--surface)}.btn-danger{background:var(--surface);color:var(--danger);border:1px solid var(--line)}.btn-danger:hover{background:#fff5f5}.btn-icon{padding:.625rem}.matrix{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}@media (width<=640px){.matrix{grid-template-columns:1fr}}.quadrant{background:var(--surface);border:1px solid var(--line);border-radius:1rem;flex-direction:column;min-height:10rem;padding:1rem 1rem .75rem;display:flex}.quadrant-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.75rem;display:flex}.quadrant-title{letter-spacing:.03em;text-transform:uppercase;align-items:baseline;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.quadrant-num{width:1.375rem;height:1.375rem;color:var(--surface);border-radius:.375rem;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.quadrant-sub{color:var(--ink-muted);letter-spacing:0;text-transform:none;margin-top:.125rem;font-size:.8125rem;font-weight:400}.quadrant-count{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.quadrant-q1 .quadrant-num{background:var(--q1)}.quadrant-q2 .quadrant-num{background:var(--q2)}.quadrant-q3 .quadrant-num{background:var(--q3)}.quadrant-q4 .quadrant-num{background:var(--q4)}.quadrant-list{flex-direction:column;gap:.375rem;display:flex}.quadrant-empty{color:var(--ink-muted);padding:.5rem 0;font-size:.875rem;font-style:italic}.task{cursor:default;border-radius:.5rem;align-items:flex-start;gap:.625rem;padding:.625rem .5rem;transition:background .12s;display:flex}.task:hover{background:var(--surface-alt)}.task-check{border:2px solid var(--line);background:var(--surface);cursor:pointer;width:1.25rem;min-width:1.25rem;height:1.25rem;color:var(--surface);border-radius:.375rem;flex-shrink:0;justify-content:center;align-items:center;margin-top:.125rem;transition:background .12s,border-color .12s;display:inline-flex}.task-check:hover{border-color:var(--ink-muted)}.task-check[aria-pressed=true]{background:var(--ok);border-color:var(--ok)}.task-check svg{width:.875rem;height:.875rem}.task-text{color:var(--ink);word-break:break-word;cursor:pointer;text-underline-offset:.25em;border-radius:.25rem;flex:1;padding:.125rem 0;font-size:.9375rem;line-height:1.4;-webkit-text-decoration:underline dotted #0000;text-decoration:underline dotted #0000;text-decoration-thickness:1px;transition:color .12s,text-decoration-color .12s}.task:hover .task-text{-webkit-text-decoration-color:var(--ink-muted);text-decoration-color:var(--ink-muted)}.task-done .task-text{color:var(--ink-muted);cursor:default;text-decoration:line-through}.task-done .task-text:hover{-webkit-text-decoration-color:var(--ink-muted);text-decoration-color:var(--ink-muted)}.task-done{animation:2.5s forwards task-retire}@keyframes task-retire{0%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(8px)}}@media (prefers-reduced-motion:reduce){.task-done{animation:none}}.task-start{width:1.75rem;min-width:1.75rem;height:1.75rem;color:var(--ink-muted);opacity:0;border-radius:.375rem;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .12s,background .12s,color .12s;display:inline-flex}.task:hover .task-start,.task:focus-within .task-start{opacity:1}.task-start:hover{background:var(--q2-bg);color:var(--q2)}.task-start:focus-visible{opacity:1;outline:2px solid var(--q2);outline-offset:1px}.task-timer-badge{color:var(--ok);background:var(--q2-bg);border-radius:999px;flex-shrink:0;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.task-active{background:color-mix(in srgb, var(--q2-bg) 50%, transparent);border-left:3px solid var(--ok);padding-left:calc(.5rem - 3px)}.date-badge-wrap{flex-shrink:0;position:relative}.date-badge{color:var(--ink-muted);background:var(--line-soft);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;transition:background .12s,color .12s;display:inline-flex}.date-badge:hover{background:var(--line);color:var(--ink)}.date-badge-today{background:var(--q1-bg);color:var(--q1);font-weight:600}.date-badge-overdue{color:var(--danger);background:#fee2e2;font-weight:600}.date-badge-empty{border:1px dashed var(--line);color:var(--ink-muted);opacity:0;background:0 0;transition:opacity .12s,background .12s}.task:hover .date-badge-empty,.task:focus-within .date-badge-empty{opacity:1}.date-badge-empty:hover{background:var(--surface-alt)}.date-badge-pop{background:var(--surface);border:1px solid var(--line);z-index:20;border-radius:.5rem;align-items:center;gap:.5rem;margin-top:.25rem;padding:.5rem;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #1a1a1c26}.date-badge-pop input[type=date]{border:1px solid var(--line);border-radius:.375rem;padding:.375rem .5rem;font-size:.9375rem}.date-badge-clear{min-height:auto;padding:.375rem .625rem;font-size:.8125rem}.task-menu{color:var(--ink-muted);opacity:0;border-radius:.375rem;flex-shrink:0;padding:.25rem .5rem;transition:opacity .12s}.task:hover .task-menu,.task:focus-within .task-menu{opacity:1}.task-menu:hover{background:var(--line-soft);color:var(--ink)}.task-edit-input{background:0 0;border:0;outline:0;flex:1;padding:.125rem 0;font-size:.9375rem;line-height:1.4}.fab{right:max(1.25rem, env(safe-area-inset-right));bottom:max(1.25rem, env(safe-area-inset-bottom));background:var(--ink);width:3.5rem;height:3.5rem;color:var(--surface);z-index:10;border-radius:999px;justify-content:center;align-items:center;font-size:1.5rem;display:inline-flex;position:fixed;box-shadow:0 8px 24px #1a1a1c2e}.fab:hover{background:#2a2a2c}.modal-backdrop{z-index:50;background:#11111373;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:1rem;width:100%;max-width:28rem;max-height:92vh;padding:1.5rem;overflow-y:auto;box-shadow:0 24px 48px #11111340}.task-detail-modal{max-width:36rem}.task-detail-head{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.task-detail-head .modal-title{margin-bottom:0}.task-detail-actions{flex-wrap:wrap;align-items:center;gap:.5rem}.attach-drop{border:1.5px dashed var(--line);border-radius:.75rem;padding:.75rem;transition:background .12s,border-color .12s}.attach-drop-over{border-color:var(--q2);background:var(--q2-bg)}.attach-uploading{color:var(--ink-muted);margin:0 0 .5rem;font-size:.875rem}.attach-grid{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.625rem;margin-bottom:.75rem;display:grid}.attach-item{border:1px solid var(--line);background:var(--surface);border-radius:.5rem;flex-direction:column;gap:.25rem;display:flex;overflow:hidden}.attach-thumb{aspect-ratio:1;background:var(--surface-alt);cursor:zoom-in;border:0;width:100%;padding:0;display:block;overflow:hidden}.attach-thumb img{object-fit:cover;width:100%;height:100%;display:block}.attach-file{aspect-ratio:1;background:var(--surface-alt);cursor:pointer;text-align:center;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.375rem;width:100%;padding:.5rem;display:flex}.attach-file:hover{background:var(--line-soft)}.attach-file-icon{font-size:1.5rem}.attach-file-name{color:var(--ink);word-break:break-word;max-height:3.2em;font-size:.75rem;line-height:1.25;overflow:hidden}.attach-meta{color:var(--ink-muted);border-top:1px solid var(--line-soft);align-items:center;gap:.375rem;padding:.25rem .375rem;font-size:.6875rem;display:flex}.attach-meta-size{font-variant-numeric:tabular-nums}.attach-meta-by{flex:1}.attach-remove{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:.25rem;padding:0 .25rem}.attach-remove:hover{color:var(--danger);background:#fee2e2}.attach-upload-row{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.attach-hint{color:var(--ink-muted);font-size:.8125rem}.attach-badge{color:var(--ink-muted);background:var(--line-soft);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;display:inline-flex}.modal-title{letter-spacing:-.01em;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.modal-subtitle{color:var(--ink-soft);margin:0 0 1.25rem;font-size:.9375rem;line-height:1.45}.modal-field{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.modal-field label{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);font-size:.8125rem;font-weight:600}.modal-field input,.modal-field textarea{border:1px solid var(--line);background:var(--surface);color:var(--ink);resize:vertical;border-radius:.5rem;padding:.75rem .875rem;font-size:1rem}.modal-field input:focus,.modal-field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.modal-quadrants{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.quadrant-pick{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:.625rem;flex-direction:column;align-items:flex-start;gap:.25rem;min-height:3.5rem;padding:.75rem;transition:background .12s,border-color .12s;display:flex}.quadrant-pick:hover{border-color:var(--ink-muted)}.quadrant-pick[aria-pressed=true]{border-color:var(--ink);background:var(--surface-alt)}.quadrant-pick .q-label{font-size:.875rem;font-weight:600}.quadrant-pick .q-sub{color:var(--ink-muted);font-size:.75rem}.modal-scope{gap:.5rem;display:flex}.modal-scope .scope-btn{border:1px solid var(--line);flex:1}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.modal-error{color:var(--danger);margin:0 0 .75rem;font-size:.875rem;font-weight:500}.modal-success{color:var(--ok);margin:.5rem 0 0;font-size:.9375rem;line-height:1.45}.auth-gate-hint{color:var(--ink-muted);margin-top:.5rem;font-size:.8125rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.completed-panel{background:var(--surface);border:1px solid var(--line);border-radius:1rem;margin-top:1.5rem;overflow:hidden}.completed-toggle{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:.625rem;padding:.875rem 1.125rem;font-family:inherit;font-size:.9375rem;font-weight:500;display:flex}.completed-toggle:hover{background:var(--surface-alt)}.completed-chevron{color:var(--ink-muted);font-size:.75rem;transition:transform .16s;display:inline-block}.completed-chevron.is-open{transform:rotate(90deg)}.completed-label{flex:1}.completed-count{color:var(--ink-muted);font-variant-numeric:tabular-nums;background:var(--line-soft);border-radius:999px;padding:.125rem .5rem;font-size:.8125rem}.completed-body{border-top:1px solid var(--line);padding:.5rem .875rem 1rem}.completed-group+.completed-group{margin-top:.75rem}.completed-group-head{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);padding:.5rem .375rem .375rem;font-size:.75rem;font-weight:600}.completed-row{border-radius:.5rem;align-items:center;gap:.625rem;padding:.5rem .375rem;transition:background .12s;display:flex}.completed-row:hover{background:var(--surface-alt)}.completed-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem}.completed-text{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.9375rem;text-decoration:line-through;overflow:hidden}.completed-when{color:var(--ink-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.75rem}.completed-restore{opacity:0;min-height:auto;padding:.25rem .625rem;font-size:.8125rem;transition:opacity .12s}.completed-delete{min-height:auto;color:var(--ink-muted);opacity:0;padding:.25rem .5rem;font-size:.8125rem;transition:opacity .12s}.completed-row:hover .completed-restore,.completed-row:focus-within .completed-restore,.completed-row:hover .completed-delete,.completed-row:focus-within .completed-delete{opacity:1}.completed-older{color:var(--ink-muted);text-align:center;margin:.75rem 0 0;font-size:.8125rem;font-style:italic}@media (width<=640px){.completed-when{display:none}.completed-restore,.completed-delete{opacity:1}}.cal-sheet{background:var(--surface);border-top:1px solid var(--line);z-index:30;padding-bottom:env(safe-area-inset-bottom);border-radius:1rem 1rem 0 0;flex-direction:column;transition:height .24s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 32px #1a1a1c14}.cal-sheet-peek{height:5.25rem}.cal-sheet-half{height:55vh}.cal-sheet-full{height:92vh}.cal-grabber{cursor:pointer;flex-shrink:0;justify-content:center;padding:.375rem 0 .25rem;display:flex}.cal-grabber-handle{background:var(--line);border-radius:999px;width:2.5rem;height:.25rem}.cal-grabber:hover .cal-grabber-handle{background:var(--ink-muted)}.cal-week-strip{flex-shrink:0;grid-template-columns:repeat(7,1fr);gap:.25rem;padding:.375rem .75rem .5rem;display:grid}.cal-week-day{cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex-direction:column;align-items:center;gap:.125rem;min-height:2.75rem;padding:.25rem .125rem;transition:background .12s;display:flex}.cal-week-day:hover{background:var(--surface-alt)}.cal-week-day.is-today{background:var(--ink);color:var(--surface)}.cal-week-letter{letter-spacing:.04em;color:var(--ink-muted);font-size:.6875rem;font-weight:600}.cal-week-day.is-today .cal-week-letter{color:#ffffffb3}.cal-week-num{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600}.cal-week-dots{align-items:center;gap:.125rem;min-height:.375rem;margin-top:.0625rem;display:flex}.cal-dot{background:var(--ink-muted);border-radius:999px;width:.3125rem;height:.3125rem}.cal-week-day.is-today .cal-dot{box-shadow:0 0 0 1px #ffffff40}.cal-dot-empty{background:var(--line);border-radius:999px;width:.3125rem;height:.3125rem}.cal-month{flex-shrink:0;padding:.5rem .75rem .75rem}.cal-month-head{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.cal-month-title{letter-spacing:-.01em;text-align:center;flex:1;font-size:1rem;font-weight:600}.cal-today-btn{min-height:auto;padding:.375rem .75rem;font-size:.8125rem}.cal-grid{flex-direction:column;gap:.125rem;display:flex}.cal-grid-head,.cal-grid-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:.125rem;display:grid}.cal-grid-head-cell{text-align:center;color:var(--ink-muted);letter-spacing:.04em;padding:.25rem 0;font-size:.6875rem;font-weight:600}.cal-cell{cursor:pointer;aspect-ratio:1;background:0 0;border:1px solid #0000;border-radius:.5rem;flex-direction:column;justify-content:space-between;align-items:center;gap:.125rem;min-width:0;padding:.25rem .125rem;font-family:inherit;transition:background .12s,border-color .12s;display:flex;overflow:hidden}.cal-cell:hover{background:var(--surface-alt)}.cal-cell-num{font-variant-numeric:tabular-nums;color:var(--ink);font-size:.875rem;font-weight:500}.cal-cell-muted .cal-cell-num{color:var(--ink-muted);opacity:.5}.cal-cell-today{background:var(--ink)}.cal-cell-today .cal-cell-num{color:var(--surface);font-weight:700}.cal-cell-selected{border-color:var(--q1)}.cal-cell-selected:not(.cal-cell-today){background:var(--q1-bg)}.cal-cell-dots{gap:.0625rem;min-height:.3125rem;display:flex}.cal-cell-today .cal-dot{box-shadow:0 0 0 1px #ffffff4d}.cal-detail{border-top:1px solid var(--line);flex:1;min-height:0;padding:.75rem 1rem 1rem;overflow-y:auto}.cal-detail-head{justify-content:space-between;align-items:baseline;margin-bottom:.75rem;display:flex}.cal-detail-title{letter-spacing:-.01em;font-size:1.0625rem;font-weight:600}.cal-detail-sub{color:var(--ink-muted);font-size:.8125rem}.cal-detail-tasks{flex-direction:column;gap:.375rem;display:flex}.cal-detail-task{background:var(--surface-alt);border-radius:.5rem;align-items:center;gap:.625rem;padding:.5rem .625rem;display:flex}.cal-detail-task-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem}.cal-detail-task-text{text-align:left;font:inherit;color:var(--ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;min-width:0;padding:.125rem 0;overflow:hidden}.cal-detail-task-clear{min-height:auto;color:var(--ink-muted);padding:.25rem .5rem;font-size:.8125rem}.cal-detail-empty{color:var(--ink-muted);margin:0 0 .75rem;font-size:.9375rem;font-style:italic}.cal-detail-undated{border-top:1px dashed var(--line);margin-top:.875rem;padding-top:.875rem}.cal-detail-undated-head{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .5rem;font-size:.75rem;font-weight:600}.cal-detail-undated-pill{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;margin:0 .375rem .375rem 0;padding:.375rem .625rem;font-size:.8125rem;transition:background .12s;display:inline-flex}.cal-detail-undated-pill:hover{background:var(--surface-alt)}.cal-detail-actions{gap:.5rem;margin-top:.875rem;display:flex}@media (width>=900px){.cal-sheet{border-top:0;border-left:1px solid var(--line);box-shadow:none;border-radius:0;padding-bottom:0;transition:none;inset:0 0 0 auto;width:40rem!important;height:100vh!important}.cal-desktop-head{flex-shrink:0;padding:1rem 1.5rem .5rem}.cal-desktop-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:.8125rem;font-weight:600}.cal-month{padding:.5rem 1.25rem 1rem}.cal-month-title{font-size:1.125rem}.cal-cell-text{aspect-ratio:auto;text-align:left;align-items:stretch;min-height:5.5rem;padding:.375rem .375rem .375rem .5rem}.cal-cell-text .cal-cell-num{align-self:flex-start;font-size:.8125rem}.cal-cell-events{flex-direction:column;flex:1;gap:.1875rem;min-height:0;margin-top:.25rem;display:flex;overflow:hidden}.cal-cell-event{border-left:2px solid var(--ink);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;cursor:grab;border-radius:.25rem;padding:.1875rem .375rem;font-size:.6875rem;font-weight:500;line-height:1.2;display:block;overflow:hidden}.cal-cell-event:active{cursor:grabbing}.cal-cell-event:hover{filter:brightness(.96)}.cal-cell-more{color:var(--ink-muted);padding:0 .375rem;font-size:.6875rem}.cal-cell-drag-over{outline:2px solid var(--q2);outline-offset:-1px;background:var(--q2-bg)!important}.cal-detail{padding:1rem 1.5rem 1.25rem}}.cal-desktop-head{display:none}@media (width>=900px){.cal-desktop-head{display:block}}.shell-main{padding-bottom:6.5rem}@media (width>=900px){.shell-main{padding-bottom:max(2rem, env(safe-area-inset-bottom))}.app{padding-right:40rem}.task:not(.task-done){cursor:grab}.task:not(.task-done):active{cursor:grabbing}}
