:root{--navy:#102a52;--blue:#1677d2;--cyan:#29baff;--yellow:#ffd21f;--muted:#587394;--line:rgba(22,119,210,.2);--shadow:0 14px 40px rgba(22,119,210,.09)}
/* Shared brand foundation for the home and deck composer. */
body{display:flex;flex-direction:column;background-color:#e4f5ff;background-image:radial-gradient(ellipse at 100% 0%,#25bdff 0, #58d4ffb3 18%,transparent 53%),radial-gradient(ellipse at 0% 4%,#ffda35 0,#ffe65dcc 17%,transparent 49%),radial-gradient(ellipse at 0% 72%,#ac86ffb3 0,#bd9aff70 21%,transparent 53%),radial-gradient(ellipse at 100% 92%,#20caffb3 0,#57deff80 22%,transparent 55%),linear-gradient(225deg,#d2f2ff 0%,#fff 46%,#e3eaff 100%);background-size:100% 100%;background-repeat:no-repeat}
body{color:var(--navy);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:100svh}button,input,select{font:inherit;color:var(--navy)}button,a,input,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
/* The composer uses the same home component families with its compact app layout. */
.deck-page .deck-header,.deck-page main{width:100%;max-width:1320px;margin-inline:auto;padding-inline:40px}.deck-page main{flex:1}.deck-page .deck-header{padding-top:28px;padding-bottom:12px}.deck-page .intro h1{font-size:clamp(30px,3.3vw,42px);font-weight:900;letter-spacing:-1.5px;line-height:1.1;margin:18px 0 12px}.deck-page .intro>p{color:var(--muted);font-size:17px;font-weight:550;line-height:1.5;margin:0 0 26px}.deck-page h2{font-weight:850;letter-spacing:-.7px}.deck-page .section-heading h2{font-size:25px}.deck-page .muted{font-size:13px}.deck-page .deck-toolbar strong{font-weight:800}
.deck-page .filter-field>span,.deck-page .type-filter legend,.deck-page .export-field>span,.deck-page .export-energy legend>span,.deck-page .language-label>span{font-size:11px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted)}.deck-page .filter-field{gap:8px}.deck-page .language-label{font-weight:750}.deck-page .language-label select{border-color:var(--line);border-radius:16px;background-color:#fff;font-size:13px;font-weight:750;box-shadow:0 5px 18px #1677d208}
.deck-page .search-label{position:relative}.deck-search-icon{position:absolute;left:17px;top:50%;transform:translateY(-50%);width:22px;height:22px;fill:none;stroke:var(--blue);stroke-width:2.3;pointer-events:none}.deck-page #deck-search{border:2px solid var(--blue);border-radius:22px;background:#fff;padding-left:49px;padding-right:16px;box-shadow:0 8px 25px #1677d21a;font-size:16px}.deck-page #deck-search::placeholder{color:#7997b8}.deck-page #deck-search:focus{box-shadow:0 0 0 5px #29baff1f,0 8px 25px #1677d21a}
.deck-page .deck-select-trigger{border-color:var(--line);border-radius:16px;background:#fff;color:var(--navy);font-weight:750;font-size:14px;box-shadow:0 5px 18px #1677d208}.deck-page .deck-select-trigger::after{border-color:var(--blue)}.deck-page .deck-select-trigger:hover,.deck-page .deck-select-trigger[aria-expanded=true]{background:#edf8ff;border-color:var(--blue)}.deck-page .deck-select-menu{border-color:var(--line);border-radius:16px;box-shadow:var(--shadow)}.deck-page .deck-select-option{border-radius:10px;font-weight:650;color:var(--navy)}.deck-page .deck-select-option[aria-selected=true]{background:#d8f2ff;color:var(--blue)}.deck-page .deck-select-option.active,.deck-page .deck-select-option:hover{background:#edf8ff;box-shadow:inset 0 0 0 1px var(--line)}
.deck-page .primary{border:0;border-radius:16px;background:var(--yellow);color:var(--navy);font-weight:850;box-shadow:none;transition:transform .15s,background .15s}.deck-page .primary:hover:enabled{background:#ffde49;transform:translateY(-1px)}.deck-page .primary:disabled{opacity:.6;cursor:not-allowed}.deck-page .secondary{border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--navy);font-weight:750;min-height:44px}.deck-page .secondary:hover{background:#edf8ff;border-color:var(--blue)}.deck-page .text-button{color:var(--blue);font-size:13px;font-weight:700;min-height:44px}.deck-page .text-button:disabled{opacity:.6;cursor:default}
.deck-page .type-option{border-color:var(--line);border-radius:12px;background:#fff;color:var(--navy);font-weight:750;box-shadow:none}.deck-page .type-option[aria-pressed=true]{border-color:var(--blue);background:#d8f2ff;box-shadow:inset 0 0 0 1px var(--blue)}.deck-page .type-option:hover:enabled{background:#edf8ff;border-color:var(--blue)}.deck-page .type-all{border-radius:30px;color:var(--blue);font-size:13px;padding-inline:15px}
.deck-page .catalog-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:10px;box-shadow:0 6px 20px #1677d209;transition:transform .18s,box-shadow .18s}.deck-page .art-button{border-radius:12px}.deck-page .card-name{font-weight:750}.deck-page .card-meta{color:var(--muted)}.deck-page .card-art>.quantity{background:#102a52ed}.deck-page .card-art>.quantity button{color:#fff}
.deck-page dialog{border:1px solid var(--line);border-radius:22px;color:var(--navy);background:#fff;box-shadow:0 25px 80px #102a5233}.deck-page dialog::backdrop{background:#102a5270;backdrop-filter:none}.deck-page .export-heading h2{font-size:22px;font-weight:850}.deck-page .export-field input{border-color:var(--line);border-radius:16px;background:#fff}.deck-page .export-energy output{border:1px solid var(--line);border-radius:12px;background:#d8f2ff;color:var(--blue)}.deck-page #export-dialog.qr-mode{background:#fff}.deck-page .qr-mode #edit-export{background:#fffffff0}
.deck-page footer{display:block;flex-shrink:0;width:100%;max-width:none;margin:30px 0 0;padding:24px 4.4%;border-top:1px solid var(--line);background:#ffffffb8}.deck-page footer .copyright-notice{max-width:1120px;margin:0 auto;color:var(--muted);font-size:11px;line-height:1.6;text-align:left}.deck-page footer .made-in-italy{margin:16px auto 0;text-align:center;font-size:12px;font-weight:600;line-height:1.5;color:var(--navy)}
@media(hover:hover){.deck-page .catalog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}}
@media(max-width:760px){.deck-page .deck-header,.deck-page main{padding-inline:22px}.deck-page .deck-header{padding-top:22px}.deck-page .intro h1{font-size:30px;letter-spacing:-1px}.deck-page .intro>p{font-size:16px}.deck-page .section-heading h2{font-size:22px}.deck-page .filter-field>span,.deck-page .type-filter legend{font-size:9px;letter-spacing:.6px}.deck-page .deck-select-trigger{font-size:12px;border-radius:12px}.deck-page #deck-search{border-radius:18px}.deck-page .primary{border-radius:12px}.deck-page .catalog-card{padding:7px;border-radius:16px}.deck-page .text-button{font-size:12px}.deck-page footer{padding:14px 22px;margin-top:16px}.deck-page footer .copyright-notice{font-size:10px;line-height:1.5}.deck-page .export-heading h2{font-size:19px}.deck-page #export-dialog .deck-select-trigger{font-size:13px}}
@media(prefers-reduced-motion:reduce){.deck-page .primary,.deck-page .catalog-card{transition:none}.deck-page .primary:hover,.deck-page .catalog-card:hover{transform:none}}

/* Match the live catalog's unframed card artwork rather than its legacy panels. */
.deck-page .catalog-card,.deck-page .catalog-card:hover{padding:0;border:0;border-radius:8px;background:transparent;box-shadow:none}.deck-page .card-art{border-radius:8px;box-shadow:0 4px 14px #102a5212}.deck-page .art-button{border-radius:8px}.deck-page .card-name{margin-top:10px}.deck-page .card-meta{margin-bottom:3px}

/* The same flag picker and companion used by the home header. */
.language-control{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:210px;margin:4px auto 0;pointer-events:auto;line-height:normal;font-size:13px;font-weight:650}.language-control button{width:42px;height:42px;border-radius:50%;padding:2px;background:white;border:1px solid var(--line);box-shadow:0 4px 15px #1677d219;cursor:pointer}.language-control button img,#language-options img{border-radius:50%;object-fit:cover;width:100%;height:100%;transform:none;filter:none}#language-dialog{width:min(440px,calc(100% - 32px));border-radius:22px;padding:24px}.language-toolbar{display:flex;align-items:center;justify-content:space-between}.language-toolbar h2{margin:0;font-size:30px;letter-spacing:-1px}.language-toolbar .close-button{position:static;width:44px;height:44px;flex-shrink:0;border:0;border-radius:50%;font-size:27px;color:var(--muted);background:#edf8ff}#language-options{display:grid;gap:6px;margin-top:18px}#language-options button{display:flex;align-items:center;gap:15px;padding:10px 14px;border-radius:14px;border:1px solid transparent;background:transparent;color:var(--navy);font:inherit;text-align:left;cursor:pointer}#language-options button[aria-pressed=true],#language-options button:hover{background:#edf8ff;border-color:var(--line)}#language-options img{width:34px;height:34px;flex-shrink:0}.deck-page .deck-companion{width:135px;flex-shrink:0}.deck-page .deck-companion>img{display:block;width:120px;height:auto;margin:auto;filter:drop-shadow(0 16px 14px #1677d21f);transform:rotate(-4deg)}.deck-page .intro h1{margin-bottom:26px}
@media(max-width:760px){.language-toolbar h2{font-size:25px}.deck-page .deck-companion{width:94px}.deck-page .deck-companion>img{width:88px}.deck-page .deck-companion .language-control{gap:6px;margin-top:0;font-size:11px}.deck-page .deck-companion .language-control button{width:36px;height:36px;flex-shrink:0}}

/* Shared footer signature. */
.site-footer .made-in-italy,.deck-page footer .made-in-italy{display:block;margin:0 auto;text-align:center;font-size:13px;font-weight:700;line-height:1.6;color:var(--navy)}
