@font-face{font-family:EP Playfair SemiBold;src:url(/fonts/PlayfairDisplay_600SemiBold.ttf) format("truetype");font-display:block}@font-face{font-family:EP Playfair ExtraBold;src:url(/fonts/PlayfairDisplay_800ExtraBold.ttf) format("truetype");font-display:block}@font-face{font-family:EP Playfair Italic;src:url(/fonts/PlayfairDisplay_400Regular_Italic.ttf) format("truetype");font-display:block}@font-face{font-family:EP Montserrat SemiBold;src:url(/fonts/Montserrat_600SemiBold.ttf) format("truetype");font-display:block}@font-face{font-family:EP Montserrat ExtraBold;src:url(/fonts/Montserrat_800ExtraBold.ttf) format("truetype");font-display:block}@font-face{font-family:EP Montserrat Medium;src:url(/fonts/Montserrat_500Medium.ttf) format("truetype");font-display:swap}:root{--bg: #f5f2ea;--card: #ffffff;--text: #1f2a24;--muted: #66706a;--line: #e4ddcd;--green: #2e4a3b;--green-dark: #22382c;--green-soft: #e7eee9;--gold: #b8975a;--gold-soft: #f3ead8;--danger: #8a3b2e;--danger-soft: #f7e9e5;--radius: 14px;--shadow: 0 1px 2px rgba(31, 42, 36, .06), 0 4px 16px rgba(31, 42, 36, .05);font-family:EP Montserrat Medium,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-feature-settings:"lnum" 1}*{box-sizing:border-box}body{margin:0;background:var(--bg);min-height:100vh}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:EP Playfair SemiBold,Georgia,serif;font-weight:400;margin:0;color:var(--green-dark)}.app-header{background:var(--green);color:#fff;padding:18px 20px;border-bottom:4px solid var(--gold)}.app-header .inner{max-width:1280px;margin:0 auto;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.app-header h1{color:#fff;font-size:26px}.app-header .sub{color:#e8dcc0;font-size:15px}.app-header .badge{margin-left:auto;font-size:12px;color:#d9e3dc}main{max-width:1280px;margin:0 auto;padding:20px 16px 80px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:20px;align-items:start}.col{display:grid;gap:20px;min-width:0}.sticky{position:sticky;top:16px}@media(max-width:1020px){.layout{grid-template-columns:minmax(0,1fr)}.sticky{position:static}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;min-width:0}.card>h2{font-size:21px;margin-bottom:14px;display:flex;align-items:center;gap:10px}.card>h2 .step{font-family:EP Montserrat SemiBold,sans-serif;font-size:12px;background:var(--gold-soft);color:#7a6131;border-radius:99px;padding:3px 9px}.hint{color:var(--muted);font-size:14px;line-height:1.45}.small{font-size:13px}.field{display:grid;gap:7px;margin-bottom:16px}.field>label,.field .label{font-family:EP Montserrat SemiBold,sans-serif;font-size:14px;color:var(--green-dark)}.field .error{color:var(--danger);font-size:13px}input[type=text],input[type=number],select,textarea{width:100%;min-height:46px;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font-size:16px;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #2e4a3b1f}input.invalid{border-color:var(--danger)}.segmented{display:grid;grid-template-columns:1fr 1fr;background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:4px;gap:4px}.segmented button{min-height:44px;border:0;border-radius:9px;background:transparent;cursor:pointer;font-family:EP Montserrat SemiBold,sans-serif;font-size:15px;color:var(--muted)}.segmented button.active{background:var(--green);color:#fff;box-shadow:var(--shadow)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:38px;padding:6px 14px;border-radius:99px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-size:14px}.chip.active{border-color:var(--green);background:var(--green-soft);color:var(--green-dark)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:0 14px}@media(max-width:560px){.grid2,.grid3,.grid4{grid-template-columns:1fr 1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:11px;border:1.5px solid var(--line);background:#fff;color:var(--green-dark);font-family:EP Montserrat SemiBold,sans-serif;font-size:15px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.btn:hover{border-color:var(--green)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:hover{background:var(--green-dark)}.btn.gold{background:var(--gold);border-color:var(--gold);color:#fff}.btn.danger{color:var(--danger)}.btn.danger:hover{border-color:var(--danger);background:var(--danger-soft)}.btn.big{min-height:54px;font-size:16px;padding:12px 22px}.btn.block{width:100%}.btn.sm{min-height:38px;padding:6px 11px;font-size:13px;border-radius:9px}.icon-btn{min-width:38px;min-height:38px;padding:0;border-radius:9px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-size:16px}.icon-btn:disabled{opacity:.35;cursor:default}.stepper{display:inline-grid;grid-template-columns:46px minmax(40px,1fr) 46px;width:100%;max-width:220px;border:1.5px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.stepper button{border:0;background:var(--bg);font-size:22px;cursor:pointer;color:var(--green-dark);min-height:46px}.stepper button:active{background:var(--green-soft)}.stepper input{border:0;border-radius:0;text-align:center;min-height:46px;font-family:EP Montserrat SemiBold,sans-serif;box-shadow:none!important}.stepper.sm{grid-template-columns:36px 52px 36px;width:auto;border-radius:9px}.stepper.sm button,.stepper.sm input{min-height:38px;font-size:16px}.stepper.sm input{padding:4px}.promo-table{width:100%;border-collapse:collapse}.promo-table th{text-align:left;font-family:EP Montserrat SemiBold,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px;border-bottom:1.5px solid var(--line)}.promo-table td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.promo-table tr.selected td{background:#fbf8f1}.promo-table tr.editing td{background:var(--gold-soft)}.promo-name{font-family:EP Playfair SemiBold,serif;font-size:17px;word-break:break-word}.promo-caption{color:var(--muted);font-size:13px;font-style:italic}.promo-disc{font-family:EP Montserrat ExtraBold,sans-serif;font-size:17px;white-space:nowrap}.actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.order{display:flex;flex-direction:column;gap:4px}@media(max-width:720px){.promo-table thead{display:none}.promo-table,.promo-table tbody,.promo-table tr,.promo-table td{display:block;width:100%}.promo-table tr{display:grid;grid-template-columns:auto 1fr auto;gap:6px 10px;padding:12px 0;border-bottom:1px solid var(--line)}.promo-table td{border:0;padding:0}.promo-table td.c-order{grid-row:1 / span 2}.promo-table td.c-name{grid-column:2}.promo-table td.c-disc{grid-column:3;text-align:right}.promo-table td.c-qty{grid-column:2 / span 2}.promo-table td.c-actions{grid-column:1 / span 3}.actions{justify-content:flex-start}}.total{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:16px 0;padding:14px 16px;border-radius:12px;background:var(--green-soft)}.total strong{font-family:EP Playfair SemiBold,serif;font-size:22px;color:var(--green-dark);font-weight:400}.empty{text-align:center;padding:28px 10px;color:var(--muted);border:1.5px dashed var(--line);border-radius:12px}.toolbar{display:flex;flex-wrap:wrap;gap:10px}.toolbar .spacer{flex:1}.preview-box{border-radius:12px;padding:16px;background:#ece7db;display:flex;justify-content:center}.preview-box svg{width:100%;height:auto;max-height:60vh;display:block}.checker{background-color:#fff;background-image:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.legend{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:13px;color:var(--muted);line-height:1.4}.pill{display:inline-block;font-size:12px;padding:2px 9px;border-radius:99px;background:var(--gold-soft);color:#7a6131;font-family:EP Montserrat SemiBold,sans-serif}.pill.green{background:var(--green-soft);color:var(--green-dark)}.notice{padding:12px 14px;border-radius:11px;font-size:14px;line-height:1.45;border:1px solid}.notice.info{background:#f2f6f3;border-color:#cddbd2}.notice.warn{background:#fbf4e4;border-color:#ead7a8}.notice.error{background:var(--danger-soft);border-color:#e3c0b7;color:var(--danger)}.notice+.notice{margin-top:10px}details.section>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px}details.section>summary::-webkit-details-marker{display:none}details.section>summary h2{font-size:21px}details.section>summary:after{content:"▾";margin-left:auto;color:var(--muted);transition:transform .2s}details.section[open]>summary:after{transform:rotate(180deg)}details.section[open]>summary{margin-bottom:16px}fieldset{border:1px solid var(--line);border-radius:12px;padding:14px 14px 2px;margin:0 0 16px;min-width:0}legend{font-family:EP Montserrat SemiBold,sans-serif;font-size:14px;color:var(--green-dark);padding:0 6px}.unit-input{position:relative}.unit-input input{padding-right:44px}.unit-input span{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}.check{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;cursor:pointer;font-size:15px;line-height:1.35}.check input{width:22px;height:22px;margin:0;flex:none;accent-color:var(--green)}.saved-item{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line)}.saved-item .meta{flex:1;min-width:180px}.saved-item .meta b{font-family:EP Playfair SemiBold,serif;font-weight:400;font-size:17px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#141e1973;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:#fff;border-radius:16px;max-width:480px;width:100%;padding:22px;box-shadow:0 20px 60px #00000040;max-height:90vh;overflow:auto}.modal h3{font-size:21px;margin-bottom:10px}.modal .body{font-size:15px;line-height:1.5;margin-bottom:18px}.modal .buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%);background:var(--green-dark);color:#fff;padding:12px 18px;border-radius:12px;box-shadow:0 8px 30px #00000040;z-index:60;font-size:15px;max-width:calc(100% - 32px)}.pdf-ready{display:grid;gap:12px;margin-top:14px}.page-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;font-size:14px}.footer{text-align:center;color:var(--muted);font-size:13px;margin-top:30px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.only-mobile{display:none}@media(max-width:1020px){.only-mobile{display:block}.only-desktop{display:none}}.brand-quick{margin-bottom:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fcfaf5}.brand-quick-title{font-family:EP Montserrat SemiBold,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#7a6131;margin-bottom:8px}.brand-recent{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px dashed var(--line)}.brand-recent-label{font-size:12px;color:var(--muted);margin-right:2px}.brand-chips{display:flex;flex-wrap:wrap;gap:6px}.brand-chip{min-height:36px;padding:5px 11px;border-radius:99px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-family:EP Montserrat SemiBold,sans-serif;font-size:12.5px;letter-spacing:.02em;color:var(--green-dark);transition:border-color .15s,background .15s}.brand-chip:hover{border-color:var(--gold);background:var(--gold-soft)}.brand-chip.active{border-color:var(--green);background:var(--green);color:#fff}.brand-recent .brand-chip{border-color:#e2d3b0;background:var(--gold-soft)}.brand-recent .brand-chip.active{border-color:var(--green);background:var(--green);color:#fff}.combo{position:relative}.combo-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:6px;list-style:none;background:#fff;border:1.5px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #1f2a2424}.combo-list li[role=option]{padding:10px 12px;border-radius:8px;cursor:pointer;font-family:EP Montserrat SemiBold,sans-serif;font-size:15px;color:var(--green-dark)}.combo-list li.active{background:var(--green-soft)}.combo-list .combo-hint{padding:6px 12px 2px;font-size:12px;color:var(--muted)}.brand-chip,.combo-list li{-webkit-tap-highlight-color:transparent}.brand-chip:focus{outline:none}.brand-chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
