:root{--bb-orange:#E8622C;--bb-amber:#F2A65A;--bb-dark:#1c1c1c;--bb-cream:#f4f2ee;--bb-border:#e2ded6}
*{box-sizing:border-box}body{margin:0;background:var(--bb-cream);color:#1c1c1c;font:16px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif}.shell{max-width:1100px;margin:auto;padding:0 22px 48px}.top{background:var(--bb-dark);color:#fff;padding:19px 24px;margin:0 -22px 30px;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;border-radius:0 0 13px 13px}.brandmark{display:flex;flex-direction:column;color:#fff;text-decoration:none;line-height:1}.brandmark strong{font-size:26px;letter-spacing:.3px}.brandmark strong span{color:var(--bb-amber)}.brandmark small{margin-top:6px;border-top:1px solid #ffffffbb;padding-top:5px;letter-spacing:.13em;font-size:10px;font-weight:300}.top nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.top nav a{display:inline-flex;align-items:center;min-height:42px;padding:8px 11px;color:#ddd;text-decoration:none;border-radius:8px;font-size:14px}.top nav a:hover,.top nav a:focus-visible{color:white;background:#3b2c23}.card{background:#fff;border:1px solid var(--bb-border);border-radius:16px;padding:28px 30px;box-shadow:0 6px 22px #1c1c1c0a}.card h1{font-size:clamp(25px,3vw,34px);line-height:1.18;margin:0 0 17px;letter-spacing:-.02em}.card h2{font-size:21px;margin:26px 0 14px}.card p{line-height:1.58}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 19px;background:var(--bb-orange);color:white;border:0;border-radius:9px;text-decoration:none;font-weight:700;cursor:pointer;font:700 15px "Helvetica Neue",Arial,sans-serif}.btn:hover{background:#d45220}.btn.secondary{background:#fff;color:#b64d25;border:1px solid #d47d5d}.btn.secondary:hover{background:#fff2ea}.field{margin:15px 0}.field label{display:block;font-weight:650;font-size:14px}.field input,.field select,.field textarea{width:100%;display:block;margin-top:6px;min-height:45px;padding:10px 12px;border:1px solid #cfc8c0;border-radius:9px;font:16px "Helvetica Neue",Arial,sans-serif;background:#fff;color:#1c1c1c}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--bb-orange);outline-offset:1px}.field input[type=color]{height:49px;padding:5px;cursor:pointer}.field input[type=file]{padding:10px}.muted{color:#6b6b6b}.ok,.err{padding:12px 15px;border-radius:9px}.ok{background:#e8f5e9;color:#255e30}.err{background:#fde9e6;color:#9f2b1e}.kpi{font-size:30px;font-weight:750}.table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.table th,.table td{padding:11px;border-bottom:1px solid #eee9e4;text-align:left;white-space:nowrap}.badge{display:block;padding:10px;overflow-wrap:anywhere;white-space:normal;border-radius:8px;background:#f5f3ef;font:12px/1.5 monospace}.grid,.training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.mini-card,.training-grid article{background:#fff;border:1px solid var(--bb-border);padding:18px;border-radius:13px;text-decoration:none;color:inherit}.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 30px}.app-footer{text-align:center;margin:25px 0;color:#777;font-size:13px}.app-footer a{color:#8c482f}details{border-bottom:1px solid #ddd;padding:13px 0}summary{cursor:pointer;font-weight:700}
.designer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1fr);gap:36px;align-items:start}.designer-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.eyebrow{display:block;margin:7px 0 12px;color:#a34b23;font-weight:700;letter-spacing:.13em;text-transform:uppercase;font-size:12px}.design-preview{--design-accent:#E8622C;position:relative;display:flex;flex-direction:column;gap:12px;min-height:420px;padding:29px;border-radius:18px;overflow:hidden;box-shadow:0 16px 35px #1c1c1c25}.design-preview:before{content:"";position:absolute;right:-130px;top:-160px;width:360px;height:360px;border-radius:50%;background:var(--design-accent);opacity:.2}.design-preview>*{position:relative}.design-preview img{max-width:180px;max-height:60px;object-fit:contain;align-self:flex-start}.preview-placeholder{display:inline-block;font-size:15px;font-weight:700;border:1px solid currentColor;padding:8px 12px;border-radius:7px;align-self:flex-start}.design-preview small{letter-spacing:.15em;margin-top:20px;font-size:11px}.design-preview h2{font-size:clamp(23px,3vw,35px);line-height:1.1;letter-spacing:-.03em;margin:2px 0}.design-preview p{margin:0;overflow-wrap:anywhere}.preview-value{font-size:35px;font-weight:750;margin-top:auto;line-height:1.1}.preview-value span{display:block;font-size:13px;font-weight:400;margin-top:5px}.preview-bottom{border-top:2px solid var(--design-accent);padding-top:10px;font-size:14px;font-weight:700}.preview-bottom span{color:var(--design-accent)}.public-voucher{max-width:560px;min-height:350px;margin:12px 0 24px}
@media(max-width:760px){.shell{padding:0 12px 26px}.top{margin:0 -12px 14px;border-radius:0;padding:16px 15px;align-items:flex-start}.top nav{width:100%;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.top nav a{padding:6px 9px;border:1px solid #51443d;font-size:13px}.card{padding:19px 17px}.designer-grid,.grid,.training-grid{grid-template-columns:1fr}.quick-actions .btn{flex:1 1 100%}.designer-colors{gap:7px}.design-preview{min-height:360px}}
.print-canvas{position:relative;border:2px solid #e8622c;border-radius:8px;width:100%;overflow:hidden;touch-action:none;margin:1rem 0}.print-item{position:absolute;cursor:grab;touch-action:none;padding:.15rem;font-size:clamp(.55rem,2vw,1rem);border:1px dashed currentColor;overflow:hidden;max-height:25%;word-break:break-word}.wallet-table-wrap{overflow-x:auto} .wallet-table-wrap table{width:100%;border-collapse:collapse}.wallet-table-wrap td,.wallet-table-wrap th{padding:.65rem;border-bottom:1px solid #bbb;text-align:left;white-space:nowrap}
