/* Birthday parties page + estimate builder (Claude, 2026-09-28). Scorecard / receipt look. */
.party-page main{background:#f8f2e6}
.shop-section-title{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:45px}.shop-section-title p{line-height:1.8;font-size:15px}
.party-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;background:#172c78;color:var(--cream);padding:60px 6% 80px;overflow:hidden}
.party-hero h1{font-size:clamp(56px,8vw,128px);line-height:.9;margin:22px 0 22px;letter-spacing:-1px}.party-hero h1 em{color:#ffb38f}
.party-hero p{max-width:520px;font-size:17px;line-height:1.7;margin:0 0 24px}
.party-facts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.party-facts span{border:1px solid #fff4dc66;border-radius:30px;padding:8px 16px;font-size:13px}.party-facts b{color:#ffb38f}
.party-ticket{justify-self:center;width:min(360px,100%);background:#fff4dc;color:var(--ink);border-radius:14px;padding:22px;transform:rotate(3deg);box-shadow:10px 10px 0 #ee5930;position:relative;
  background-image:radial-gradient(circle at 0 50%,#172c78 0 13px,transparent 14px),radial-gradient(circle at 100% 50%,#172c78 0 13px,transparent 14px)}
.ticket-top,.ticket-bottom{display:block;font-size:10px;letter-spacing:2px;font-weight:700;text-align:center}.ticket-top{border-bottom:1px dashed var(--line);padding-bottom:12px}.ticket-bottom{border-top:1px dashed var(--line);padding-top:12px}
.ticket-score{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--ink);margin:18px 0}.ticket-score>div{border-right:2px solid var(--ink);text-align:center;padding:6px 0 10px}.ticket-score>div:last-child{border-right:0}
.ticket-score small{display:block;font-size:10px;border-bottom:1px solid var(--line);padding-bottom:4px}.ticket-score b{font:700 44px/1.1 'Barlow Condensed',sans-serif;color:#ee5930}.ticket-cake{display:grid;place-items:center;font-size:40px}
.included-cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.included-cards li{background:#fffaf1;border:2px solid var(--ink);padding:24px;box-shadow:6px 6px 0 var(--ink)}.included-cards b{display:block;font:700 30px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:12px 0 10px}.included-cards p{margin:0;font-size:14px;line-height:1.6}
.frame-no{font-size:10px;letter-spacing:2px;font-weight:700;color:#ee5930}
.party-quote-section{background:#eef3fb}
.party-quote{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:28px;align-items:start}
.pq-build{display:grid;gap:18px}
.pq-card{position:relative;background:#fffaf1;border:1px solid var(--line);border-radius:14px;padding:24px 24px 22px 24px}
.pq-step{position:absolute;top:18px;right:20px;font:700 34px 'Barlow Condensed',sans-serif;color:#dfe6f2}
.pq-card h3{font:700 28px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 14px}
.pq-field{display:block;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:12px}.pq-field small{font-weight:400;opacity:.7}
.pq-field input{display:block;margin-top:8px;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:15px 'DM Sans',sans-serif;width:min(260px,100%)}
.pq-label{font-size:12px;font-weight:700;letter-spacing:.5px;margin:14px 0 8px}
.pq-toggle{display:inline-flex;background:#e7ecf5;border-radius:12px;padding:4px;gap:4px}
.pq-toggle button{border:0;border-radius:9px;background:transparent;color:var(--ink);padding:10px 18px;font:700 15px 'DM Sans',sans-serif;cursor:pointer}.pq-toggle button[aria-pressed=true]{background:var(--ink);color:var(--cream)}
.pq-chips{display:flex;flex-wrap:wrap;gap:8px}
.pq-chips button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:20px;padding:8px 14px;font:600 13px 'DM Sans',sans-serif;cursor:pointer;transition:transform .15s}
.pq-chips button:hover{transform:translateY(-1px);border-color:var(--ink)}.pq-chips button[aria-pressed=true]{background:#ee5930;border-color:#ee5930;color:#fff}
.pq-hint{font-size:12.5px;line-height:1.6;opacity:.8;margin:12px 0 0}.pq-warn{color:#a43019;font-size:13px;font-weight:600;margin:6px 0 0;min-height:0}.pq-warn:empty{display:none}
.pq-stepper{display:flex;align-items:center;gap:12px}.pq-stepper button{width:44px;height:44px;border-radius:50%;border:2px solid var(--ink);background:#fff;color:var(--ink);font-size:22px;cursor:pointer}
.pq-stepper output{min-width:44px;text-align:center;font:700 38px 'Barlow Condensed',sans-serif}.pq-stepper span{font-size:14px;opacity:.8}
.pq-stepper.small button{width:34px;height:34px;font-size:18px}.pq-stepper.small output{font-size:26px;min-width:30px}
.pq-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px 0;border-top:1px dashed var(--line);margin-top:12px;font-size:14px;font-weight:600}.pq-row small{font-weight:400;opacity:.7;min-width:92px;text-align:right}
.pq-pizza{border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0;background:#fff}
.pq-pizza-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.pq-pizza-head b{font:700 20px 'Barlow Condensed',sans-serif;text-transform:uppercase;flex:1}.pq-pizza-head span{font-weight:700}
.pq-pizza-head button{border:0;background:transparent;color:#a43019;text-decoration:underline;font-size:12px;cursor:pointer}
.pq-add{border:2px dashed var(--ink);background:transparent;color:var(--ink);border-radius:12px;padding:12px 16px;font:700 14px 'DM Sans',sans-serif;cursor:pointer;width:100%}
.pq-empty{font-size:13px;opacity:.7}
.pq-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:600;margin-top:14px;line-height:1.5}.pq-check small{font-weight:400;opacity:.75}.pq-check input{margin-top:4px;width:18px;height:18px}
.pq-receipt{position:sticky;top:90px}
.pq-receipt>div{background:#fffdf7;color:var(--ink);padding:24px 22px 26px;box-shadow:0 20px 40px #14296d26;position:relative;
  -webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 12px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 12px repeat-x;
  mask:linear-gradient(#000 0 0) top/100% calc(100% - 12px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 12px repeat-x}
.pq-receipt-head{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.8px;font-weight:700;border-bottom:2px solid var(--ink);padding-bottom:10px}
.pq-receipt h3{font:700 30px/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:16px 0 12px}.pq-receipt h3 small{display:block;font:600 13px 'DM Sans',sans-serif;text-transform:none;color:#ee5930;margin-top:4px}
.pq-timeline{list-style:none;padding:0;margin:0 0 14px;border-left:3px solid #ee5930}.pq-timeline li{display:flex;gap:10px;padding:5px 0 5px 12px;font-size:13px}.pq-timeline b{min-width:86px}
.pq-lines{list-style:none;padding:12px 0;margin:0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line)}
.pq-lines li{display:flex;align-items:baseline;gap:8px;padding:6px 0;font-size:14px}.pq-lines li span{max-width:65%}.pq-lines small{display:block;font-size:11px;opacity:.65}
.pq-lines i{flex:1;border-bottom:1px dotted #9aa6c1;transform:translateY(-4px)}.pq-lines b{white-space:nowrap}
.pq-total{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0 6px}.pq-total span{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.pq-total b{font:700 44px 'Barlow Condensed',sans-serif;color:#ee5930}
.pq-fine{font-size:11.5px;line-height:1.55;opacity:.75;margin:0 0 12px}
.pq-deposit{background:#eef3fb;border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.55}.pq-deposit b{display:block;font-size:14px;margin-bottom:2px}
.pq-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.pq-actions button{border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:30px;padding:12px 16px;font:600 13px 'DM Sans',sans-serif;cursor:pointer}
.rule-cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rule-cards li{background:#fffaf1;border:1px solid var(--line);border-top:5px solid #ee5930;padding:18px;font-size:14px;line-height:1.55}.rule-cards b{display:block;font:700 22px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin-bottom:4px}
.rules-source{font-size:13px;margin-top:18px}.rules-source a{text-decoration:underline;text-underline-offset:3px}
.pq-build button:focus-visible,.pq-receipt button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@media print{body *{visibility:hidden!important}.pq-receipt,.pq-receipt *{visibility:visible!important}.pq-receipt{position:absolute;left:0;top:0;width:100%}.pq-actions{display:none}}
@media(max-width:1000px){.party-quote{grid-template-columns:1fr}.pq-receipt{position:static}.rule-cards{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.party-hero{grid-template-columns:1fr;padding:40px 16px 60px}.party-ticket{transform:rotate(2deg);margin-top:10px}.included-cards,.rule-cards{grid-template-columns:1fr}.shop-section-title{display:block;margin-bottom:30px}.shop-section-title p{font-size:14px;margin-top:20px}.pq-card{padding:20px 16px}.pq-row{grid-template-columns:1fr auto}.pq-row small{grid-column:1/-1;text-align:left}}
.pq-check{flex-wrap:wrap}.pq-check small{flex-basis:100%;padding-left:28px;margin-top:-6px}
