:root{--ink:#263d30;--muted:#626e61;--cream:#f6f4ed;--line:#d7ddcf;--gold:#a67c40}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.5 system-ui,sans-serif}header{padding:18px max(5vw,20px);display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line)}header img{width:136px;height:68px;object-fit:contain}a{color:inherit}main{max-width:1200px;margin:auto;padding:35px 24px 120px}.intro{max-width:700px}.eyebrow{font-size:12px;letter-spacing:.16em;color:#876637;font-weight:700}h1{font:clamp(32px,5vw,52px)/1.1 Georgia,serif;margin:12px 0}h2{font:30px/1.2 Georgia,serif;margin:0 0 14px}h3{margin:0 0 6px}p{margin:8px 0 18px}.muted,small{color:var(--muted)}#steps{display:flex;gap:8px;margin:24px 0}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);padding:12px 18px;border-radius:10px;text-decoration:none;display:inline-block;min-height:46px}button.active,button.primary,.button.primary{background:var(--ink);color:white;border-color:var(--ink)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}#layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}#app,#summary{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}#summary{position:sticky;top:20px}#summary dl{display:grid;grid-template-columns:1fr auto;gap:12px}dd{margin:0;text-align:right}.total{border-top:1px solid var(--line);padding-top:16px;margin-top:16px;font-size:22px;font-weight:700}.formgrid,.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:block;font-weight:600}.field input,.field select,.field textarea{display:block;width:100%;padding:12px;border:1px solid #aebba9;border-radius:8px;background:#fff;color:var(--ink);margin:6px 0 12px}.field textarea{min-height:90px}.check{display:flex;gap:10px;align-items:flex-start;margin:14px 0}.check input{width:22px;height:22px;flex:none;accent-color:var(--ink)}.budgets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.budget{font-size:22px;font-weight:700}.budget small{display:block;font-size:12px;font-weight:400;color:inherit}.card{display:block;border:1px solid var(--line);border-radius:12px;padding:17px;cursor:pointer}.card.selected{border:2px solid var(--ink);padding:16px;background:#f2f6ee}.card .check{margin:0}.card p{font-size:14px;margin:8px 0 0}.tag{display:inline-block;font-size:12px;padding:3px 8px;border-radius:20px;background:#e8efdf;margin:7px 0}.courses{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.courses button{flex:1;padding:10px}.courses small{display:block;color:inherit}details{margin:16px 0}summary{cursor:pointer;font-weight:700;padding:12px 0}.note{padding:15px;border-radius:10px;background:#edf1e6;margin:16px 0}.actions{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.extra{border-bottom:1px solid var(--line);padding:14px 0}.extra h3{font-size:17px}.extra .field{margin-left:32px}#message:empty{display:none}#message{border:1px solid #ad673d;border-radius:8px;padding:12px;color:#823e20;background:#fff6ed}#dock{display:none}footer{text-align:center;padding:20px 20px 100px;font-size:14px}.hp{position:absolute;left:-9999px}.review ul{padding-left:20px}.review li{margin:12px 0}@media(max-width:760px){main{padding:25px 16px 135px}header{padding:10px 16px}header img{width:100px;height:50px}header a:last-child{font-size:13px}#layout{display:block}#app{padding:18px}#summary{position:static;margin-top:20px}.formgrid,.cards{grid-template-columns:1fr}#steps{gap:4px}#steps button{font-size:13px;padding:10px 7px;flex:1}#dock{display:flex;position:fixed;bottom:0;left:0;right:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:4;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -6px 20px #263d3010}#dock small{display:block;font-size:11px}#dock strong{font-size:16px}.intro p{font-size:15px}.courses button{min-width:90px;font-size:14px}#dock button{font-size:14px;padding:10px 14px}}@media print{header,#steps,#dock,.actions,form,footer,#message{display:none}#layout{display:block}#app,#summary{border:0;position:static}main{padding:0}.intro{display:none}}

.help-route{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:20px;border:1px solid var(--line);border-radius:12px;margin:24px 0;background:#edf1e6}.help-route button{flex:none}#steps[hidden]{display:none}@media(max-width:760px){.help-route{display:block}.help-route button{margin-top:12px;width:100%}#dock #help-send{width:100%}}

.extra-tabs,.quantity-modes,.quantity-actions,.menu-tools{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.extra-tabs button{flex:1}.extra-filters{display:grid;grid-template-columns:1fr 1fr;gap:16px}.extra-results{margin-bottom:20px}.extra{padding:22px 0}.extra p{margin-bottom:12px}.quantity-picker{background:#f3f6ee;border:1px solid var(--line);padding:18px;border-radius:12px}.quantity-picker .field{margin-left:0}.chosen-extras{background:#f3f6ee;padding:18px;border-radius:12px;margin:20px 0}.chosen-extra{padding:14px 0;border-bottom:1px solid var(--line)}.chosen-extra:last-child{border-bottom:0}.chosen-extra button{font-size:14px;padding:8px 12px;margin-right:8px}.tool-help{font-size:12px}#tool-message:empty{display:none}#tool-message{font-size:14px;background:#edf1e6;padding:12px;border-radius:8px}.menu-tools button{font-size:14px}#share-panel textarea{font-size:14px;font-weight:400;white-space:pre-wrap}@media(max-width:760px){.extra-filters{grid-template-columns:1fr;gap:0}.quantity-modes button{flex:1}.extra-tabs button{font-size:14px;padding:10px}.quantity-actions{flex-direction:column}}@media print{#help-route,#menu-tools,#draft-offer,#share-panel{display:none}}
