@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500;1,600&display=swap";:root{font-family:DM Sans,sans-serif;color:#132c39;background:#bae6fd;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,a{color:inherit;font:inherit}button{border:0;cursor:pointer}.app{--ink: #132c39;--muted: #536b74;--paper: rgba(255,255,255,.55);min-height:100vh;overflow:hidden;position:relative;transition:background 1.2s ease,color 1.2s ease;background:linear-gradient(145deg,#bae6fd,#fef08a)}.phase-afternoon{background:linear-gradient(145deg,#38bdf8,#bae6fd)}.phase-sunset{background:linear-gradient(145deg,#f97316,#4c1d95);--ink: #fff8ee;--muted: #f6c8ae;--paper: rgba(38, 14, 57, .3)}.phase-night{background:linear-gradient(145deg,#0f172a,#020617);--ink: #e5f3f4;--muted: #8ea7b0;--paper: rgba(22, 37, 52, .72)}.sky{height:380px;inset:0 0 auto;overflow:hidden;pointer-events:none;position:absolute}.sun-orb{background:#ffffe49e;border-radius:50%;height:260px;position:absolute;right:12%;top:-120px;transition:1s;width:260px;filter:blur(1px)}.phase-afternoon .sun-orb{background:#ffffe6e6;top:-80px}.phase-sunset .sun-orb{background:#ffb26b;top:120px;right:18%}.phase-night .sun-orb{opacity:0}.cloud{color:#ffffff8c;position:absolute}.cloud-one{left:9%;top:132px}.cloud-two{right:28%;top:74px;opacity:.46}.phase-sunset .cloud{color:#49225c47}.phase-night .cloud{opacity:.06}.stars{color:#dff8ff;font-size:21px;letter-spacing:20px;opacity:0;position:absolute;right:9%;top:100px;animation:twinkle 4s ease-in-out infinite}.phase-night .stars{opacity:.7}@keyframes twinkle{50%{opacity:.25}}.content-width,.topbar{margin:0 auto;max-width:1120px;padding-left:28px;padding-right:28px;position:relative}.topbar{align-items:center;display:flex;justify-content:space-between;padding-top:28px}.brand{align-items:center;display:flex;font-size:18px;font-weight:700;gap:9px;letter-spacing:-.04em;text-decoration:none}.brand-mark{align-items:center;background:#ffffff9e;border-radius:9px;display:flex;height:30px;justify-content:center;width:30px}.header-actions{align-items:center;display:flex;gap:13px}.date-picker{align-items:center;background:transparent;display:flex;font-size:13px;gap:6px;opacity:.8}.avatar{background:#ffffffa8;border-radius:50%;font-size:12px;font-weight:700;height:33px;width:33px}.profile-menu{position:relative}.profile-dropdown{background:#fff;border:1px solid rgba(19,44,57,.12);border-radius:12px;box-shadow:4px 6px #132c391f;display:grid;gap:3px;min-width:145px;padding:8px;position:absolute;right:0;top:42px;z-index:8}.profile-dropdown strong{border-bottom:1px solid rgba(19,44,57,.1);color:#132c39;font-size:12px;padding:7px 9px 10px}.profile-dropdown button{background:transparent;border-radius:7px;color:#536b74;font-size:11px;padding:8px 9px;text-align:left}.profile-dropdown button:hover{background:#edf6f5}.profile-dropdown .logout-action{color:#a13c2f}.hero{align-items:end;display:flex;justify-content:space-between;padding-bottom:80px;padding-top:122px}.kicker,.section-label{color:var(--muted);font-family:DM Mono,monospace;font-size:10px;letter-spacing:.13em;margin:0 0 13px;text-transform:uppercase}.pulse{background:currentColor;border-radius:50%;display:inline-block;height:6px;margin-right:5px;width:6px}h1{font-size:clamp(41px,6vw,76px);letter-spacing:-.075em;line-height:.98;margin:0}.hero h1 em{font-family:Playfair Display,serif;font-weight:500}.intro{color:var(--muted);font-size:16px;margin:21px 0 0}.intro span{color:var(--ink);font-weight:600}.time-card{align-items:center;display:flex;gap:12px;padding-bottom:4px}.time-card svg{opacity:.7}.time-card strong,.time-card span{display:block}.time-card strong{font-family:DM Mono,monospace;font-size:21px;font-weight:400}.time-card span{color:var(--muted);font-size:11px;margin-top:5px}.dashboard-grid{display:grid;gap:84px;grid-template-columns:minmax(0,1.4fr) minmax(260px,.75fr)}.section-heading{align-items:end;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.section-label{margin-bottom:7px}h2{font-size:27px;letter-spacing:-.05em;margin:0}.progress-count{color:var(--muted);font-family:DM Mono,monospace;font-size:11px;padding-bottom:3px}.edit-routine-button{align-items:center;background:#ffffff8c;border:1px solid rgba(19,44,57,.18);border-radius:8px;color:var(--ink);display:flex;font-size:11px;gap:5px;margin-left:auto;padding:8px 10px;white-space:nowrap}.habit-list{border-top:1px solid rgba(19,44,57,.18)}.habit-row{align-items:center;background:transparent;border-bottom:1px solid rgba(19,44,57,.18);display:flex;gap:15px;min-height:63px;padding:10px 2px;text-align:left;transition:opacity .2s,transform .2s;width:100%}.habit-row:hover{transform:translate(5px)}.check-box{align-items:center;border:1px solid currentColor;border-radius:50%;display:flex;height:21px;justify-content:center;opacity:.8;transition:background .25s,color .25s;width:21px}.habit-name{font-size:15px}.habit-number{color:var(--muted);font-family:DM Mono,monospace;font-size:10px;margin-left:auto;opacity:.75}.habit-row.is-done{opacity:.48}.habit-row.is-done .check-box{background:var(--ink);color:transparent}.habit-row.is-done .habit-name{text-decoration:line-through}.add-line{align-items:center;background:transparent;color:var(--muted);display:flex;font-size:12px;gap:9px;margin-top:17px;padding:0}.add-line:hover{color:var(--ink)}.reflection-card,.side-card{background:var(--paper);border:1px solid rgba(255,255,255,.28);border-radius:18px;box-shadow:5px 5px #132c3914}.reflection-card{align-items:center;display:flex;gap:15px;margin-top:56px;padding:18px 20px}.reflection-icon,.water-icon{align-items:center;background:#ffffff57;border-radius:12px;display:flex;height:40px;justify-content:center;width:40px}.reflection-card h3,.water-card h3{font-size:15px;letter-spacing:-.03em;margin:0}.reflection-card p:not(.section-label),.muted{color:var(--muted);font-size:11px;margin:5px 0 0}.reflection-arrow{margin-left:auto;opacity:.6}.side-card{padding:20px}.side-card-head{align-items:center;display:flex;justify-content:space-between}.phase-track{margin:25px 0 20px}.phase-stop{align-items:center;background:transparent;display:grid;gap:11px;grid-template-columns:20px 1fr;padding:8px 0;position:relative;text-align:left;width:100%}.phase-stop .track-line{background:currentColor;height:31px;left:9px;opacity:.15;position:absolute;top:27px;width:1px}.phase-stop:last-child .track-line{display:none}.phase-dot{align-items:center;background:#ffffff47;border:1px solid currentColor;border-radius:50%;display:flex;height:20px;justify-content:center;opacity:.55;position:relative;width:20px}.phase-stop.selected .phase-dot{background:var(--ink);color:var(--paper);opacity:1}.phase-stop strong,.phase-stop small{display:block}.phase-stop strong{font-size:12px;font-weight:500}.phase-stop small{color:var(--muted);font-family:DM Mono,monospace;font-size:9px;margin-top:3px}.phase-hint{border-top:1px solid rgba(19,44,57,.13);color:var(--muted);font-size:10px;margin:10px 0 0;padding-top:15px}.phase-hint span{float:right;font-size:15px}.water-card{align-items:center;display:grid;gap:12px;grid-template-columns:40px 1fr 30px;margin-top:18px}.water-card .section-label{margin-bottom:4px}.round-add{background:var(--ink);border-radius:50%;color:var(--paper);font-size:19px;height:29px;width:29px}.water-dots{display:flex;gap:6px;grid-column:1 / -1;margin-top:2px}.water-dots span{background:#132c3929;border-radius:3px;height:5px;width:22px}.water-dots .filled{background:#55aeb8}.bottom-nav{align-items:center;border-top:1px solid rgba(19,44,57,.16);display:flex;gap:28px;margin-top:80px;padding-bottom:31px;padding-top:22px}.bottom-nav button{background:transparent;color:var(--muted);font-size:11px;padding:0}.bottom-nav button.active{color:var(--ink);font-weight:700}.bottom-nav .nav-settings{margin-left:auto;letter-spacing:3px}.floating-add{align-items:center;background:var(--ink);border-radius:40px;bottom:28px;box-shadow:4px 4px #132c3926;color:var(--paper);display:flex;gap:8px;padding:14px 18px;position:fixed;right:28px;z-index:4}.floating-add span{font-size:12px;font-weight:600}.floating-add.open{background:#fff;color:#132c39}.add-menu{background:#fff;border-radius:14px;bottom:83px;box-shadow:4px 4px #132c3926;display:grid;gap:3px;padding:7px;position:fixed;right:28px;z-index:4}.add-menu button{align-items:center;background:transparent;border-radius:9px;display:flex;font-size:12px;gap:8px;padding:10px 12px;text-align:left;width:116px}.add-menu button:hover{background:#edf6f5}.toast{align-items:center;background:var(--ink);border-radius:30px;bottom:28px;color:var(--paper);display:flex;font-size:12px;gap:8px;left:50%;padding:12px 17px;position:fixed;transform:translate(-50%);z-index:5}@media (max-width: 700px){.content-width,.topbar{padding-left:20px;padding-right:20px}.topbar{padding-top:20px}.hero{display:block;padding-bottom:50px;padding-top:91px}.time-card{margin-top:28px}.dashboard-grid{display:block}.side-column{margin-top:45px}.bottom-nav{margin-top:60px}.reflection-card{margin-top:43px}.sun-orb{right:-17%}.cloud-two{right:8%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.join-screen{min-height:100vh}.join-wrap{margin:0 auto;max-width:1120px;padding:28px;position:relative}.join-card{background:#ffffff85;border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:8px 8px #132c3914;margin:110px auto 22px;max-width:560px;padding:42px}.join-card h1,.onboarding-card h1{font-size:clamp(39px,6vw,62px);letter-spacing:-.07em;margin:0}.join-card h1 em,.onboarding-card h1 em{font-family:Playfair Display,serif;font-weight:500}.join-copy{color:var(--muted);font-size:15px;line-height:1.6;margin:18px 0 28px;max-width:430px}.join-card form{display:grid;gap:14px}.join-card label{color:var(--muted);display:grid;font-family:DM Mono,monospace;font-size:10px;gap:7px;letter-spacing:.04em;text-transform:uppercase}.join-card input,.habit-editor{background:#ffffff8c;border:1px solid rgba(19,44,57,.18);border-radius:10px;color:var(--ink);font:15px DM Sans,sans-serif;outline:none;padding:14px}.join-card input:focus,.habit-editor:focus{border-color:#55aeb8;box-shadow:0 0 0 3px #55aeb826}.primary-button{align-items:center;background:var(--ink);border-radius:12px;color:var(--paper);display:flex;font-size:13px;font-weight:600;gap:9px;justify-content:center;margin-top:8px;padding:15px 18px}.switch-button{background:transparent;color:var(--muted);display:block;font-size:12px;margin:23px auto 0;text-decoration:underline;text-underline-offset:3px}.form-error{color:#b24531;font-size:12px;margin:0}.join-note{color:var(--muted);font-size:11px;text-align:center}.onboarding{min-height:100vh}.onboarding-wrap{margin:0 auto;max-width:880px;padding:28px;position:relative}.onboarding-head{align-items:center;display:flex;justify-content:space-between}.step-count{color:var(--muted);font:11px DM Mono,monospace}.onboarding-card{background:#ffffff85;border:1px solid rgba(255,255,255,.7);border-radius:24px;margin:80px auto 0;max-width:730px;padding:44px}.onboarding-next{margin-top:34px;width:100%}.phase-editor{display:grid;gap:8px;margin-top:30px}.time-row{align-items:center;background:#ffffff59;border-radius:11px;display:grid;gap:11px;grid-template-columns:1fr 118px auto 118px;padding:10px 14px}.phase-name{align-items:center;display:flex;font-size:13px;gap:8px}.time-row input{background:#ffffffa6;border:1px solid rgba(19,44,57,.12);border-radius:7px;color:var(--ink);font:12px DM Mono,monospace;padding:9px}.time-row>span:not(.phase-name){color:var(--muted);font-size:11px}.phase-tabs{display:flex;gap:8px;margin:25px 0 13px;overflow-x:auto}.phase-tabs button{align-items:center;background:#ffffff59;border-radius:8px;color:var(--muted);display:flex;font-size:11px;gap:6px;padding:9px 12px;white-space:nowrap}.phase-tabs button.selected{background:var(--ink);color:var(--paper)}.habit-editor{display:block;min-height:190px;resize:vertical;width:100%}.setup-preview{display:grid;gap:8px;margin-top:28px}.setup-preview>div{align-items:center;background:#ffffff59;border-radius:10px;display:flex;justify-content:space-between;padding:13px 15px}.setup-preview span{align-items:center;display:flex;font-size:13px;gap:8px}.setup-preview small,.date-label{color:var(--muted);font:10px DM Mono,monospace}.empty-habits{color:var(--muted);font-size:14px;padding:20px 0}.screen-reader-only{height:1px;overflow:hidden;position:absolute;width:1px}.review-link{align-items:center;background:transparent;border-top:1px solid rgba(19,44,57,.13);color:var(--ink);display:flex;font-size:11px;gap:7px;justify-content:space-between;margin-top:12px;padding:15px 0 0;width:100%}.review-close{align-items:center;background:transparent;color:var(--muted);display:flex;font-size:12px;gap:6px}.modal-backdrop{align-items:center;background:#06161e59;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:10}.entry-modal{background:#f5fbf8;border-radius:20px;box-shadow:8px 8px #04192033;color:#132c39;max-width:490px;padding:28px;width:100%}.modal-head{align-items:start;display:flex;justify-content:space-between}.modal-head h2{font-size:25px}.modal-close{background:transparent;padding:3px}.entry-switch{background:#e4f1ee;border-radius:9px;display:flex;gap:4px;margin:23px 0;padding:4px}.entry-switch button{background:transparent;border-radius:6px;color:#536b74;flex:1;font-size:11px;padding:9px}.entry-switch button.selected{background:#fff;color:#132c39;font-weight:600}.modal-label{color:#536b74;display:grid;font:10px DM Mono,monospace;gap:7px;margin-top:13px;text-transform:uppercase}.modal-label input,.modal-label select{background:#fff;border:1px solid #c7dcd8;border-radius:9px;color:#132c39;font:14px DM Sans,sans-serif;padding:12px}.review-screen{min-height:100vh}.review-wrap{margin:0 auto;max-width:880px;padding:100px 28px 80px;position:relative}.review-wrap h1{color:#f2fbff;font-size:clamp(43px,7vw,75px);text-shadow:0 2px 18px rgba(140,214,230,.18)}.review-wrap .join-copy{color:#b9d0d6}.review-stats{align-items:baseline;display:flex;gap:18px;margin:36px 0 30px}.review-stats strong{color:#f2fbff;font-family:Playfair Display,serif;font-size:22px;font-weight:500}.review-stats span{color:#9eb8c0;font:10px DM Mono,monospace}.review-periods{display:grid;gap:12px;grid-template-columns:1fr 1fr}.review-period{background:var(--paper);border:1px solid rgba(255,255,255,.22);border-radius:15px;padding:18px}.review-period-head{align-items:center;border-bottom:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:12px}.review-period-head h2{align-items:center;color:#f2fbff;display:flex;font-size:16px;gap:8px}.review-period-head>span{color:var(--muted);font:11px DM Mono,monospace}.review-items{display:grid;gap:2px}.review-item{align-items:center;background:transparent;color:var(--ink);display:flex;font-size:12px;gap:8px;padding:7px 0;text-align:left;width:100%}.review-item .check-box{flex:0 0 18px;height:18px;width:18px}.review-item small{color:var(--muted);font-size:9px;margin-left:auto}.review-item:not(.done){opacity:.65}.review-item.done{opacity:.85}.late-item{color:#8bd8d4}.review-add{color:var(--ink);margin:22px 0 0}.close-day{margin-top:35px;max-width:240px}.review-screen .topbar{z-index:1}.history-modal{background:#05121cb8;border-radius:24px;top:20px;right:20px;bottom:20px;left:20px;overflow:auto;position:fixed;z-index:10}.history-modal .review-screen{min-height:100%}.history-modal .review-wrap{padding-top:55px}.history-modal .review-wrap h1{font-size:clamp(35px,5vw,55px)}@media (max-width: 620px){.join-wrap,.onboarding-wrap{padding:20px}.join-card,.onboarding-card{margin-top:70px;padding:27px 22px}.time-row{grid-template-columns:1fr 96px auto 96px;padding:9px}.time-row input{min-width:0;padding:8px 5px}.setup-preview>div{align-items:start;flex-direction:column;gap:7px}}.phase-night .sun-orb{background:#fff7c7;border:10px solid rgba(255,247,199,.15);box-shadow:0 0 42px 12px #fff7c74d;display:block;height:180px;opacity:1;right:14%;top:72px;width:180px}.phase-night .sun-orb:after{background:#0f172a;border-radius:50%;content:"";height:168px;left:35px;position:absolute;top:-18px;width:168px}.phase-night .hero h1,.phase-night .hero h2,.phase-night .habit-name,.phase-night .reflection-card h3,.phase-night .water-card h3{color:#f2fbff;text-shadow:0 1px 12px rgba(140,214,230,.12)}.phase-night .habit-row,.phase-night .habit-list,.phase-night .phase-hint,.phase-night .review-link{border-color:#cdeff740}.bottom-nav button{align-items:center;display:inline-flex;gap:5px;white-space:nowrap}.tracker-page{min-height:100vh}.back-link{background:transparent;color:var(--muted);font-size:12px;padding:0}.tracker-wrap{margin:0 auto;max-width:700px;padding:110px 28px 80px;position:relative;text-align:center}.tracker-wrap h1{font-size:clamp(47px,8vw,82px)}.tracker-copy{color:var(--muted);font-size:15px;line-height:1.6;margin:20px auto;max-width:420px}.tracker-illustration{height:250px;margin:30px auto 5px;max-width:360px;position:relative}.big-drop{color:#3d9db0;filter:drop-shadow(0 10px 8px rgba(40,120,150,.22));left:17%;position:absolute;top:30px;transform:rotate(-20deg)}.glass{background:#ffffff73;border:3px solid rgba(255,255,255,.75);border-radius:5px 5px 28px 28px;bottom:18px;height:168px;overflow:hidden;position:absolute;right:20%;transform:rotate(5deg);width:108px}.glass:before{background:#ffffff6b;content:"";height:100%;left:17px;position:absolute;width:8px}.glass-fill{background:linear-gradient(#73d8e2,#2e9ba9);bottom:0;position:absolute;transition:height .4s ease;width:100%}.glass span{bottom:55px;font-size:25px;left:34px;position:absolute}.poop-illustration{background:#ffffff1f;border-radius:50%;margin-top:35px;overflow:hidden}.toilet{bottom:5px;color:#e8f5f1;left:50%;position:absolute;transform:translate(-50%)}.moon-face{color:#f4ce8b;font-size:37px;left:12%;position:absolute;top:42px;transform:rotate(-15deg)}.poop-drop{animation:poop-fall .75s ease-in both;font-size:25px;position:absolute;top:-20px}.tracker-count{align-items:baseline;display:flex;gap:10px;justify-content:center}.tracker-count strong{font-family:Playfair Display,serif;font-size:43px;font-weight:500}.tracker-count span{color:var(--muted);font:11px DM Mono,monospace}.tracker-button{align-items:center;background:var(--ink);border-radius:30px;color:var(--paper);display:inline-flex;font-size:13px;gap:9px;margin-top:22px;padding:15px 23px}.tracker-note{color:var(--muted);font-size:11px;margin-top:16px}@keyframes poop-fall{0%{opacity:0;transform:translateY(-20px) rotate(0)}to{opacity:1;transform:translateY(170px) rotate(360deg)}}.toilet{bottom:8px;filter:drop-shadow(0 8px 8px rgba(19,44,57,.16));font-size:96px;left:50%;line-height:1;position:absolute;transform:translate(-50%)}.screen-illustration{align-items:center;background:#162c49;border:7px solid #b9e4e8;border-radius:24px;box-shadow:12px 12px #132c3921;color:#b9e4e8;display:flex;font-size:105px;height:190px;justify-content:center;margin:28px auto;position:relative;transform:rotate(-5deg);width:135px}.screen-illustration span{background:#f4c870;border-radius:8px;bottom:13px;color:#162c49;font:700 13px DM Mono,monospace;padding:5px 8px;position:absolute;right:-30px;transform:rotate(8deg)}.screen-app-picker{display:flex;gap:8px;justify-content:center;margin:16px auto 20px;max-width:520px}.screen-app-picker button{align-items:center;background:#fff6;border:1px solid rgba(19,44,57,.1);border-radius:12px;color:var(--ink);display:flex;font-size:12px;gap:7px;padding:11px 13px}.screen-app-picker button.selected{background:var(--ink);color:var(--paper)}.screen-app-picker strong{font:10px DM Mono,monospace;opacity:.7}.container-picker,.poop-options{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:14px auto}.container-picker button,.poop-options button{background:#ffffff73;border:1px solid rgba(19,44,57,.12);border-radius:9px;color:var(--ink);font-size:11px;padding:9px 12px}.container-picker button.selected,.poop-options button.selected{background:var(--ink);color:var(--paper)}.poop-caption{margin-top:23px;text-align:left}.day-rating{align-items:center;display:flex;gap:15px;margin:28px 0 8px}.day-rating span{color:var(--muted);font:10px DM Mono,monospace;text-transform:uppercase}.day-rating strong{color:#f4ce8b;font:500 31px Playfair Display,serif}.goofy-summary{color:var(--ink);font-family:Playfair Display,serif;font-size:18px;line-height:1.45;margin:0 0 22px;max-width:650px}.summary-button{background:#ffffff2e;border:1px solid rgba(255,255,255,.25);border-radius:20px;color:var(--ink);font-size:11px;padding:10px 14px}.summary-button:disabled{cursor:wait;opacity:.55}.day-weather{align-items:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:15px;display:flex;gap:13px;margin:28px 0 14px;max-width:410px;padding:13px 16px}.day-weather>span{font-size:28px}.day-weather strong,.day-weather small{display:block}.day-weather strong{font-size:13px}.day-weather small{color:var(--muted);font-size:10px;margin-top:4px}.subpage{min-height:100vh}.subpage-wrap{margin:0 auto;max-width:820px;padding:100px 28px 80px;position:relative}.subpage-wrap h1{font-size:clamp(44px,7vw,76px)}.calendar-card{background:#ffffff73;border-radius:18px;margin-top:38px;padding:22px}.calendar-week,.calendar-grid{display:grid;gap:7px;grid-template-columns:repeat(7,1fr)}.calendar-week span{color:var(--muted);font:10px DM Mono,monospace;padding:7px 0;text-align:center}.calendar-day,.calendar-empty{aspect-ratio:1;background:#ffffff4d;border-radius:9px;padding:9px;text-align:left}.calendar-day strong{font-size:12px}.calendar-day.today{background:var(--ink);color:var(--paper)}.calendar-day.selected{outline:2px solid #71c4ba;outline-offset:2px}.calendar-mark{background:#71c4ba;border-radius:50%;color:var(--ink);display:block;font:8px DM Mono,monospace;height:15px;line-height:15px;margin-top:7px;text-align:center;width:15px}.calendar-note,.small-facts{align-items:center;color:var(--muted);display:flex;font-size:12px;gap:9px;margin-top:20px}.calendar-note strong{color:var(--ink)}.small-facts{gap:18px}.timeline-list{border-left:1px solid rgba(19,44,57,.25);margin:42px 0 0 15px;padding:5px 0 5px 29px}.timeline-event{align-items:center;display:grid;gap:18px;grid-template-columns:70px 1fr;min-height:64px;position:relative}.timeline-event time{color:var(--muted);font:10px DM Mono,monospace}.timeline-event strong,.timeline-event small{display:block}.timeline-event strong{font-size:14px}.timeline-event small{color:var(--muted);font-size:10px;margin-top:4px}.timeline-event .timeline-dot{border:2px solid #62b4ba;border-radius:50%;height:11px;left:-35px;position:absolute;width:11px}.small-facts{flex-wrap:wrap;margin-top:33px}.settings-wrap{max-width:700px}.settings-intro{color:var(--muted);line-height:1.6;max-width:540px}.settings-label{color:var(--muted);display:grid;font:10px DM Mono,monospace;gap:7px;margin-top:34px;text-transform:uppercase}.settings-label input,.settings-phase input{background:#ffffff8c;border:1px solid rgba(19,44,57,.18);border-radius:8px;color:var(--ink);font:14px DM Sans,sans-serif;margin-top:4px;padding:12px}.settings-caption{margin-top:37px}.settings-phases{display:grid;gap:14px}.settings-phase{align-items:center;background:#ffffff61;border-radius:14px;display:grid;gap:8px;grid-template-columns:1fr 120px 120px;padding:16px}.settings-phase span{align-items:center;display:flex;font-size:13px;gap:7px}.settings-phase input{margin:0;padding:9px}.settings-habits{display:grid;gap:7px;grid-column:1 / -1}.settings-habit{align-items:center;background:#ffffff9e;border:1px solid rgba(19,44,57,.08);border-radius:9px;display:flex;font-size:12px;justify-content:space-between;padding:10px 12px}.settings-habit-name{font-weight:600}.settings-habit-actions{align-items:center;display:flex;gap:12px}.settings-habit select{background:#fff;border:1px solid rgba(19,44,57,.18);border-radius:6px;color:var(--muted);font-size:10px;padding:5px}.settings-habit button{background:#fff1ee;border:1px solid #efc5bd;border-radius:6px;color:#a13c2f;font-size:10px;padding:6px 8px}.settings-save{margin-top:30px}.back-link{cursor:pointer}.calendar-page-wrap{max-width:1050px}.paper-heading{align-items:end;display:flex;justify-content:space-between}.paper-year{color:#d783ab;font:700 18px DM Mono,monospace;letter-spacing:.08em}.calendar-card{background-color:#fffdf8;background-image:radial-gradient(#d9cfc3 .8px,transparent .8px);background-size:13px 13px;border:1px solid #e4d8cc;box-shadow:8px 10px #583f3414;color:#403832;margin-top:36px;overflow:hidden;padding:26px}.paper-topline{align-items:baseline;border-bottom:2px solid #403832;display:flex;justify-content:space-between;margin-bottom:18px;padding-bottom:13px}.paper-topline strong{font:700 25px Playfair Display,serif;text-transform:uppercase}.paper-topline span{color:#a88d9b;font:10px DM Mono,monospace;text-transform:uppercase}.habit-sheet{min-width:940px}.sheet-corner,.sheet-days,.sheet-row>div{display:grid;grid-template-columns:repeat(31,24px)}.sheet-corner{color:#a88d9b;font:9px DM Mono,monospace;margin-bottom:7px}.sheet-days{border-bottom:1px solid #403832;margin-left:175px;padding-bottom:8px}.sheet-days span{font:10px DM Mono,monospace;text-align:center}.sheet-rows{border-left:1px solid #403832}.sheet-row{align-items:center;border-bottom:1px solid #d8cbc1;display:grid;grid-template-columns:175px 1fr;min-height:38px}.sheet-row>strong{color:#5d4b55;font:600 12px DM Sans,sans-serif;overflow:hidden;padding-right:18px;text-overflow:ellipsis;white-space:nowrap}.sheet-cell{background:#ffffff73;border:1px solid #b9aaa0;border-radius:2px;height:24px;margin:0;padding:0;width:24px}.sheet-cell:hover,.sheet-cell.selected{outline:2px solid #d783ab;outline-offset:-2px}.sheet-cell.done{background:#df82ad;border-color:#bd5f8d}.sheet-cell.used:not(.done){background:#f3cbdc;border-color:#dd9dbb}.sheet-legend{align-items:center;color:#8e7783;display:flex;font:10px DM Mono,monospace;gap:18px;margin-top:20px;text-transform:uppercase}.sheet-legend span{align-items:center;display:flex;gap:6px}.legend-dot{background:#fffdf8;border:1px solid #b9aaa0;border-radius:2px;height:12px;width:12px}.legend-dot.done{background:#df82ad;border-color:#bd5f8d}.legend-dot.used{background:#f3cbdc;border-color:#dd9dbb}.history-modal{background:#281d2699;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.history-modal .review-screen{background:#fffdf8;border:1px solid #e4d8cc;border-radius:18px;color:#403832;margin:5vh auto;max-width:900px;min-height:auto;overflow:hidden;width:min(900px,calc(100% - 30px))}.history-modal .review-screen .sky{display:none}.history-modal .review-screen .topbar{background:#fffdf8;color:#403832;position:sticky;top:0}.history-modal .review-screen .brand,.history-modal .review-screen .review-close,.history-modal .review-screen h1,.history-modal .review-screen .join-copy,.history-modal .review-screen .review-stats strong,.history-modal .review-screen .review-period-head h2{color:#403832;text-shadow:none}.history-modal .review-wrap{padding:35px 28px 45px}.history-modal .review-period{background:#fffaf5;border-color:#e4d8cc}.history-modal .review-item{color:#403832}.history-modal .review-period-head{border-color:#e4d8cc}.history-modal .day-weather{background:#fff3f8;border-color:#edc9dc}.history-modal .goofy-summary{color:#63545b}.history-modal .close-day{background:#403832;color:#fffdf8}@media (max-width: 700px){.subpage-wrap{padding:80px 20px 60px}.calendar-card{padding:12px}.calendar-day,.calendar-empty{padding:6px}.settings-phase{grid-template-columns:1fr 88px 88px}.small-facts{gap:11px}}.onboarding-add-habit{align-items:center;display:flex;gap:8px;margin:16px 0 10px}.onboarding-add-habit input{background:#ffffffa6;border:1px solid rgba(19,44,57,.18);border-radius:9px;color:var(--ink);flex:1;font:14px DM Sans,sans-serif;outline:none;padding:11px 12px}.onboarding-add-habit input:focus{border-color:#55aeb8;box-shadow:0 0 0 3px #55aeb826}.onboarding-add-habit button{align-items:center;background:var(--ink);border-radius:9px;color:var(--paper);display:flex;font-size:11px;gap:5px;padding:11px 13px;white-space:nowrap}@media (max-width: 700px){.tracker-wrap{padding:90px 20px 60px}.bottom-nav{flex-wrap:wrap;gap:16px}}@media (max-width: 700px){.review-wrap{padding:80px 20px 60px}.review-periods{grid-template-columns:1fr}.review-stats{align-items:start;flex-direction:column;gap:5px}.entry-modal{padding:23px 19px}}@media (max-width: 700px){.calendar-page-wrap{padding-left:16px;padding-right:16px}.paper-heading{align-items:start;flex-direction:column;gap:8px}.calendar-card{margin-left:-4px;margin-right:-4px;overflow-x:auto;padding:18px 14px}.paper-topline{min-width:940px}.sheet-legend{flex-wrap:wrap}.history-modal{top:8px;right:8px;bottom:8px;left:8px}.history-modal .review-wrap{padding:28px 18px 35px}}.calendar-page-wrap{max-width:820px}.calendar-card{background:#ffffff73;background-image:none;border:0;box-shadow:none;color:inherit;margin-top:38px;overflow:visible;padding:22px}.calendar-card .paper-topline,.calendar-card .habit-sheet,.calendar-card .sheet-legend{display:none}.calendar-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.calendar-nav span{color:var(--muted);font:11px DM Mono,monospace;text-transform:uppercase}.calendar-nav button{align-items:center;background:#ffffff73;border:1px solid rgba(19,44,57,.15);border-radius:7px;color:var(--ink);display:flex;justify-content:center;padding:7px}.calendar-nav button:disabled{cursor:not-allowed;opacity:.3}.settings-add-habit{align-items:center;display:flex;gap:8px;margin-top:4px}.settings-add-habit input{background:#fff;border:1px solid rgba(19,44,57,.16);border-radius:7px;color:var(--ink);flex:1;font-size:11px;padding:8px 9px}.settings-add-habit button{align-items:center;background:var(--ink);border-radius:7px;color:var(--paper);display:flex;font-size:10px;gap:5px;padding:8px 10px;white-space:nowrap}.vault-wrap{max-width:850px}.vault-compose{background:#ffffff73;border:1px solid rgba(19,44,57,.12);border-radius:16px;display:grid;gap:12px;margin-top:30px;padding:16px}.vault-compose textarea{background:#ffffffb3;border:1px solid rgba(19,44,57,.12);border-radius:10px;color:var(--ink);font:14px DM Sans,sans-serif;min-height:100px;padding:13px;resize:vertical}.vault-compose>div{align-items:center;display:flex;gap:10px;justify-content:space-between}.vault-compose select{background:#ffffffb3;border:1px solid rgba(19,44,57,.15);border-radius:8px;color:var(--ink);padding:11px}.vault-compose .primary-button{margin:0}.vault-filters{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0}.vault-filters button{background:#ffffff59;border:1px solid rgba(19,44,57,.12);border-radius:20px;color:var(--muted);font-size:11px;padding:8px 11px}.vault-filters button.selected{background:var(--ink);color:var(--paper)}.vault-list{display:grid;gap:9px}.vault-item{align-items:start;background:#ffffff7a;border:1px solid rgba(19,44,57,.1);border-radius:13px;display:flex;justify-content:space-between;padding:15px}.vault-item p{line-height:1.5;margin:8px 0 6px;white-space:pre-wrap}.vault-item small{color:var(--muted);font:10px DM Mono,monospace}.vault-item>button{background:transparent;color:var(--muted);padding:4px}.vault-category{color:#bf558a;font:10px DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}
