:root{--ink:#1e2520;--muted:#788079;--paper:#f5f3ed;--surface:#fffefa;--line:#e4e1d7;--moss:#365842;--sand:#e9e3d4}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);min-width:320px;min-height:100vh;color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #36584273}.shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.shell.sidebar-closed{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);background:#efede5;flex-direction:column;min-width:0;padding:22px 18px 30px;display:flex}.shell.sidebar-closed .sidebar{display:none}.sidebar-head{justify-content:space-between;align-items:center;gap:8px;margin:3px 4px 38px 10px;display:flex}.brand{letter-spacing:-.8px;font-family:Georgia,serif;font-size:23px}.brand span{color:var(--moss)}.sidebar-toggle{color:#555f57;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;font-size:15px;display:inline-grid}.sidebar-toggle:hover{color:var(--ink);background:#dfddd4}.topbar{border-bottom:1px solid var(--line);background:#efede5;grid-column:1/-1;align-items:center;gap:10px;padding:10px 16px;display:none}.topbar-brand{letter-spacing:-.8px;font-family:Georgia,serif;font-size:21px}.topbar-brand span{color:var(--moss)}.shell.sidebar-closed .topbar{display:flex}.sidebar-backdrop{display:none}.sidebar nav{gap:5px;display:grid}.sidebar nav a{color:#535a53;border-radius:8px;justify-content:space-between;gap:12px;padding:11px 12px;display:flex}.sidebar nav a:hover,.sidebar nav .active{color:var(--ink);background:#dfddd4}.sidebar-bottom{color:var(--muted);margin-top:auto;padding:10px;font-size:12px}.sidebar-bottom p{text-overflow:ellipsis;margin:0 0 10px;overflow:hidden}.link-button{color:var(--moss);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.notebook{width:100%;max-width:920px;margin:0 auto;padding:clamp(48px,8vw,80px) clamp(24px,5vw,48px)}.section-heading{justify-content:space-between;margin-bottom:clamp(28px,5vw,42px);display:flex}.eyebrow{color:var(--moss);letter-spacing:1.4px;font-size:11px;font-weight:700}.section-heading h1,.signin-card h1{letter-spacing:-2.6px;margin:13px 0 16px;font-family:Georgia,serif;font-size:clamp(2.4rem,6vw,4rem);font-weight:400;line-height:.98}.section-heading p:not(.eyebrow){color:var(--muted)}.new-note{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:12px;padding:clamp(18px,3vw,22px);display:grid;box-shadow:0 10px 30px #393a2d0a}.new-note input,.new-note textarea{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.new-note input{font-size:19px;font-weight:600}.new-note textarea{resize:vertical;color:#485149;min-height:8rem;line-height:1.55}.new-note button,.google-button{color:#fff;background:var(--moss);cursor:pointer;border:0;border-radius:7px;justify-self:start;min-height:44px;padding:10px 15px}.new-note button:disabled{opacity:.65}.note-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:16px;margin-top:28px;display:grid}.note{background:#ece7d9;border-radius:10px;flex-direction:column;min-width:0;min-height:165px;padding:20px;display:flex}.note h2{overflow-wrap:anywhere;margin:0 0 12px;font-size:16px}.note p{overflow-wrap:anywhere;color:#4f574f;white-space:pre-wrap;margin:0;line-height:1.5}.note time{color:var(--muted);margin-top:auto;padding-top:18px;font-size:12px}.empty{color:var(--muted)}.signin-page{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));background:linear-gradient(130deg,#eae5d7,#f8f6f0);display:grid}.signin-card{background:#fffefab3;border:1px solid #36584229;border-radius:15px;width:min(100%,520px);margin:auto;padding:clamp(28px,7vw,50px);box-shadow:0 24px 80px #373c2e1a}.signin-card>p:not(.eyebrow){max-width:380px;color:var(--muted);line-height:1.55}.google-button{margin-top:24px}.configuration-note{background:#f3ead6;border-radius:7px;margin-top:25px;padding:12px}@media (max-width:680px){.shell{grid-template-columns:minmax(0,1fr);align-content:start}.topbar{z-index:40;padding:10px 14px;display:flex;position:sticky;top:0}.sidebar{z-index:60;border-right:1px solid var(--line);visibility:hidden;width:min(86vw,320px);padding:18px 16px 26px;transition:transform .28s cubic-bezier(.32,.72,0,1),visibility .28s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 18px 50px #181e192e}.shell.sidebar-open .sidebar{visibility:visible;transform:translate(0)}.sidebar-backdrop{z-index:55;opacity:0;pointer-events:none;background:#12161394;transition:opacity .22s;display:block;position:fixed;inset:0}.shell.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.sidebar-head{margin:0 0 24px}.sidebar-head .sidebar-toggle{color:#3c463e;background:#e4e1d7;width:40px;height:40px;font-size:20px}.sidebar nav{gap:4px;display:grid}.sidebar nav a{white-space:normal;justify-content:flex-start;gap:10px;padding:11px 12px}.sidebar-bottom{border-top:1px solid #00000014;margin-top:auto;padding:12px 4px 0;display:block}.sidebar-bottom p{margin:0 0 10px;display:block}.link-button{white-space:nowrap;min-height:40px;padding:8px 0}.notebook{padding:44px 20px}}@media (max-width:480px){.brand{font-size:21px}.notebook{padding:32px 16px 40px}.section-heading h1,.signin-card h1{letter-spacing:-1.8px;font-size:clamp(2.2rem,12vw,3rem)}.new-note button{justify-self:stretch;width:100%}.note-grid{grid-template-columns:1fr;gap:12px;margin-top:20px}.note{min-height:140px;padding:17px}.google-button{width:100%}}.workspace{background:#fff;grid-template-columns:minmax(220px,280px) minmax(0,1fr);min-width:0;min-height:100vh;display:grid}.page-list{background:#f6f5f4;border-right:1px solid #0000001a;padding:32px 16px}.page-list-heading{justify-content:space-between;align-items:start;gap:12px;padding:0 8px 18px;display:flex}.page-list-heading h1{letter-spacing:-.2px;margin:5px 0 0;font-size:17px}.icon-button,.primary-button,.secondary-button,.delete-button,.block-toolbar button,.add-line{cursor:pointer;border:1px solid #0000001a;border-radius:6px;min-height:36px;font-size:14px;font-weight:600}.icon-button{color:#fff;background:var(--moss);border-color:var(--moss);width:36px;font-size:22px;line-height:1}.page-items{gap:2px;display:grid}.page-item{color:#45413e;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 9px;display:flex;overflow:hidden}.page-item:hover,.page-item.selected{background:#0000000e}.page-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-item time{color:#a39e98;text-transform:capitalize;flex:none;font-size:11px}.editor-pane{min-width:0}.page-editor,.editor-empty{width:min(100%,840px);margin:0 auto;padding:clamp(40px,8vw,88px) clamp(24px,7vw,88px)}.editor-header{justify-content:space-between;align-items:center;gap:16px;min-height:40px;display:flex}.save-state{color:#a39e98;margin:0;font-size:13px}.save-state.error{color:#b84f35}.editor-actions{gap:8px;display:flex}.secondary-button,.block-toolbar button,.add-line{color:#31302e;background:#fff}.secondary-button:disabled{color:#a39e98;cursor:default}.delete-button{color:#a93f2a;background:#fff7f5;border-color:#f0d6d1}.page-title{color:#000000f2;letter-spacing:-1.8px;background:0 0;border:0;width:100%;min-width:0;margin:36px 0 22px;font-size:clamp(2.3rem,6vw,3.5rem);font-weight:700;line-height:1.05}.page-title::placeholder,.blocks textarea::placeholder,.blocks input::placeholder{color:#b5b0aa}.block-toolbar{border-bottom:1px solid #00000017;flex-wrap:wrap;gap:7px;padding:14px 0 22px;display:flex}.block-toolbar button{align-items:center;gap:6px;padding:7px 10px;font-weight:500;display:inline-flex}.block-toolbar button span{color:#615d59;place-items:center;width:16px;font-weight:700;display:inline-grid}.blocks{padding-top:20px}.block{gap:8px;padding:5px 0;display:flex;position:relative}.block-controls{opacity:0;align-items:start;gap:1px;padding-top:5px;transition:opacity .15s;display:flex}.block:hover .block-controls,.block:focus-within .block-controls{opacity:1}.block-controls button{color:#8d8882;cursor:pointer;background:0 0;border:0;border-radius:4px;width:22px;height:22px;padding:0}.block-controls button:hover{color:#31302e;background:#f2f1ef}.block-controls button:disabled{visibility:hidden}.blocks textarea,.blocks input{color:#000000de;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:16px;line-height:1.55}.blocks textarea{resize:vertical}.heading-block{letter-spacing:-.7px;font-weight:700;font-size:25px!important;line-height:1.28!important}.quote-block{padding:4px 0 4px 15px;color:#615d59!important;border-left:3px solid #d7d3cd!important}.todo-block{flex:1;align-items:start;gap:10px;padding:3px 0;display:flex}.todo-block input[type=checkbox]{width:18px;height:18px;accent-color:var(--moss);margin:3px 0 0}.todo-block input:checked+input{color:#a39e98;text-decoration:line-through}.block-divider{padding:12px 0}.block-divider hr{border:0;border-top:1px solid #0000001f;flex:1;width:100%}.add-line{color:#615d59;border-style:dashed;margin:13px 0 0 30px;padding:7px 10px}.editor-empty{max-width:600px}.editor-empty h2{letter-spacing:-1.4px;margin:10px 0;font-size:clamp(2.1rem,5vw,3.2rem)}.editor-empty p:not(.eyebrow){color:#615d59;max-width:440px;line-height:1.55}.primary-button{color:#fff;background:var(--moss);border-color:var(--moss);padding:9px 14px}.primary-button:disabled{opacity:.45;cursor:default}@media (max-width:850px){.workspace{grid-template-columns:220px minmax(0,1fr)}.page-editor,.editor-empty{padding-inline:34px}}@media (max-width:680px){.workspace{min-height:0;display:block}.page-list{border-bottom:1px solid #0000001a;border-right:0;padding:8px 12px}.page-list.is-empty{display:none}.page-list-heading{align-items:center;padding:0}.page-list-heading .eyebrow{display:none}.page-list-heading h1{color:#615d59;margin:0;font-size:14px;font-weight:600}.icon-button{width:32px;min-height:32px;font-size:19px}.page-items{scrollbar-width:none;gap:5px;padding:8px 0 2px;display:flex;overflow-x:auto}.page-items::-webkit-scrollbar{display:none}.page-item{background:#fff;border:1px solid #00000014;flex:none;width:auto;max-width:190px;padding:8px 10px}.page-item time{display:none}.page-editor,.editor-empty{padding:26px 20px 48px}.page-title{margin-top:24px}}@media (max-width:480px){.editor-header{align-items:start}.editor-actions{gap:5px}.secondary-button,.delete-button{min-height:34px;padding-inline:9px;font-size:12px}.page-title{font-size:2.25rem}.block-toolbar{flex-wrap:wrap;gap:6px;padding-bottom:16px}.block-toolbar button{flex:0 auto;padding:6px 8px;font-size:13px}.block-toolbar button span{width:13px}.block{gap:4px}.block-controls{opacity:1;flex-direction:column;gap:1px;width:30px;padding-top:3px}.block-controls button{border-radius:6px;width:30px;height:30px;font-size:14px}.block-controls button:hover{background:#f2f1ef}.add-line{margin-left:0}}.recall-side .deck-items{gap:2px;display:grid}.deck-item{cursor:default;justify-content:space-between;align-items:center;gap:10px;display:flex}.deck-item em{color:#8d8882;flex:none;font-size:11px;font-style:normal;font-weight:600}.recall-pane{width:min(100%,720px)}.recall-title{letter-spacing:-1px;color:#000000eb;margin:26px 0 22px;font-size:clamp(1.7rem,4vw,2.3rem);font-weight:700;line-height:1.1}.recall-card{background:#fffefa;border:1px solid #0000001a;border-radius:14px;gap:16px;padding:clamp(20px,4vw,30px);display:grid;box-shadow:0 10px 30px #393a2d0d}.recall-front{letter-spacing:-.5px;overflow-wrap:anywhere;margin:0;font-size:clamp(1.35rem,3.4vw,1.75rem);font-weight:700;line-height:1.25}.recall-back{color:#3f4a42;overflow-wrap:anywhere;white-space:pre-wrap;border-top:1px solid #00000014;margin:0;padding-top:14px;font-size:17px;line-height:1.55}.reveal-button{justify-self:start;min-height:44px}.rating-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rating-button{color:#31302e;cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:8px;min-height:46px;padding:10px;font-size:14px;font-weight:600}.rating-button.again{color:#a93f2a;background:#fff7f5;border-color:#f0d6d1}.rating-button.good{color:#2f5c42;background:#f4faf6;border-color:#cfe0d5}.rating-button.easy{color:#1f5a86;background:#f4f9ff;border-color:#d3e3ef}.rating-button:disabled{opacity:.6;cursor:default}.recall-done{background:#f6f5f4;border:1px solid #00000014;border-radius:12px;padding:clamp(20px,4vw,28px)}.recall-done h3{letter-spacing:-.3px;margin:0 0 8px;font-size:19px}.recall-done p{color:#615d59;margin:0;line-height:1.55}.recall-notice{color:#6b4a1f;background:#fbf3e3;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:13px}.new-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:10px;margin-top:26px;padding:clamp(16px,3vw,22px);display:grid}.new-card input,.new-card textarea{width:100%;min-width:0;color:var(--ink);resize:vertical;background:#fbfaf6;border:1px solid #0000001a;border-radius:7px;padding:9px 10px}.new-card textarea{line-height:1.5}.new-card .secondary-button{justify-self:start;min-height:40px}.card-list{margin:26px 0 0;padding:0;list-style:none}.card-list li{border-bottom:1px solid #00000012;justify-content:space-between;align-items:start;gap:12px;padding:12px 0;display:flex}.card-list p{overflow-wrap:anywhere;margin:0 0 3px;font-weight:600}.card-list span{color:#8d8882;font-size:12px}.block-delete{color:#a93f2a;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;width:30px;height:30px;font-size:17px}.block-delete:hover{background:#fff7f5}@media (max-width:680px){.recall-title{margin:18px 0 16px}.recall-card{gap:14px}.rating-row{grid-template-columns:1fr}.rating-button{min-height:44px}.reveal-button{justify-self:stretch;width:100%}.recall-side .deck-items{scrollbar-width:none;gap:5px;padding:8px 0 2px;display:flex;overflow-x:auto}.recall-side .deck-items::-webkit-scrollbar{display:none}.recall-side .deck-item{background:#fff;border:1px solid #00000014;flex:none}}@keyframes fade-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-pulse{0%,to{opacity:1}50%{opacity:.45}}button,a,.page-item,.rating-button,.secondary-button,.delete-button,.primary-button,.icon-button,.sidebar-toggle,.add-line{transition:background-color .16s,border-color .16s,color .16s,opacity .16s,transform .12s}button:not(:disabled):active{transform:scale(.97)}.page-editor{animation:.24s cubic-bezier(.32,.72,0,1) both fade-rise}.block{animation:.18s both fade-in}.recall-card{animation:.22s cubic-bezier(.32,.72,0,1) both fade-rise}.shell.sidebar-closed .topbar{animation:.2s both slide-down}.save-state.saving{animation:1.1s ease-in-out infinite soft-pulse}.recall-notice{animation:.2s both fade-in}.page-item{transition:background-color .16s,transform .12s}.page-item:active{transform:scale(.99)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.nav-group{gap:3px;display:grid}.nav-group+.nav-group{margin-top:16px}.nav-group-title{color:#8d8882;letter-spacing:1.1px;text-transform:uppercase;margin:0 0 2px;padding:0 12px;font-size:10px;font-weight:700}.route-view{min-width:0;animation:.24s cubic-bezier(.32,.72,0,1) both route-in}@keyframes route-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-item em{color:#8d8882;flex:none;font-size:11px;font-style:normal;font-weight:600}.task-filter{cursor:pointer;text-align:left;font:inherit;color:#45413e;background:0 0;border:0}.task-filter.selected{background:#0000000e}.inline-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-row input{flex:140px;min-width:0}.inline-row .primary-button{flex:none}.field-with-unit{flex:110px;align-items:center;min-width:0;display:flex;position:relative}.field-with-unit input{flex:1;width:100%;padding-right:34px}.field-with-unit span{color:#a39e98;pointer-events:none;font-size:12px;position:absolute;right:10px}.task-list{margin:22px 0 0;padding:0;list-style:none}.task-list li{border-bottom:1px solid #00000012;justify-content:space-between;align-items:start;gap:12px;padding:12px 0;display:flex}.task-check{cursor:pointer;flex:1;align-items:start;gap:10px;min-width:0;line-height:1.45;display:flex}.task-check input{width:18px;height:18px;accent-color:var(--moss);margin:2px 0 0}.task-check span{overflow-wrap:anywhere}.task-list li.done .task-check span{color:#a39e98;text-decoration:line-through}.task-meta{color:#8d8882;flex:none;align-items:center;gap:8px;font-size:12px;display:flex}.task-empty{margin-top:26px}.week-summary{gap:8px;padding:4px 10px;display:grid}.week-count{color:#45413e;margin:0;font-size:14px}.week-count strong{color:var(--ink);font-size:22px}.week-meta{color:#8d8882;margin:0;font-size:12px}.week-bar{background:#00000014;border-radius:999px;height:6px;overflow:hidden}.week-bar span{background:var(--moss);border-radius:inherit;height:100%;transition:width .3s;display:block}.kind-chips,.tag-chips{flex-wrap:wrap;gap:5px;display:flex}.kind-chip{color:#4a554c;background:#e9e6dc;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600}.kind-row{flex-wrap:wrap;gap:6px;display:flex}.kind-button{color:#4a554c;cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:600}.kind-button.selected{color:#fff;background:var(--moss);border-color:var(--moss)}.session-list{margin:22px 0 0;padding:0;list-style:none}.session-list li{border-bottom:1px solid #00000012;justify-content:space-between;align-items:start;gap:12px;padding:12px 0;display:flex}.session-list p{margin:0 0 3px;font-weight:600}.session-list span{color:#8d8882;overflow-wrap:anywhere;font-size:12px}.session-minutes{color:#4a554c;font-size:12px;font-weight:600}.recipe-title{margin-bottom:18px;font-size:clamp(1.5rem,4vw,2rem)}.recipe-list{margin:22px 0 0;padding:0;list-style:none}.recipe-list li{border-bottom:1px solid #00000012}.recipe-head{align-items:center;gap:10px;display:flex}.recipe-toggle{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;display:flex}.recipe-toggle span{overflow-wrap:anywhere;font-weight:600}.recipe-toggle em{color:#8d8882;flex:none;font-size:12px;font-style:normal}.recipe-body{padding:2px 0 18px;animation:.2s both fade-in}.recipe-label{color:#8d8882;letter-spacing:1px;text-transform:uppercase;margin:12px 0 6px;font-size:11px;font-weight:700}.recipe-ingredients,.recipe-steps{color:#3f4a42;margin:0;padding-left:18px;line-height:1.6}.recipe-ingredients li,.recipe-steps li{overflow-wrap:anywhere}@media (max-width:680px){.nav-group+.nav-group{margin-top:12px}.nav-group-title{padding:0 10px}.route-view{animation-duration:.2s}.task-filters,.tag-items{scrollbar-width:none;gap:5px;padding:8px 0 2px;display:flex;overflow-x:auto}.task-filters::-webkit-scrollbar{display:none}.tag-items::-webkit-scrollbar{display:none}.task-filter{background:#fff;border:1px solid #00000014;flex:none}.week-summary{padding:2px 4px 6px}.inline-row input{flex:100px}.field-with-unit{flex:90px}.block-delete{width:34px;height:34px}.task-meta time{font-size:11px}}
