:root{color-scheme:light dark;--bg:#f7f3ed;--surface:#fffcf8;--ink:#292620;--muted:#665f56;--line:#ded5ca;--accent:#a34432;--accent-ink:#fff;--soft:#f0e3d6;--danger:#a42832;--shadow:0 3px 15px #46342608;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1d1c1a;--surface:#282623;--ink:#f4eee6;--muted:#c0b6a9;--line:#50483e;--accent:#ef9d82;--accent-ink:#231811;--soft:#3c3228;--danger:#ffa1a6;--shadow:none}}
:root[data-theme=dark]{--bg:#1d1c1a;--surface:#282623;--ink:#f4eee6;--muted:#c0b6a9;--line:#50483e;--accent:#ef9d82;--accent-ink:#231811;--soft:#3c3228;--danger:#ffa1a6;--shadow:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}button,.button{min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:12px;background:var(--accent);color:var(--accent-ink);font-weight:650;cursor:pointer;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:100%;overflow-wrap:anywhere}button.secondary,.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}button.danger{background:var(--surface);color:var(--danger);border-color:var(--danger)}button:disabled{opacity:.55;cursor:wait}button[aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:hover,.button:hover{filter:brightness(.96)}[hidden]{display:none!important}
.site-header{max-width:860px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px}.brand{font-size:1.4rem;font-weight:750;text-decoration:none;white-space:nowrap;display:flex;align-items:center;min-height:44px}.theme-control{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted)}.theme-control select{width:auto;min-height:44px;font-size:.85rem;padding:6px 8px}.navigation{display:flex;gap:4px;overflow:auto;scrollbar-width:thin;padding:6px 12px 10px;max-width:860px;margin:auto}.navigation a{flex:0 0 auto;min-height:44px;display:flex;align-items:center;padding:8px 13px;color:var(--muted);text-decoration:none;border-radius:10px;font-size:.88rem;font-weight:600}.navigation a[aria-current=page]{background:var(--soft);color:var(--ink)}main{max-width:720px;margin:0 auto;padding:12px 16px 40px;min-height:65vh}h1{font-size:1.6rem;line-height:1.2;letter-spacing:-.035em;margin:10px 0 12px}h2{font-size:1.13rem;line-height:1.35;margin:0 0 12px}h2 a{text-decoration:none}p{margin:10px 0;overflow-wrap:anywhere}.page-heading{margin:12px 0 22px}.page-heading p{color:var(--muted);font-size:.9rem}.panel{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);margin:14px 0;overflow-wrap:anywhere}.welcome{margin-top:30px;padding:26px}.welcome h1{font-size:2rem}.welcome .button{width:100%;margin-top:15px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}.actions>a:not(.button){min-height:44px;display:flex;align-items:center;padding:4px 6px;font-size:.85rem}.stack{display:grid;gap:14px;margin:14px 0}.field{display:grid;gap:6px}.field>label{font-size:.9rem;font-weight:600}input,textarea,select{width:100%;min-width:0;border:1px solid var(--line);color:var(--ink);background:var(--bg);border-radius:10px;padding:10px 12px;min-height:44px}textarea{resize:vertical;min-height:130px}small,.muted{font-size:.8rem;color:var(--muted)}.char-count{text-align:right}input:invalid:not(:placeholder-shown){box-shadow:none}.checkbox{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.checkbox input{width:22px;min-height:22px;accent-color:var(--accent)}.search-form{display:flex;align-items:end;gap:10px;margin:12px 0}.search-form .field{flex:1}.notice{color:var(--muted);font-size:.87rem;line-height:1.6}.form-status{margin:0;font-size:.9rem;min-height:0}.form-status:not(:empty){padding:10px;border-radius:8px;background:var(--soft)}.is-error{color:var(--danger)}.global-status{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 28px);padding:0;z-index:10;box-shadow:var(--shadow);border-radius:12px;font-size:.88rem}.global-status:not(:empty){background:var(--surface);border:1px solid var(--line);padding:12px 16px}footer{max-width:720px;margin:auto;padding:16px 20px 50px;color:var(--muted);font-size:.77rem;border-top:1px solid var(--line)}footer button{margin-top:12px;display:block}.skip-link{position:absolute;left:12px;top:-80px;background:var(--surface);padding:12px;z-index:100}.skip-link:focus{top:8px}summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600}details p{padding:0 4px}details>form{margin-top:12px}.subscriber-list,.habit-links{list-style:none;margin:0;padding:0}.subscriber-list>li{padding:12px 0;border-top:1px solid var(--line)}.habit-links a{display:inline-flex;align-items:center;min-height:44px}.person{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:.85rem}.person a{text-decoration:none;font-weight:600;min-height:44px;display:flex;align-items:center}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:none}.avatar-letter{display:inline-flex;align-items:center;justify-content:center;background:var(--soft);color:var(--muted);font-weight:700}.entry-meta{font-size:.78rem;color:var(--muted);margin:4px 0 12px}.entry-meta a{display:inline-flex;align-items:center;min-height:44px}.prose{font-size:.96rem;overflow-wrap:anywhere;line-height:1.65}.prose p:first-child{margin-top:0}.prose p:last-child{margin-bottom:0}.prose ul,.prose ol{padding-left:24px}.prose a{word-break:break-word}.unavailable{color:var(--muted);font-style:italic}.reactions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}.reaction{font-size:.78rem}.reaction-count{font-size:.78rem;color:var(--muted);padding:8px 0}.reactions details{font-size:.78rem}.reactions summary{font-weight:400}.comment{padding:16px 0;border-bottom:1px solid var(--line)}.comment:last-child{border-bottom:0}.comment .prose{margin-top:8px}.draft-label{display:inline-block;color:var(--accent);background:var(--soft);padding:5px 10px;border-radius:8px}.undone,.checklist-completed{border-style:dashed}.checklist-completed h2{font-size:1rem;color:var(--muted)}.streak{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.8rem;margin:12px 0}.power{display:inline-block;background:var(--accent);border-radius:50%;flex:none}.power-0{width:7px;height:7px;background:var(--line)}.power-1{width:7px;height:7px}.power-2{width:11px;height:11px}.power-3{width:15px;height:15px}.power-4{width:19px;height:19px}.power-5{width:23px;height:23px}.history-window{display:flex;gap:4px;list-style:none;margin:0 0 0 auto;padding:0}.history-day{display:grid;place-items:center;gap:0;min-width:25px;padding:4px 5px;border-radius:6px;font-size:.67rem}.history-day span:last-child{font-size:.75rem}.history-day.mild{background:var(--soft)}.history-day.completed{color:var(--accent)}.new-activity{position:sticky;top:10px;z-index:3;display:flex;margin:12px auto;box-shadow:var(--shadow)}.reference-finder{margin:14px 0}.reference-finder label{display:grid;gap:6px;font-size:.9rem}.reference-results{display:grid;gap:8px}.reference-result{display:block;text-align:left;font-size:.85rem}.habit-matches:empty{display:none}.habit-matches{display:flex;gap:10px;flex-wrap:wrap}.habit-matches a{min-height:44px;display:flex;align-items:center}.invite-result{display:grid;gap:10px}main>.button{margin:8px 0}section>button+button{margin-left:6px}
@media(max-width:390px){.site-header{padding:10px 14px}.theme-control{gap:4px;font-size:.67rem}.theme-control select{max-width:104px}.navigation{padding-left:8px}.navigation a{padding:8px 10px}main{padding:10px 12px 30px}.panel{padding:14px;border-radius:15px}.history-window{margin-left:0;flex-basis:100%;justify-content:flex-start}.history-day{min-width:30px}.actions button,.actions .button{font-size:.85rem;padding:10px 12px}.person .muted{font-size:.75rem}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,color .15s}}@media(prefers-contrast:more){:root{--line:var(--muted)}}
