:root{--forest:#173e32;--forest2:#0f3027;--terracotta:#b85f43;--cream:#f7f0e3;--paper:#fffaf0;--gold:#c6a65d;--ink:#24332d;--muted:#6f776f;--line:#ded4c2;--white:#fff;--shadow:0 14px 36px #232c261a}*{box-sizing:border-box}html,body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.shell{max-width:760px;margin:auto}.page{padding:24px 18px 100px}h1,h2,h3{letter-spacing:-.025em;margin:0 0 8px;font-family:Georgia,Times New Roman,serif}h1{font-size:clamp(2rem,8vw,3.4rem)}h2{font-size:1.55rem}.sectionLead,.page p{color:var(--muted)}.eyebrow{letter-spacing:.18em;color:var(--terracotta);font-size:.72rem;font-weight:800}.brand{justify-content:center;align-items:center;gap:14px;display:flex}.brand img{object-fit:cover;box-shadow:var(--shadow);border-radius:24px}.brand strong{font:700 1.6rem Georgia,serif}.brand span{letter-spacing:.16em;color:var(--muted);margin-top:5px;font-size:.62rem;display:block}.brandCompact{gap:8px}.brandCompact img{border-radius:12px}.brandCompact strong{font-size:1rem}.welcome{place-items:center;min-height:100vh;padding:22px;display:grid}.welcomeCard{background:var(--paper);border:1px solid var(--line);width:100%;max-width:520px;box-shadow:var(--shadow);text-align:center;border-radius:30px;padding:28px 22px;position:relative}.lang{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:.75rem;position:absolute;top:18px;right:22px}.welcomeCard .eyebrow{margin-top:24px}.welcome h1{margin:15px 0}.welcome h1 em{color:var(--terracotta);font-weight:400}.welcome p{color:var(--muted);line-height:1.6}.promiseGrid{grid-template-columns:1fr 1fr;gap:10px;margin:22px 0;display:grid}.promiseGrid div{background:#fbf6eb;border:1px solid #eadfcd;border-radius:16px;justify-items:center;gap:5px;padding:14px 8px;display:grid}.promiseGrid svg{color:var(--forest);width:20px}.promiseGrid b{letter-spacing:.08em;font-size:.72rem}.promiseGrid span{color:var(--muted);font-size:.76rem}.primaryBtn,.secondaryBtn{border-radius:14px;justify-content:center;align-items:center;min-height:52px;margin-top:10px;font-weight:800;display:flex}.primaryBtn{background:var(--forest);color:#fff}.secondaryBtn{border:1px solid var(--forest);color:var(--forest);background:0 0}.adminLink{color:#836a2d;justify-content:center;align-items:center;gap:8px;margin:18px 0;font-size:.85rem;display:flex}.welcomeFooter{border-top:1px solid var(--line);color:var(--muted);margin-top:24px;padding-top:22px;font-size:.8rem}.welcomeFooter strong{color:var(--forest);letter-spacing:.1em;margin-top:8px;display:block}.appHeader{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f0e3f0;border-bottom:1px solid #ded4c2cc;align-items:center;gap:10px;height:64px;padding:8px 14px;display:flex;position:sticky;top:0}.appHeader .brand{margin:auto 0}.appHeader .headerPlace{color:var(--muted);margin-left:auto;font-size:.72rem}.iconBtn{width:40px;height:40px;color:var(--forest);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.bottomNav{border-top:1px solid var(--line);z-index:50;background:#fffaf0fa;grid-template-columns:repeat(5,1fr);width:min(100%,760px);height:74px;padding:8px 8px 6px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottomNav a{color:#59665f;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.66rem;display:flex}.bottomNav svg{width:20px}.bottomNav .publishFab{background:var(--terracotta);color:#fff;justify-self:center;align-self:-18px;border-radius:50%;width:58px;height:58px;box-shadow:0 8px 20px #b85f434d}.bottomNav .publishFab span{display:none}.heroCopy{padding-top:10px}.searchBox{border:1px solid var(--line);color:#8a908c;background:#fff;border-radius:16px;align-items:center;gap:9px;margin:18px 0;padding:14px;display:flex;box-shadow:0 5px 14px #00000008}.chips{gap:8px;padding:2px 0 16px;display:flex;overflow:auto}.chips button,.rankingTabs button{white-space:nowrap;border:1px solid var(--line);color:var(--ink);background:#fffaf2;border-radius:999px;padding:10px 14px}.moodGrid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.moodGrid a{border:1px solid var(--line);background:#fffaf2;border-radius:18px;flex-direction:column;gap:12px;min-height:96px;padding:14px;display:flex}.moodGrid svg{color:var(--terracotta)}.choiceCard{background:var(--forest);color:#fff;box-shadow:var(--shadow);border-radius:24px;align-items:center;gap:16px;margin:22px 0;padding:20px;display:flex}.choiceCard small{letter-spacing:.14em;color:#d9c789}.choiceCard h3{margin:5px 0;font-size:1.25rem}.choiceCard p{color:#dce7e2;margin:0}.choiceCard>span{margin-left:auto;font-size:1.6rem}.sectionTitle{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.sectionTitle>a{color:var(--terracotta);font-size:.85rem;font-weight:800}.stats,.adminStats{grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0;display:grid}.stats div,.adminStats div{border:1px solid var(--line);text-align:center;background:#fffaf2;border-radius:16px;padding:15px}.stats strong,.adminStats b{color:var(--forest);font:700 1.6rem Georgia,serif;display:block}.stats span,.adminStats span{color:var(--muted);font-size:.72rem}.emptyState{text-align:center;color:var(--muted);border:1px dashed #c7bda9;border-radius:18px;flex-direction:column;align-items:center;gap:8px;padding:28px 18px;display:flex}.emptyState b{color:var(--ink)}.textAction{align-items:center;gap:6px;display:flex}.notice{color:#6f654f;background:#eee4cf;border-radius:14px;margin:4px 0 14px;padding:12px 14px;font-size:.78rem}.restaurantList{gap:9px;display:grid}.restaurantCompact{border:1px solid var(--line);background:#fffaf2;border-radius:16px;align-items:center;gap:11px;padding:9px;display:flex}.restaurantThumb{color:#fff;background:linear-gradient(145deg,#294e40,#b85f43);border-radius:12px;flex:none;place-items:center;width:62px;height:62px;font:700 1.6rem Georgia,serif;display:grid}.restaurantMain{flex-direction:column;gap:3px;min-width:0;display:flex}.restaurantMain>strong{font-family:Georgia,serif}.restaurantMain>span,.restaurantMain small{color:var(--muted);font-size:.72rem}.metaLine{color:#a17a22;align-items:center;gap:4px;font-size:.76rem;display:flex}.bookmark{color:var(--forest);background:0 0;border:0;margin-left:auto}.rankingTabs{gap:8px;margin:18px 0;display:flex;overflow:auto}.passportPage{max-width:760px;margin:auto;padding-bottom:90px}.passportCover{background:var(--forest2);padding:20px}.passportInner{border:2px solid var(--gold);box-shadow:inset 0 0 0 4px var(--forest2),inset 0 0 0 5px #c6a65d73;color:#f6e8bd;text-align:center;background:repeating-linear-gradient(90deg,#ffffff05 0 2px,#0000 2px 7px);border-radius:16px;padding:28px 22px}.passportInner>span{letter-spacing:.18em;font:700 1rem Georgia,serif}.passportInner>small{color:#e5d7aa;letter-spacing:.15em;margin:10px auto;display:block}.passportSeal{border:2px solid var(--gold);width:104px;height:104px;box-shadow:inset 0 0 0 7px var(--forest2),inset 0 0 0 9px var(--gold);border-radius:50%;place-items:center;margin:20px auto;font:700 2rem Georgia,serif;display:grid}.passportInner h1{letter-spacing:.08em;font-size:2rem}.passportInner>p{letter-spacing:.13em;font-size:.72rem}.passportFacts,.passportPerson{text-align:left;border-top:1px solid #c6a65d80;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;padding-top:16px;display:grid}.passportFacts small,.passportPerson small{color:#c9b982;font-size:.62rem;display:block}.passportFacts b{font-size:.72rem}.passportPerson{grid-template-columns:64px 1fr;align-items:center}.avatar{border:1px solid var(--gold);place-items:center;width:58px;height:70px;font-size:2rem;display:grid}.passportPerson h2{margin:4px 0}.passportPerson p{color:#d9cfae;margin:0;font-style:italic}.passportStats{border-top:1px solid #c6a65d80;grid-template-columns:repeat(3,1fr);margin-top:18px;padding-top:16px;display:grid}.passportStats b{font:700 1.4rem Georgia,serif;display:block}.passportStats span{font-size:.62rem}.levelBar{text-align:left;margin-top:20px;font-size:.72rem}.levelBar>span:nth-child(2){float:right}.levelBar i{background:#31584b;border-radius:999px;height:6px;margin-top:8px;display:block;overflow:hidden}.levelBar b{background:var(--gold);height:100%;display:block}.passportPaper{background:#fbf3df;min-height:500px;padding:32px 20px}.passportPaper h2{font-size:2rem}.stampGrid{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 32px;display:grid}.stamp{aspect-ratio:1;opacity:.55;border:2px dashed #8f8d7f;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;transform:rotate(-3deg)}.stamp:nth-child(2n){transform:rotate(4deg)}.stamp span{font-size:1.6rem}.stamp b{font:700 .8rem Georgia,serif}.stamp small{text-transform:uppercase;font-size:.58rem}.challenge{border-top:1px solid #d9ccb0;gap:5px;padding:14px 0;display:grid}.challenge span{color:var(--muted);font-size:.8rem}.challenge progress{width:100%}.adminScreen{background:var(--forest2);color:#fff;place-items:center;min-height:100vh;padding:24px;display:grid}.adminCard{background:#173e32;border:1px solid #49675d;border-radius:22px;gap:12px;width:min(420px,100%);padding:30px;display:grid}.adminCard small{letter-spacing:.16em;color:#d7c58c}.adminCard p{color:#c5d2cd}.adminCard label{gap:6px;font-size:.8rem;display:grid}.adminCard input{color:#fff;background:#0f3027;border:1px solid #567166;border-radius:10px;padding:13px}.adminButton{background:var(--gold);color:#102b23;border:0;border-radius:11px;padding:14px;font-weight:800}.adminCard a{color:#d8e2de;margin-top:8px;font-size:.8rem}.adminDashboard{background:#f1efe8;grid-template-columns:230px 1fr;min-height:100vh;display:grid}.adminDashboard aside{background:var(--forest2);color:#fff;padding:24px}.adminDashboard aside>span{letter-spacing:.14em;color:#c6a65d;font-size:.65rem}.adminDashboard nav{gap:8px;margin-top:30px;display:grid}.adminDashboard nav a{color:#d3dfda;border-radius:8px;gap:9px;padding:10px;display:flex}.adminDashboard section{padding:34px}.adminDashboard h1{font-size:2.6rem}@media (max-width:680px){.adminDashboard{grid-template-columns:1fr}.adminDashboard aside{display:none}.adminDashboard section{padding:24px 16px}.headerPlace{display:none}}@media (prefers-reduced-motion:no-preference){a,button{transition:transform .2s,opacity .2s,background .2s}.primaryBtn:hover,.choiceCard:hover{transform:translateY(-1px)}}.authForm{gap:12px;display:grid}.formError{color:#8c3527;background:#fff0ed;border:1px solid #e8b7ad;border-radius:12px;margin:10px 0;padding:12px 14px;font-size:.9rem}.btn:disabled{opacity:.6;cursor:not-allowed}.selectedAction{border-color:var(--forest);color:var(--forest);background:#e9f0ea}.dangerSelected{color:#fff!important;background:#8d3429!important;border:1px solid #8d3429!important}.ratingSeals{align-items:center;gap:8px;display:flex}.ratingSeals button{color:#c7bda9;cursor:pointer;background:0 0;border:0;border-radius:14px;width:48px;height:48px;padding:2px}.ratingSealIcon{width:100%;height:100%;display:block;overflow:visible}.ratingSealIcon .sealPin{fill:#0000;stroke:currentColor;stroke-width:2.3px}.ratingSealIcon .sealFork{fill:currentColor}.ratingSeals button.on{color:#c99b36}.ratingSeals button.on .sealPin{fill:#d6a83f;stroke:#b98620}.ratingSeals button.on .sealFork{fill:#fff8e9}.ratingSeals button:active{transform:scale(.96)}textarea{border:1px solid var(--line);background:#fff;border-radius:14px;width:100%;min-height:120px;padding:14px}.restaurantHero{background:linear-gradient(135deg,#d8dfd5,#ead9c5);place-items:center;height:280px;display:grid;position:relative}.heroPlaceholder{background:var(--paper);width:120px;height:120px;color:var(--forest);box-shadow:var(--shadow);border-radius:50%;place-items:center;font:700 4rem Georgia,serif;display:grid}.backPill{z-index:2;background:#fff;border-radius:999px;padding:10px 14px;position:absolute;top:20px;left:20px}.metricsLine{color:var(--muted);flex-wrap:wrap;gap:12px;margin:14px 0 18px;font-size:.9rem;display:flex}.returnHero{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;margin:14px 0;padding:18px}.returnNumber{color:var(--forest);font:700 3.6rem Georgia,serif}.infoCard{background:var(--paper);border:1px solid var(--line);border-radius:18px;gap:16px;padding:16px;display:grid}.infoCard div{gap:4px;display:grid}.infoCard small{letter-spacing:.12em;color:var(--muted);font-size:.68rem}.reviewScreen{max-width:620px}.reviewScreen .field{margin-bottom:18px}.map-toolbar{grid-template-columns:1fr auto;gap:8px;display:grid}.secondary-btn{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:14px;padding:0 12px;font-weight:700}.real-map-shell{border:1px solid var(--line);background:#e8e5dc;border-radius:22px;height:440px;margin-top:14px;overflow:hidden}.real-map{z-index:0;width:100%;height:100%}.map-empty{text-align:center;height:100%;min-height:240px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:28px;display:flex}.dc-map-pin{border:2px solid var(--green);background:#fff;border-radius:50% 50% 50% 4px;place-items:center;transform:rotate(-45deg);box-shadow:0 4px 10px #0003;display:grid!important}.dc-map-pin span{font-size:17px;transform:rotate(45deg)}.map-popup{gap:4px;min-width:150px;display:grid}.map-popup strong{color:var(--green);font-family:Georgia,serif;font-size:16px}.map-popup span{color:#666}.map-popup a{color:var(--terracotta);font-weight:700;text-decoration:none}.map-note{margin:8px 2px 0;font-size:12px}.map-carousel{scroll-snap-type:x mandatory;gap:10px;padding:12px 1px 4px;display:flex;overflow:auto}.map-card{border:1px solid var(--line);min-width:220px;color:var(--ink);scroll-snap-align:start;background:#fff;border-radius:16px;gap:4px;padding:13px;text-decoration:none;display:grid}.map-card strong{color:var(--green);font-family:Georgia,serif;font-size:17px}.map-card span,.map-card small{color:var(--muted)}@media (max-width:520px){.map-toolbar{grid-template-columns:1fr}.secondary-btn{min-height:42px}.real-map-shell{height:390px}}.challengeList{gap:12px;margin-top:20px;display:grid}.challengeCard{background:var(--paper);border:1px solid var(--line);border-radius:18px;grid-template-columns:54px 1fr;align-items:center;gap:14px;padding:15px;display:grid}.challengeIcon{border:1px dashed #9c8d6d;border-radius:50%;place-items:center;width:52px;height:52px;font-size:24px;display:grid;transform:rotate(-4deg)}.challengeCard>div:last-child{gap:6px;display:grid}.challengeCard span,.challengeCard small{color:var(--muted);font-size:.75rem}.challengeCard progress{width:100%;accent-color:var(--forest)}.challengeDone{border-color:var(--gold);background:#fff8df}.challengeDone .challengeIcon{border:2px solid var(--gold);color:#7d6428}.adminListPage{background:#f4f1e8;max-width:1000px;min-height:100vh;margin:auto;padding:32px}.adminListPage>a{color:var(--forest);font-weight:800}.adminListPage h1{margin-top:8px}.adminTable{gap:10px;margin-top:20px;display:grid}.adminTable article{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.adminTable h3{margin:0}.adminTable p{margin:5px 0}.adminTable small{color:var(--muted);margin-top:3px;display:block}.adminActions{gap:8px;display:flex}.adminActions button{background:var(--forest);color:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:800}.adminActions .dangerBtn{background:#8d3429}@media (max-width:640px){.adminListPage{padding:22px 14px}.adminTable article{flex-direction:column;align-items:flex-start}.adminActions{width:100%}.adminActions form{flex:1}.adminActions button{width:100%}}.photoSelection{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.photoSelection span{background:#f3ecdf;border-radius:999px;padding:6px 8px;font-size:12px}.approvedGallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.approvedGallery img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:16px;width:100%}.admin-form{border:1px solid var(--line);background:#fff;border-radius:18px;gap:14px;max-width:720px;margin-top:22px;padding:18px;display:grid}.admin-form label{color:var(--forest);gap:6px;font-size:.8rem;font-weight:800;display:grid}.admin-form input,.admin-form select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fffaf2;border-radius:12px;padding:12px}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.primary-btn{background:var(--forest);color:#fff;border:0;border-radius:12px;padding:13px 16px;font-weight:800}.danger-btn{color:#8d3429;background:0 0;border:1px solid #8d3429;border-radius:12px;padding:12px 16px;font-weight:800}.adminTable>a{display:block}.adminTable>a article{width:100%}.adminTable>a:hover article{border-color:#b9ab91}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.foodieHero{align-items:center;gap:18px;padding:24px 0 10px;display:flex}.foodieAvatar{background:var(--forest);width:76px;height:76px;color:var(--cream);border:3px double var(--gold);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:34px;display:grid}.foodieHero h1{margin:4px 0}.foodieHero p{color:var(--muted);margin:0}.foodieReview{gap:10px;margin-bottom:10px;display:grid}.foodieReview p{border-top:1px solid #00000012;margin:0;padding-top:8px}.chipRow{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--paper,#fffaf0);border:1px solid #00000018;border-radius:999px;align-items:center;min-height:36px;padding:7px 12px;display:inline-flex}.foodieStrip{grid-auto-columns:minmax(150px,1fr);grid-auto-flow:column;gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.foodieMini{background:var(--paper,#fffaf0);color:inherit;border:1px solid #00000014;border-radius:18px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;text-decoration:none;display:flex}.foodieMini small{color:var(--muted)}.foodieAvatarSmall{border-width:2px;width:44px;height:44px;font-size:20px}.moderationForm{width:100%;margin-top:14px}.moderationGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.moderationGrid label{flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;display:flex}.moderationGrid input,.moderationGrid textarea{background:#fff;border:1px solid #d8d1c5;border-radius:10px;width:100%;padding:10px}.moderationNote{grid-column:1/-1}.moderationNote textarea{resize:vertical;min-height:76px}.formMessage{margin-top:8px;font-size:.86rem}.challengeDone{outline:1px solid #af8c3673}@media (max-width:700px){.moderationGrid{grid-template-columns:1fr}}.adminLoginForm{gap:14px;width:100%;display:grid}.adminLoginForm label{text-align:left;gap:6px;display:grid}.adminLoginForm input{width:100%}.adminLogout{color:#f3d9d5;cursor:pointer;background:0 0;border:1px solid #ba6b62;border-radius:10px;width:100%;margin-top:auto;padding:10px 12px}.progressCard{border:1px solid var(--line);background:var(--paper);border-radius:16px;margin:14px 0;padding:14px}.progressCard>div:first-child{justify-content:space-between;gap:12px;display:flex}.progressTrack{background:#ded8ca;border-radius:999px;height:8px;margin:10px 0;overflow:hidden}.progressTrack>div{background:var(--forest);border-radius:999px;height:100%}.pickPageCard{background:var(--paper);border:1px solid var(--line);max-width:620px;box-shadow:var(--shadow);text-align:center;border-radius:24px;margin:24px auto 96px;padding:28px}.pickDice{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 18px;display:grid}.pickPageCard .grid2{margin-top:20px}.searchBox[href],.chips a{color:inherit;text-decoration:none}.exploreSearch input{width:100%;font:inherit;color:inherit;background:0 0;border:0;outline:0}.chips button.active{background:var(--forest,#173c32);color:#fff;border-color:var(--forest,#173c32)}.filterPanel{background:#ffffff8c;border:1px solid #20372d24;border-radius:16px;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 14px;padding:14px;display:grid}.filterPanel label{gap:6px;font-size:.82rem;font-weight:700;display:grid}.filterPanel select{background:#fff;border:1px solid #20372d2e;border-radius:10px;width:100%;padding:10px}.resultCount{color:#6d716b;margin:12px 2px;font-size:.82rem}@media (max-width:430px){.filterPanel{grid-template-columns:1fr}}.scoreField,.returnField{border:0;margin:0 0 22px;padding:0}.scoreField{background:linear-gradient(135deg,#fff9ee,#f7ead7);border:1px solid #eadbc3;border-radius:18px;padding:16px 16px 13px}.scoreField legend{color:var(--forest);margin-bottom:7px;font-weight:800}.scoreField small{color:#7f786c;margin-top:4px;display:block}.returnFieldTitle{color:var(--terracotta);margin-bottom:12px;font-size:1rem;font-weight:800}.reviewForm{margin-top:24px}.reviewBack{margin-bottom:24px;display:inline-flex}.charCount{text-align:right;color:var(--muted);margin-top:5px;display:block}.photoPicker{text-align:center;background:var(--paper);cursor:pointer;border:1px dashed #a99b85;border-radius:16px;place-items:center;min-height:92px;padding:14px;display:grid}.photoPicker span{color:var(--muted);margin-top:4px;font-size:.78rem}.reviewSubmit{width:100%;margin-top:8px}.reviewDelete{color:#8d3429;background:0 0;border:1px solid #bd6d61;width:100%;margin-top:10px}.formNotice{color:var(--forest);background:#edf5ed;border:1px solid #b9d0bb;border-radius:12px;margin:10px 0;padding:12px 14px;font-size:.9rem}.ratingSeals button:focus-visible,.btn:focus-visible,.photoPicker:focus-within{outline-offset:3px;outline:3px solid #c99f55}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.srOnly{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.screenSkeleton{gap:16px;padding-top:16px;display:grid}.skeleton{background:linear-gradient(90deg,#1f493d14,#1f493d29,#1f493d14) 0 0/200% 100%;border-radius:18px;animation:1.35s ease-in-out infinite dc-skeleton}.skeletonTitle{width:68%;height:54px}.skeletonSearch{height:48px}.skeletonRow{gap:10px;display:flex}.skeletonChip{border-radius:999px;width:96px;height:36px}.skeletonCard{height:112px}.errorState{margin-top:28px}.notFoundPage{align-content:center;gap:26px;min-height:75vh;display:grid}.notFoundPage .primaryButton{text-align:center;text-decoration:none}@keyframes dc-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.adminAnalyticsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.adminPanelCard{background:#fff;border:1px solid #19392b24;border-radius:18px;padding:20px;box-shadow:0 8px 28px #1f31280f}.adminPanelCard h2{margin:0 0 14px;font-size:1.05rem}.adminPanelCard ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.adminPanelCard li{border-bottom:1px solid #19392b17;justify-content:space-between;gap:16px;padding-bottom:9px;display:flex}.adminPanelCard li:last-child{border-bottom:0;padding-bottom:0}@media (max-width:800px){.adminAnalyticsGrid{grid-template-columns:1fr}}.brand .officialLogo{object-fit:contain;object-position:center;box-shadow:none;background:0 0;border-radius:0;display:block}.brandCompact .officialLogo{border-radius:0}.brandWords{display:grid}.brandWords strong{line-height:.95}.brandWords span{max-width:180px}.passportLoginBackdrop{background:linear-gradient(#12342bc7,#12342bc7),var(--cream);justify-content:center;align-items:flex-end;min-height:100dvh;padding:0;display:flex;position:relative;overflow:hidden}.passportLoginUnderlay{text-align:center;opacity:.78;align-content:start;justify-items:center;gap:18px;padding:34px 22px;display:grid;position:absolute;inset:0}.passportLoginUnderlay .lang{background:#fffaf0db;top:18px;right:20px}.passportLoginUnderlay .brand{margin-top:48px}.passportLoginUnderlay .officialLogo{width:152px;height:152px}.passportLoginSheet{z-index:2;background:var(--paper);width:min(100%,620px);padding:34px 24px max(34px,env(safe-area-inset-bottom));text-align:center;border-radius:36px 36px 0 0;position:relative;box-shadow:0 -18px 48px #00000026}.passportLoginClose{color:#66736c;font-size:1.9rem;position:absolute;top:16px;right:20px}.passportMiniSeal{background:var(--forest2);color:#e5c96f;width:86px;height:86px;box-shadow:inset 0 0 0 4px var(--forest2),inset 0 0 0 5px #d1b05f;border:2px solid #d1b05f;border-radius:50%;place-items:center;margin:0 auto 22px;font:700 1.9rem Georgia,serif;display:grid}.passportLoginSheet .eyebrow{color:#9a7431}.passportLoginSheet h1{color:var(--forest);margin:18px 0 8px;font-size:2rem}.passportLoginSheet>p{color:#3c4a44;margin:0 0 18px;font-size:1.05rem}.passportLoginSheet .authForm{text-align:left;gap:14px}.passportLoginSheet .field label{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.passportLoginSheet .field input{background:#fffaf7;border:1px solid #ddd2c2;border-radius:18px;width:100%;height:64px;padding:0 18px;font-size:1.02rem}.passportLoginSheet .field input::placeholder{color:#9aa0a6}.passportLoginSheet .field input[name=email]::placeholder{content:"Correo electrónico"}.passportLoginSheet .btn.btn-primary{color:#fff;background:#cf7048;border:0;border-radius:16px;width:100%;min-height:58px;font-size:1rem;font-weight:800}.passportLoginSheet .authForm p{text-align:center;color:var(--muted);margin:0;font-size:.85rem}.passportCreate{border-color:var(--line);background:#fffaf7;min-height:58px;margin-top:12px;font-size:1rem}.passportIdentityNote{color:#788078;background:#eef2ea;border-radius:14px;justify-content:center;align-items:flex-start;gap:7px;margin-top:14px;padding:11px 13px;font-size:.75rem;line-height:1.45;display:flex}.passportHeader{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#fffaf0f5;align-items:center;gap:18px;height:96px;padding:12px 18px;display:flex;position:sticky;top:0}.passportHeader .brand{justify-content:flex-start}.passportHeader .brandCompact strong{font-size:1.55rem;line-height:.92}.passportHeader .officialLogo{width:58px;height:58px}.passportHeaderSlogan{letter-spacing:.16em;color:#272b28;margin-left:auto;font-size:.58rem;font-weight:800;line-height:1.35}.passportHeaderActions{gap:8px;display:flex}.passportRoundAction{border:1px solid var(--line);background:#fffaf7;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.passportRoundAction svg{width:20px}.passportPage{background:#f5efdf}.passportCover{padding:24px;position:relative}.passportInner{box-shadow:inset 0 0 0 10px var(--forest2),inset 0 0 0 11px #c6a65d61,0 18px 36px #1f2d2629;background:repeating-linear-gradient(135deg,#ffffff05 0 2px,#0000 2px 7px),linear-gradient(145deg,#0d3b31,#0b332b);border:1px solid #d4b565eb;border-radius:28px;padding:34px 30px 28px;position:relative;overflow:hidden}.passportInner:after{content:"";pointer-events:none;border:8px solid #c6a65d0f;border-radius:50%;width:180px;height:180px;position:absolute;top:46%;right:-42px;box-shadow:inset 0 0 0 16px #c6a65d09}.passportTopline{text-align:left;letter-spacing:.15em;justify-content:space-between;align-items:center;gap:18px;font-weight:800;display:flex}.passportTopline small{white-space:nowrap;color:#efd792;border:1px solid #c6a65db3;border-radius:999px;padding:10px 16px}.passportSeal{flex-direction:column;justify-content:center;align-items:center;gap:8px;width:142px;height:142px;display:flex}.passportSeal b{font-size:2.8rem}.passportSeal span{letter-spacing:.15em;font-size:.5rem;line-height:1.25}.passportInner h1{letter-spacing:.08em;color:#efce7c;text-shadow:0 1px #745e27;margin-top:28px;font-size:clamp(2rem,8vw,3.35rem);line-height:.96}.passportInner>p{color:#e8dcb9;letter-spacing:.2em}.passportDocumentLine{letter-spacing:.15em;color:#d7c892;border-top:1px solid #c6a65d80;border-bottom:1px solid #c6a65d52;justify-content:space-between;gap:16px;margin-top:30px;padding:13px 0;font-size:.63rem;display:flex}.passportPerson{border-top:0;grid-template-columns:98px 1fr;margin-top:0;padding:24px 0 18px}.passportPerson .avatar{color:#124438;background:linear-gradient(145deg,#e6b750,#f3d578);border:4px solid #c59845;border-radius:50%;width:82px;height:82px;font:700 2.5rem Georgia,serif;box-shadow:0 0 0 4px #efce7c3b}.passportPerson h2{color:#fff4dd;font-size:2rem}.passportPerson p{color:#e6dcc1;font-family:Georgia,serif;font-size:1.05rem}.passportStats{border-bottom:1px solid #c6a65d6b;padding:20px 0}.passportStats div+div{border-left:1px solid #c6a65d47}.passportStats b{color:#efce7c;font-size:2rem}.passportStats span{letter-spacing:.1em;color:#eee2bf}.passportLevelCard{text-align:left;background:#082d256b;border:1px solid #c6a65d75;border-radius:18px;margin-top:20px;padding:16px 18px}.passportLevelCard progress{accent-color:#e1bd61;width:100%;height:10px}.passportLevelCard small{color:#d6c89d;margin-top:8px;display:block}.passportDiscoverBtn{color:#f5dda0;z-index:1;border:1px solid #efce7cb3;border-radius:14px;justify-content:center;align-items:center;min-height:48px;margin-top:18px;font-weight:800;display:flex;position:relative}.passportSectionGap{margin-top:42px}.passportHistoryRow{border-top:1px solid #d9ccb0;justify-content:space-between;align-items:center;gap:15px;padding:15px 2px;display:flex}.passportHistoryRow div{gap:4px;display:grid}.passportHistoryRow span{color:var(--muted);font-size:.75rem}.passportHistoryRow>span{color:var(--terracotta);font-weight:800}.challengeDone{background:#c6a65d14}@media (max-width:520px){.passportHeader{gap:10px;height:86px;padding:10px 14px}.passportHeader .officialLogo{width:50px;height:50px}.passportHeader .brandCompact strong{font-size:1.3rem}.passportHeaderSlogan{font-size:.49rem}.passportRoundAction{width:42px;height:42px}.passportCover{padding:14px}.passportInner{border-radius:24px;padding:28px 20px 24px}.passportTopline{font-size:.72rem}.passportTopline small{padding:8px 10px;font-size:.58rem}.passportSeal{width:120px;height:120px}.passportPerson{grid-template-columns:82px 1fr}.passportPerson .avatar{width:70px;height:70px}.passportPerson h2{font-size:1.65rem}.passportPerson p{font-size:.95rem}.passportLoginSheet{padding-inline:22px}.passportHeaderSlogan{display:none}}.bottomNav{left:50%;bottom:max(12px,env(safe-area-inset-bottom));z-index:80;-webkit-backdrop-filter:blur(20px);background:#fffcf6f7;border:1px solid #ded4c2c7;border-radius:34px;grid-template-columns:repeat(5,1fr);width:min(100% - 24px,720px);height:92px;padding:8px 10px 7px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 16px 42px #1830272e,0 3px 10px #18302714}.bottomNav .bottomNavItem,.bottomNav .publishNavItem{color:#222a26;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;font-size:.76rem;font-weight:800;transition:background-color .2s,color .2s,transform .2s;display:flex;position:relative}.bottomNavIcon svg{stroke:currentColor;width:27px;height:27px}.bottomNav .bottomNavItem.isActive{color:var(--forest2);background:#e1f0eb}.bottomNav .bottomNavItem.isActive .bottomNavIcon{background:var(--forest2);color:#fff;border-radius:17px;width:54px;height:45px}.bottomNav .publishNavItem{justify-content:flex-end;padding-bottom:5px}.bottomNav .publishNavItem .publishFab{color:#fff;background:linear-gradient(145deg,#f08232,#df641f);border:7px solid #fffcf6fa;border-radius:50%;place-items:center;width:78px;height:78px;display:grid;position:absolute;top:-31px;box-shadow:0 10px 24px #ce5e1d52,0 0 0 1px #ded4c266}.bottomNav .publishNavItem .publishFab svg{stroke-width:1.9px;width:43px;height:43px}.bottomNav .publishNavItem .bottomNavLabel{color:#222a26;margin-top:auto}.bottomNav .publishNavItem.isActive .publishFab{transform:translateY(-2px);box-shadow:0 13px 28px #ce5e1d61,0 0 0 1px #ded4c266}.bottomNav a:focus-visible{outline-offset:3px;outline:3px solid #d4b35e}@media (max-width:520px){body{padding-bottom:104px}.bottomNav{border-radius:30px;width:calc(100% - 18px);height:86px;padding:7px 7px 6px}.bottomNav .bottomNavItem,.bottomNav .publishNavItem{gap:4px;font-size:.69rem}.bottomNavIcon svg{width:24px;height:24px}.bottomNav .bottomNavItem.isActive .bottomNavIcon{border-radius:15px;width:48px;height:40px}.bottomNav .publishNavItem .publishFab{border-width:6px;width:72px;height:72px;top:-29px}.bottomNav .publishNavItem .publishFab svg{width:39px;height:39px}}@media (max-width:360px){.bottomNav .bottomNavItem,.bottomNav .publishNavItem{font-size:.62rem}.bottomNav .publishNavItem .publishFab{width:66px;height:66px;top:-26px}}.homeQuickGrid{grid-template-columns:repeat(2,1fr);gap:14px;margin:22px 0;display:grid}.homeQuickCard{min-height:150px;color:var(--ink);background:#eee5d4;border-radius:22px;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:22px;text-decoration:none;display:flex}.homeQuickCard span{font-size:1.4rem}.homeQuickCard b{font:700 1.35rem Georgia,serif}.homeQuickCard small{color:var(--muted)}.storiesSection{margin-top:42px}.storiesSection h2{color:var(--forest);margin:.2rem 0;font:700 clamp(2rem,7vw,3rem) Georgia,serif}.storyList{gap:28px;display:grid}.storyCard{color:inherit;background:#fffaf2;border-radius:28px;text-decoration:none;display:block;overflow:hidden;box-shadow:0 12px 30px #1f31281f}.storyVisual{color:#fff;background:radial-gradient(circle at 25% 20%,#de7e448c,#0000 38%),repeating-radial-gradient(circle at 15% 40%,#efdaad17 0 2px,#0000 3px 34px),linear-gradient(145deg,#a95737,#0d342b);flex-direction:column;justify-content:flex-end;min-height:390px;padding:26px;display:flex;position:relative}.storyBadge{letter-spacing:.08em;background:#303a31;border-radius:999px;padding:9px 14px;font-size:.68rem;font-weight:800;position:absolute;top:22px;left:22px}.storyNumber{letter-spacing:.14em;font:700 1rem Georgia,serif;position:absolute;top:22px;right:24px}.storyPlate{text-align:center;margin:auto;font-size:5rem}.storyMeta{letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-weight:800}.storyVisual h3{margin:10px 0 8px;font:700 clamp(2.5rem,9vw,4.3rem) Georgia,serif}.storyVisual p{margin:0;font-size:.95rem}.storyBody{gap:20px;padding:24px;display:grid}.storyBody em{color:#504a42;font:italic 1.25rem/1.35 Georgia,serif}.storyBody div{flex-wrap:wrap;gap:10px;display:flex}.storyBody div span{background:#f0ece2;border:1px solid #dfd7c7;border-radius:999px;padding:8px 11px;font-size:.75rem}.storyBody strong{color:#9b573a;border-top:1px solid #e3dac9;padding-top:18px}.page.shell{padding-bottom:120px}@media (max-width:520px){.homeQuickCard{min-height:130px;padding:18px}.storyVisual{min-height:360px}.storyBody{padding:20px}}body{padding-bottom:118px}.bottomNav{left:50%;bottom:max(12px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf4f7;border:1px solid #ded4c2e0;border-radius:34px;width:min(100% - 24px,720px);height:96px;padding:8px 10px 9px;overflow:visible;box-shadow:0 16px 38px #202a252e}.bottomNav a{color:#191d1a;border-radius:26px;gap:6px;min-width:0;min-height:76px;font-size:.79rem;font-weight:800;transition:background-color .2s,transform .2s,color .2s}.bottomNavItem.isActive{color:var(--forest);background:#e3f0eb}.bottomNavIcon{border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.bottomNavItem.isActive .bottomNavIcon{background:var(--forest);color:#fff}.bottomNav svg{width:28px;height:28px}.bottomNavLabel{white-space:nowrap;line-height:1}.publishNavItem{padding-top:33px;position:relative;overflow:visible}.bottomNav .publishFab{background:#e56f32;border:6px solid #fffaf4;place-items:center;width:78px;height:78px;margin:0;display:grid;position:absolute;top:-24px;left:50%;transform:translate(-50%);box-shadow:0 11px 28px #cf67334d}.bottomNav .publishFab svg{stroke-width:1.8px;width:42px;height:42px}.publishNavItem.isActive .bottomNavLabel{color:var(--terracotta)}.passportInner h1{overflow-wrap:normal;word-break:normal;text-wrap:balance;max-width:100%}@media (max-width:520px){body{padding-bottom:116px}.passportPage{overflow-x:hidden}.passportCover{padding:10px}.passportInner{border-radius:22px;padding:26px 14px 24px}.passportInner h1{letter-spacing:.035em;font-size:clamp(1.62rem,8vw,2.55rem);line-height:.98}.passportInner>p{letter-spacing:.13em;font-size:.58rem}.passportDocumentLine{letter-spacing:.08em;gap:8px;font-size:.55rem}.passportPerson{grid-template-columns:72px minmax(0,1fr);gap:12px}.passportPerson .avatar{width:64px;height:64px}.passportPerson h2{overflow-wrap:anywhere;font-size:clamp(1.38rem,6.3vw,1.75rem)}.passportPerson p{font-size:.9rem}.passportStats b{font-size:1.7rem}.passportStats span{letter-spacing:.06em;font-size:.54rem}.bottomNav{border-radius:31px;width:calc(100% - 20px);height:94px;padding-inline:7px}.bottomNav a{border-radius:23px;min-height:74px;font-size:.73rem}.bottomNavIcon{width:39px;height:39px}.bottomNav svg{width:25px;height:25px}.bottomNav .publishFab{width:74px;height:74px;top:-23px}.bottomNav .publishFab svg{width:39px;height:39px}}@media (max-width:360px){.bottomNav{width:calc(100% - 12px);padding-inline:4px}.bottomNav a{font-size:.66rem}.bottomNavIcon{width:36px;height:36px}.bottomNav .publishFab{width:68px;height:68px}.passportInner h1{letter-spacing:.025em;font-size:1.55rem}}@media (prefers-reduced-motion:reduce){.bottomNav a{transition:none}}.brand-welcome{justify-items:center;gap:0;display:grid}.brand-welcome .officialLogoFull{aspect-ratio:1247/1261;object-fit:contain;object-position:center;width:min(176px,42vw);height:auto;box-shadow:none;background:0 0;border-radius:0}.brandSymbolFrame{background:#c34f14;border-radius:16px;flex:none;width:56px;height:56px;display:block;position:relative;overflow:hidden;box-shadow:0 8px 18px #232c261f}.brandSymbolFrame .officialLogoSymbol{width:69px;max-width:none;height:auto;box-shadow:none;border-radius:0;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.brand-header{justify-content:flex-start;gap:10px}.brand-header .brandWords strong{font-size:1.16rem;line-height:.95}.brand-passport{justify-content:flex-start;gap:12px}.brand-passport .brandWords strong{font-size:1.55rem;line-height:.9}.brand-passport .brandWords span{letter-spacing:.14em;color:#252b28;max-width:175px;margin-top:6px;font-size:.5rem;line-height:1.3}.passportHeader .brand-passport{min-width:0}.passportHeader .passportHeaderActions{margin-left:auto}@media (max-width:520px){.brandSymbolFrame{border-radius:14px;width:50px;height:50px}.brandSymbolFrame .officialLogoSymbol{width:62px}.brand-passport .brandWords strong{font-size:1.28rem}.brand-passport .brandWords span{font-size:.43rem}.passportHeader{gap:8px}}@media (max-width:380px){.brand-passport .brandWords span{display:none}.brand-passport .brandWords strong{font-size:1.18rem}.passportRoundAction{width:40px;height:40px}}.communityPulse{color:#fff;background:linear-gradient(135deg,#245f4d,#0b493b);border-radius:28px;margin:22px 0 34px;padding:28px 26px}.communityPulse .eyebrow{color:#ffffffad}.communityPulseGrid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px;display:grid}.communityPulseGrid div{gap:3px;display:grid}.communityPulseGrid strong{font:700 clamp(1.8rem,6vw,2.6rem) Georgia,serif}.communityPulseGrid span{color:#fffc;font-size:.78rem}@media (max-width:360px){.communityPulse{padding:22px 18px}.communityPulseGrid{gap:8px}.communityPulseGrid span{font-size:.68rem}}.pickOverlay{z-index:100;background:#0a2b23c7;justify-content:center;align-items:flex-end;padding-top:56px;display:flex;position:fixed;inset:0;overflow:auto}.pickSheet{background:var(--paper);width:min(760px,100%);padding:38px 24px max(34px,env(safe-area-inset-bottom));text-align:center;border-radius:34px 34px 0 0;position:relative;box-shadow:0 -16px 50px #0003}.pickClose{color:#222;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:22px;right:22px}.pickDiceEmoji{margin:14px 0 26px;font-size:72px;line-height:1}.pickKicker{letter-spacing:.04em;color:#49443d;font-size:.82rem}.pickSheet h1{margin:10px 0;font-family:Georgia,serif;font-size:clamp(1.7rem,7vw,2.3rem);font-weight:500}.pickLead{color:#332f2a;margin:0 0 14px;font-size:1.1rem}.pickField{text-align:center;gap:10px;margin:18px 0;font-size:.82rem;font-weight:800;display:grid}.pickField select{border:1px solid var(--line);color:#322f2b;background:#fffdfa;border-radius:20px;width:100%;min-height:70px;padding:0 20px;font-size:1.05rem}.pickCheck{text-align:left;background:#f8f0e2;border-radius:18px;align-items:center;gap:12px;margin:26px 0;padding:18px;display:flex}.pickCheck input{width:24px;height:24px;accent-color:var(--terracotta)}.pickSurprise,.pickCancel{border:0;border-radius:18px;justify-content:center;align-items:center;width:100%;min-height:64px;font-size:1.08rem;font-weight:800;display:flex}.pickSurprise{color:#fff;background:#cf7045}.pickSurprise:disabled{opacity:.65}.pickCancel{color:var(--forest);border:1px solid var(--line);background:#fffdfa;margin-top:12px}.pickResult{border:1px solid var(--line);text-align:left;background:#fbf4e8;border-radius:22px;margin:22px 0;padding:22px}.pickResult h2{font-size:2rem}.pickResult p{line-height:1.5}.challengeSheet{background:#fffaf0}.challengeList{gap:14px}.challengeCard{background:#fbf3e7;border:0;border-radius:24px;grid-template-columns:58px 1fr;padding:20px 18px}.challengeCard.challengeDone{background:#edf6ee;outline:none}.challengeIcon{border:0;border-radius:0;width:52px;height:52px;font-size:30px;transform:none}.challengeCard strong{font-size:1.05rem}.challengeCard span{color:#494640;font-size:.88rem}.challengeCard progress{appearance:none;background:#ddd4c4;border:0;border-radius:999px;height:8px;overflow:hidden}.challengeCard progress::-webkit-progress-bar{background:#ddd4c4;border-radius:999px}.challengeCard progress::-webkit-progress-value{background:var(--terracotta);border-radius:999px}.challengeCard progress::-moz-progress-bar{background:var(--terracotta);border-radius:999px}.challengeCard small{font-size:.78rem}.challengeDone small{color:var(--forest);font-weight:800}.challengeCard{position:relative;overflow:visible}.challengeBody{gap:5px;min-width:0;display:grid}.challengeStamping{animation:1s both challengeCardPulse}.stampBurst{border:3px double var(--terracotta);width:92px;height:92px;color:var(--terracotta);letter-spacing:.06em;opacity:0;pointer-events:none;background:#fffaf0ed;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-family:Georgia,serif;animation:1.25s cubic-bezier(.2,.86,.24,1.15) 80ms forwards stampIn;display:flex;position:absolute;top:16px;right:18px;transform:rotate(-12deg)scale(2.2);box-shadow:0 8px 22px #6836261f}.stampBurst span{color:inherit!important;font-size:.72rem!important}.stampBurst b{margin-top:2px;font-size:.67rem}@keyframes stampIn{0%{opacity:0;transform:rotate(-12deg)scale(2.2)}45%{opacity:1;transform:rotate(-12deg)scale(.88)}62%{transform:rotate(-12deg)scale(1.05)}to{opacity:1;transform:rotate(-12deg)scale(1)}}@keyframes challengeCardPulse{0%,to{box-shadow:none}45%{box-shadow:0 0 0 6px #b85f431f,0 16px 32px #223e301f}}@media (max-width:420px){.stampBurst{width:76px;height:76px;top:12px;right:10px}.challengeCard.challengeDone .challengeBody{padding-right:58px}}@media (prefers-reduced-motion:reduce){.challengeStamping,.stampBurst{animation:none}.stampBurst{opacity:1;transform:rotate(-8deg)scale(1)}}.adminOverviewPage{min-height:100vh;color:var(--ink);background:#f4efe4;padding:24px clamp(16px,4vw,34px) 56px}.adminHeroCard,.adminOverviewCard{border-radius:30px;max-width:980px;margin:0 auto 22px}.adminHeroCard{background:var(--forest);color:#fff;justify-content:space-between;align-items:center;gap:24px;padding:30px;display:flex}.adminHeroCard .eyebrow{color:#fff}.adminHeroCard h1{color:#f4d47d;font-size:clamp(2.2rem,6vw,3.3rem)}.adminHeroCard p{color:#c9d6d0;margin:4px 0 0}.adminHeroCard .adminLogout{color:var(--forest);background:#fffaf0;border:0;border-radius:18px;padding:18px 22px;font-weight:800}.adminOverviewCard{border:1px solid var(--line);background:#fffaf3;padding:24px;box-shadow:0 10px 30px #29352e0d}.adminSectionHeading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:10px;padding-bottom:18px;display:flex}.adminSectionHeading h2{color:var(--forest);font-size:clamp(1.8rem,5vw,2.6rem)}.adminSectionHeading>span{width:48px;height:48px;color:var(--forest);background:#edf3eb;border-radius:50%;place-items:center;font-weight:800;display:grid}.adminPeopleList,.adminRestaurantList{display:grid}.adminPersonRow,.adminRestaurantList article{border-bottom:1px solid #e6ddce;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 0;display:grid}.adminAvatar{width:70px;height:70px;color:var(--forest);background:linear-gradient(145deg,#e6bd62,#f7d985);border-radius:50%;place-items:center;font:700 1.8rem Georgia,serif;display:grid}.adminPersonMain{gap:6px;min-width:0;display:grid}.adminPersonMain strong,.adminRestaurantList strong{color:var(--forest);font-size:1.05rem}.adminPersonMain small,.adminRestaurantList small{color:#8a867e;overflow-wrap:anywhere}.adminPills{flex-wrap:wrap;gap:6px;display:flex}.adminPills span{color:#56584f;background:#f0eee5;border-radius:999px;padding:6px 9px;font-size:.7rem}.adminPills span:first-child{color:var(--forest);background:#e8f2e7}.adminRowActions{gap:8px;min-width:86px;display:grid}.adminSoftBtn,.adminApproveBtn,.adminRejectBtn,.adminMapsBtn{text-align:center;cursor:pointer;border:0;border-radius:14px;padding:12px 14px;font-size:.78rem;font-weight:800}.adminSoftBtn{color:var(--forest);background:#e9f1e6}.adminApproveBtn{color:#fff;background:#cf7045}.adminRejectBtn{color:#8d3e2f;background:#f5dfd9}.adminTextLink{color:var(--terracotta);margin-top:16px;font-weight:800;display:inline-flex}.adminEmpty{text-align:center;color:#8a847d;background:#f0e9de;border-radius:22px;padding:24px;font-size:1rem}.adminSuggestionList{gap:16px;display:grid}.adminSuggestionCard{padding:18px 0}.adminSuggestionTop{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.adminSuggestionTop h3{color:var(--forest);font-size:1.5rem}.adminSuggestionTop>b{color:#9d7540;letter-spacing:.06em;background:#f5e8cb;border-radius:999px;padding:8px 12px;font-size:.68rem}.adminRestaurantIcon{background:#eaf2e7;border-radius:18px;place-items:center;width:64px;height:64px;font-size:1.5rem;display:grid}.adminAddressBox{background:#f8f1e6;border-radius:16px;gap:6px;margin:14px 0;padding:14px;display:grid}.adminAddressBox small{letter-spacing:.12em}.adminSuggestionCard p{color:#8b867d}.adminMapsBtn{color:var(--forest);background:#fffaf3;border:1px solid #cfc5b4;margin-bottom:14px;display:block}.adminQuickActions{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.adminQuickActions button{min-height:52px}.adminRestaurantList article{grid-template-columns:auto minmax(0,1fr) auto}.adminRestaurantList article>div:nth-child(2){gap:3px;display:grid}.adminUtilityNav{flex-wrap:wrap;gap:10px;max-width:980px;margin:0 auto;display:flex}.adminUtilityNav a,.adminUtilityNav span{border:1px solid var(--line);background:#fffaf3;border-radius:999px;padding:10px 14px;font-size:.78rem}.adminUtilityNav b{color:var(--terracotta)}@media (max-width:640px){.adminOverviewPage{padding:16px 12px 40px}.adminHeroCard{border-radius:28px;padding:24px 20px}.adminHeroCard h1{font-size:2.4rem}.adminHeroCard .adminLogout{padding:16px 18px}.adminOverviewCard{border-radius:28px;padding:20px}.adminPersonRow{grid-template-columns:auto minmax(0,1fr)}.adminPersonRow .adminRowActions{grid-column:2;display:flex}.adminAvatar{width:58px;height:58px}.adminSuggestionTop{grid-template-columns:58px minmax(0,1fr)}.adminSuggestionTop>b{grid-column:2;justify-self:start}.adminQuickActions{grid-template-columns:1fr 1fr}.adminQuickActions .adminSoftBtn{grid-column:1/-1}.adminRestaurantList article{grid-template-columns:52px minmax(0,1fr)}.adminRestaurantList article .adminRowActions{grid-column:2;display:flex}.adminRestaurantIcon{width:52px;height:52px}}.adminAuditFilters{flex-wrap:wrap;gap:8px;margin:16px 0 22px;display:flex}.adminAuditFilters a{color:var(--forest,#164d3f);background:#fffaf2;border:1px solid #d7d0c2;border-radius:999px;padding:9px 12px;font-size:.88rem;font-weight:700;text-decoration:none}.adminAuditList{gap:0;display:grid}.adminAuditRow{border-top:1px solid #e7dfd1;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:16px 0;display:grid}.adminAuditRow:first-child{border-top:0}.adminAuditRow>div{gap:4px;display:grid}.adminAuditRow>div:last-child{text-align:right}.adminAuditRow small,.adminAuditRow time,.adminAuditRow span{color:#776f64;font-size:.82rem}.adminAuditPager{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.adminAuditPager a{color:var(--forest,#164d3f);font-weight:800;text-decoration:none}@media (max-width:560px){.adminAuditRow{grid-template-columns:1fr}.adminAuditRow>div:last-child{text-align:left}.adminAuditFilters{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.adminAuditFilters a{white-space:nowrap}}.homePage{padding-top:0}.homeHero{color:#fff8e9;background:radial-gradient(circle at 88% 18%,#c6a65d33,#0000 32%),linear-gradient(145deg,#0c5a46,#0b3d32);margin-inline:-18px;padding:38px 34px 44px}.homeHero .homeGeo{color:#f0cf7b;margin-bottom:24px}.homeHero h1{color:#fff8e9;max-width:650px;font-size:clamp(3rem,11vw,5.2rem);line-height:.92}.homeHero>p{color:#efe6d3;max-width:590px;font:italic 1.18rem/1.45 Georgia,serif}.homeHero .searchBox{min-height:62px;box-shadow:none;color:var(--forest);background:#fffaf2;border:0;border-radius:999px;margin:30px 0 14px}.homeSearch input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:1rem}.homeQuickFilters{padding-bottom:26px}.homeQuickFilters a{white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff42;border-radius:999px;padding:10px 14px;font-size:.82rem;font-weight:700}.moodSection{background:#ffffff12;border:1px solid #fff3;border-radius:24px;margin-top:4px;padding:20px}.moodSection .eyebrow{color:#edcc7b}.moodSection h2{color:#fff6e4}.moodSection .moodGrid{grid-template-columns:repeat(4,1fr);gap:9px}.moodSection .moodGrid a{color:#fff;text-align:center;background:#ffffff21;border:0;min-height:96px}.moodSection .moodGrid svg{color:#f4d278}.choiceCard{color:#fff;background:linear-gradient(135deg,#cb6b41,#bd613c);border:0;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-top:26px;padding:21px 24px;display:grid}.choiceCard div{gap:5px;display:grid}.choiceCard strong{font-size:1.35rem}.choiceCard div span{letter-spacing:.14em;color:#f6d6c6;font-size:.78rem}.homeSection{border-bottom:1px solid #ded4c2b3;padding:34px 0}.personalHistory{padding-top:30px}.objectiveCard>strong{margin:12px 0 4px;font:700 1.08rem Georgia,serif;display:block}.objectiveCard p{margin:0 0 12px;font-size:.85rem}.trendRail{scroll-snap-type:x proximity;grid-auto-columns:minmax(245px,72%);grid-auto-flow:column;gap:12px;padding:6px 2px 12px;display:grid;overflow-x:auto}.trendCard{scroll-snap-align:start;border:1px solid var(--line);background:#fffaf2;border-radius:20px;grid-template-columns:88px 1fr;min-height:96px;display:grid;overflow:hidden}.trendThumb{background:linear-gradient(145deg,#1b5a49,#0d3b31);place-items:center;display:grid;overflow:hidden}.trendThumb img{object-fit:cover;width:100%;height:100%}.trendThumb span{font-size:2.2rem}.trendCard>div:last-child{align-content:center;gap:4px;padding:13px;display:grid}.trendCard b{color:var(--forest);font:700 1rem Georgia,serif}.trendCard small,.trendCard span{color:var(--muted);font-size:.72rem}.homeQuickGrid{grid-template-columns:repeat(3,1fr)}.homeQuickCard svg{width:25px;height:25px;color:var(--forest)}.storyApprovedPhoto{object-fit:cover;filter:brightness(.58)saturate(.9);width:100%;height:100%;position:absolute;inset:0}.storyApprovedPhoto~.storyMeta,.storyApprovedPhoto~h3,.storyApprovedPhoto~p{z-index:1;position:relative}.storyApprovedPhoto~.storyBadge,.storyApprovedPhoto~.storyNumber{z-index:2}.bottomNavItem.isActive{animation:.28s ease-out homeNavPulse}.storyCard,.trendCard,.homeQuickCard,.moodGrid a{animation:.4s both homeCardIn}@keyframes homeCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes homeNavPulse{0%{transform:scale(.96)}to{transform:scale(1)}}@media (max-width:620px){.homeHero{padding:36px 24px 38px}.moodSection .moodGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.moodSection .moodGrid a{padding:10px 4px;font-size:.68rem}.moodSection .moodGrid svg{width:25px;height:25px}.homeQuickGrid{grid-template-columns:1fr 1fr}.homeQuickGrid .homeQuickCard:first-child{grid-column:1/-1;min-height:110px}.trendRail{grid-auto-columns:86%}}@media (max-width:390px){.homeHero{padding-inline:20px}.moodSection{padding:16px 12px}.choiceCard{padding:18px}.homeQuickFilters a{padding:9px 12px}}@media (prefers-reduced-motion:reduce){.bottomNavItem.isActive,.storyCard,.trendCard,.homeQuickCard,.moodGrid a{animation:none}}.adminKpiGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 22px;display:grid}.adminKpiGrid a{color:#123f35;background:#fffaf2;border:1px solid #0d493b1f;border-radius:20px;flex-direction:column;gap:4px;padding:16px;text-decoration:none;display:flex;box-shadow:0 8px 24px #1e2d230d}.adminKpiGrid strong{font-family:Georgia,serif;font-size:30px}.adminKpiGrid span{font-size:13px;line-height:1.25}.adminHoursEditor{border:1px solid #0d493b24;border-radius:18px;gap:10px;padding:14px;display:grid}.adminHoursEditor legend{color:#154b3f;padding:0 6px;font-weight:800}.adminHoursEditor label{grid-template-columns:92px 1fr;align-items:center;gap:10px;display:grid}.adminHelp{color:#746f65;margin-top:4px;font-size:12px;line-height:1.4;display:block}@media (min-width:760px){.adminKpiGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.homeLocationRow{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.launchAreaButton{color:#1f4334;font:inherit;cursor:pointer;background:#f7f0df;border:1px solid #1f433433;border-radius:999px;align-items:center;gap:.35rem;padding:.42rem .68rem;font-weight:700;display:inline-flex}.areaOverlay{z-index:80;background:#14271f94;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.areaSheet{width:min(100%,560px);padding:1.5rem 1.2rem calc(1.4rem + env(safe-area-inset-bottom));background:#fbf5e8;border-radius:28px 28px 0 0;animation:.3s areaUp;position:relative;box-shadow:0 -18px 50px #0000002e}.areaSheet h2{margin:.25rem 0 .5rem;font-family:Georgia,serif;font-size:1.9rem}.areaIntro{color:#526058;margin:0 2.5rem 1rem 0;line-height:1.5}.areaClose{cursor:pointer;background:#eee5d4;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:1rem;right:1rem}.areaOption{text-align:left;color:#263b31;background:#fffaf0;border:1px solid #ddd2bd;border-radius:18px;justify-content:space-between;align-items:center;width:100%;margin:.55rem 0;padding:1rem;display:flex}.areaOption span:first-child{flex-direction:column;gap:.18rem;display:flex}.areaOption small{color:#718077;font-weight:400}.areaOption.active{background:#edf2e9;border-color:#315d47}.areaOption:disabled{opacity:.58}.areaOption strong{color:#315d47}@keyframes areaUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.areaSheet{animation:none}}@media (min-width:700px){.areaOverlay{align-items:center;padding:1rem}.areaSheet{border-radius:28px}}.restaurantHeroImage{object-fit:cover;width:100%;height:100%}.restaurantBody{padding-bottom:110px}.restaurantChips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.restaurantChips span{border:1px solid var(--line);background:#fff9ef;border-radius:999px;padding:8px 12px;font-size:.78rem}.restaurantName{margin:12px 0 6px}.restaurantRating{align-items:center;gap:10px;display:flex}.restaurantRating b{color:#a27620;font-size:1.15rem}.newRestaurant{gap:4px;padding:12px 0;display:grid}.newRestaurant b{color:var(--terracotta)}.returnHero{background:var(--forest);color:#fff;border:0;border-radius:0 0 28px 28px;justify-content:space-between;align-items:center;padding:24px;display:flex}.returnHero .eyebrow,.returnHero .muted{color:#ead8a4}.returnHero .returnNumber{color:#e6c56f}.photoMiniAction{color:#f2d77d;border:2px solid #d7bb69;border-radius:26px;place-items:center;min-width:86px;height:86px;font-size:2.2rem;display:grid}.photoMiniAction small{margin-top:-20px;font-size:.8rem}.sectionHeading{justify-content:space-between;align-items:center;gap:12px;display:flex}.softAction{background:#f4eadb;border-radius:999px;padding:10px 14px}.restaurantPhotos{padding:22px 0}.restaurantActionGrid{grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 24px;display:grid}.restaurantActionGrid>*{border:1px solid var(--line);min-height:150px;color:var(--ink);text-align:center;font:inherit;background:#fffaf2;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex}.restaurantActionGrid button{background:#e9f0e6}.restaurantActionGrid .active{color:var(--forest);background:#dbe8d8}.restaurantActionGrid .reviewAction{background:var(--terracotta);color:#fff}.restaurantActionGrid svg{width:30px;height:30px}.restaurantActionGrid span{color:var(--muted)}.restaurantPanel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffaf2;border-radius:28px;margin:24px 0;padding:24px}.restaurantPanel h2{color:var(--forest);margin:8px 0 20px;font:700 2rem Georgia,serif}.communityCallout{background:#f4eadb;border-radius:20px;grid-template-columns:1fr 2fr;align-items:center;gap:18px;padding:18px;display:grid}.communityCallout b{color:var(--terracotta);font:700 2rem Georgia,serif}.ratingBreakdown{gap:16px;margin-top:20px;display:grid}.ratingBreakdown>div{grid-template-columns:1fr auto;gap:5px;display:grid}.ratingBreakdown progress{accent-color:#d48653;grid-column:1/-1;width:100%}.practicalInfo{gap:18px;display:grid}.practicalInfo>div{border-bottom:1px dashed var(--line);gap:5px;padding-bottom:14px;display:grid}.practicalInfo span{color:var(--muted)}.infoActions{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.infoActions>*{border:1px solid var(--line);text-align:center;border-radius:14px;padding:12px;font-weight:700}.countBubble{background:#e6eee4;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.communityReview{border-top:1px dashed var(--line);grid-template-columns:54px 1fr;gap:14px;padding:18px 0;display:grid}.reviewAvatar{width:48px;height:48px;color:var(--forest);background:#e6c56f;border-radius:50%;place-items:center;font:700 1.4rem Georgia,serif;display:grid}.reviewTop{justify-content:space-between;gap:12px;display:flex}.reviewComment{font:italic 1.05rem Georgia,serif}.wouldYes{color:var(--forest);margin:6px 0;display:block}.wouldNo{color:#9a4435;margin:6px 0;display:block}.communityReview small{color:var(--muted)}.discovererCard{border:1px solid var(--line);background:#f5eee2;border-radius:22px;grid-template-columns:48px 1fr;align-items:center;gap:14px;margin:24px 0;padding:18px;display:grid}.discovererCard>div{background:var(--forest);color:#e6c56f;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.discovererCard p{gap:3px;margin:0;display:grid}.discovererCard small{letter-spacing:.12em;color:#9a6b56}.discovererCard span{color:var(--muted);font-size:.82rem}@media (max-width:520px){.restaurantActionGrid{gap:7px}.restaurantActionGrid>*{border-radius:20px;min-height:132px;padding:8px;font-size:.88rem}.restaurantPanel{padding:20px}.communityCallout{grid-template-columns:1fr}.infoActions{grid-template-columns:repeat(3,1fr);font-size:.8rem}}@media (prefers-reduced-motion:no-preference){.restaurantActionGrid>*{transition:transform .25s,background .25s}.restaurantActionGrid>:active{transform:scale(.97)}}.ownerVerificationPanel{border-top:1px solid #e6ddce;gap:14px;margin-top:16px;padding-top:16px;display:grid}.ownerVerificationSteps{gap:10px;display:grid}.ownerVerificationStep{background:#f8f1e6;border:1px solid #e2d7c5;border-radius:16px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;display:grid}.ownerVerificationStep>span{background:var(--forest);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.78rem;font-weight:900;display:grid}.ownerVerificationStep>div{gap:3px;min-width:0;display:grid}.ownerVerificationStep strong{color:var(--forest);font-size:.88rem}.ownerVerificationStep small{color:#746f66;overflow-wrap:anywhere;font-size:.75rem;line-height:1.35}.ownerVerificationStep .adminSoftBtn,.ownerVerificationStep .adminApproveBtn{white-space:nowrap;margin:0}.ownerVerificationActive,.ownerVerificationReady,.ownerVerificationExpired{white-space:nowrap;border-radius:999px;padding:8px 10px;font-size:.72rem}.ownerVerificationActive{color:#1b6449;background:#e3f1e7}.ownerVerificationReady{color:#8a6425;background:#f7e9c8}.ownerVerificationExpired{color:#8d3e2f;background:#f6dfd9}.ownerVerificationMessage{background:#fffaf3;border:1px solid #d9ceb9;border-radius:18px;gap:12px;padding:15px;display:grid}.ownerVerificationCode{color:#fff;background:#173e32;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.ownerVerificationCode small{letter-spacing:.12em;color:#e6d8a9;font-size:.62rem}.ownerVerificationCode strong{letter-spacing:.08em;font:800 1.05rem ui-monospace,SFMono-Regular,Menlo,monospace}.ownerVerificationMessage label{color:var(--forest);gap:7px;font-size:.8rem;font-weight:800;display:grid}.ownerVerificationMessage label small{color:#746f66;font-weight:400}.ownerVerificationMessage textarea{resize:vertical;background:#fff;border:1px solid #d9ceb9;border-radius:14px;min-height:250px;padding:12px;line-height:1.45}.ownerVerificationSend{min-height:48px}.ownerVerificationFooter{flex-wrap:wrap;gap:9px;display:flex}.ownerVerificationNotice{color:#245b45;background:#e8f2e8;border-radius:12px;margin:0;padding:10px 12px;font-size:.78rem;line-height:1.4}.ownerVerificationHint{color:#675f52;background:#f7edd8;border-radius:12px;margin:-3px 0 2px;padding:10px 12px;font-size:.78rem;line-height:1.45}@media (max-width:640px){.ownerVerificationStep{grid-template-columns:32px minmax(0,1fr)}.ownerVerificationStep>.adminSoftBtn,.ownerVerificationStep>.adminApproveBtn,.ownerVerificationStep>.ownerVerificationActive,.ownerVerificationStep>.ownerVerificationReady,.ownerVerificationStep>.ownerVerificationExpired{grid-column:2;justify-self:start}.ownerVerificationCode{flex-direction:column;align-items:flex-start}}.ownerVerificationNotice>strong{color:var(--forest);margin-bottom:4px;display:block}.ownerVerificationNotice>span{display:block}.adminSearchForm{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;margin:18px 0 8px;display:grid}.adminSearchForm input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fffaf2;border-radius:14px;padding:13px 14px}.adminSearchForm button,.adminSearchForm a{text-align:center;border:0;border-radius:14px;padding:13px 16px;font-weight:800}.adminSearchForm button{background:var(--forest);color:#fff;cursor:pointer}.adminSearchForm a{color:var(--forest);background:#ece8df}.adminSearchSummary{color:var(--muted);margin:8px 0 0;font-size:.82rem}@media (max-width:640px){.adminSearchForm{grid-template-columns:1fr 1fr}.adminSearchForm input{grid-column:1/-1}.adminSearchForm button,.adminSearchForm a{width:100%}}.reviewScreen{background:linear-gradient(#fbf3e5 0%,#f8efdf 100%)}.reviewScreen>.eyebrow{color:#b96749}.reviewForm .field>label{color:#173e32;font-weight:800}.reviewForm textarea{background:#fffaf1}.returnField{background:#f3e6d6;border-radius:18px;padding:16px}.ratingSeals button{transition:transform .18s,color .18s}.ratingSeals button:hover{transform:translateY(-1px)}@media (max-width:420px){.ratingSeals{gap:5px}.ratingSeals button{width:44px;height:44px}.scoreField{padding:14px 12px}}@media (prefers-reduced-motion:reduce){.ratingSeals button{transition:none}}.adminPhotoManagementSection{border-top:1px solid var(--line);margin-top:38px;padding-top:30px}.adminPhotoManagementSection h2{color:var(--forest);margin:6px 0 8px;font:700 1.85rem Georgia,serif}.adminPhotoManagementSection>p{color:var(--muted);max-width:780px}.adminManagedPhotos{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.adminManagedPhoto{border:1px solid var(--line);background:#fff;border-radius:18px;gap:10px;padding:10px;display:grid}.adminManagedPhoto.isPrimary{border-color:#c9a24d;box-shadow:inset 0 0 0 2px #c9a24d24}.adminManagedPhotoImage{aspect-ratio:4/3;cursor:zoom-in;background:#eee7da;border:0;border-radius:14px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.adminManagedPhotoImage img{object-fit:cover;width:100%;height:100%;display:block}.adminManagedPhotoImage span{color:#f4d493;background:#173f32;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;position:absolute;bottom:8px;left:8px}.adminManagedPhotoCopy{gap:3px;display:grid}.adminManagedPhotoCopy b{color:var(--forest)}.adminManagedPhotoCopy small{color:var(--muted)}.adminPhotoModal{z-index:150;background:#071b16d1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.adminPhotoModalCard{background:#fffaf0;border-radius:22px;width:min(100%,560px);padding:16px}.adminPhotoModalCard img{object-fit:cover;border-radius:16px;width:100%;max-height:56vh}.adminPhotoModalCard h3{color:var(--forest);margin:15px 0 6px}.adminPhotoModalCard p{color:var(--muted);margin:0}.adminPhotoModalActions{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.adminPhotoModalActions button{border:0;border-radius:12px;min-height:46px;font-weight:800}.adminPhotoModalActions button:first-child{color:var(--forest);background:#ece7df}.adminPhotoLightbox{cursor:zoom-out}.adminPhotoLightbox>img{object-fit:contain;border-radius:18px;max-width:min(94vw,1000px);max-height:86vh}.adminPhotoClose{width:46px;height:46px;color:var(--forest);background:#fffaf0;border:0;border-radius:50%;font-size:28px;position:fixed;top:18px;right:18px}.adminManagedPhotoImage:focus-visible{outline-offset:3px;outline:3px solid #c99f55}@media (max-width:720px){.adminManagedPhotos,.adminPhotoModalActions{grid-template-columns:1fr}}.reviewRatingIntro{background:linear-gradient(135deg,#fff9e9,#f7ead6);border:1px solid #dec996;border-radius:18px;margin:0 0 18px;padding:15px 16px;box-shadow:0 8px 22px #5740230f}.reviewRatingIntro span{background:var(--terracotta);color:#fff;letter-spacing:.12em;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:900;display:inline-flex}.reviewRatingIntro p{color:#5f625a;margin:9px 0 0;font-size:.9rem;line-height:1.45}.reviewForm .scoreField{background:linear-gradient(145deg,#fffaf0,#f8efdf);border:1px solid #e1d3bb;border-radius:18px;margin:0 0 14px;padding:16px 16px 13px;box-shadow:0 6px 18px #223e300b}.reviewForm .scoreField legend{color:var(--forest);padding:0 5px;font-size:1rem;font-weight:850}.reviewForm .scoreField small{color:#766f62}.reviewForm textarea{background:#fffdf8;border-color:#d9c9ae}.reviewForm .photoPicker{background:#fffaf0;border-color:#baaa8f}.reviewForm .returnField{background:#fff8ec;border:1px solid #dfceb3;border-radius:18px;padding:16px}@media (max-width:390px){.ratingSeals{gap:4px}.ratingSeals button{width:43px;height:43px}}
.auth{width:min(100%,620px);margin:0 auto;padding:28px 20px 120px}.auth>a:first-child{color:var(--forest);align-items:center;gap:6px;margin-bottom:12px;font-weight:700;display:inline-flex}.auth h1{margin-top:6px}.authForm{margin-top:18px}.field{gap:8px;margin-bottom:16px;display:grid}.field label{color:var(--ink);font-size:.84rem;font-weight:700}.field input,.field select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:54px;color:var(--ink);border-radius:14px;outline:none;padding:0 14px}.field textarea{background:var(--paper)}.field input:focus,.field select:focus,.field textarea:focus,.search:focus{border-color:var(--forest);box-shadow:0 0 0 3px #173e321a}.btn{cursor:pointer;text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:12px 16px;font-weight:800;display:inline-flex}.btn-primary{background:var(--forest);color:#fff;border:1px solid var(--forest)}.btn-secondary,.btn-outline{color:var(--forest);border:1px solid var(--forest);background:0 0}.empty{background:var(--paper);border:1px solid var(--line);color:var(--muted);border-radius:16px;padding:16px}.empty b,.empty strong{color:var(--ink)}.formCard{background:var(--paper);border:1px solid var(--line);border-radius:20px;gap:16px;margin-top:18px;padding:18px;display:grid}.formCard label{gap:8px;font-weight:700;display:grid}.formCard select{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:48px;padding:0 12px}.form-error,.formError{color:var(--ink);border:1px solid var(--line);background:#f5f2ea;border-radius:12px;margin:10px 0;padding:12px 14px;font-size:.9rem}.successCard{color:var(--forest);background:#edf5ef;border:1px solid #bfd6c5;border-radius:16px;gap:6px;padding:18px;display:grid}.dangerGhost{color:#8c3527!important;background:0 0!important;border:1px solid #b85f43!important}.hero-title{font-size:clamp(2.2rem,8vw,3.6rem);line-height:1.02}.pad{width:100%;max-width:760px;margin:0 auto}.section{margin-top:28px}.section+.section{margin-top:32px}.serif{font-family:Georgia,Times New Roman,serif}.topbar{grid-template-columns:44px 1fr 44px;align-items:center;min-height:58px;margin-bottom:14px;display:grid}.topbar>:nth-child(2){text-align:center}.topbar>:last-child{text-align:right}.search{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:14px;outline:none;padding:0 14px}.passport{background:var(--forest2);color:#f6e8bd;box-shadow:var(--shadow);border:1px solid #49675d;border-radius:22px;padding:24px 20px}.passport h1,.passport h2,.passport p{color:inherit}.seal{border:2px solid var(--gold);width:92px;height:92px;box-shadow:inset 0 0 0 6px var(--forest2),inset 0 0 0 8px var(--gold);border-radius:50%;place-items:center;margin:18px auto;font:700 1.7rem Georgia,serif;display:grid}.stat{min-width:0}.restaurantPage{padding-top:0}.achievementHistory{gap:10px;display:grid}.form-error{display:block}.successCard span{color:#49675d}.authNoticeOverlay,.appNoticeOverlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1228217a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.authNoticeCard,.appNoticeCard{text-align:center;background:#fffaf0;border:1px solid #173e321f;border-radius:28px;gap:14px;width:min(100%,430px);padding:30px 24px 24px;display:grid;position:relative;box-shadow:0 24px 80px #0e261f47}.authNoticeCard h2,.appNoticeCard h2{color:var(--forest);margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.7rem}.authNoticeCard p,.appNoticeCard p{color:var(--muted);margin:0;line-height:1.55}.authNoticeIcon,.appNoticeIcon{background:#edf5ef;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto;font-size:1.7rem;display:grid}.authNoticeClose,.appNoticeClose{width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.8rem;line-height:1;position:absolute;top:12px;right:14px}.authNoticeClose:hover,.appNoticeClose:hover{background:#173e3212}.appNotice-success .appNoticeIcon{background:#e6f3e9}.appNotice-warning .appNoticeIcon{background:#fff2d8}.appNoticeCard .btn{width:100%}@media (max-width:560px){.auth{padding:22px 16px 110px}.hero-title{font-size:2.3rem}.btn{width:100%}.topbar{grid-template-columns:40px 1fr 40px}.passport{border-radius:18px;padding:22px 16px}.authNoticeOverlay,.appNoticeOverlay{padding:16px}.authNoticeCard,.appNoticeCard{border-radius:24px;padding:28px 18px 20px}}
.bottomNav{overflow:visible!important}.bottomNav .publishNavItem{justify-content:flex-end!important;align-items:center!important;padding-top:34px!important;display:flex!important;position:relative!important;overflow:visible!important}.bottomNav .publishNavItem .publishFab{background:var(--terracotta)!important;color:#fff!important;z-index:2!important;border-radius:50%!important;place-items:center!important;width:58px!important;height:58px!important;margin:0!important;display:grid!important;position:absolute!important;top:-23px!important;left:50%!important;transform:translate(-50%)!important;box-shadow:0 8px 20px #b85f434d!important}.bottomNav .publishNavItem .publishFab svg{width:28px!important;height:28px!important}.bottomNav .publishNavItem .bottomNavLabel{margin:0!important;line-height:1!important}
.appHeaderMenu{align-items:center;display:flex;position:relative}.appHeaderMenu>summary{cursor:pointer;list-style:none}.appHeaderMenu>summary::-webkit-details-marker{display:none}.appHeaderMenu[open]>summary{background:#173e3214}.appHeaderMenuPanel{z-index:80;border:1px solid var(--line);background:#fffaf0;border-radius:16px;width:min(76vw,280px);padding:8px;display:grid;position:absolute;top:48px;left:0;overflow:hidden;box-shadow:0 18px 38px #1a2d242e}.appHeaderMenuPanel a{min-height:44px;color:var(--forest);border-radius:11px;align-items:center;padding:10px 12px;font-size:.88rem;font-weight:700;display:flex}.appHeaderMenuPanel a:hover,.appHeaderMenuPanel a:focus-visible{background:#f1eadc;outline:none}.appHeaderLink{place-items:center;display:grid}.appHeader .brand{min-width:0}.appHeader .headerPlace{white-space:nowrap}.appHeader .iconBtn svg{pointer-events:none}@media (max-width:420px){.appHeader{padding-inline:10px}.appHeader .headerPlace{display:none}.appHeaderMenuPanel{width:min(84vw,270px);left:-2px}}
.storyStops{gap:12px;margin-top:24px}.storyStop{border-radius:20px;grid-template-columns:132px minmax(0,1fr);display:grid}.storyStopMedia{height:100%;min-height:172px}.storyStopBody{min-width:0;padding:13px 14px}.storyStopIndex{font-size:.56rem}.storyStopBody h3{overflow-wrap:anywhere;margin:5px 0 4px;font-size:1.35rem;line-height:1.02}.storyStopBody>small{margin-bottom:7px;font-size:.72rem}.storyStopBody>p{margin-bottom:8px;font-size:.82rem;line-height:1.4}.storyMetrics{gap:5px;margin:7px 0}.storyMetrics span{padding:5px 7px;font-size:.62rem}.storyTapaFeature{border-left-width:3px;border-radius:0 11px 11px 0;gap:5px;margin:8px 0;padding:9px 10px}.storyTapaFeature>span{font-size:.52rem}.storyTapaFeature h4{font-size:1.08rem}.storyTapaFeature>p{font-size:.75rem;line-height:1.35}.storyTapaMeta{gap:4px}.storyTapaMeta b,.storyTapaMeta small{padding:4px 6px;font-size:.6rem}.storyActionsWrap{margin-top:7px}.storyStop .restaurantActionGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:7px 0 8px}.storyStop .restaurantActionGrid>*{border-radius:13px;gap:3px;min-height:62px;padding:5px;font-size:.68rem;line-height:1.05}.storyStop .restaurantActionGrid svg{width:19px;height:19px}.storyStop .restaurantActionGrid span{font-size:.62rem}.storyStop .notice{border-radius:10px;margin:3px 0 7px;padding:7px 9px;font-size:.66rem;line-height:1.25}.storyRestaurantLink{margin-top:7px;font-size:.76rem}.storyRouteMapSection{margin-top:22px}@media (max-width:560px){.storyStops{gap:9px;margin-top:20px}.storyStopsHead h2{font-size:1.65rem}.storyStop{border-radius:17px;grid-template-columns:108px minmax(0,1fr)}.storyStopMedia{min-height:154px}.storyStopBody{padding:11px 10px}.storyStopBody h3{font-size:1.18rem}.storyStopBody>small{font-size:.66rem}.storyMetrics span{font-size:.58rem}.storyStop .restaurantActionGrid>*{min-height:56px;font-size:.63rem}.storyStop .restaurantActionGrid svg{width:17px;height:17px}}@media (max-width:390px){.storyStop{grid-template-columns:96px minmax(0,1fr)}.storyStopMedia{min-height:146px}.storyStopBody{padding:10px 9px}.storyStopBody h3{font-size:1.08rem}.storyTapaFeature{padding:8px}.storyStop .restaurantActionGrid>*{min-height:54px;padding:4px;font-size:.6rem}.storyRestaurantLink{font-size:.7rem}}
