.voucher-page{max-width:1120px;margin:0 auto;padding:48px 20px 80px}.voucher-hero{gap:12px;margin-bottom:32px;display:grid}.voucher-hero h1{letter-spacing:-.03em;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1}.voucher-hero p{color:hsl(var(--muted-foreground));max-width:60ch;font-size:1.05rem}.voucher-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}@media (width<=860px){.voucher-grid{grid-template-columns:1fr}}.voucher-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:20px;gap:18px;padding:24px;display:grid}.voucher-card h2{font-size:1.15rem;font-weight:700}.voucher-amounts{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;display:grid}.voucher-chip{border:1.5px solid hsl(var(--border));background:hsl(var(--background));cursor:pointer;border-radius:14px;padding:14px 10px;font-size:1.1rem;font-weight:700}.voucher-chip[aria-pressed=true]{border-color:hsl(var(--primary));background:color-mix(in oklab, hsl(var(--primary)) 10%, hsl(var(--background)));color:hsl(var(--primary))}.voucher-toggle{grid-template-columns:1fr 1fr;gap:10px;display:grid}.voucher-field{gap:6px;font-size:.9rem;font-weight:600;display:grid}.voucher-field input,.voucher-field textarea{border:1px solid hsl(var(--border));font:inherit;background:hsl(var(--background));color:hsl(var(--foreground));border-radius:10px;padding:10px 12px;font-weight:400}.voucher-field small{color:hsl(var(--muted-foreground));font-weight:400}.voucher-summary{gap:8px;font-size:.95rem;display:grid}.voucher-summary div{justify-content:space-between;display:flex}.voucher-summary .total{border-top:1px solid hsl(var(--border));padding-top:10px;font-size:1.1rem;font-weight:800}.voucher-note{color:hsl(var(--muted-foreground));font-size:.85rem}.voucher-error{color:hsl(var(--destructive));font-size:.9rem}.voucher-preview{aspect-ratio:1.414;background:radial-gradient(circle at 80% 20%, color-mix(in oklab, hsl(var(--primary)) 35%, transparent), transparent 55%), hsl(var(--foreground));color:hsl(var(--background));border-radius:18px;flex-direction:column;justify-content:space-between;padding:28px;display:flex}.voucher-preview .brand{font-size:2rem;font-weight:800}.voucher-preview .brand span,.print-brand span{color:hsl(var(--primary))}.voucher-preview strong{font-size:2.6rem;font-weight:800}.voucher-code{letter-spacing:.15em;font-family:ui-monospace,monospace;font-size:1.4rem;font-weight:700}.voucher-list{gap:12px;display:grid}.voucher-row{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.voucher-row .actions{flex-wrap:wrap;gap:8px;display:flex}.voucher-status{text-transform:uppercase;background:hsl(var(--muted));border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:700}.print-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:900px;margin:24px auto;padding:0 20px;display:flex}.print-sheet{color:#17231b;background:#fff;grid-template-columns:1fr 1fr;width:297mm;height:210mm;margin:0 auto 24px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 40px -20px #0006}.print-sheet:after{content:"";border-left:1px dashed #c8cfca;position:absolute;top:0;bottom:0;left:50%}.print-panel{flex-direction:column;gap:6mm;padding:18mm 16mm;display:flex;position:relative;overflow:hidden}.print-front{color:#fff;background:#17231b;justify-content:space-between}.print-front .topo{opacity:.18;position:absolute;inset:0}.print-brand{font-size:22mm;font-weight:800;line-height:1;position:relative}.print-front h2{font-size:13mm;font-weight:800;line-height:1.05;position:relative}.print-front p{opacity:.85;font-size:4.5mm;position:relative}.print-back{color:#5b6660;justify-content:flex-end;font-size:3.4mm}.print-inside-left{justify-content:center}.print-message{white-space:pre-line;font-size:6mm;font-style:italic;line-height:1.45}.print-from{font-size:5mm;font-weight:700}.print-inside-right{border-left:0;justify-content:space-between}.print-amount{color:#cf4510;font-size:22mm;font-weight:800;line-height:1}.print-code{letter-spacing:1.5mm;border:1.5px solid #17231b;border-radius:3mm;padding:3mm 5mm;font-family:ui-monospace,monospace;font-size:7mm;font-weight:700;display:inline-block}.print-small{color:#5b6660;font-size:3.4mm;line-height:1.45}@media print{@page{size:A4 landscape;margin:0}body *{visibility:hidden}.print-root,.print-root *{visibility:visible}.print-root{position:absolute;inset:0}.print-toolbar{display:none}.print-sheet{box-shadow:none;page-break-after:always;break-after:page;-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0}.print-sheet:after{border-left-color:#e5e8e6}}
