:root{--bg:#fbfaf8;--surface:#fff;--surface-soft:#f4f8f6;--ink:#24211f;--muted:#6f6862;--line:#ddd7d0;--rose:#b84c62;--rose-dark:#8d3448;--teal:#217c78;--sage:#6c8a64;--gold:#a66c22;--shadow:0 16px 40px #24211f14}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfaf8f5;grid-template-columns:minmax(160px,1fr) auto minmax(180px,260px);align-items:center;gap:16px;padding:14px clamp(16px,4vw,48px);display:grid;position:sticky;top:0}.brand,.topnav,.topnav a,.button,.user-switcher,.coupon-meta span,.detail-pair,.inline-panel,.back-link{align-items:center;display:inline-flex}.brand{letter-spacing:0;gap:10px;font-weight:800}.brand svg{color:var(--rose)}.topnav{gap:6px}.topnav a{min-height:40px;color:var(--muted);border-radius:8px;gap:8px;padding:0 12px}.topnav a:hover{background:var(--surface-soft);color:var(--ink)}.user-switcher{color:var(--muted);justify-self:end;gap:10px}.user-switcher select,input,textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:8px}.user-switcher select{width:auto;min-width:128px;padding:8px 10px}main{width:min(1120px,100% - 32px);margin:0 auto;padding:36px 0 72px}.landing-grid{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:stretch;gap:24px;min-height:calc(100vh - 160px);display:grid}.landing-copy,.memory-panel,.empty-state,.inline-panel,.timeline article,.coupon-form{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.landing-copy{flex-direction:column;justify-content:center;padding:clamp(28px,6vw,72px);display:flex}.landing-copy h1,.page-heading h1,.detail-header h1,.invite-page h1{letter-spacing:0;margin:0;line-height:1.02}.landing-copy h1{max-width:720px;font-size:clamp(42px,8vw,82px)}.landing-copy p,.detail-header p,.invite-page p{color:var(--muted);line-height:1.7}.landing-copy>p:not(.eyebrow){max-width:650px;font-size:18px}.memory-panel{text-align:center;background:#f7fbfa;place-content:center;gap:12px;min-height:360px;padding:32px;display:grid}.memory-panel svg{color:var(--teal);justify-self:center}.memory-panel p{letter-spacing:0;margin:0;font-size:58px;font-weight:900}.memory-panel span{color:var(--muted)}.page-stack,.form-page,.detail-page,.invite-page{gap:22px;display:grid}.page-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-heading h1,.detail-header h1,.invite-page h1{font-size:clamp(34px,5vw,56px)}.eyebrow{color:var(--rose-dark);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:800}.button-row,.action-bar{flex-wrap:wrap;gap:10px;display:flex}.button,.icon-button,.segmented-control button{cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:40px}.button{gap:8px;padding:0 14px;font-weight:750}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.button.primary{background:var(--rose);color:#fff}.button.primary:hover{background:var(--rose-dark)}.button.secondary{background:var(--surface-soft);color:var(--teal);border-color:#cbdad4}.button.ghost,.icon-button{background:var(--surface);border-color:var(--line);color:var(--muted)}.icon-button{justify-content:center;width:42px}.segmented-control{flex-wrap:wrap;gap:8px;display:flex}.segmented-control button{background:var(--surface);border-color:var(--line);color:var(--muted);padding:0 12px}.segmented-control button.selected{color:var(--teal);background:#edf7f6;border-color:#9ac8c4}.coupon-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.coupon-card{border:1px solid var(--line);background:var(--surface);min-height:260px;box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:18px;display:grid}.coupon-card:hover{border-color:#d9a2ad;transform:translateY(-1px)}.coupon-card-header,.coupon-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.coupon-card h2{margin:0;font-size:24px;line-height:1.15}.coupon-card p{color:var(--muted);margin:0;line-height:1.55}.coupon-meta{color:var(--muted);flex-wrap:wrap;align-self:end;font-size:14px}.coupon-meta span{gap:6px}.status-badge,.role-pill{border-radius:8px;align-items:center;min-height:28px;padding:0 9px;font-size:13px;font-weight:800;display:inline-flex}.role-pill{color:var(--rose-dark);background:#f8f2f3}.status-draft{color:#55514b;background:#f1f1ef}.status-pending{color:var(--gold);background:#fff3df}.status-active{color:var(--teal);background:#eaf7f4}.status-requested{color:#355c9b;background:#edf1fb}.status-redeemed{color:var(--sage);background:#eef5ea}.status-archived{color:#5b5b5b;background:#ededed}.status-declined{color:var(--rose-dark);background:#fae9ec}.status-expired{color:#7f5540;background:#f1e8e2}.coupon-form{gap:18px;max-width:720px;padding:22px;display:grid}.coupon-form label{color:var(--muted);gap:8px;font-weight:700;display:grid}input,textarea{padding:12px}textarea{resize:vertical}.notice,.empty-state{color:var(--muted);margin:0}.notice{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:12px 14px}.notice.error{color:var(--rose-dark);background:#fff5f7;border-color:#edc2cb}.notice.success{color:var(--teal);background:#f0fbf8;border-color:#b8d8cd}.empty-state{justify-items:start;gap:10px;padding:22px;display:grid}.empty-state h2{margin:0}.back-link{width:fit-content;color:var(--muted)}.detail-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px;display:grid}.detail-header>div:first-child{gap:12px;display:grid}.detail-pair{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;gap:10px;padding:12px}.inline-panel{justify-content:space-between;gap:12px;padding:12px}.inline-panel span{overflow-wrap:anywhere;min-width:0;color:var(--muted)}.timeline{gap:10px;display:grid}.timeline h2{margin:16px 0 0}.timeline article{box-shadow:none;gap:4px;padding:14px;display:grid}.timeline p{color:var(--muted);margin:0}.timeline span,.fine-print{color:var(--muted);font-size:14px}.invite-page{max-width:720px}.print-page,.redeem-page{gap:18px;display:grid}.print-page{width:100%}.print-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sheet-controls{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(120px,160px);align-items:end;gap:16px;padding:14px;display:grid}.control-label{color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800;display:block}.print-layout-control button{text-align:left;align-content:center;gap:3px;min-height:58px;display:grid}.print-layout-control small{color:var(--muted);font-size:12px;font-weight:650}.print-layout-control button.selected small{color:var(--teal)}.quantity-control input{max-width:120px;min-height:44px}.coupon-sheet-preview{justify-items:center;gap:24px;display:grid}.coupon-sheet-page{aspect-ratio:210/297;border:1px solid var(--line);width:min(100%,210mm);box-shadow:var(--shadow);background:#fff;gap:8mm;padding:10mm;display:grid}.coupon-sheet-page.sheet-gift{grid-template-rows:1fr;grid-template-columns:1fr;gap:0}.coupon-sheet-page.sheet-two{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr}.coupon-sheet-page.sheet-four{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:6mm}.coupon-sheet-page.sheet-five{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:1fr;gap:4mm}.printable-coupon{border:2px solid var(--ink);min-width:0;height:100%;min-height:0;color:var(--ink);box-shadow:var(--shadow);overflow-wrap:anywhere;background:#fff;border-radius:8px;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:clamp(10px,2vw,22px);padding:clamp(24px,4vw,48px);display:grid}.coupon-sheet-page:not(.sheet-gift) .printable-coupon{box-shadow:none;border-width:1px;gap:10px;padding:16px}.printable-header,.redeem-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.copy-number{border:1px solid var(--line);min-height:22px;color:var(--muted);border-radius:8px;align-items:center;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.printable-coupon h1{margin:0;font-size:clamp(36px,7vw,68px);line-height:1.02}.printable-coupon h2{margin:0 0 8px;font-size:18px}.printable-coupon p{color:var(--muted);margin:0;line-height:1.7}.coupon-sheet-page:not(.sheet-gift) .printable-coupon h1{font-size:clamp(24px,4vw,42px)}.coupon-sheet-page:not(.sheet-gift) .printable-coupon h2{margin-bottom:4px;font-size:13px}.coupon-sheet-page:not(.sheet-gift) .printable-coupon p{font-size:13px;line-height:1.45}.printable-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.printable-details div{border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px}.printable-details dt{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.printable-details dd{margin:4px 0 0;font-size:18px;font-weight:800}.coupon-sheet-page:not(.sheet-gift) .printable-details{gap:6px}.coupon-sheet-page:not(.sheet-gift) .printable-details div{padding:7px}.coupon-sheet-page:not(.sheet-gift) .printable-details dt{font-size:9px}.coupon-sheet-page:not(.sheet-gift) .printable-details dd{margin-top:2px;font-size:12px}.qr-section{border:1px dashed var(--line);border-radius:8px;justify-items:center;gap:12px;padding:18px;display:grid}.qr-section img{width:min(320px,100%);height:auto}.qr-section p{text-align:center;gap:2px;display:grid}.qr-section strong{color:var(--ink)}.coupon-sheet-page:not(.sheet-gift) .qr-section{gap:6px;padding:8px}.coupon-sheet-page:not(.sheet-gift) .qr-section img{width:min(128px,100%)}.coupon-sheet-page:not(.sheet-gift) .qr-section p{font-size:11px;line-height:1.25}.sheet-four .printable-coupon{gap:8px;padding:12px}.sheet-four .printable-coupon h1{font-size:clamp(20px,3vw,30px)}.sheet-four .printable-details{grid-template-columns:1fr}.sheet-four .qr-section img{width:min(96px,100%)}.sheet-five .printable-coupon{grid-template-rows:auto auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;padding:10px 12px}.sheet-five .printable-header,.sheet-five .printable-coupon h1,.sheet-five .printable-details,.sheet-five .printable-terms{grid-column:1}.sheet-five .printable-header{align-items:center}.sheet-five .printable-coupon h1{font-size:clamp(18px,2.4vw,24px);line-height:1.05}.sheet-five .printable-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.sheet-five .printable-details div{padding:4px 5px}.sheet-five .printable-details dt{font-size:8px}.sheet-five .printable-details dd,.sheet-five .printable-terms h2{font-size:10px}.sheet-five .printable-terms p{font-size:10px;line-height:1.25}.sheet-five .qr-section{grid-area:1/2/-1;align-content:center;align-self:stretch;min-width:100px}.sheet-five .qr-section img{width:84px}.sheet-five .qr-section p{max-width:90px;font-size:10px}.redeem-page{max-width:760px}.redeem-header{justify-content:flex-start;align-items:center}.redeem-header svg{color:var(--teal)}.redeem-header h1{margin:0;font-size:clamp(34px,5vw,56px);line-height:1.04}.pair-line{color:var(--muted);font-weight:750}.remote-redemption-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:16px;display:grid}.remote-redemption-panel h2{margin:0;font-size:24px;line-height:1.15}.remote-redemption-panel p{color:var(--muted);margin:0;line-height:1.55}.remote-redemption-panel label{color:var(--muted);gap:8px;font-weight:750;display:grid}@media (max-width:820px){.topbar{grid-template-columns:1fr;align-items:stretch}.topnav,.user-switcher{justify-self:start}.landing-grid,.detail-header{grid-template-columns:1fr}.landing-copy h1{font-size:42px}.page-heading{flex-direction:column;align-items:flex-start}.sheet-controls{grid-template-columns:1fr}.coupon-sheet-page{gap:12px;width:100%;padding:12px}.coupon-sheet-page.sheet-four,.coupon-sheet-page.sheet-five{aspect-ratio:auto}.coupon-sheet-page.sheet-four,.coupon-sheet-page.sheet-five .printable-coupon{grid-template-columns:1fr}.coupon-sheet-page.sheet-five .qr-section{grid-area:auto/1;min-width:0}.printable-details{grid-template-columns:1fr}}@media print{@page{size:A4;margin:0}body{background:#fff}.topbar,.no-print{display:none!important}main{width:100%;margin:0;padding:0}.print-page,.coupon-sheet-preview{display:block}.coupon-sheet-page{aspect-ratio:auto;width:210mm;height:297mm;box-shadow:none;page-break-after:always;break-after:page;border:0;margin:0;padding:8mm;overflow:hidden}.coupon-sheet-page.sheet-gift{grid-template-rows:1fr;grid-template-columns:1fr}.coupon-sheet-page.sheet-two{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr}.coupon-sheet-page.sheet-four{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.coupon-sheet-page.sheet-five{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:1fr}.sheet-five .printable-coupon{grid-template-columns:minmax(0,1fr) auto}.sheet-five .qr-section{grid-area:1/2/-1;min-width:100px}.coupon-sheet-page:last-child{page-break-after:auto;break-after:auto}.printable-coupon{max-width:none;box-shadow:none;page-break-inside:avoid;break-inside:avoid}.status-badge,.role-pill{border:1px solid #000;color:#000!important;background:#fff!important}}
