.gfc-app{max-width:1100px;margin:2rem auto;padding:1.5rem;border:1px solid #c9b27a;border-radius:16px;background:#fffdf7;color:#302a25;box-shadow:0 4px 18px rgba(78,64,42,.08),inset 0 0 0 4px #f7f0df}.gfc-app h2{margin-top:0;color:#315044;letter-spacing:.01em}.gfc-actions,.gfc-login{margin:1.2rem 0}.gfc-app button{cursor:pointer;border:1px solid #b99a52;border-radius:999px;padding:.72rem 1.2rem;background:#315044;color:#fffaf0;font-weight:700;letter-spacing:.01em;box-shadow:0 2px 0 rgba(86,65,27,.18);transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.gfc-app button:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 4px 8px rgba(86,65,27,.14)}.gfc-app button:active{transform:translateY(0)}.gfc-app button:disabled{opacity:.55;cursor:wait}.gfc-code-row{display:flex;gap:.6rem;flex-wrap:wrap;margin:.6rem 0}.gfc-code-row input{flex:1;min-width:220px;padding:.72rem .85rem;border:1px solid #c9b98f;border-radius:999px;background:#fff;color:#302a25}.gfc-new-code{padding:1.2rem;margin:1.2rem 0;background:#f8f1df;border:1px solid #d7c28b;border-radius:12px}.gfc-new-code label,.gfc-login label{display:block;font-weight:700;color:#315044}.gfc-status,.gfc-notice{min-height:1.3em}.gfc-progress{margin:1.5rem 0}.gfc-progress-text{font-weight:700;margin-bottom:.5rem;color:#315044}.gfc-progress-track{height:10px;background:#e9e3da;border-radius:10px;overflow:hidden}.gfc-progress-track span{display:block;height:100%;width:0;background:#b99a52;transition:width .2s}.gfc-album{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:1rem;margin:1rem 0}.gfc-card{border:1px solid #d8c89f;border-radius:10px;overflow:hidden;background:#fff;min-width:0;box-shadow:0 2px 8px rgba(78,64,42,.06)}.gfc-card img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#eee}.gfc-card.is-missing img{opacity:1;filter:none}.gfc-card-art{aspect-ratio:3/4;background:#f5f0e3}.gfc-card-art img{height:100%;aspect-ratio:3/4;object-fit:cover}.gfc-placeholder{height:100%;min-height:150px;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;gap:.4rem;flex-direction:column;color:#8a845f;background:linear-gradient(135deg,#fbf7eb,#e9e2ce);font-size:1.4rem}.gfc-placeholder span{font-size:2.5rem;border:1px solid #b99a52;border-radius:50%;width:3rem;height:3rem;display:grid;place-items:center}.gfc-card.is-missing .gfc-card-info strong{color:#77715f}.gtcg-booster .gtcg-add-collection{background:#78917a;border:1px solid #b99a52;color:#fffdf6;border-radius:10px;box-shadow:none;text-transform:none;letter-spacing:0;font-size:.95rem;padding:.7rem 1.15rem}.gtcg-booster .gtcg-add-collection:hover{background:#627d65;filter:none;transform:translateY(-1px);box-shadow:0 2px 6px rgba(49,80,68,.16)}.gfc-card-info{padding:.65rem;display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.gfc-card-info span{font-size:.8rem;text-transform:capitalize}.gfc-quantity{font-weight:700}.gfc-small-note{font-size:.82rem;opacity:.75}.gtcg-booster .gtcg-add-collection{margin:.6rem auto;display:block;border:1px solid #b99a52;border-radius:999px;padding:.72rem 1.2rem;background:#7b6a3f;color:#fffaf0;font-weight:700;letter-spacing:.01em;box-shadow:0 2px 0 rgba(86,65,27,.18);transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.gtcg-booster .gtcg-add-collection:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 4px 8px rgba(86,65,27,.14)}.gtcg-booster .gtcg-add-collection[hidden]{display:none}.gfc-warning{margin:1rem 0;padding:1rem 1.1rem;border:2px solid #b3261e;border-radius:10px;background:#fff1f0;color:#5f1713}.gfc-warning strong{display:block;font-size:1.05rem;margin-bottom:.5rem}.gfc-warning p{margin:.35rem 0}.gfc-code-display{font-weight:700;letter-spacing:.08em}
@media (max-width:600px){.gfc-app{padding:1rem;margin:1rem .5rem}.gfc-code-row{flex-direction:column}.gfc-code-row input,.gfc-code-row button{width:100%;min-width:0}.gfc-new-code{padding:1rem}}

/* v1.1.3: match the Booster's ornate button style with inverted colours. */
.gtcg-booster .gtcg-add-collection{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.9rem 1.5rem;margin:.5rem;border:1px solid #c7a96c;border-radius:4px;background:linear-gradient(135deg,#f8edcf 0%,#e9dcb8 100%);color:#26372d;font:700 .78rem/1.2 Georgia,'Times New Roman',serif;letter-spacing:.13em;text-align:center;text-decoration:none;text-transform:uppercase;box-shadow:0 4px 0 #b7a477,0 8px 18px #171b1620,inset 0 1px #ffffffa0;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
.gtcg-booster .gtcg-add-collection:before,.gtcg-booster .gtcg-add-collection:after{content:'✦';color:#9a783b;font-size:.9rem}
.gtcg-booster .gtcg-add-collection:hover{background:linear-gradient(135deg,#fff5d9 0%,#f1e5c7 100%);border-color:#a98749;color:#17231d;filter:none;transform:translateY(-2px);box-shadow:0 6px 0 #b7a477,0 12px 22px #171b1625,inset 0 1px #ffffffc0}
.gtcg-booster .gtcg-add-collection:active{transform:translateY(1px);box-shadow:0 2px 0 #b7a477,0 4px 10px #171b1615}
.gtcg-booster .gtcg-add-collection:focus-visible{outline:3px solid #d8b875;outline-offset:4px}
.gtcg-booster .gtcg-add-collection:disabled{opacity:.65;cursor:wait;transform:none}
.gtcg-booster .gtcg-add-collection[hidden]{display:none!important}
.gfc-export-tools{margin:1.5rem 0;padding:1.2rem;background:#f8f1df;border:1px solid #d7c28b;border-radius:12px}.gfc-export-tools h3{margin-top:0;color:#315044}.gfc-export-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.gfc-export-options label{display:flex;flex-direction:column;gap:.4rem;font-weight:700;color:#315044}.gfc-export-options select{width:100%;padding:.65rem;border:1px solid #c9b98f;border-radius:8px;background:#fffdf7;color:#302a25}.gfc-export-checks{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0}.gfc-export-checks label{display:flex;align-items:center;gap:.4rem}.gfc-export-note{font-size:.82rem;opacity:.75}.gfc-export-button{margin-top:.3rem}@media(max-width:600px){.gfc-export-options{grid-template-columns:1fr}}
