:root{color-scheme:light;--ink:#102722;--water:#0866ff;--foam:#f5fbff;--line:#c8dce8;--orange:#ff6b35}*{box-sizing:border-box}body,html{background:var(--foam)}body{margin:0;color:var(--ink);font-family:Avenir Next,Avenir,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:.22em}::selection{background:#b9d8ff;color:#071b2b}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.diary,.landing{min-height:100vh}.nav{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:1.15rem;font-weight:800;text-decoration:none;letter-spacing:-.02em}.navLink{font-weight:700}.hero{width:min(1180px,calc(100% - 40px));margin:0 auto;min-height:calc(100vh - 86px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;grid-gap:clamp(48px,7vw,110px);gap:clamp(48px,7vw,110px);padding:72px 0 90px}.audience{max-width:42ch;color:#27564c;font-weight:700}h1{max-width:12ch;margin:18px 0 24px;font-size:clamp(3rem,6vw,6rem);line-height:.94;letter-spacing:-.04em;text-wrap:balance}.lede{max-width:56ch;margin:0 0 34px;color:#365a54;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.55}.entryForm button,.primary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:0;border-radius:8px;color:white;background:var(--water);box-shadow:0 10px 24px rgba(8,102,255,.22);font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.entryForm button:hover,.primary:hover{background:#004fd3}.lanePreview{min-height:520px;padding:42px;color:white;background:#082f49;border-radius:18px;box-shadow:0 28px 70px rgba(8,47,73,.24);justify-content:space-between}.lanePreview,.previewTop{display:flex;flex-direction:column}.previewTop{gap:14px}.previewTop span{color:#b8d8e8}.previewTop strong{font-size:clamp(3.2rem,7vw,6.5rem);letter-spacing:-.05em}.chart{height:210px;display:flex;align-items:flex-end;gap:14px;border-bottom:1px solid #7fa8bb}.chart span{flex:1 1;min-width:24px;background:#47a7ff;border-radius:5px 5px 0 0}.lanePreview p{color:#cfe5ef}.diary{background:#edf7fb}.diaryHeader,.workbench{width:min(1080px,calc(100% - 40px));margin-inline:auto}.diaryHeader{padding:64px 0 36px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.diaryHeader h1{margin:0 0 12px;font-size:clamp(2.6rem,5vw,4.8rem)}.diaryHeader p{margin:0;color:#365a54;font-size:1.1rem}.count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#27564c;font-weight:800}.workbench{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);grid-gap:28px;gap:28px;padding-bottom:80px}.entryForm,.times{padding:30px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 14px 35px rgba(15,67,83,.08)}.entryForm{align-self:start;display:grid;grid-gap:10px;gap:10px}.entryForm h2,.times h2{margin:0 0 16px;font-size:1.5rem}.entryForm label{margin-top:8px;font-weight:750}.entryForm input{width:100%;min-height:48px;border:1px solid #8aabb8;border-radius:7px;padding:10px 12px;color:var(--ink);background:white;font:inherit}.entryForm button{margin-top:14px;width:100%}.times ol{margin:0;padding:0;list-style:none}.times li{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid #d9e7ed}.times li:first-child{border-top:0}.times li span{color:#27564c;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.empty{min-height:140px;display:grid;place-items:center;margin:0;padding:30px;color:#365a54;text-align:center;border:1px dashed #8aabb8;border-radius:8px}.notice{margin:26px 0 0;color:#4c6963;font-size:.9rem;line-height:1.5}@media (max-width:760px){.nav{padding:18px 0}.hero,.nav{width:min(100% - 28px,1180px)}.hero{grid-template-columns:1fr;padding:48px 0 60px;gap:42px}h1{font-size:clamp(2.75rem,13vw,4.2rem)}.lanePreview{min-height:420px;padding:28px}.diaryHeader,.workbench{width:min(100% - 28px,1080px)}.diaryHeader{padding-top:46px;align-items:start;flex-direction:column}.workbench{grid-template-columns:1fr}.entryForm,.times{padding:22px}.times li{align-items:start;flex-direction:column;gap:4px}}@media (prefers-reduced-motion:no-preference){.lanePreview{animation:settle .65s cubic-bezier(.16,1,.3,1) both}@keyframes settle{0%{transform:translateY(14px);filter:blur(5px)}to{transform:translateY(0);filter:blur(0)}}}