:root{color-scheme:light;--paper:#f7f5e9;--ink:#213c30;--green:#164e39;--muted:#657267;--line:#d9decb;--gold:#ad7a26;--light:#e9eddd;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}button,input,select{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer;min-height:48px;border:1px solid var(--line);background:white;color:var(--green);border-radius:12px;padding:10px 16px;font-weight:600}button:hover{background:#f0f3e7;border-color:#91a88f}button:disabled{opacity:.4;cursor:default}a{color:var(--green)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #b1842d;outline-offset:3px}header{border-bottom:1px solid var(--line);background:#fffdf6}.topbar{max-width:780px;margin:auto;padding:13px 22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.wordmark{display:flex;align-items:center;gap:9px;color:var(--green);text-decoration:none;font-size:11px;letter-spacing:.13em;line-height:1.3}.wordmark strong{display:block;font-size:9px;letter-spacing:.27em}.edition{font-size:9px;letter-spacing:.15em;color:#6a7565;text-align:right;line-height:1.5}.edition b{font-size:8px;font-weight:500}
main{max-width:780px;margin:auto;padding:20px 22px calc(104px + env(safe-area-inset-bottom))}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.14;letter-spacing:-.025em;margin:0;font-weight:600}h1{font-size:clamp(29px,5vw,41px)}h2{font-size:27px}h3{font-size:22px}.eyebrow{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.17em;color:var(--gold)}.hello{display:flex;gap:14px;align-items:center;margin:0 0 20px}.portrait{width:66px;height:66px;flex-shrink:0;border-radius:50%;background-image:url(./charles.png);background-size:285%;background-position:47% 30%;box-shadow:0 0 0 4px #e4e9d7,0 0 0 5px #d0d9bf}.hello p{margin:4px 0 0;font-size:13px;color:var(--muted)}.hello h1{font-size:clamp(26px,4vw,35px)}.hero{background:#315c3d url(./forest.svg) center 52%/cover;color:white;min-height:148px;border-radius:17px;padding:24px;display:flex;justify-content:space-between;align-items:flex-end;position:relative;overflow:hidden;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102f29cc,transparent)}.hero .eyebrow{color:#e7d894}.hero h2{font-size:32px;max-width:420px;margin:7px 0}.hero p{margin:0;font-size:13px;color:#e4e9cf}.chapter-count{background:#193c2cba;border:1px solid #a3bc9359;border-radius:10px;min-width:52px;text-align:center;padding:9px 8px;font-size:12px}.chapter-count strong{display:block;font-size:22px;line-height:1.1}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:22px 0 11px}.section-heading h2{font-size:21px}.subtle{color:var(--muted);font-size:13px}.card{background:#fffef9;border:1px solid var(--line);border-radius:16px;padding:22px;margin:12px 0;box-shadow:0 2px 0 #dce1d655}.objective{border-top:3px solid #b6bc87}.objective h2{margin:9px 0 12px}.objective p{margin:10px 0;line-height:1.65}.pill{display:inline-block;color:#3e6650;background:#e5eedb;border-radius:6px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:750;padding:4px 8px}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#26694c;color:white}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.actions .primary{flex:1}.quiet{background:transparent}.small-action{font-size:13px}.step-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:15px}.step-nav button{flex:1}.step-nav span{font-size:11px;white-space:nowrap;color:var(--muted)}.progress-track{height:5px;background:#dfe5d5;overflow:hidden;border-radius:6px;margin-top:16px}.progress-track span{display:block;height:100%;background:#3f7653}.hint{background:#f4f1df;border:1px solid #e5dec1;border-radius:12px;margin:15px 0 0;padding:0 14px}.hint>summary{color:#69511b}.hint p{font-size:15px;margin:0 0 14px}.hint details{margin:0 0 12px;border-top:1px solid #e2d8b4}summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:600}.bookmark{padding:12px 15px;border-radius:12px;background:#e7eedf;border:1px solid #c9d9c0;font-size:14px;margin:12px 0}.bookmark button{margin-top:8px;display:block}.shot{margin:18px 0 0}.shot a{display:block;position:relative}.shot img{display:block;width:100%;height:auto;max-height:410px;object-fit:contain;background:#102e27;border-radius:12px}.shot .expand{position:absolute;right:10px;bottom:10px;border-radius:6px;padding:4px 9px;background:#173c2fe8;color:white;font-size:11px}.shot figcaption{font-size:13px;color:var(--muted);margin:8px 2px;line-height:1.5}.shot .credit{font-size:11px;display:inline-block;margin-top:5px}.list-card{padding:8px 16px}.step-row,.chapter-row{display:flex;align-items:center;gap:12px;text-align:left;min-height:61px;width:100%;background:none;border:0;border-radius:0;border-top:1px solid var(--line);padding:12px 0;font-weight:500}.step-row:first-child,.chapter-row:first-child{border:0}.row-icon{display:grid;place-items:center;flex-shrink:0;width:31px;height:31px;border-radius:9px;background:#edf0e3;color:var(--green);font-size:15px}.row-copy{flex:1;min-width:0}.row-copy small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.row-tail{color:var(--muted);font-size:12px;text-align:right}.short-label{font-size:10px;text-transform:uppercase;color:#7b5a20;display:block;letter-spacing:.08em}.route-tools{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.route-tools button{font-size:13px}.filter-active{background:var(--green);color:white}.switch{display:flex;align-items:center;gap:10px;min-height:48px;font-size:14px}.switch input{width:20px;height:20px;accent-color:var(--green)}.bag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bag-item{padding:15px;border-radius:12px;background:#eef2e6;font-size:14px}.bag-item .check{display:block;color:var(--green);font-size:20px}.backup p,.help p{color:var(--muted);font-size:14px}nav{position:fixed;bottom:0;left:0;right:0;background:#fffdf8f5;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10;display:flex;justify-content:center;backdrop-filter:blur(15px)}nav button{width:min(33.33%,260px);border:0;border-radius:0;background:none;min-height:65px;color:#758173;font-size:12px;padding:7px;display:flex;flex-direction:column;align-items:center;gap:1px}nav button span{font-size:19px;line-height:1.2}nav button[aria-current]{color:var(--green);box-shadow:inset 0 3px var(--green);background:#eff2e5}#toast:not(:empty){position:fixed;bottom:calc(79px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:max-content;max-width:94vw;background:#183f30;color:white;border-radius:12px;box-shadow:0 5px 20px #0003;padding:10px 13px;z-index:15;font-size:14px}#toast button{margin-left:10px;min-height:42px;font-size:13px;padding:6px 12px}#storage-note{color:#895225}.saved-note{font-size:11px;color:var(--muted);margin:12px 0}.source-links a{display:block;padding:8px 0;min-height:42px;word-break:break-word;font-size:13px}.empty{padding:14px 0;color:var(--muted)}@media(max-width:450px){main{padding:17px 14px calc(96px + env(safe-area-inset-bottom))}.topbar{padding:11px 16px}.hello{gap:12px;margin-bottom:18px}.portrait{width:56px;height:56px}.hello p{font-size:12px}.hero{padding:18px;min-height:140px}.hero h2{font-size:27px;max-width:240px}.card{padding:18px}.list-card{padding:5px 14px}.objective h2{font-size:27px}.hero p{max-width:220px}.step-nav button{padding:8px}.bag-grid{gap:8px}.chapter-count{min-width:46px}.wordmark{font-size:10px}}
