*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f3ea;color:#233f34;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:14px;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:#1d6245}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e8bd64;outline-offset:3px}.skip{position:absolute;transform:translateY(-200%);background:#fff;padding:12px;z-index:20}.skip:focus{transform:none}.hero{background:radial-gradient(ellipse at 82% 25%,#405b47 0%,transparent 40%),linear-gradient(112deg,#102d26,#264836 65%,#1a372b);color:#fff;position:relative;overflow:hidden;padding:0 max(20px,calc((100vw - 1240px)/2));border-bottom:8px solid #debf88}.hero:before{position:absolute;content:"";right:-110px;bottom:-180px;width:420px;height:420px;border:27px dotted #e3c88a35;border-radius:50%;pointer-events:none}.bar{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #ffffff29;min-height:74px;position:relative}.bar a{text-decoration:none;color:#fcf4df;font-size:12px;font-weight:650}.brand{letter-spacing:.16em;display:flex;align-items:center;gap:9px}.brand:first-letter{font-size:25px}.bar nav{display:flex;gap:20px;flex-wrap:wrap}.bar nav a:hover{text-decoration:underline}.hero-copy{position:relative;padding:53px 0 60px;max-width:900px}.eyebrow,.section-number{letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:800;color:#bd7658}.eyebrow{color:#e6c28b}.hero-copy h1{font:normal clamp(49px,7vw,96px)/.99 Georgia,'Times New Roman',serif;letter-spacing:-.07em;margin:18px 0 21px;color:#fff9ef}.hero-copy h1 em{font-weight:400;color:#ecd4a5}.hero-copy p{font-size:17px;line-height:1.68;max-width:700px;color:#e3eadc}.pill-line{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.pill-line span{font-size:11px;padding:7px 11px;border:1px solid #ffffff57;border-radius:30px;color:#f8e8c6}.workspace{max-width:1260px;margin:24px auto 65px;display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:19px;padding:0 16px;align-items:start}.panel{min-width:0;background:#fffefa;border:1px solid #e0dfd2;border-radius:19px;padding:26px;box-shadow:0 15px 40px #1835250e}.panel h2,.panel h3,.learn h2{font:normal 34px/1.1 Georgia,'Times New Roman',serif;letter-spacing:-.05em;margin:6px 0 17px}.panel h3{font-size:26px}.controls label,.field label{font-weight:730;font-size:12px;display:block;margin-bottom:6px}.field{min-width:0;margin-bottom:12px}.field input,.field select{display:block;width:100%;border:1px solid #aebcae;border-radius:9px;background:#fff;color:#233f34;padding:10px;min-height:43px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.file-drop{display:flex!important;flex-direction:column;gap:3px;text-align:center;align-items:center;justify-content:center;border:2px dashed #9cb9aa;border-radius:14px;padding:19px 13px;min-height:159px;cursor:pointer;background:#f2f7f0;margin:17px 0 12px}.file-icon{font-size:32px;color:#32634c}.file-drop span:last-of-type{font-weight:400;color:#586d5d;font-size:12px}.file-drop input{width:100%;max-width:300px;font-size:11px;margin-top:13px}.examples{display:flex;gap:8px;flex-wrap:wrap}.small-button,.tool-row button,.row-tracker button,.export-grid button,.buttonlike{border:1px solid #b1c3b5;border-radius:9px;background:#f6f7f0;color:#244c38;min-height:41px;padding:8px 12px;font-size:12px;font-weight:750}.small-button:hover,.tool-row button:hover,.row-tracker button:hover,.export-grid button:hover{background:#e2ece2}.small-button{flex:1}.hint{font-size:12px;color:#647367;line-height:1.55}.small{font-size:11px}.divider{height:1px;background:#e4e4dc;margin:23px 0}.check{display:flex!important;gap:10px;align-items:center;margin:5px 0 16px}.check input{width:18px;height:18px;accent-color:#234b35}.check span{font-size:12px;font-weight:600}.primary,.export-grid .primary{background:#214c39!important;color:#fff!important;border-color:#214c39!important}.primary:hover{background:#326748!important}.wide{width:100%;min-height:49px;border-radius:10px;border:0;padding:13px 16px;font-weight:750;font-size:15px}.notice{border-left:3px solid #b97c59;padding:8px 12px;font-size:12px;background:#f9f3e8;color:#5b574e}.editor-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.editor-heading h2{margin:5px 0 5px}.editor-heading p{margin:0 0 18px}.ready-label{font-size:10px;font-weight:850;white-space:nowrap;color:#2b513d;background:#e3efdf;padding:7px 9px;border-radius:6px;margin-top:4px}#status{border:1px solid #cadaca;border-radius:9px;background:#f1f8ed;padding:10px 12px;font-size:12px;color:#24513b;margin:4px 0 12px;min-height:42px}.metrics{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.metrics span{font-size:11px;font-weight:650;border:1px solid #d2e0d2;background:#f5f8f4;padding:6px 9px;border-radius:22px}.tool-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.tool-row button{flex:1 0 auto}.tool-row button.selected{background:#eac48b;border-color:#c99c59;color:#332e24}.tool-row .inline{flex:1 0 190px;margin:0}.field.inline label{display:flex;justify-content:space-between}.inline input{min-height:auto;padding:0;accent-color:#ab694c}.chart-scroll{background:#e8ece5;border:1px solid #c7d4cb;padding:10px;border-radius:11px;overflow:auto;max-height:760px;overscroll-behavior-x:contain;min-height:160px}#chart{display:block;max-width:none;image-rendering:pixelated;touch-action:manipulation;cursor:crosshair;background:#fff;border:1px solid #7b9381;border-radius:4px}.palette{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px}.swatch{display:flex;gap:10px;align-items:center;background:#f5f6f0;border:1px solid #d5ddcf;border-radius:10px;padding:9px;position:relative}.swatch.selected{border:2px solid #ae744b;background:#fcf0d9}.swatch input[type=color]{width:41px;height:41px;min-width:41px;padding:1px;border:0;background:transparent;cursor:pointer}.swatch .swatch-meta{display:flex;flex:1;flex-direction:column;gap:2px}.swatch .swatch-meta span{font-size:11px;color:#637164}.swatch button{min-width:44px;background:#fff;border:1px solid #b6c3b5;border-radius:8px;padding:8px 6px;font-weight:850;color:#284a39}.row-tracker{display:flex;gap:13px;align-items:center;justify-content:space-between}.row-tracker strong{font-weight:800;text-align:center}.row-instructions{font:12px/1.8 ui-monospace,'SFMono-Regular',Consolas,monospace;background:#f1f4ee;border:1px solid #d8e0d6;border-radius:9px;padding:12px;margin:12px 0;min-height:74px;overflow-wrap:anywhere;white-space:pre-wrap}.export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.buttonlike{display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center}.local-draft{border:1px solid #d2ddcd;background:#f1f7ee;padding:13px;border-radius:10px;margin-top:17px}.local-draft p{margin:0;font-size:12px}.learn{max-width:1240px;display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:0 auto 30px;padding:32px 30px;background:#e7eee4;border-radius:18px}.learn p{color:#465d4c}.learn a{font-weight:800}footer{text-align:center;background:#17372d;color:#f4efdf;padding:25px 10px;font-size:12px}footer a{color:#e7cb94}#print-area{display:none}@media(max-width:940px){.workspace{grid-template-columns:1fr}.panel{padding:22px}.chart-scroll{max-height:570px}.bar{padding:10px 0}}@media(max-width:580px){.hero-copy{padding:35px 0}.bar{align-items:start}.bar nav{gap:6px;justify-content:flex-end}.bar nav a{font-size:10px}.workspace{padding:0 10px;margin-top:13px}.panel{padding:16px}.panel h2{font-size:31px}.export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learn{margin:20px 10px;grid-template-columns:1fr;padding:23px}.hero-copy h1{font-size:51px}.chart-scroll{max-height:510px}.editor-heading{display:block}.ready-label{display:inline-block;margin:0 0 10px}}@media print{body>*:not(#print-area){display:none!important}#print-area{display:block!important;position:static;background:#fff;color:#000}#print-area .sheet{page-break-after:always;break-after:page;padding:9mm;max-width:100%}#print-area .sheet h2{font:18pt Georgia,serif;margin:0 0 6mm}#print-area .sheet svg{display:block;max-width:100%;max-height:79vh;width:auto;height:auto}#print-area p{font:10pt sans-serif}html,body{background:white}}