:root{color-scheme:dark;--gold:#dfb765;--light:#ffe2a2;--edge:#976326}*{box-sizing:border-box}body{margin:0;background:#03090b;color:#e7e0d2;font:16px Georgia,'Times New Roman',serif}a{color:var(--light);text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #fff0b9;outline-offset:3px}.collections{max-width:1024px;margin:auto;padding:12px 20px 20px;background:radial-gradient(ellipse at 50% 20%,#13202555,transparent 65%),#050d10;min-height:100vh}.ornate,.framed{position:relative;border:10px solid transparent;border-image:url('/fortuna/assets/branding/prize-border.svg') 54 fill / 27px / 0 stretch;background-color:#060e11}.framed{border-width:6px;border-image-source:url('/fortuna/assets/branding/ranking-border.svg');border-image-slice:15;border-image-width:16px}.hero{height:125px;display:flex;align-items:center;gap:20px;padding:0 18px;margin:0 -8px 14px}.hero small{letter-spacing:6px;color:var(--light)}h1,h2,h3,p{margin:0}h1{font-size:64px;font-weight:normal;line-height:1.1;color:var(--light);text-shadow:0 3px 2px #000}.spade{width:85px;height:85px;display:grid;place-items:center;border:4px double #dfb765;border-radius:50%;font-size:64px;color:#e9ba62;box-shadow:0 0 10px #c78a2833}.hero>img{height:125px;width:125px;object-fit:contain;margin-left:auto}.navigation{display:flex;align-items:center;margin-bottom:12px;min-height:42px}.navigation>*{padding:5px 38px;border-right:1px solid #82602b}.navigation>*:first-child{flex:1}.navigation [aria-current]{color:var(--light);box-shadow:inset 0 -5px 12px -8px #ffdc8e}.person{display:flex;align-items:center;gap:18px;min-height:94px;padding:0 22px;margin-bottom:10px}.avatar{height:82px;width:82px;flex:none;display:grid;place-items:center;border:3px double var(--gold);border-radius:50%;overflow:hidden;font-size:50px;color:var(--gold)}.avatar img{width:100%;height:100%;object-fit:cover}.person h2{font-size:28px;color:var(--light);font-weight:normal;margin-bottom:5px}.plaque{display:inline-block;border:1px solid var(--edge);padding:3px 9px;color:#e4d3b0}.action{display:inline-block;min-height:36px;padding:6px 24px;color:var(--light);border:4px double var(--edge);background:linear-gradient(120deg,#172025,#05090c);text-align:center;cursor:pointer;list-style:none}.action::-webkit-details-marker{display:none}.action b{margin-left:12px;font-size:24px;line-height:14px;font-weight:normal}.person>.action{margin-left:auto}.notice{font:12px/1.5 Arial,sans-serif;color:#b4b6b6;margin:8px 6px 10px}.notice a{text-decoration:underline;margin-left:6px}.filters{margin-bottom:12px;padding:0}.filters nav{display:flex;border-bottom:1px solid var(--edge)}.filters button{flex:1;border:0;border-right:1px solid #775328;background:transparent;color:#e7e0d2;padding:9px 5px;min-height:38px}.filters button[aria-pressed=true]{color:#fff1ca;background:linear-gradient(110deg,#5a3918,#96703b,#3b2916);box-shadow:inset 0 0 6px #ffdf91,0 0 12px #b67d3644}.legend{display:flex;justify-content:center;gap:48px;padding:10px}.legend>span{display:flex;align-items:center;gap:10px}.check,.ring{display:inline-flex;width:23px;height:23px;border:2px solid #e9aa40;border-radius:50%;align-items:center;justify-content:center;color:white;font-style:normal}.check{box-shadow:0 0 9px #e9aa4066;background:#6d4517}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{overflow:hidden;padding:0 9px 12px;text-align:center;background-image:url('/fortuna/assets/branding/prize-pattern.svg'),radial-gradient(ellipse at top,#48301888,transparent 70%);display:flex;flex-direction:column;align-items:center}.card[hidden]{display:none}.art{width:calc(100% + 18px);aspect-ratio:300/216;position:relative;overflow:hidden;margin-top:0}.art img{position:absolute;width:341.3333%;max-width:none;height:auto;left:-10%;top:-185.185%;pointer-events:none}.twenty .art img{left:-121.333%}.collector .art img{left:-231.666%}.peacock .art img{top:-352.31%}.double .art img{left:-121.333%;top:-352.31%}.roulette .art img{left:-231.666%;top:-352.31%}.state{position:absolute;right:10px;top:12px;background:linear-gradient(#17354b,#03111d);border:3px double #91b6d0;padding:2px 10px;box-shadow:0 0 8px #73b4dd33}.state.earned{border:3px double #ffe7a0;border-radius:50%;width:38px;height:38px;padding:0;font-size:28px;background:#5f3810;box-shadow:0 0 14px #e7a744}.card h2{font-size:25px;color:var(--light);line-height:1.12;margin:4px -5px 5px}.card>p{line-height:1.3;min-height:40px}.progress-area{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:51px;font-size:14px;width:100%;margin:3px 0 8px}.progress{border:1px solid #d79b32;border-radius:12px;height:17px;padding:2px;width:85%;background:#030708}.progress>span{display:block;height:100%;border-radius:10px;background:linear-gradient(#ffe79c,#b87822)}.suits{font-size:22px;color:var(--gold)}.suits em{color:#e65c37;font-style:normal}.card details{margin-top:auto;width:100%}.card details p{font:14px/1.5 Georgia,serif;padding:12px 2px;color:#d6ccb8}.future{margin-top:16px;text-align:center}.future>h2{display:flex;align-items:center;gap:18px;color:var(--light);font-size:27px;font-weight:normal;margin-bottom:12px}.future>h2:before,.future>h2:after{content:'';height:1px;background:var(--edge);flex:1}.future-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.future article{display:flex;align-items:center;min-height:150px;padding:10px;filter:grayscale(1);background-image:url('/fortuna/assets/branding/prize-pattern.svg')}.future article img{width:43%;height:125px;object-fit:contain}.future h3{font-weight:normal;font-size:23px;margin-bottom:18px}.future>p{margin:14px 0 22px;color:#b1b8bd}.badges{display:flex;align-items:center;justify-content:space-around;gap:16px;flex-wrap:wrap;padding:14px 20px}.badges h2{font-size:25px;color:var(--light);font-weight:normal}.slots{display:flex;gap:18px}.slots span{display:grid;place-items:center;width:58px;height:50px;border:1px dashed #c28a38;border-radius:7px;color:#c28a38;font-size:30px}.badges small{flex-basis:100%;text-align:center;color:#a9acac}footer{text-align:center;font-size:12px;color:#aaa;padding-top:20px}@media(max-width:720px){.collections{padding:10px}.hero{margin:0 0 12px;height:100px;gap:12px;padding:0 8px}.hero h1{font-size:42px}.hero small{font-size:10px;letter-spacing:3px}.hero>img{width:90px;height:90px}.spade{display:none}.navigation>*{padding:7px 12px}.person{padding:7px;gap:10px;flex-wrap:wrap}.person h2{font-size:23px}.person>.action{font-size:14px;padding:6px 10px}.avatar{width:65px;height:65px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.legend{gap:15px;font-size:13px}.future-grid{grid-template-columns:1fr}.card h2{font-size:22px}.filters button{font-size:14px}.badges{gap:12px}}@media(max-width:460px){.cards{grid-template-columns:1fr}.card{max-width:360px;width:100%;margin:auto}.hero h1{font-size:34px}.hero>img{width:76px;height:76px}.navigation{font-size:14px}.navigation>*{padding:7px 9px}.person>.action{margin:0 0 0 auto}.filters nav{flex-wrap:wrap}.filters button{flex:1 0 30%}.legend{gap:10px;font-size:12px}.legend>span{gap:4px}.future h3{font-size:21px}.notice{font-size:11px}.person .plaque{font-size:13px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
/* Keep source artwork, but hide the mockup's baked-in labels and status marks. */
.art:after{content:'';position:absolute;right:0;top:0;width:105px;height:56px;background:linear-gradient(135deg,#101a1e,#071216);mask-image:linear-gradient(to bottom,#000 85%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 85%,transparent)}
.collector .art{clip-path:inset(0 0 14px 0)}
.card h2{font-weight:normal;font-size:21px}
.card>p{min-height:24px}
.card .progress-area{min-height:44px}
.person h2{overflow-wrap:anywhere}
.hero .spade{border:0;box-shadow:none;background:url('/fortuna/assets/branding/collections-artwork.png') -51px -24px / 1024px 1536px no-repeat;width:90px;height:90px}
.brand-emblem{margin-left:auto;width:280px;height:135px;flex:none;background:url('/fortuna/assets/branding/collections-artwork.png') -680px 0 / 1024px 1536px no-repeat}
.hero h1{background:linear-gradient(#fff4c9 20%,#d29a45 65%,#ffe5a1 83%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 2px 8px #c27f1622}
@media(max-width:720px){.brand-emblem{width:175px;height:93.75px;background-size:640px 960px;background-position:-425px 0}.hero .spade{display:none}}
@media(max-width:460px){.brand-emblem{width:105px;height:56.25px;background-size:384px 576px;background-position:-255px 0}.hero{gap:4px}}
/* The emblem is a crop of the approved artwork. Exclude its baked-in frame;
   draw the header frame once, above the decorative artwork. */
.hero{isolation:isolate}
.hero:after{content:'';position:absolute;inset:-10px;pointer-events:none;z-index:2;border:10px solid transparent;border-image:url('/fortuna/assets/branding/prize-border.svg') 54 / 27px / 0 stretch}
.brand-emblem{clip-path:polygon(0 100%,0 85%,10% 75%,8% 26%,38% 10%,43% 10%,46% 0,49% 10%,53% 10%,85% 28%,82% 73%,96% 84%,96% 100%)}
/* Keep the complete emblem inside the header's inner frame. */
.hero .brand-emblem{height:150px;transform:translateY(-2px) scale(.78);transform-origin:center right}
@media(max-width:720px){.hero .brand-emblem{height:93.75px;transform:translateY(-2px) scale(.84)}}
@media(max-width:460px){.hero .brand-emblem{height:56.25px}}
.card .art:after{display:none}
.collections [hidden]{display:none!important}
.collection-link-icon{width:58px;height:40px;object-fit:contain;vertical-align:middle;margin:-3px 12px -3px -9px}
.lock-icon{display:inline-block;position:relative;width:15px;height:13px;margin:7px 5px 0;background:linear-gradient(110deg,#e0e4e7,#899098);border:1px solid #bec4c8;border-radius:2px;flex:none;box-shadow:0 1px 3px #0008}
.lock-icon:before{content:'';position:absolute;width:7px;height:9px;border:2px solid #c7cdd1;border-bottom:0;border-radius:6px 6px 0 0;left:2px;top:-9px}
.lock-icon:after{content:'';position:absolute;width:3px;height:5px;background:#273037;left:5px;top:3px;border-radius:2px}
.legend{flex-wrap:wrap;gap:8px 20px}
.filters .legend button{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:5px 10px;border:1px solid transparent;border-radius:4px;background:transparent;box-shadow:none;color:#ddd5c6}
.filters .legend button[aria-pressed=true]{border-color:#a47b3e;background:#8e642425;color:#ffe2a2;box-shadow:inset 0 -2px 8px #d8a74f15}
.filter-empty{text-align:center;color:#c9b99a;padding:30px 12px}
@media(max-width:460px){.filters .legend{gap:5px}.filters .legend button{flex:1 0 43%;font-size:13px}.collection-link-icon{width:43px;height:30px;margin-right:6px}}
.card .state.earned{width:24px;height:26px;right:14px;top:12px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#ffe4a1;font:700 25px/26px Arial,sans-serif;text-shadow:0 0 5px #f8c45f,0 0 12px #d79836}
.navigation .collection-section-tab{position:relative;background:linear-gradient(135deg,#253037,#11191e 65%,#30271b);color:#ffe0a2;box-shadow:inset 0 0 0 1px #b98a42,inset 0 0 0 3px #080d10;border-radius:4px}
.navigation .collection-section-tab[aria-current=page]{color:#261908;background:linear-gradient(110deg,#9b682c,#e2b86a 48%,#a87937);box-shadow:inset 0 0 0 1px #ffe3a0,inset 0 0 8px #fff0b6,0 0 10px #c1903933}
.collection-section-tab:before{content:'';position:absolute;left:6px;top:50%;transform:translateY(-50%);width:28px;height:24px;background:center/contain no-repeat;pointer-events:none}
.rankings-tab:before{background-image:url('/fortuna/assets/achievements/laurel-cup-140.png')}
.achievements-tab:before{background-image:url('/fortuna/assets/achievements/royal-fan-140.png')}
.navigation a.collection-section-tab:hover{background:linear-gradient(135deg,#3a382c,#20262a);box-shadow:inset 0 0 0 1px #e1b66d,0 0 10px #c99d4333}
@media(max-width:720px){.collection-section-tab:before{left:0;width:12px;height:16px}}
@media(max-width:460px){.collection-section-tab:before{left:-2px;width:10px;height:14px}}
.navigation .collection-return{background:linear-gradient(135deg,#222a2c,#10191b 70%,#292318);color:#edcf94;border-radius:4px;box-shadow:inset 0 0 0 1px #a77c3d,inset 0 0 0 3px #080d10;text-shadow:0 1px 2px #000}
.navigation .collection-return:hover{background:linear-gradient(135deg,#35372e,#1b2528);color:#ffe8b8;box-shadow:inset 0 0 0 1px #e1b66d,0 0 10px #c99d4333}
.future-description{font:14px/1.4 Georgia,serif;margin:12px 0;color:#c1c5c8}
.future-badge-preview{display:flex;align-items:center;justify-content:center;gap:8px;font:12px/1.3 Georgia,serif;color:#adb3b6}
.future article .future-badge-preview img{width:35px;height:24px;object-fit:contain}
.future article>div{min-width:0;flex:1}
.patron-art{width:100%;height:auto;aspect-ratio:280/192;object-fit:contain;filter:drop-shadow(0 0 12px #c8974544)}
.patron-level{color:#f3cc7c;margin:10px 0 6px;font-size:19px}
.patron-milestones{display:flex;gap:6px;list-style:none;padding:0;margin:4px 0 14px;width:100%;font-size:12px}
.patron-milestones li{flex:1;border:1px solid #645333;padding:6px 2px;color:#9b9b92;border-radius:4px}
.patron-milestones .reached{color:#ffe1a0;border-color:#c79a4c;background:#ad7b2826}
.palette-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:12px 0}
.palette-number{position:relative;display:grid;place-items:center;min-height:34px;border:1px solid #6e6654;border-radius:4px;background:#171b20;color:#9b9fa3;font:15px/1 Arial,sans-serif}
.palette-number.zero{background:#163b31}.palette-number.red{background:#4b2528}
.palette-number.collected{border-color:#efbf60;color:#fff0bc;box-shadow:0 0 6px #dca64455}
.palette-number i{position:absolute;right:2px;top:1px;color:#ffd37a;font-size:9px;font-style:normal}
.number-palette{background-color:#071316;background-image:radial-gradient(ellipse at 50% 25%,#a5752433,transparent 60%),url('/fortuna/assets/branding/prize-pattern.svg');box-shadow:inset 0 0 22px #0008}
.palette-artwork{position:relative;isolation:isolate;display:grid;place-items:center;width:calc(100% + 18px);aspect-ratio:300/216;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#a87a2c44,transparent 64%),radial-gradient(ellipse at 5% 60%,#16463855,transparent 60%),linear-gradient(135deg,#102025,#18170f 55%,#081215)}
.palette-artwork:before{content:'';position:absolute;inset:12px;border:1px solid #c69a4744;border-radius:50%;box-shadow:0 0 0 5px #c69a4710,0 0 22px #d1a44418;z-index:-1}
.palette-artwork:after{content:'';position:absolute;inset:0;z-index:-1;opacity:.35;background:url('/fortuna/assets/branding/prize-pattern.svg') center/100px 125px}
.palette-artwork img{display:block;width:96%;height:auto;max-height:100%;object-fit:contain;filter:drop-shadow(0 5px 8px #000b) drop-shadow(0 0 9px #d49b3933)}
.number-palette h2{margin-top:8px;color:#ffe2a2;text-shadow:0 1px 6px #c08c2533}

.badge-selection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:100%}.badge-selection label{min-width:0;font-size:14px}.badge-selection select{display:block;width:100%;min-width:0;margin-top:6px;padding:8px;background:#0b1418;color:#ffe2a2;border:1px solid #976326;border-radius:4px}.badge-selection button{grid-column:1/-1;justify-self:center}.badges{flex-wrap:wrap}.slots img{object-fit:contain}@media(max-width:600px){.badge-selection{grid-template-columns:1fr}}
