@font-face{font-family:Pirate;src:url('./pieces-of-eight.ttf') format('truetype');font-display:swap}
:root{--paper:#f4efdf;--surface:#fffdf6;--ink:#242d24;--muted:#626957;--green:#31482f;--gold:#a47c32;--line:#d9d7c6;--error:#a32b2b;--radius:12px;--space:24px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;min-height:44px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:var(--surface);transition:background .15s,transform .15s}button:hover{background:#e9eadc}button:active{transform:translateY(1px)}button:disabled{opacity:.6;cursor:not-allowed}a{color:var(--green);text-underline-offset:4px}a:hover{text-decoration:underline}a,button{outline-offset:4px}:focus-visible{outline:3px solid var(--gold)}h1,h2,h3,p{margin:0}h1{font-family:Pirate,Georgia,serif;font-size:44px;line-height:1.05;font-weight:400}h2{font:400 32px/1.12 Pirate,Georgia,serif}h3{font-size:19px;line-height:1.3}p{color:var(--muted)}img{max-width:100%;height:auto}svg{flex-shrink:0}small{display:block}.topbar{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 40px;background:var(--surface)}.brand{display:flex;align-items:center;gap:16px;color:var(--ink);text-decoration:none;font:400 27px/1.1 Pirate,Georgia,serif}.brand img{width:65px;height:65px;object-fit:contain}.brand small{font:12px/1.5 'Segoe UI',sans-serif;letter-spacing:2px;text-transform:uppercase;margin-top:5px}.top-actions{display:flex;align-items:center;gap:24px}.beta{font-size:13px;color:var(--muted)}.account{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600}.navigation{height:64px;display:flex;align-items:stretch;gap:28px;padding:0 40px;border-bottom:1px solid var(--line)}.navigation button{border:0;border-radius:0;background:none;border-bottom:3px solid transparent;padding:12px 6px;font-weight:600;color:var(--muted)}.navigation button.active{color:var(--green);border-bottom-color:var(--green)}main{max-width:1560px;margin:auto;padding:30px 40px 40px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.page-heading p:last-child{margin-top:8px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--green);margin-bottom:9px}.primary{background:var(--green);color:#fffdf1;border-color:var(--green);font-weight:600;padding:13px 20px;min-height:48px;text-decoration:none;border-radius:8px;display:inline-flex;gap:10px;align-items:center;justify-content:center}.primary:hover{background:#243a24;color:white}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.map-panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.map-tools{height:64px;display:flex;justify-content:space-between;align-items:center;padding:10px 17px;gap:8px}.map-tools span{display:flex;align-items:center;gap:6px;font-size:14px}.geo-wrap{position:relative;isolation:isolate}.geo{height:540px;width:100%;background:#e4e7dc;z-index:0}.map-loading{position:absolute;inset:0;display:grid;place-items:center;background:#e4e7dc}.map-warning{position:absolute;bottom:35px;left:10px;right:10px;z-index:600;background:var(--surface);padding:12px;font-size:13px}.map-foot{display:flex;justify-content:space-between;align-items:center;padding:6px 16px;font-size:13px;color:var(--muted)}.map-foot button{border:0;background:transparent}.card-pin{height:50px;width:38px;padding:3px;background:var(--surface);border:2px solid var(--green);border-radius:5px;position:relative;box-shadow:0 2px 5px #0003}.card-pin:after{content:"";position:absolute;bottom:-8px;left:10px;border:6px solid transparent;border-top-color:var(--green);border-bottom:0}.card-pin img{width:28px;height:40px;object-fit:cover}.map-aside{display:grid;gap:24px}.first-treasure{padding:22px;background:#e6e8d7;border-radius:12px}.card-stack{height:160px;position:relative;margin-bottom:15px}.card-stack img{position:absolute;left:50%;width:96px;top:10px;border-radius:5px;transform:translateX(-50%)}.card-stack img:first-child{transform:translateX(-115%) rotate(-13deg);top:19px}.card-stack img:last-child{transform:translateX(15%) rotate(13deg);top:19px}.card-stack img:nth-child(2){z-index:1}.first-treasure h2{font-size:34px;margin-bottom:10px}.first-treasure p{font-size:14px}.progress-label{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:18px 0 7px}progress{appearance:none;display:block;width:100%;height:8px;border:0;border-radius:4px;background:#d0d5c1;overflow:hidden}progress::-webkit-progress-bar{background:#d0d5c1}progress::-webkit-progress-value{background:var(--green)}progress::-moz-progress-bar{background:var(--green)}.fine{font-size:12px;line-height:1.5;margin-top:12px;color:var(--muted)}.text-link{display:inline-flex;gap:10px;align-items:center;border:0;padding:10px 0;background:transparent;color:var(--green);font-weight:600;text-decoration:none}.text-link:hover{background:transparent;text-decoration:underline}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.section-title h2{font-size:27px}.search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:0 12px}.search input{border:0;background:transparent;min-width:0;width:100%;outline-offset:0;padding:11px 0}.empty{padding:25px 0;font-size:15px}.point-row{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:12px 0;display:flex;align-items:center;text-align:left;width:100%;gap:12px}.point-row img{width:35px;height:49px;object-fit:cover;border-radius:3px}.point-row span{flex:1}.point-row strong{font-size:14px}.point-row small{font-size:12px;color:var(--muted)}.selected{padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.selected-card{display:block;width:160px;max-height:230px;object-fit:contain;margin:14px auto}.selected h3{margin:10px 0}.selected p{font-size:14px}.full{width:100%;margin-top:10px}.spot-photo{margin:20px 0 0}.spot-photo img{width:100%;max-height:220px;object-fit:cover;border-radius:8px}.spot-photo figcaption{font-size:13px}.collection-tools{display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.collection-tools .search{width:420px}.card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.card-grid article{min-width:0}.card-grid article>img{display:block;width:100%;aspect-ratio:63/88;object-fit:contain;object-position:bottom;background:#e1e3d4;border-radius:10px}.card-grid article>div{padding:12px 0}.card-grid h2{font:600 17px/1.3 'Segoe UI',Arial,sans-serif;margin:4px 0}.card-grid p{font-size:12px}.card-code{font-size:12px;color:var(--muted)}.find-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0}.find-row small{color:var(--muted)}.my-finds{max-width:760px;margin-top:32px}.reward-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.reward{display:flex;gap:22px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.reward.special{background:#e6e8d7}.reward-number{font:400 70px/1 Pirate,Georgia,serif;color:var(--gold)}.reward h2{font-size:36px;margin:0 0 16px}.reward button{margin-top:24px}.rules{max-width:800px;margin:35px 0}.rules p{margin:14px 0}.notice{display:flex;align-items:center;gap:12px;background:#ece4cf;padding:16px 20px;border-radius:8px;margin-bottom:24px;font-size:14px}.notice.error{background:#f7e6df;color:var(--error)}.notice button{margin-left:auto}.crew-intro{display:flex;align-items:center;gap:32px;max-width:850px;margin-bottom:35px}.crew-intro>img{width:155px;transform:rotate(-4deg);border-radius:6px}.crew-intro h2{font-size:38px;margin-bottom:12px}.album-title{margin-bottom:20px}.album-empty{border:1px dashed var(--line);border-radius:12px;text-align:center;background:var(--surface);padding:45px 25px}.album-empty svg{color:var(--gold)}.album-empty h3{margin:12px 0}.album-empty button{margin-top:20px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.photo-grid figure{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.photo-grid figure>img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo-grid figcaption{padding:18px}.photo-grid small{font-size:12px;color:var(--muted);margin:4px 0 10px}.photo-actions{display:flex;justify-content:space-between;gap:10px;margin-top:15px}.photo-actions button{font-size:13px}.footer{display:flex;justify-content:space-between;gap:20px;padding:22px 40px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:2000;padding:12px 15px 12px 20px;background:var(--green);color:white;border-radius:10px;display:flex;align-items:center;gap:15px;max-width:calc(100vw - 32px);width:max-content;box-shadow:0 5px 25px #0002}.toast button{background:none;border:0;color:white}.find-dialog{border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);padding:26px;width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto}.find-dialog::backdrop{background:#142015aa}.dialog-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:25px}.dialog-heading h2{font-size:34px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.form-fields,.location-fields{display:flex;flex-direction:column;gap:17px}label{font-size:14px;font-weight:600;display:block}label small{font-weight:400;font-size:12px;color:var(--muted);margin-top:6px}input,select,textarea{width:100%;min-height:44px;background:#fffdf8;border:1px solid #aeb49d;border-radius:7px;padding:10px;color:var(--ink)}label>input,label>select,label>textarea{margin-top:6px}textarea{resize:vertical;min-height:86px}.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400}.checkbox input{width:20px;min-height:20px;height:20px;margin-top:2px;flex-shrink:0;accent-color:var(--green)}.optional{font-weight:400;color:var(--muted)}.upload-preview{height:150px;object-fit:contain;background:var(--paper);border-radius:7px}.location-fields .geo{height:300px;border-radius:8px}.location-fields .section-title{margin:0}.location-fields .fine{margin:0}.coordinates{font-size:12px;font-variant-numeric:tabular-nums}.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.dialog-footer>span{font-size:12px;color:var(--muted);max-width:280px}.signin-message{text-align:center;padding:30px 20px;max-width:550px;margin:auto}.signin-message h3{margin:15px}.signin-message p{margin:18px 0}.moderate{margin-top:20px}.moderate img{width:160px}.moderate button{margin-right:10px}
@media(min-width:1600px){.geo{height:620px}}@media(max-width:1100px){.topbar{padding:12px 24px}.navigation{padding:0 24px}main{padding:24px}.map-layout{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.reward{padding:22px;gap:16px}.reward-number{font-size:55px}.reward h2{font-size:30px}.beta{display:none}.page-heading h1{font-size:38px}}
@media(max-width:760px){.topbar{height:76px;padding:8px 16px}.brand{font-size:21px;gap:10px}.brand img{width:47px;height:47px}.brand small{font-size:10px;letter-spacing:1px}.account{font-size:12px;max-width:100px;line-height:1.3}.navigation{position:fixed;bottom:0;left:0;right:0;z-index:1000;height:calc(68px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--line);border-bottom:0;gap:0;justify-content:space-around}.navigation button{flex:1;flex-direction:column;gap:2px;font-size:12px;border-bottom:0;border-top:3px solid transparent;padding:7px 0}.navigation button.active{border-top-color:var(--green);border-bottom:0}.navigation svg{width:22px;height:22px}main{padding:22px 16px 30px}.page-heading{align-items:stretch;flex-direction:column;gap:17px;margin-bottom:20px}.page-heading h1{font-size:35px}.page-heading p:last-child{font-size:14px}.page-heading .primary{width:100%}.eyebrow{font-size:11px;margin-bottom:6px}.map-layout{grid-template-columns:1fr;gap:22px}.map-tools{height:56px;padding:6px 10px}.map-tools span,.map-tools button{font-size:12px}.map-tools button{padding:8px}.geo{height:410px}.first-treasure{position:relative;padding:22px;padding-right:135px;min-height:260px}.card-stack{position:absolute;right:20px;top:35px;width:90px;height:135px}.card-stack img{width:70px}.first-treasure h2{font-size:29px}.first-treasure .progress-label{font-size:12px}.map-aside{gap:22px}.selected-card{width:150px}.collection-tools{gap:10px;flex-wrap:wrap}.collection-tools .search{width:100%}.collection-tools select{width:100%}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card-grid h2{font-size:15px}.card-grid p{font-size:11px}.card-code{font-size:11px}.reward-grid{grid-template-columns:1fr}.reward{padding:25px 20px}.reward-number{font-size:54px}.reward h2{font-size:31px}.reward p{font-size:14px}.notice{font-size:13px;padding:14px;align-items:flex-start}.crew-intro{gap:20px;align-items:flex-start}.crew-intro>img{width:90px}.crew-intro h2{font-size:28px}.crew-intro p{font-size:14px}.photo-grid{grid-template-columns:1fr}.footer{padding:20px 16px calc(90px + env(safe-area-inset-bottom));flex-direction:column;gap:8px}.toast{bottom:calc(84px + env(safe-area-inset-bottom));font-size:14px}.find-dialog{width:calc(100vw - 16px);padding:20px 16px;max-height:calc(100dvh - 16px)}.dialog-heading h2{font-size:29px}.form-grid{grid-template-columns:1fr;gap:25px}.dialog-footer{flex-direction:column;align-items:stretch;gap:12px}.dialog-footer .primary{width:100%}.location-fields .geo{height:260px}.dialog-footer>span{max-width:none}.rules h2{font-size:29px}.rules p{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


.first-treasure{overflow:hidden}.leaflet-container,.leaflet-control-attribution,.leaflet-bar a{font-family:'Segoe UI',Arial,sans-serif}


/* The original rulebook is the visual source: parchment, ink and brass. */
@font-face{font-family:Book;src:url('./libretto/Garamond.ttf') format('truetype');font-display:swap}
@font-face{font-family:Book;src:url('./libretto/Garamond-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--paper:#eddfc1;--surface:#f7ecd4;--ink:#302417;--muted:#65523b;--green:#453221;--gold:#8c621d;--line:#c5ad80;--radius:5px}
body{background:#35271e url('./libretto/copertina.webp') center/cover fixed;font-family:Book,Georgia,serif;font-size:19px;line-height:1.45;padding:16px}
.app-shell{max-width:1504px;margin:0 auto;background:var(--paper) url('./libretto/pergamena.webp') center top/100% auto;border:1px solid #a38045;min-height:calc(100dvh - 32px)}
.topbar{height:88px;background:transparent;border-bottom:3px double #a98c59;padding:12px 32px}
.brand{font-size:29px;gap:14px}.brand img{width:62px;height:62px;mix-blend-mode:multiply}.brand small{font:15px/1.3 Book,Georgia,serif;letter-spacing:.8px}.beta{font-size:16px}.account{font-size:17px}.top-actions{gap:32px}
.navigation{height:57px;padding:0 32px;gap:32px;border-color:var(--line);background:#e5d4b2}.navigation button{font-size:18px;min-width:100px;font-weight:700;color:#65523b}.navigation button.active{color:var(--ink);border-bottom-color:var(--gold)}
main{padding:26px 32px 36px}h1,.page-heading h1{font-size:38px;line-height:1.12}h2{font-size:30px}h3{font-family:Book,Georgia,serif;font-size:22px}.page-heading{margin-bottom:25px}.page-heading p:last-child{margin-top:9px;font-size:19px}.eyebrow{font-family:Book,Georgia,serif;font-size:16px;text-transform:none;letter-spacing:0;font-weight:700;margin-bottom:7px;color:var(--muted)}
button,.primary,input,select,textarea,.search{border-radius:4px}button{background:#f8eed9;border-color:#b49b70;font-size:18px}button:hover{background:#e4d2ac}.primary{background:#453221;color:#fff2d7;border-color:#453221;font-size:18px;padding:12px 20px}.primary:hover{background:#654724;color:#fff6e6}button:disabled{opacity:1;color:#796c56;background:#e9dec7;border-color:#c5b796}
.map-intro{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:32px;align-items:center}.map-intro .primary{margin-top:18px}.map-intro .intro-art{width:100%;max-height:160px;object-fit:contain;mix-blend-mode:multiply}.map-intro .eyebrow{margin-bottom:6px}
.map-layout{grid-template-columns:minmax(0,1fr) 320px;gap:24px}.map-panel{border:1px solid #a98c59;border-radius:4px;background:#f4e8cc;padding:7px}.map-tools{padding:4px 8px 10px;height:52px}.map-tools span,.map-tools button{font-size:16px}.map-tools button{background:transparent;border-color:#bba276}.geo{height:450px;background:#e0d5bc}.map-foot{padding:5px 8px 0;font-size:16px}.map-foot button{padding:6px}.leaflet-container,.leaflet-control-attribution,.leaflet-bar a{font-family:Book,Georgia,serif}.leaflet-control-attribution{font-size:13px!important}
.first-treasure{border:1px solid #c4aa79;border-radius:4px;padding:20px 22px;background:#ecdbb6 url('./libretto/pergamena.webp') center/cover;position:relative}.bounty-art{display:block;width:100%;height:94px;object-fit:contain;margin:0 0 14px;mix-blend-mode:multiply}.first-treasure h2{font-size:31px}.first-treasure p{font-size:17px}.first-treasure .fine{font-size:15px}.first-treasure .eyebrow{font-size:16px}.progress-label{font-size:16px;margin-top:15px}.text-link{font-size:18px}.map-aside{gap:22px}.nearby .section-title h2{font-size:28px}.search{background:#f8eed9;border-color:#bba276}.empty{font-size:17px;padding:18px 0}.fine{font-size:15px}.selected{background:#f7ead0;border-color:#bba276;border-radius:4px}.selected p{font-size:17px}.point-row{border-color:var(--line)}.point-row strong{font-size:18px}.point-row small{font-size:15px}
.card-grid{gap:28px}.card-grid article>img{background:transparent;border-radius:5px}.card-grid h2{font:700 21px/1.2 Book,Georgia,serif}.card-grid p,.card-code{font-size:15px}.collection-tools select{max-width:340px}.find-row small{font-size:16px}
.reward{border-radius:4px;border-color:#b49b70;background:#f4e8ce;position:relative;padding:26px;gap:18px}.reward.special{background:#e7d5b1}.reward-number{color:#7f581d}.reward h2{font-size:30px}.reward p{font-size:18px}.reward .eyebrow{font-size:16px}.reward-art{width:100%;height:120px;object-fit:contain;mix-blend-mode:multiply;margin-bottom:18px}.notice{background:#e7d6b2;border-radius:4px;font-size:17px;border-left:3px solid #9b753b}.rules h2{font-size:30px}.rules p{font-size:19px}
.crew-intro{max-width:none;gap:40px;padding:25px 0 30px;border-bottom:3px double #bba276}.crew-intro>img{width:42%;max-width:480px;transform:none;border-radius:0;mix-blend-mode:multiply}.crew-intro h2{font-size:32px}.crew-intro>div{max-width:580px}.album-empty{background:#f4e8cc;border:1px solid #c5ad80;border-radius:4px;padding:32px 25px}.album-empty p{font-size:18px}.photo-grid figure{background:#f7ead0;border-color:var(--line);border-radius:4px}.photo-grid small{font-size:15px}.photo-actions button{font-size:16px}
.footer{padding:22px 32px;font-size:16px;border-top:3px double #a98c59;background:#e5d4b2;align-items:center}.footer>span{max-width:650px}.footer small{font-size:14px;margin-top:5px}.footer a{white-space:nowrap}
.find-dialog{background:#f5e8cb url('./libretto/pergamena.webp') center/cover;border:2px solid #9e7b46;border-radius:6px}.find-dialog::backdrop{background:#241a10b8}.dialog-heading h2{font-size:30px}.signin-message h3{font-size:25px}.signin-message .fine{font-size:16px}label{font-size:18px}label small,.checkbox,.location-fields .fine,.dialog-footer>span{font-size:16px}input,select,textarea{background:#fff6e3;border-color:#aa9165;font-size:18px}.coordinates{font-size:16px}.toast{background:#453221;font-size:18px;border-radius:4px}.toast button{color:#fff2d7}
@media(max-width:1100px){body{padding:10px}.topbar,.navigation{padding-left:24px;padding-right:24px}main{padding:22px 24px 30px}.map-intro{grid-template-columns:minmax(0,1fr) 280px;gap:24px}.map-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px}.map-tools span,.map-tools button{font-size:14px}.map-tools button{padding:7px}.first-treasure{padding:18px}.first-treasure h2{font-size:29px}.bounty-art{height:80px}.reward{padding:22px;gap:12px}.reward h2{font-size:27px}.reward-number{font-size:46px}}
@media(max-width:760px){body{padding:0;background:var(--paper);font-size:18px}.app-shell{border:0;min-height:100dvh;background-size:760px auto}.topbar{height:76px;padding:10px 16px}.brand{font-size:22px;gap:10px}.brand img{width:44px;height:44px}.brand small{font-size:12px;letter-spacing:.3px}.account{font-size:15px;max-width:80px}.top-actions{gap:0}.navigation{height:calc(70px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#e7d6b4;border-top:3px double #967647;gap:0}.navigation button{min-width:0;font-size:15px;padding:6px 0;border-top:0}.navigation button.active{border-top:0;background:#d8bf91}.navigation svg{height:21px;width:21px}main{padding:20px 16px 28px}.page-heading{gap:16px;margin-bottom:22px}h1,.page-heading h1{font-size:31px}.page-heading p:last-child{font-size:18px}.eyebrow{font-size:15px}.map-intro{display:flex;flex-direction:column;gap:0;position:relative}.map-intro>div{width:100%}.map-intro .intro-art{order:-1;height:95px;max-width:330px;margin:0 auto 14px}.map-intro .primary{margin-top:16px;font-size:18px}.map-intro h1{font-size:32px}.map-layout{grid-template-columns:minmax(0,1fr);gap:22px}.map-panel{padding:5px}.map-tools{height:48px;padding:1px 4px 7px;gap:5px}.map-tools span,.map-tools button{font-size:14px}.geo{height:360px}.map-foot{font-size:15px;padding:5px 4px 0}.first-treasure{padding:20px;min-height:0}.bounty-art{width:100%;height:110px;margin-bottom:14px}.first-treasure h2{font-size:31px}.first-treasure .eyebrow,.first-treasure .fine{font-size:16px}.first-treasure p{font-size:18px}.first-treasure .progress-label{font-size:16px}.selected-card{width:150px}.collection-tools select{max-width:none}.card-grid{gap:18px 14px}.card-grid h2{font-size:19px}.card-grid p,.card-code{font-size:14px}.reward{padding:22px 18px;gap:14px}.reward-number{font-size:45px}.reward h2{font-size:27px}.reward .eyebrow{font-size:15px}.reward p{font-size:18px}.reward-art{height:90px}.notice{padding:14px;font-size:16px}.crew-intro{flex-direction:column;gap:20px;padding:0 0 25px}.crew-intro>img{width:100%;max-width:420px}.crew-intro h2{font-size:29px}.crew-intro p{font-size:18px}.rules h2{font-size:28px}.rules p{font-size:18px}.footer{padding:20px 16px calc(94px + env(safe-area-inset-bottom));font-size:15px;align-items:flex-start}.footer small{font-size:14px}.find-dialog{padding:20px 16px}.dialog-heading h2{font-size:27px}.toast{font-size:17px}}

.app-shell{background-repeat:no-repeat;background-size:cover;background-attachment:fixed}progress,progress::-webkit-progress-bar{background:#d1bc95}progress::-webkit-progress-value{background:#8c621d}progress::-moz-progress-bar{background:#8c621d}


.auth-fields{display:grid;gap:16px;max-width:420px;margin:auto}.auth-box{max-width:560px}.auth-box .notice{margin-top:12px}.auth-switch{display:flex;gap:12px;justify-content:center;margin:18px 0}.honeypot{position:absolute;left:-9999px;opacity:0}.data-info{max-width:750px;margin:30px auto;padding:30px;background:var(--surface)}.data-info p{margin:14px 0}.account{border:0;background:transparent}.auth-box .primary{width:100%}

/* Classifica: stessi materiali e colori della caccia. */
.leaderboard{max-width:1100px;margin:auto}.ranking-personal{padding:22px 0;margin-bottom:24px;border-top:2px solid var(--gold);border-bottom:1px solid var(--line)}.ranking-personal strong{font-size:24px}.ranking-personal p{margin:6px 0 16px}.ranking-table{width:100%;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums}.ranking-table caption{text-align:left;margin:0 0 12px;color:var(--muted)}.ranking-table th,.ranking-table td{padding:18px 14px;border-bottom:1px solid var(--line);text-align:right}.ranking-table th:first-child,.ranking-table td:first-child{width:74px;text-align:left}.ranking-table th:nth-child(2){width:52%;text-align:left;overflow-wrap:anywhere}.ranking-table thead th{font-size:16px;color:var(--muted)}.ranking-position,.ranking-score{font-size:27px;font-weight:700}.ranking-me{background:#e3d4b3}.ranking-you{font:700 14px 'Segoe UI',sans-serif;margin-left:12px}.ranking-table+button{margin-top:20px}.leaderboard .rules{margin-top:30px}.navigation{gap:20px}
@media(max-width:760px){.navigation button{font-size:12px;line-height:1.2}.navigation{gap:0}.ranking-table th,.ranking-table td{padding:14px 5px}.ranking-table th:first-child,.ranking-table td:first-child{width:44px}.ranking-table th:nth-child(2){width:42%}.ranking-table thead th{font-size:14px}.ranking-position,.ranking-score{font-size:23px}.ranking-personal strong{font-size:22px}.ranking-you{display:block;margin:3px 0 0}.ranking-table caption{font-size:16px}}
/* Existing Soppalco palette and type; the review uses a quiet ledger of real prizes.
   Desktop columns: 280px list + 24px gutter + remaining detail; mobile: one column. */
.review-entry{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;margin-bottom:20px;border-bottom:1px solid var(--line);font-size:14px}
.review-entry button,.prize-review button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer}
.prize-review button:disabled{opacity:.55;cursor:not-allowed}.prize-review :focus-visible,.review-entry button:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.prize-review{font-size:16px;line-height:1.5}.prize-review h1{font-size:32px}.prize-review h2{font-size:25px}.prize-review h3{font-size:21px}.prize-review h4{font:600 16px/1.5 'Segoe UI',Arial,sans-serif;margin:0}
.review-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin:20px 0}.review-heading p{margin:8px 0}.review-heading>button{flex-shrink:0}
.review-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px}.review-list,.review-detail{min-width:0;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:8px;align-self:start}.review-list h2{margin-bottom:16px}.review-list .checkbox{font-size:14px;margin-bottom:16px}
.prize-review .review-row{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;width:100%;border-width:0 0 1px;border-radius:0;padding:16px 8px;overflow-wrap:anywhere}.review-row span{font-size:14px}.prize-review .review-row[aria-pressed=true]{background:var(--paper);border-left:3px solid var(--ink)}
.review-detail p{margin:12px 0}.review-prize{font-variant-numeric:tabular-nums}.review-detail h3{margin-top:24px}.review-finds{margin-top:20px}.review-find{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.review-find>a{font-size:14px;display:flex;flex-direction:column;gap:8px}.review-find img{width:150px;height:180px;object-fit:contain;background:var(--paper);border:1px solid var(--line)}.review-find label{font-size:14px}.review-find-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.review-find-actions button{font-size:14px}.review-decision,.review-issue{margin-top:24px;padding-top:8px;border-top:1px solid var(--line)}.review-decision .checkbox{font-size:15px;margin:16px 0}.prize-review button.primary{background:var(--ink);color:var(--surface)}.review-issue p{font-size:14px}.review-issue label{font-size:15px}.review-detail .notice{display:block;overflow-wrap:anywhere}
@media(max-width:850px){.review-layout{grid-template-columns:1fr}.review-heading{flex-direction:column;gap:12px}.review-list,.review-detail{padding:16px}.review-find{grid-template-columns:110px minmax(0,1fr);gap:14px}.review-find img{width:110px;height:150px}.review-find-actions{grid-column:1/-1}.review-find-actions button{width:100%}.review-entry{flex-wrap:wrap}}
@media(max-width:430px){.review-find{grid-template-columns:1fr}.review-find>a{align-items:flex-start}.review-find img{width:100%;height:210px}.review-find>a{width:100%}.review-heading h1{font-size:30px}}

/* Game launch invitation: original cover and existing pirate typography. */
.home-showcase{min-width:0}.home-game .game-cover{display:block;width:100%;height:auto;object-fit:contain}
.launch-invite{padding:22px 24px;background:#263d35;color:#fff6e6;text-align:left}
.launch-invite h2{font-size:32px;line-height:1.1;margin:0 0 14px;color:inherit}
.page-heading .launch-invite p{font-size:17px;line-height:1.5;color:inherit;margin:0 0 14px}
.launch-invite .launch-follow{font-weight:600}.launch-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;background:#f0ce88;color:#221b13;padding:13px 16px;font-size:17px;font-weight:700;text-decoration:none;min-height:48px;width:100%;box-sizing:border-box}.launch-cta:hover{background:#ffe3ab}.launch-cta:focus-visible{outline:3px solid #fff6e6;outline-offset:4px}.launch-cta svg{flex-shrink:0}.launch-destination{display:block;font-size:14px;margin-top:10px;line-height:1.4}
@media(max-width:760px){.home-showcase{margin-top:26px}.launch-invite{padding:22px 20px}.launch-invite h2{font-size:30px}}

.map-panel .map-tools{display:flex;flex-wrap:wrap;gap:.5rem}.map-panel .map-tools span{margin-right:auto}.map-layout + .map-intro{margin-top:1.5rem}.address-search{display:grid;gap:.5rem;margin-block:1rem}.address-search button{white-space:normal;text-align:start}
.map-panel .map-tools{height:auto;min-height:3rem;padding-block:.55rem;position:relative;z-index:1}

/* Original vault pose 07, framed with CSS without changing the illustration. */
.find-sticker-callout{display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 20px 16px;background:#f5ead5}
.barbanana-lookout{display:block;position:relative;flex:0 0 108px;width:108px;height:118px;overflow:hidden;mix-blend-mode:multiply}
.barbanana-lookout img{position:absolute;left:-132px;top:0;width:384px!important;height:256px!important;max-width:none!important;object-fit:fill}


/* Scroll uses the existing rulebook parchment; character artwork remains unchanged. */
.score-scroll{position:relative;max-width:640px;margin:12px auto 30px;padding:16px 42px;background:#e6c990 url('./libretto/pergamena.webp') center/cover;text-align:center;border-block:2px solid #a17c46;border-radius:14px;color:#302417}
.score-scroll:before,.score-scroll:after{content:"";position:absolute;top:-7px;bottom:-7px;width:23px;background:#dcb981 url('./libretto/pergamena.webp') center/cover;border:2px solid #98713d;border-radius:12px}
.score-scroll:before{left:-6px}.score-scroll:after{right:-6px}.score-scroll-content>span{display:block;font-size:18px}.score-scroll strong{display:block;font-size:27px;font-weight:700}.score-scroll .score-number{font-size:52px;line-height:1.1;font-variant-numeric:tabular-nums;margin-right:8px}.score-scroll p{font-size:16px;margin-top:8px}
.find-sticker-callout{margin:0 0 28px;background:transparent;justify-content:flex-start;max-width:820px;padding:0 12px;gap:24px}
.pirate-speech{position:relative;margin:0;background:#fffdf5;border:2px solid #302417;border-radius:24px;padding:18px 24px;color:#302417;font-size:22px;line-height:1.35;min-width:0}
.pirate-speech:before{content:"";position:absolute;left:-12px;top:34px;width:18px;height:18px;background:inherit;border-left:2px solid #302417;border-bottom:2px solid #302417;transform:rotate(45deg)}
.barbanana-speech{max-width:560px}.barbanana-speech strong{font-weight:700}.map-guide{display:flex;align-items:center;gap:22px;padding:20px 18px 12px}.gajardo-portrait{position:relative;display:block;flex:0 0 120px;width:120px;height:82px;overflow:hidden;border-radius:12px}.gajardo-portrait img{position:absolute;max-width:none;width:140px;height:auto;left:-9px;top:-40px}.gajardo-speech{font-size:19px;padding:15px 18px}.map-primary-actions{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;padding:8px 18px 18px}.map-panel .report-sticker{background:#263d35;color:#fff6e6;font-size:22px;font-weight:700;min-height:58px;flex:1;padding:14px 20px;border:0;border-radius:6px}.map-panel .report-sticker:hover{background:#182b24}.map-panel .locate-stickers{font-size:18px;min-height:58px;background:#fff8e9;border:2px solid #a17c46;border-radius:6px}.map-panel .map-tools{min-height:36px;padding-block:0}.map-primary-actions button:focus-visible{outline:3px solid #263d35;outline-offset:4px}
@media(max-width:760px){.score-scroll{margin:6px 8px 26px;padding:14px 22px}.score-scroll strong{font-size:22px}.score-scroll .score-number{font-size:44px}.find-sticker-callout{gap:16px;padding:0;margin-bottom:24px}.barbanana-lookout{flex-basis:76px;width:76px;height:84px}.barbanana-lookout img{left:-94px;width:273px!important;height:182px!important}.pirate-speech{font-size:18px;padding:14px 16px;border-radius:20px}.map-guide{gap:16px;padding:14px 8px 10px;align-items:center}.gajardo-portrait{flex-basis:70px;width:70px;height:76px}.gajardo-portrait img{width:132px;left:-30px;top:-40px}.gajardo-speech{font-size:17px;padding:12px}.map-primary-actions{padding:8px 8px 14px;gap:10px}.map-panel .report-sticker{flex-basis:100%;font-size:21px;padding:13px 12px}.map-panel .locate-stickers{width:100%;min-height:48px;font-size:17px}}

/* Booklet reference: Garamond body, Pieces of Eight headings, black ink on parchment. */
@font-face{font-family:Book;src:url('./libretto/Garamond-Italic.ttf') format('truetype');font-style:italic;font-display:swap}
.map-guide{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center;padding:24px 22px 18px;background:transparent}
.map-guide .gajardo-lineart{display:block;width:150px;height:160px;object-fit:contain;mix-blend-mode:multiply}
.map-guide .map-guide-book h2{font:400 29px/1.12 Pirate,Georgia,serif;color:#000;margin:0 0 10px}
.map-guide .map-guide-book p{font:400 21px/1.25 Book,Garamond,serif;color:#000;margin:0;max-width:560px}
@media(max-width:760px){.map-guide{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:20px 10px 16px}.map-guide .gajardo-lineart{width:88px;height:130px}.map-guide .map-guide-book h2{font-size:23px;margin-bottom:8px}.map-guide .map-guide-book p{font-size:18px;line-height:1.25}}
.sticker-review{max-width:1000px;margin:0 auto;padding:24px;background:#fff;color:#172724;font-family:Arial,sans-serif;border-radius:4px;font-size:16px;line-height:1.5}
.sticker-review h1,.sticker-review h2{font-family:inherit;color:#172724;font-size:24px;line-height:1.2;margin:0 0 12px;letter-spacing:normal;scroll-margin-top:16px}.sticker-review h2{font-size:22px}.sticker-review p{margin:10px 0 18px}.sticker-heading{display:flex;justify-content:space-between;align-items:start;gap:16px}.sticker-heading p{color:#43564f}.sticker-review button,.sticker-review select,.sticker-review input{font:inherit;min-height:48px;border-radius:4px;box-shadow:none;max-width:100%}.sticker-review button{border:1px solid #cbd5d0;background:#eef2ef;color:#172724;padding:10px 16px;cursor:pointer;transition:background-color .15s}.sticker-review button:hover{background:#dce6df}.sticker-review button:disabled{opacity:.55;cursor:not-allowed}.sticker-review :focus-visible{outline:3px solid #286c54;outline-offset:3px}.sticker-review label{display:grid;gap:6px;font-weight:600}.sticker-review input,.sticker-review select{padding:10px 12px;border:1px solid #7a8981;background:white;color:#172724;width:100%}.sticker-filters{display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:end;margin:12px 0}.sticker-filters form{display:flex;align-items:end;gap:8px}.sticker-filters form label{flex:1;min-width:0}.sticker-explainer{font-size:14px;color:#43564f}.sticker-row{display:flex;width:100%;gap:16px;text-align:left;align-items:center!important;border:0!important;border-bottom:1px solid #e1e7e2!important;background:transparent!important;padding:16px 0!important}.sticker-row:hover{background:#f2f5f2!important}.sticker-row img{width:70px;height:84px;object-fit:cover;background:#edf1ed;border-radius:3px;flex-shrink:0}.sticker-row>span:nth-child(2){display:grid;gap:4px;flex:1;min-width:0;overflow-wrap:anywhere}.sticker-row strong{font-size:17px}.sticker-row small{font-size:14px;color:#43564f}.sticker-open{font-size:14px}.sticker-pagination{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:20px}.sticker-pagination div{display:flex;gap:8px}.sticker-detail>button{margin-bottom:20px}.sticker-inspection{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.sticker-photo a{display:block;color:#172724;text-align:center;background:#edf1ed;padding:12px}.sticker-photo img{width:100%;max-height:480px;object-fit:contain;display:block;margin-bottom:10px}.sticker-state{font-weight:bold}.sticker-fields blockquote{margin:16px 0;padding:12px;background:#edf1ed;overflow-wrap:anywhere}.sticker-save{display:grid;gap:12px;margin-top:24px}.sticker-review .sticker-primary{background:#172f27;color:#fff;border-color:#172f27}.sticker-review .sticker-primary:hover{background:#244c3e}.sticker-notice,.sticker-success{padding:16px;background:#f4ece8;color:#502c22}.sticker-success{background:#e4f0e9;color:#234b36}.sticker-notice button{margin:4px}.sticker-empty{padding:32px 0}.review-entry{flex-wrap:wrap}
@media(max-width:640px){.sticker-review{padding:18px 16px}.sticker-heading{display:block}.sticker-heading>button{margin-bottom:16px}.sticker-filters{grid-template-columns:1fr;gap:12px}.sticker-row{gap:12px}.sticker-row img{width:56px;height:72px}.sticker-open{display:none}.sticker-inspection{grid-template-columns:1fr;gap:16px}.sticker-photo img{max-height:340px}.sticker-pagination{display:block}.sticker-pagination div{margin-top:12px}.sticker-review h1{font-size:24px}.sticker-review h2{font-size:22px}.review-entry>span{width:100%}.review-entry button{min-height:44px}.sticker-save{position:sticky;bottom:10px;background:#fff;padding:12px 0}.sticker-fields{min-width:0}}
@media(prefers-reduced-motion:reduce){.sticker-review *{transition:none!important}}

.sticker-search summary{cursor:pointer;min-height:48px;padding:12px 0;text-decoration:underline}.sticker-search form{margin-top:12px}.sticker-filters{align-items:start}.sticker-explainer{margin-top:24px!important}.sticker-review p{color:inherit}
@media(max-width:640px){.sticker-heading{display:flex;gap:8px}.sticker-heading>div{min-width:0;flex:1}.sticker-heading>button{font-size:14px;padding:8px;max-width:92px}.sticker-heading h1{font-size:22px}.sticker-heading p{font-size:14px}.sticker-filters{grid-template-columns:1fr;gap:0}.sticker-filters>label{display:flex;align-items:center;gap:12px}.sticker-filters>label select{flex:1;margin-top:0;min-width:0}.sticker-search summary{padding:10px 0}.sticker-save{bottom:calc(78px + env(safe-area-inset-bottom))}.sticker-review{padding:16px}.sticker-heading h1{overflow-wrap:normal}}
