:root{--ceramic: #fbfaf3;--ink: #14323f;--adria: #14556e;--adria-deep: #0e3b4e;--lemon: #f2c12e;--lemon-soft: #f7de7e;--olive: #6e7f4e;--gold: #c29a45;--ceramic-2: #f4f1e4;--ink-60: rgba(20, 50, 63, .62);--ink-40: rgba(20, 50, 63, .4);--gold-line: rgba(194, 154, 69, .55);--adria-tint: rgba(20, 85, 110, .08);--shadow-soft: 0 18px 40px -22px rgba(14, 59, 78, .45);--shadow-card: 0 10px 30px -18px rgba(14, 59, 78, .55);--font-display: "Cormorant Garamond", "Georgia", "Times New Roman", serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--step-xs: .75rem;--step-sm: .875rem;--step-base: 1rem;--step-md: 1.25rem;--step-lg: 1.75rem;--step-xl: 2.5rem;--step-2xl: 3.25rem;--maxw: 40rem;--gutter: clamp(1.1rem, 5vw, 2rem);--radius: 14px;--radius-lg: 22px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1)}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cormorant-garamond-600.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond-500italic.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--step-base);line-height:1.6;color:var(--ink);background-color:var(--ceramic);background-image:radial-gradient(circle at 18% 12%,rgba(247,222,126,.16),transparent 42%),radial-gradient(circle at 85% 8%,rgba(20,85,110,.06),transparent 40%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.05;letter-spacing:.01em;color:var(--ink)}.display-xl{font-size:var(--step-2xl)}.display-lg{font-size:var(--step-xl)}em,.accent-italic{font-style:italic;color:var(--adria)}.caption{font-family:var(--font-body);font-size:var(--step-xs);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--adria)}.app-shell{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter) 5rem}.hairline{height:1px;width:100%;background:linear-gradient(90deg,transparent,var(--gold-line) 15%,var(--gold-line) 85%,transparent);border:none}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;padding:.9rem 0 .7rem;background:linear-gradient(to bottom,var(--ceramic) 62%,rgba(251,250,243,0));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--step-sm);font-weight:600;color:var(--adria);padding:.4rem .2rem}.back-link svg{width:1.1rem;height:1.1rem}.back-link:active{transform:translate(-2px)}.page-head{text-align:center;padding:.5rem 0 1.4rem}.page-head h1{font-size:var(--step-xl);margin-bottom:.35rem}.page-head p{color:var(--ink-60);font-size:var(--step-sm);max-width:30ch;margin:0 auto}:focus-visible{outline:2px solid var(--adria);outline-offset:3px;border-radius:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;font-weight:600;font-size:var(--step-sm);letter-spacing:.02em;transition:transform .15s var(--ease-out),box-shadow .2s var(--ease-out),background .2s;min-height:44px}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{background:var(--adria);color:#fff;box-shadow:var(--shadow-card)}.btn-primary:hover{background:var(--adria-deep)}.btn-lemon{background:var(--lemon);color:var(--ink)}.btn-lemon:hover{background:var(--lemon-soft)}.btn-ghost{background:transparent;color:var(--adria);border:1px solid var(--gold-line)}.btn-danger{background:transparent;color:var(--adria-deep);border:1px solid rgba(14,59,78,.35)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.divider-wrap{display:flex;justify-content:center;padding:1.6rem 0}.majolica-divider{width:min(100%,22rem);height:24px}.pw-input{width:100%;padding:.9rem 1rem;border:1px solid var(--gold-line);border-radius:var(--radius);background:#fff;color:var(--ink);font-size:1rem}.pw-input:focus-visible{outline:2px solid var(--adria);outline-offset:1px}.form-error{color:#9a3412;font-size:var(--step-sm);margin-top:.2rem}.wax-seal{width:74px;height:74px;filter:drop-shadow(0 4px 8px rgba(14,59,78,.35))}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--gutter);background:radial-gradient(circle at 50% 0%,rgba(247,222,126,.28),transparent 55%),linear-gradient(160deg,var(--adria) 0%,var(--adria-deep) 100%);color:var(--ceramic)}.splash-inner{width:100%;max-width:22rem;text-align:center}.splash-inner .caption{color:var(--lemon-soft)}.splash-inner h1{color:var(--ceramic);font-size:var(--step-2xl);margin:.3rem 0 .6rem}.splash-lemon{width:76px;margin:0 auto .4rem}.splash-text{color:#fbfaf3d9;margin-bottom:1.4rem}.splash-form{display:flex;flex-direction:column;gap:.7rem}.splash-form .form-error{color:var(--lemon-soft)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:var(--gutter);background:#0e3b4e80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:100%;max-width:21rem;background:var(--ceramic);border-radius:var(--radius-lg);padding:1.6rem 1.4rem;text-align:center;box-shadow:var(--shadow-soft);border:1px solid var(--gold-line)}.modal-seal{width:60px;margin:-2.6rem auto .4rem}.modal-seal .wax-seal{width:60px;height:60px}.modal-card h2{font-size:var(--step-lg);margin:.1rem 0 .9rem}.modal-card .pw-input{margin-bottom:.5rem}.modal-actions{display:flex;gap:.6rem;margin-top:.9rem}.modal-actions .btn{flex:1}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:grid;place-items:center;padding:var(--gutter);background:#0e3b4e8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);visibility:hidden}.popup-card{position:relative;width:100%;max-width:22rem;background:var(--ceramic);border-radius:var(--radius-lg);padding:2.4rem 1.5rem 1.6rem;text-align:center;box-shadow:var(--shadow-soft);border:1px solid var(--gold-line)}.popup-stamp{width:84px;height:84px;margin:-3.2rem auto .5rem}.popup-title{font-size:var(--step-lg);line-height:1.15;margin:.3rem 0 1.1rem}.popup-kicker{color:var(--gold)}.toast-stack{position:fixed;left:50%;bottom:calc(1rem + env(safe-area-inset-bottom));transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:.5rem;width:max-content;max-width:92vw;pointer-events:none}.toast{display:flex;align-items:center;gap:.55rem;background:var(--adria-deep);color:var(--ceramic);padding:.7rem 1.05rem;border-radius:999px;font-size:var(--step-sm);box-shadow:var(--shadow-card)}.toast-emoji{font-size:1.1rem}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:96;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.4rem;padding:1rem;background:#09202af0}.lightbox-img{grid-column:1 / -1;grid-row:1;max-width:100%;max-height:86dvh;margin:0 auto;border-radius:8px;box-shadow:0 20px 60px -20px #000000b3}.lightbox-close,.lightbox-nav{grid-row:1;z-index:2;color:#fff;font-size:2rem;line-height:1;width:3rem;height:3rem;border-radius:999px;background:#ffffff1f;display:grid;place-items:center}.lightbox-close{position:absolute;top:calc(.8rem + env(safe-area-inset-top));right:.8rem;font-size:1.6rem}.lightbox-nav.prev{grid-column:1;justify-self:start}.lightbox-nav.next{grid-column:3;justify-self:end}.lemon-progress{position:relative;width:150px;margin:0 auto;filter:saturate(calc(.35 + .65 * var(--ripe, 0)));transition:filter .9s var(--ease-out)}.lemon-progress svg{width:100%;height:auto;overflow:visible}.lemon-juice{transform-box:fill-box}.lemon-progress-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;transform:translateY(14%)}.lemon-progress-label .pct{font-family:var(--font-display);font-weight:600;font-size:1.35rem;color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.5)}.confetti-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:5}.confetti-piece{position:absolute;width:18px;height:18px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);transition-delay:calc(var(--i, 0) * 55ms)}.reveal.is-in{opacity:1;transform:none}.home{padding-top:1.5rem}.home-hero{position:relative;text-align:center;padding:2rem 0 1.4rem}.hero-kicker{color:var(--gold)}.hero-title{margin:.4rem 0 .9rem;letter-spacing:.005em}.hero-greeting{color:var(--ink-60);max-width:32ch;margin:0 auto;font-size:var(--step-md);line-height:1.5}.hero-deco{position:absolute;z-index:-1;opacity:.85;will-change:transform}.hero-olive{width:120px;top:.5rem;left:-1rem;transform:rotate(-8deg)}.hero-lemon{width:58px;top:1.2rem;right:0}.countdown{margin-top:1.4rem;display:inline-flex;flex-direction:column;align-items:center;gap:.15rem;padding:.9rem 1.6rem;border:1px solid var(--gold-line);border-radius:var(--radius-lg);background:linear-gradient(180deg,rgba(247,222,126,.16),transparent)}.countdown-big{font-family:var(--font-display);font-weight:600;font-size:3rem;line-height:1;color:var(--adria)}.countdown-small{color:var(--ink-60)}.lemon-stage{text-align:center;padding:1.6rem 0 .4rem}.lemon-caption{margin-top:.6rem;color:var(--ink-40)}.tiles{display:grid;grid-template-columns:1fr;gap:.85rem;margin-top:1.8rem}.tile{position:relative;text-align:left;padding:1.15rem 1.3rem;border-radius:var(--radius);background:#fff;border:1px solid var(--gold-line);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:.15rem;overflow:hidden;transition:transform .18s var(--ease-out),box-shadow .2s var(--ease-out)}.tile:before{content:"";position:absolute;top:-18px;right:-18px;width:46px;height:46px;background:radial-gradient(circle at center,var(--lemon-soft) 0 40%,transparent 42%);opacity:.5}.tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.tile:active{transform:translateY(0) scale(.995)}.tile-label{font-family:var(--font-display);font-size:var(--step-lg);font-weight:600;color:var(--ink)}.tile-sub{font-size:var(--step-sm);color:var(--ink-60)}.tile-teaser .tile-sub{font-style:italic;color:var(--adria)}.home-footer{margin-top:2.6rem;text-align:center}.admin-dot{width:34px;height:34px;opacity:.5;transition:opacity .2s}.admin-dot:hover{opacity:1}.admin-dot svg{width:100%}.footer-note{margin-top:.4rem;font-size:var(--step-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40)}.koffer-progress{display:flex;justify-content:center;padding:.4rem 0 1.4rem}.koffer-lemon{width:136px}.koffer-list{display:flex;flex-direction:column;gap:.55rem}.koffer-item{border-radius:var(--radius);border:1px solid var(--gold-line);background:#fff;overflow:hidden}.koffer-check{display:flex;align-items:center;gap:.85rem;width:100%;padding:.85rem 1rem;text-align:left;min-height:44px}.check-box{flex:0 0 auto;width:24px;height:24px;border-radius:7px;border:2px solid var(--adria);display:grid;place-items:center;transition:background .2s}.check-mark{color:#fff;font-size:.9rem;transform:scale(0)}.check-emoji{flex:0 0 auto;font-size:1.15rem;line-height:1}.check-label{font-size:var(--step-base);color:var(--ink)}.koffer-item.is-checked .check-box{background:var(--lemon);border-color:var(--lemon)}.koffer-item.is-checked .check-mark{transform:scale(1);color:var(--ink)}.koffer-item.is-checked .check-label{color:var(--ink-40);text-decoration:line-through}.koffer-item.is-checked .check-emoji{opacity:.45}.koffer-hint{text-align:center;margin-top:1rem;color:var(--ink-40)}.crew-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.crew-cell{perspective:1000px}.crew-card{display:block;width:100%;position:relative}.crew-inner{position:relative;width:100%;min-height:208px;transform-style:preserve-3d;transition:transform .6s var(--ease-out)}.crew-card.is-flipped .crew-inner{transform:rotateY(180deg)}.crew-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--radius);border:1px solid var(--gold-line);background:#fff;box-shadow:var(--shadow-card);padding:.9rem;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}.crew-front{position:absolute;top:0;right:0;bottom:0;left:0}.crew-front{justify-content:flex-start;gap:.1rem}.crew-cell{display:flex}.crew-cell .crew-card{display:flex;flex-direction:column}.crew-cell .crew-inner{flex:1}.crew-watermark{position:absolute;right:-20px;bottom:-16px;width:104px;opacity:.09;transform:rotate(-14deg);pointer-events:none}.crew-watermark svg{width:100%}.crew-photo{width:62px;height:62px;border-radius:999px;margin:.35rem 0 .45rem;display:grid;place-items:center;color:var(--ink);font-family:var(--font-display);font-size:1.75rem;font-weight:600;box-shadow:inset 0 0 0 3px #ffffff80}.crew-photo.crew-var-0{background:radial-gradient(circle at 35% 30%,var(--lemon-soft),var(--lemon))}.crew-photo.crew-var-1{background:radial-gradient(circle at 35% 30%,#fdf6dd,var(--lemon-soft));box-shadow:inset 0 0 0 3px #ffffff80,inset 0 0 0 4px #c29a4573}.crew-photo.crew-var-2{background:radial-gradient(circle at 35% 30%,#e9edda,#b9c49a)}.crew-name{font-family:var(--font-display);font-size:var(--step-md);font-weight:600;line-height:1.1}.crew-nick{font-size:var(--step-sm);font-style:italic;color:var(--adria)}.crew-teaser{margin-top:auto;padding-top:.5rem;border-top:1px solid var(--gold-line);width:100%;display:flex;flex-direction:column;gap:.12rem}.crew-teaser-label{color:var(--ink-40);font-size:.56rem}.crew-teaser-value{font-size:var(--step-sm);color:var(--ink);line-height:1.25}.crew-flip-hint{margin-top:.45rem;color:var(--ink-40);font-size:.62rem}.crew-role{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:.15rem .5rem;border-radius:999px;margin-bottom:.15rem}.crew-role.queen{background:var(--lemon);color:var(--ink)}.crew-role.trauzeugin{background:var(--adria);color:#fff}.crew-back{position:relative;min-height:100%;transform:rotateY(180deg);justify-content:center;gap:.4rem;background:linear-gradient(170deg,#fff,var(--ceramic-2))}.crew-trait{font-size:var(--step-sm);font-style:italic;color:var(--ink);line-height:1.35}.crew-stats{width:100%;display:flex;flex-direction:column;gap:.45rem;text-align:left}.crew-stats dt{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-40)}.crew-stats dd{font-size:var(--step-sm);color:var(--ink)}.jump-bar{display:inline-block;width:100%;height:7px;border-radius:999px;background:var(--adria-tint);overflow:hidden;vertical-align:middle}.jump-fill{display:block;height:100%;background:linear-gradient(90deg,var(--adria),var(--lemon));border-radius:999px}.jump-pct{font-size:.7rem;color:var(--adria);font-weight:600}.crew-card.is-gold .crew-face{border:2px solid var(--gold);box-shadow:0 0 0 1px #c29a454d,var(--shadow-card)}.challenge-list{display:flex;flex-direction:column;gap:1rem}.challenge-card{position:relative;border-radius:var(--radius-lg);border:1px solid var(--gold-line);background:#fff;padding:1.1rem 1.2rem 1.2rem;box-shadow:var(--shadow-card);overflow:hidden;cursor:pointer;transition:transform .15s var(--ease-out)}.challenge-card:active{transform:scale(.99)}.challenge-card:focus-visible{outline:2px solid var(--adria);outline-offset:2px}.challenge-card.status-active{border-color:var(--adria);box-shadow:0 0 0 1px var(--adria),var(--shadow-card)}.challenge-card.status-done{background:linear-gradient(180deg,#fff,#f7de7e1f)}.challenge-card.status-failed{background:linear-gradient(180deg,#fff,#14556e0f)}.ch-head{display:flex;align-items:flex-start;gap:.7rem}.ch-icon{font-size:1.6rem;line-height:1;flex:0 0 auto}.ch-headtext{flex:1 1 auto;min-width:0}.ch-index{color:var(--gold)}.ch-title{font-size:var(--step-lg);line-height:1.1;margin-top:.1rem}.ch-desc{margin-top:.6rem;color:var(--ink-60);font-size:var(--step-sm);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ch-pol-hint{margin-top:.55rem;color:var(--adria)}.ch-foot{margin-top:.7rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem}.ch-more{color:var(--gold);white-space:nowrap}.ch-status-line,.status-active .ch-status-line{color:var(--adria)}.status-done .ch-status-line{color:var(--olive)}.status-failed .ch-status-line{color:var(--adria-deep)}.ch-stamp{flex:0 0 auto;align-self:flex-start;transform:rotate(-12deg);font-family:var(--font-display);font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:.5rem .55rem;border-radius:999px;width:62px;height:62px;display:grid;place-items:center;text-align:center;line-height:1}.ch-stamp.stamp-done{color:var(--ceramic);background:radial-gradient(circle at 35% 30%,var(--gold),#a97f2e);border:2px dashed rgba(251,250,243,.6);box-shadow:0 4px 10px -4px #a97f2eb3}.ch-stamp.stamp-failed{color:var(--ceramic);background:radial-gradient(circle at 35% 30%,var(--adria),var(--adria-deep));border:2px dashed rgba(251,250,243,.5);box-shadow:0 4px 10px -4px #0e3b4eb3}.ch-strafe{margin-top:.9rem;border-radius:var(--radius);background:linear-gradient(120deg,var(--adria),var(--adria-deep));color:var(--ceramic);padding:.85rem 1rem;overflow:hidden}.strafe-label{display:block;font-family:var(--font-display);font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lemon-soft);margin-bottom:.2rem}.strafe-text{font-size:var(--step-sm);line-height:1.45}.challenge-locked-teaser{margin-top:1.2rem;text-align:center;font-style:italic;color:var(--ink-40);padding:1rem;border:1px dashed var(--gold-line);border-radius:var(--radius)}.ch-polaroids{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--gold-line)}.pol-head{color:var(--ink-40);margin-bottom:.7rem}.pol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.pol-slot{display:flex;flex-direction:column;align-items:center;gap:.3rem}.pol-img,.pol-add{width:100%;aspect-ratio:1;border-radius:8px;object-fit:cover;background:var(--ceramic-2);border:1px solid var(--gold-line)}.pol-add{display:grid;place-items:center;color:var(--adria);font-size:1.6rem;border-style:dashed}.pol-slot.is-filled .pol-img{box-shadow:var(--shadow-card)}.pol-name{font-size:.62rem;color:var(--ink-60);text-align:center}.pol-progress{margin-top:.7rem;text-align:center;color:var(--adria)}.ch-detail-overlay{z-index:95}.modal-card.ch-detail{max-width:26rem;max-height:86dvh;overflow-y:auto;text-align:left}.ch-detail-icon{display:block;font-size:2rem;line-height:1;margin-bottom:.4rem}.ch-detail-title{font-size:var(--step-lg);line-height:1.1;margin:.15rem 0 .6rem}.ch-detail-desc{color:var(--ink-60);font-size:var(--step-sm);line-height:1.55}.ch-detail-steps{margin-top:.95rem;padding-top:.85rem;border-top:1px solid var(--gold-line)}.ch-detail-steps .caption{color:var(--gold);margin-bottom:.5rem}.ch-detail-steps ol{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.5rem}.ch-detail-steps li{font-size:var(--step-sm);color:var(--ink);line-height:1.5}.ch-detail .ch-strafe{margin-top:.95rem}.ch-detail-close{width:100%;margin-top:1.15rem}.route-wave{width:100%;height:20px;overflow:hidden;margin-bottom:.4rem}.route-wave svg{width:130%;height:100%}.route-list{position:relative;counter-reset:stop}.route-stop{position:relative;display:grid;grid-template-columns:40px 1fr;gap:.9rem;padding-bottom:1.1rem}.route-rail{display:flex;flex-direction:column;align-items:center}.route-dot{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:var(--adria);color:#fff;font-family:var(--font-display);font-weight:600;font-size:1.05rem;box-shadow:var(--shadow-card);z-index:1}.route-stop:not(:last-child) .route-rail:after{content:"";flex:1;width:2px;margin-top:4px;background:repeating-linear-gradient(to bottom,var(--gold-line) 0 6px,transparent 6px 12px)}.route-stop.is-unlocked .route-dot{background:var(--lemon);color:var(--ink)}.route-card{position:relative;border-radius:var(--radius);border:1px solid var(--gold-line);background:#fff;box-shadow:var(--shadow-card);min-height:92px;overflow:hidden}.card-revealed{padding:.95rem 1.1rem}.route-time{color:var(--gold)}.route-title{font-size:var(--step-lg);margin:.1rem 0 .35rem}.route-text{font-size:var(--step-sm);color:var(--ink-60);line-height:1.5}.card-ghost{position:absolute;top:0;right:0;bottom:0;left:0;padding:.95rem 1.1rem;display:flex;flex-direction:column;gap:.55rem}.ghost-line{display:block;height:10px;border-radius:6px;background:linear-gradient(90deg,#14556e66,#14556e29)}.ghost-line.ghost-title{height:17px;background:linear-gradient(90deg,#0e3b4e8c,#0e3b4e40)}.w-30{width:30%}.w-60{width:60%}.w-75{width:75%}.w-90{width:90%}.route-stop:not(.is-unlocked) .route-card{min-height:176px}.card-locked{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;text-align:center;padding:1.1rem;background:linear-gradient(160deg,#fbfaf38c,#f4f1e4b8);backdrop-filter:blur(14px) saturate(.75);-webkit-backdrop-filter:blur(14px) saturate(.75);box-shadow:inset 0 0 0 1px #fbfaf399}.route-locked-text{font-size:var(--step-sm);font-style:italic;color:var(--adria-deep);max-width:26ch}.album-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.album-count{color:var(--ink-40)}.album-empty{text-align:center;color:var(--ink-40);font-style:italic;padding:2.5rem 1rem;border:1px dashed var(--gold-line);border-radius:var(--radius)}.album-grid{column-count:2;column-gap:.6rem}@media (min-width: 30rem){.album-grid{column-count:3}}.album-thumb{display:block;width:100%;margin:0 0 .7rem;padding:.45rem .45rem 0;background:linear-gradient(180deg,#fff,#fdfcf7);border:1px solid rgba(194,154,69,.3);border-radius:3px;box-shadow:0 1px 2px #0e3b4e1f,var(--shadow-card);break-inside:avoid;transform:rotate(var(--tilt, 0deg));transition:transform .2s var(--ease-out)}.album-thumb:active{transform:rotate(0) scale(1.02)}.album-thumb img{width:100%;border-radius:1px;background:var(--ceramic-2)}.polaroid-caption{display:block;padding:.45rem .2rem .55rem;font-family:var(--font-display);font-style:italic;font-size:.85rem;color:var(--ink-40);text-align:center;line-height:1}.admin .topbar{justify-content:space-between}.admin-logout{font-size:var(--step-sm);color:var(--adria);padding:.4rem .8rem;border-radius:999px}.admin-section{margin-bottom:1.8rem}.admin-h2{font-size:var(--step-lg);margin-bottom:.7rem;padding-bottom:.4rem;border-bottom:1px solid var(--gold-line)}.admin-challenges,.admin-locations{display:flex;flex-direction:column;gap:.6rem}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap;padding:.8rem .9rem;border-radius:var(--radius);border:1px solid var(--gold-line);background:#fff}.admin-row.status-active{border-color:var(--adria)}.admin-row-main{display:flex;align-items:center;gap:.6rem;flex:1 1 60%;min-width:0}.admin-row-idx{flex:0 0 auto;width:24px;height:24px;border-radius:999px;background:var(--adria-tint);color:var(--adria);display:grid;place-items:center;font-size:.75rem;font-weight:700}.admin-row-title{font-size:var(--step-sm);color:var(--ink)}.admin-muted{color:var(--ink-40);font-style:italic}.admin-badge{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .5rem;border-radius:999px;font-weight:700}.badge-active{background:var(--adria);color:#fff}.badge-locked{background:var(--ceramic-2);color:var(--ink-40)}.badge-done{background:var(--lemon);color:var(--ink)}.badge-failed{background:var(--adria-deep);color:#fff}.admin-row-actions{display:flex;gap:.5rem}.admin-row-actions .btn{padding:.55rem .9rem;min-height:40px;font-size:.8rem}.admin-done-tag{font-size:var(--step-sm);color:var(--olive);font-weight:600}.admin-gate-actions{display:flex;flex-direction:column;gap:.7rem;max-width:20rem;margin:0 auto}
