:root{--bg: #f2f6f8;--ink: #1b2b34;--card: rgba(255, 255, 255, .86);--line: #d4dee5;--brand: #46121e;--brand-dark: #320b14;--danger: #a61b1b;--ok: #17683a}*{box-sizing:border-box}body{margin:0;font-family:"Source Sans 3",Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#ffffff8a,#f2f6f89e),url(/background.jpg) center/cover fixed no-repeat}.page{max-width:1120px;margin:0 auto;padding:16px}.notice-banner{background:#f7ecef;border:1px solid #cfa8b1;color:#46121e;border-radius:10px;padding:10px 12px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.notice-close{border:0;border-radius:999px;background:#46121e;color:#fff;font-weight:700;padding:6px 12px;cursor:pointer}.hero{overflow:hidden;border-radius:16px;background:var(--brand);color:#fff;box-shadow:0 14px 28px #0000002e}.hero-media{position:relative}.hero-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#46121e00 46%,#46121eeb);pointer-events:none}.hero-logo-overlay{position:absolute;right:18px;top:14px;width:92px;z-index:2;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.35))}.hero-banner{width:100%;display:block;max-height:220px;object-fit:cover}.hero-content{padding:20px}.hero-copy{min-width:0}.kicker{margin:0;color:#fdd56f;font-weight:700;letter-spacing:.04em}.hero h1{margin:6px 0 8px;font-family:Bebas Neue,"Source Sans 3",sans-serif;letter-spacing:.02em;font-size:clamp(2.25rem,4vw,3.2rem);padding-right:0}.hero p{margin:0;max-width:760px}.stats{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}.stats span{background:#ffffff24;border:1px solid rgba(255,255,255,.18);padding:7px 10px;border-radius:999px}.full-banner{margin-top:12px;background:#ffffff29;border:1px solid rgba(255,255,255,.24);padding:10px;border-radius:10px;display:grid;gap:8px}.mini-cta{width:fit-content;border:0;border-radius:999px;padding:8px 12px;font-weight:700;background:#fff;color:var(--brand);cursor:pointer}.layout{margin-top:16px;display:grid;gap:16px;grid-template-columns:1.5fr 1fr}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 8px 22px #14283c14;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.card h2{margin-top:0}.card h2,.how-it-works h3,.recent-feed h3{font-family:Bebas Neue,"Source Sans 3",sans-serif;letter-spacing:.02em;font-size:1.8rem}.helper{margin-top:-2px;color:#3b4f5b}.shirt-wrap{position:relative;display:grid;place-items:center}.shirt-wrap picture{display:block;width:100%}.shirt-outline{width:min(100%,720px);opacity:.95;display:block;margin:0 auto}.shirt-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.slot-columns{position:absolute;left:31%;right:31%;top:20px;bottom:20px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.slot-column{display:grid;grid-template-rows:repeat(20,minmax(0,1fr));gap:2px}.slot{border:1px solid var(--line);background:#f8fbfd;border-radius:6px;text-align:center;padding:1px 3px;display:grid;grid-template-columns:1fr;align-items:center;cursor:pointer;transition:transform .08s ease,box-shadow .12s ease;min-height:0;width:100%}.slot:hover{transform:translateY(-1px);box-shadow:0 2px 10px #0000001f}.slot-no{width:16px;height:16px;border-radius:999px;display:grid;place-items:center;background:#e9eff5;font-weight:700;font-size:9px;margin:0 auto}.slot.selected{border-color:var(--brand);background:#f7ecef}.slot.selected .slot-no{background:var(--brand);color:#fff}.slot.taken-name{border-style:dashed;background:#ffffff8f;cursor:default;text-align:left;padding:2px 6px}.slot-taken-label{display:inline-block;font-size:9px;font-weight:700;color:#fff;background:#46121ee6;padding:1px 6px;border-radius:999px}.slot-taken-name{font-size:10px;font-weight:700;color:#2c3840;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cta{width:100%;border:none;border-radius:10px;padding:12px 14px;font-weight:700;background:linear-gradient(180deg,var(--brand),var(--brand-dark));color:#fff;cursor:pointer}.cta.alt{margin-top:8px;background:linear-gradient(180deg,#5e1b2a,#46121e)}.cta:disabled{opacity:.6;cursor:not-allowed}.small{color:#4e5b66;font-size:13px}.error{color:var(--danger);font-weight:600}.success{color:var(--ok);font-weight:600}.summary ul{padding-left:18px;margin-bottom:0}.how-it-works h3,.recent-feed h3{margin:12px 0 8px}.recent-feed ul{margin:0;padding:0;list-style:none}.recent-feed li{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#ffffffbf;display:grid;gap:3px;margin-bottom:8px}.recent-feed li span{font-weight:700;color:#234a35}.recent-feed li em{color:#4e5b66;font-size:13px}.gallery{margin-top:16px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px;border:1px solid var(--line);box-shadow:0 6px 16px #0000001f}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#020e148c;display:grid;place-items:center;padding:16px;z-index:50}.modal{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:16px}.modal form{display:grid;gap:10px}.modal label{display:grid;gap:4px;font-weight:600}.modal input,.modal textarea{border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit}.amount-box{border:1px solid var(--line);border-radius:10px;padding:10px}.amount-box legend{padding:0 6px;font-weight:700}.amount-choices{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid #b9a0a7;background:#fff;border-radius:999px;padding:6px 10px;font-weight:700;cursor:pointer}.chip-on{background:#f7ecef;border-color:var(--brand);color:var(--brand-dark)}.checkbox{display:flex!important;gap:8px;align-items:flex-start;font-weight:500!important}.checkbox input{margin-top:2px}.multi-name-grid{display:grid;gap:8px}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ghost{border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}@media (max-width: 980px){.layout{grid-template-columns:1fr}.hero-logo-overlay{right:10px;top:8px;width:64px}.shirt-outline{width:min(100%,620px);opacity:.9}.shirt-wrap picture{display:flex;justify-content:center}.slot-columns{left:31%;right:31%;top:20px;bottom:20px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 740px){.hero-media:after{background:linear-gradient(90deg,#46121e2e 20%,#46121ee6)}.hero-logo-overlay{right:8px;top:6px;width:50px}.gallery{grid-template-columns:1fr}.gallery img{height:200px}.shirt-outline{width:min(100%,520px)}.slot-columns{left:20%;right:20%;top:20px;bottom:20px;gap:5px}.slot-column{gap:3px}.slot-no{width:14px;height:14px;font-size:8px}}
