:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#171529;background:#f5f4ff}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:10px;padding:11px 15px;background:#2538e9;color:white;font-weight:650}button.secondary{background:#e5ff73;color:#2538e9}button.ghost{background:transparent;color:#303caa;padding:7px}button:disabled{opacity:.5}input,select,textarea{border:1px solid #c9c8e5;border-radius:9px;padding:10px;background:white;width:100%;color:#171529}label{font-size:13px;font-weight:650;display:block;margin-bottom:5px}.shell{max-width:1040px;margin:auto;padding:25px 20px 80px}.header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}.brand{font-size:27px;font-weight:850;letter-spacing:-1.2px}.muted{color:#686784}.eyebrow{text-transform:uppercase;letter-spacing:1.2px;font-size:11px;font-weight:800;color:#4754d1}.tabs{display:flex;gap:8px;overflow:auto;margin-bottom:18px}.tabs .tab-link,.tabs button{white-space:nowrap;background:#e6e9ff;color:#2736a6}.tabs .tab-link{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:11px 15px;font-weight:650;text-decoration:none}.tabs .tab-link:hover{background:#d5daff}.tabs button.active{background:#2538e9}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.card{background:white;border-radius:17px;padding:19px;box-shadow:0 4px 16px #17152918}.card h2{font-size:17px;margin:0 0 15px}.metric{font-size:27px;font-weight:800;letter-spacing:-1px;margin-top:7px}.two{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.three{grid-template-columns:repeat(3,1fr)}.stack,.three{display:grid;grid-gap:12px;gap:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.item{padding:12px 0;border-bottom:1px solid #e6e4f4}.pill{font-size:11px;font-weight:700;padding:5px 9px;border-radius:20px;background:#e4ff8b;color:#273000}.pill.planned{background:#ffe5f2;color:#922a68}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.range{accent-color:#2538e9}small{color:#686784}.notice{padding:12px 14px;border-radius:10px;background:#e5ff73;font-size:13px}.danger{color:#b13d3d}.auth{max-width:430px;margin:10vh auto;padding:28px}.auth h1{margin:0 0 7px}.auth form{display:grid;grid-gap:12px;gap:12px}.empty{padding:25px;text-align:center;color:#686784}.spaced{margin-top:18px}@media(max-width:700px){.grid{grid-template-columns:repeat(2,1fr)}.three,.two{grid-template-columns:1fr}.shell{padding:16px 13px 70px}.brand{font-size:24px}.formgrid{grid-template-columns:1fr 1fr}.card{padding:15px}}:root{color-scheme:light;--cobalt:#2538e9;--lime:#e5ff73;--ink:#171529;--lavender:#f5f4ff}body{background:radial-gradient(circle at 100% 0,#e6e9ff 0,transparent 38%),var(--lavender);color:var(--ink)}.brand{font-weight:950;letter-spacing:-1.7px;text-transform:uppercase;font-style:italic;line-height:1.05}.header{border-bottom:3px solid var(--ink);padding-bottom:18px}.eyebrow{letter-spacing:2px;color:var(--cobalt)}button{transition:transform .15s ease,background .15s ease,box-shadow .15s ease;font-weight:800}button:not(:disabled):hover{transform:translateY(-1px)}.tab-link:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px}button.secondary{color:var(--ink);background:var(--lime)}.tabs{padding-bottom:4px}.tabs .tab-link,.tabs button{border-radius:999px;font-weight:800;border:1px solid #cbd0ff}.tabs button.active{background:var(--cobalt);color:white;border-color:var(--cobalt);box-shadow:3px 3px 0 var(--ink)}.tabs .tab-link:hover{background:var(--lime);color:var(--ink)}.card{border:1px solid #d9d9f3;border-radius:20px;box-shadow:4px 5px 0 #1715290d}.card h2{font-weight:900;letter-spacing:-.4px}.metric{color:var(--cobalt);font-weight:950;font-size:30px}.pill{font-weight:850;text-transform:uppercase;letter-spacing:.4px}.auth{border:2px solid var(--ink);box-shadow:9px 9px 0 var(--cobalt);transform:rotate(-.5deg)}.auth h1{font-size:clamp(36px,7vw,54px);text-transform:uppercase;font-style:italic;letter-spacing:-2.5px;line-height:1}.auth .eyebrow{background:var(--lime);display:inline-block;padding:6px 9px;color:var(--ink);margin-bottom:18px}input:focus,select:focus,textarea:focus{border-color:var(--cobalt)}@media(prefers-reduced-motion:reduce){button{transition:none}button:not(:disabled):hover{transform:none}}.overview-planner{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);grid-gap:16px;gap:16px;align-items:start}.overview-planner-main,.overview-planner-sidebar{display:grid;grid-gap:12px;gap:12px;min-width:0}.overview-planner-sidebar .card{padding:15px}.overview-planner-sidebar .card h2{margin-bottom:8px}.overview-planner-sidebar label.row{font-weight:600;font-size:13px}.overview-planner-sidebar .formgrid{grid-template-columns:1fr}.overview-planner-main .item{overflow-wrap:anywhere}@media(max-width:760px){.overview-planner{grid-template-columns:minmax(0,1fr)}.overview-planner-sidebar{grid-row:1}.overview-planner-sidebar .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.overview-planner-sidebar .formgrid{grid-template-columns:1fr}}.overview-mood-bubbles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.overview-mood-bubble{background:#f5f4ff;border:1px solid #d9d9f3;border-radius:18px;padding:12px 7px;text-align:center;display:grid;justify-items:center;grid-gap:3px;gap:3px}.overview-mood-bubble>span{font-size:24px}.overview-mood-bubble strong{color:#2538e9;font-size:17px}.overview-mood-bubble small{font-size:11px}.cycle-markers{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));grid-gap:9px;gap:9px}button.cycle-marker{background:#f5f4ff;color:#171529;border:2px solid #deddf4;border-radius:17px;padding:12px 8px;display:grid;justify-items:center;grid-gap:6px;gap:6px;font-size:12px;font-weight:750}button.cycle-marker span:first-child{font-size:27px}button.cycle-marker.selected{background:#e5ff73;border-color:#2538e9;box-shadow:2px 2px 0 #171529}@media(max-width:420px){.overview-mood-bubbles{grid-template-columns:repeat(2,minmax(0,1fr))}}.week-table-scroll{overflow-x:auto;max-width:100%}.week-table{width:100%;border-collapse:collapse;text-align:left;min-width:540px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.week-table td,.week-table th{padding:12px 13px;border-bottom:1px solid #e6e4f4}.week-table thead th{background:#f5f4ff;color:#2538e9;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.week-table tbody th{font-weight:750}.week-table tbody tr:last-child td,.week-table tbody tr:last-child th{border-bottom:0}.week-selected{display:inline-block;margin-left:8px;font-size:10px;background:#e5ff73;border-radius:10px;padding:3px 7px;color:#171529}.week-table th:first-child{width:155px;white-space:nowrap}.week-event{display:flex;gap:12px;align-items:baseline;padding:5px 0;white-space:normal}.week-event+.week-event{border-top:1px solid #efedf8}.week-event-time{flex:0 0 65px;font-size:12px;font-weight:800;color:#2538e9}.week-event a{color:#2538e9;font-weight:650;text-decoration:underline;text-underline-offset:2px}.todo-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;grid-gap:14px;gap:14px;align-items:start}.todo-page-main,.todo-page-sidebar{min-width:0}.todo-page-main .three{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.todo-page-main .three>.card{padding:12px;min-width:0}.todo-page-main .three .item{overflow-wrap:anywhere}.todo-page-main .three .item .row{flex-wrap:wrap}.todo-page-sidebar .card{padding:13px}.todo-page-sidebar .card h2{font-size:15px;margin-bottom:6px}.todo-page-sidebar .pill{font-size:10px}.todo-page-sidebar label.row{font-size:12px}@media(max-width:900px){.todo-page-layout{grid-template-columns:minmax(0,1fr) 205px}.todo-page-main .three{grid-template-columns:1fr}}@media(max-width:650px){.todo-page-layout{grid-template-columns:1fr}.todo-page-sidebar{grid-row:1}.todo-page-main .three{grid-template-columns:1fr}}.journal-prompt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}button.journal-prompt{background:#f5f4ff;color:#171529;border:1px solid #d9d9f3;text-align:left;border-radius:16px;padding:15px;display:flex;gap:12px;align-items:flex-start;font-weight:500}button.journal-prompt:hover{background:#e5ff73}.journal-prompt-emoji{font-size:26px;flex:0 0 auto}.journal-prompt-copy{display:grid;grid-gap:5px;gap:5px}.journal-prompt-copy small{color:#2538e9;text-transform:uppercase;letter-spacing:.7px;font-weight:850;font-size:10px}.journal-prompt-copy strong{font-size:14px;line-height:1.45}@media(max-width:650px){.journal-prompt-grid{grid-template-columns:1fr}}.projects-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.project-tile{border:1px solid #d9d9f3;background:#f5f4ff;border-radius:17px;padding:16px;min-width:0;overflow-wrap:anywhere}.project-tile h3{margin:0;font-size:17px}.project-tile-counts{display:flex;flex-wrap:wrap;gap:7px 12px;font-size:12px;margin:14px 0 10px}.project-progress{height:9px;background:#deddf4;border-radius:10px;overflow:hidden}.project-progress>div{height:100%;background:#2538e9;border-radius:10px}.project-next{font-size:12px;line-height:1.5}.project-active-tasks{font-size:13px;display:grid;grid-gap:8px;gap:8px;margin-top:12px}@media(max-width:900px){.projects-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.projects-board{grid-template-columns:1fr}}.subtask-area{margin-top:12px;padding-top:10px;border-top:1px solid #e7e6f3;display:grid;grid-gap:7px;gap:7px}.subtask-heading{font-size:12px}.subtask-line{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:12px}.subtask-line label{display:flex;align-items:center;gap:7px;min-width:0;overflow-wrap:anywhere;cursor:pointer}.subtask-line input[type=checkbox]{width:16px;height:16px;flex:0 0 auto}.subtask-line button{padding:2px 6px}.subtask-add{display:flex;gap:5px;align-items:center}.subtask-add input{min-width:0;flex:1 1;font-size:12px;padding:8px}.subtask-add button{padding:8px;font-size:11px}