/* NEW_SITE:OPTIONAL Theme tokens; shared geometry stays readable at 320px. */
:root{--paper:#f7f0e2;--sheet:#fffaf0;--ink:#352c23;--muted:#746654;--line:#d3c3a8;--accent:#996040;--forest:#3d6656;--soft:#eadcc4;--error:#963e31;--shadow:0 10px 32px #3d2c1610;color-scheme:light}html[data-theme=dark]{--paper:#201f1b;--sheet:#292922;--ink:#f2ead7;--muted:#bbb09a;--line:#555144;--accent:#ddb18d;--forest:#a0c5b0;--soft:#36372c;--error:#efa798;--shadow:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Verdana,Geneva,sans-serif;font-size:15px;line-height:1.65}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#8c6f3910 4px);opacity:.25;z-index:-1}a{color:var(--forest);text-underline-offset:4px}button,input,select{font:inherit}button,.import-choice{border:1px solid var(--line);border-radius:5px;background:var(--sheet);color:var(--ink);padding:10px 14px;cursor:pointer;font-size:13px;font-weight:600;line-height:1.4}button:hover,.import-choice:hover{border-color:var(--accent);background:var(--soft)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.import-choice:focus-within{outline:3px solid var(--forest);outline-offset:3px}.skip{position:absolute;left:16px;top:-100px;background:var(--sheet);padding:10px;z-index:5}.skip:focus{top:12px}header{max-width:1280px;margin:0 auto;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:23px;font-weight:700;color:var(--ink);text-decoration:none}.brand span{font-family:Verdana,sans-serif;font-size:9px;letter-spacing:1.5px;color:var(--muted);display:block;margin-top:3px}nav{display:flex;align-items:center;gap:22px;font-size:12px;flex-wrap:wrap}nav a{text-decoration:none;color:var(--ink)}nav button{padding:7px 10px;font-size:11px}main{max-width:1280px;margin:0 auto;padding:44px 36px 36px}.kicker,.section-label{font-size:10px;letter-spacing:1.8px;font-weight:700;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}h1{font-size:clamp(34px,4.4vw,60px);max-width:820px;margin:14px 0 26px}h2{font-size:29px;margin:14px 0 14px}h3{font-size:24px;margin:8px 0 18px}.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:70px;align-items:start;margin-bottom:38px}.lede{font-size:17px;line-height:1.75;max-width:760px;margin-top:0;color:var(--muted)}.boundary{border-left:3px solid var(--accent);padding-left:16px;max-width:760px;font-size:13px}.field-stamp{border:1px solid var(--line);padding:20px;display:grid;grid-template-columns:65px 1fr;gap:8px 12px;transform:rotate(2deg);font-size:9px;letter-spacing:1.5px;color:var(--muted)}.field-stamp .fossil{grid-row:1/4;width:65px;fill:none;stroke:var(--accent);stroke-width:2}.field-stamp strong{font-family:Georgia,serif;font-size:20px;letter-spacing:0;font-weight:500;color:var(--ink);line-height:1.25}.field-stamp small{letter-spacing:0;font-size:10px}.desk{display:grid;grid-template-columns:minmax(260px,.76fr) minmax(0,1.5fr);border:1px solid var(--line);border-radius:8px;background:var(--sheet);box-shadow:var(--shadow);overflow:hidden}.inventory-panel,.goals-panel{padding:28px}.inventory-panel{background:linear-gradient(90deg,transparent, #9d744a08);border-right:1px solid var(--line)}.section-label{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.section-label small{font-size:9px;letter-spacing:.5px}.hint{font-size:12px;line-height:1.7;color:var(--muted);margin:10px 0}.field{display:block;margin:14px 0;min-width:0}.field>span{display:block;font-size:11px;color:var(--muted);margin-bottom:6px;line-height:1.5}.field input,.field select{width:100%;min-width:0;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);padding:10px;font-size:13px}.field input::placeholder{color:var(--muted);font-size:11px}input[type=checkbox]{accent-color:var(--forest);width:17px;height:17px}.resource-row{padding:14px 0;border-bottom:1px dashed var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:0 10px}.resource-row .quiet{grid-column:2;justify-self:end}.resource-row .field{margin:5px 0 9px}.quiet{border-color:transparent;background:transparent;padding:5px 8px;color:var(--muted);font-size:11px}.outline{margin-top:20px;background:transparent;border-style:dashed}.empty{padding:20px 0;color:var(--muted);font-size:13px}.goal-card{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.goal-top{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:end;gap:10px}.goal-top .field{margin:0}.order-mark{font-family:Georgia,serif;color:var(--accent);font-size:26px;line-height:1.6}.order-controls{display:flex;align-items:center;gap:2px}.order-controls button{min-width:28px;min-height:32px;padding:6px}.need-row{display:grid;grid-template-columns:minmax(70px,.6fr) minmax(80px,1fr) minmax(100px,1.25fr) 26px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px dotted var(--line)}.need-row .field{margin:0}.resource-name{font-size:12px;font-weight:600;overflow-wrap:anywhere}.need-add{display:flex;gap:10px;align-items:end}.need-add .field{flex:1}.need-add button{margin-bottom:14px;flex:none}.plan-controls{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:26px 4px}.primary{background:var(--forest);border-color:var(--forest);color:var(--sheet);font-size:14px;padding:15px 22px;white-space:normal}.primary:hover{color:var(--ink)}.primary span{margin-left:24px}.plan-controls>div{max-width:560px}.plan-controls #status{max-width:450px;font-size:13px;color:var(--muted)}.error{color:var(--error)!important}.results{background:var(--soft);border-radius:8px;padding:28px;margin:6px 0 28px;scroll-margin-top:20px}.results[hidden]{display:none}.flow{display:grid;gap:10px;margin:22px 0}.flow-row{background:var(--sheet);border:1px solid var(--line);padding:14px;display:grid;grid-template-columns:minmax(80px,1fr) repeat(3,minmax(80px,1fr));gap:10px;font-size:12px}.flow-row small{grid-column:1/-1;color:var(--muted)}.result-goals{display:grid;grid-template-columns:1fr 1fr;gap:22px}.allocation-card{padding:20px 0;border-top:1px solid var(--line)}.allocation{font-size:13px;border-left:3px solid var(--forest);padding-left:12px}.allocation.short{border-color:var(--accent)}.allocation.unknown,.allocation.conditional{border-color:var(--error)}.next-action{font-size:12px;font-style:italic;color:var(--muted);overflow-wrap:anywhere}.save-bar{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:32px}.save-bar h2{font-size:25px;margin:0 0 16px}.save-choice{display:flex;gap:9px;align-items:center;font-size:12px}.transfer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;max-width:500px}.import-choice{display:flex;flex-direction:column;gap:6px;max-width:240px}.import-choice input{max-width:100%;font-size:10px;font-weight:400}.explanation{max-width:800px;padding:40px 0 10px}.explanation p{font-size:14px;color:var(--muted)}.reading-links{display:flex;gap:25px;flex-wrap:wrap;font-size:13px;margin-top:20px}.article{max-width:900px;min-height:70vh}.article section{padding:20px 0;border-top:1px solid var(--line)}.article h2{font-size:27px}.article p{color:var(--muted)}.sources{padding-left:24px;margin:35px 0}.sources li{padding:18px 0;border-bottom:1px solid var(--line)}.sources a{overflow-wrap:anywhere;font-family:Georgia,serif;font-size:22px}.sources time{display:block;font-size:11px;color:var(--muted);margin-top:6px}.sources p{font-size:13px}.back-link{display:inline-block;margin-top:30px}footer{max-width:1280px;margin:0 auto;padding:24px 36px 34px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:24px}footer p{margin:0;max-width:800px}footer div{display:flex;gap:20px;flex:none}
@media(max-width:950px){.intro-grid{gap:30px;grid-template-columns:1fr 220px}.desk{grid-template-columns:1fr}.inventory-panel{border-right:0;border-bottom:1px solid var(--line)}#resource-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.result-goals{grid-template-columns:1fr}.save-bar{flex-direction:column}.transfer{justify-content:flex-start}.plan-controls{gap:20px}}@media(max-width:600px){header{padding:18px 20px;flex-direction:column;align-items:flex-start;gap:14px}nav{gap:16px;font-size:11px}.brand{font-size:22px}main{padding:26px 20px}h1{font-size:36px;margin-bottom:20px}.intro-grid{display:block}.field-stamp{display:none}.lede{font-size:15px}.boundary{font-size:12px}.inventory-panel,.goals-panel{padding:20px}h2{font-size:25px}#resource-list{display:block}.goal-top{grid-template-columns:26px minmax(0,1fr)}.order-controls{grid-column:2;justify-self:end;margin-top:8px}.need-row{grid-template-columns:minmax(0,1fr) 24px;gap:8px}.need-row .resource-name{grid-column:1}.need-row .field{grid-column:1;max-width:100%}.need-row .quiet{grid-column:2;grid-row:1}.need-add{display:block}.need-add button{margin:0 0 10px}.plan-controls{flex-direction:column;align-items:stretch;padding:22px 0;gap:0}.primary{width:100%;font-size:13px;padding:15px 12px}.primary span{margin-left:4px}.results{padding:20px}.flow-row{grid-template-columns:1fr 1fr;font-size:11px}.flow-row strong{grid-column:1/-1}.save-bar{gap:12px}.transfer{max-width:100%}.import-choice{max-width:100%;width:100%}.explanation h2{font-size:27px}footer{padding:20px;flex-direction:column;gap:10px}.article h2{font-size:25px}.sources a{font-size:20px}}@media(prefers-reduced-motion:no-preference){.desk{animation:open-notebook .45s ease-out}@keyframes open-notebook{from{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:none}}}
