@import url(https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy&display=swap);@import url(https://fonts.googleapis.com/css2?family=Josefin+Slab:wght@600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Josefin+Slab:wght@600;700;800&family=Sorts+Mill+Goudy:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy:ital,wght@0,400;0,700;1,400&family=Josefin+Slab:wght@400;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Josefin+Slab:wght@400;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Josefin+Slab:wght@400;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Cinzel:wght@700&family=Cormorant+Garamond:wght@700&family=Tinos&family=Crimson+Pro&family=Sanchez&family=Josefin+Slab&family=Sorts+Mill+Goudy&family=Petrona&family=Bellota&family=Molengo&family=Strait&family=Ysabeau+Infant&family=GFS+Neohellenic&display=swap);@tailwind base;@tailwind components;@tailwind utilities;@layer base{body{@apply font-sans}}.footer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;border-top:1px solid #ffffff26;color:#c5cfdd;font-family:Josefin Slab,serif;font-size:17px;padding:20px 10px;text-align:center}.footer-links{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:15px}.footer-link{color:#3d6fa6;text-decoration:none;transition:color .2s ease}.footer-link:hover{color:#c5cfdd;text-decoration:underline}.app-store-badge{margin-bottom:15px}.app-store-badge img{display:inline-block;height:44px;transition:transform .2s ease}.app-store-badge img:hover{transform:scale(1.05)}.footer-text{font-size:15px;margin:0;opacity:.8}.home-disclaimer{border-top:1px solid #ffffff26;color:#fffc;font-size:.85rem;font-style:italic;line-height:1.4;margin:40px auto 20px;max-width:800px;padding:20px 20px 10px;text-align:center}.home-wrapper{--nav-h:60px;grid-gap:60px;align-content:start;background-image:url(/static/media/tpm_bluesky.b2f4dbb4f3a0ec3068fc.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;box-sizing:border-box;display:grid;font-family:Sorts Mill Goudy,serif;gap:60px;grid-template-rows:auto 1fr;justify-items:center;min-height:calc(100dvh - var(--nav-h));overflow:visible;padding:80px 18px 40px;position:relative;width:100%}@supports (height:100svh){.home-wrapper{min0height:calc(100svh - var(--nav-h))}}.home-wrapper:before{background:linear-gradient(180deg,#080e118c,#080e11a6 40%,#080e11bf);content:"";inset:0;pointer-events:none;position:absolute}.home-wrapper>*{position:relative}.home-hero{margin:10px;max-width:980px;text-align:center}.home-hero__title{color:#f2f6f8;font-size:clamp(36px,5.5vw,52px);font-weight:500;letter-spacing:.5px;margin:0 0 40px;text-decoration:none}.home-hero__subtitle{color:#e4ecef;font-size:clamp(20px,2.2vw,24px);line-height:1.65;margin:0 auto;max-width:900px}.home-card__desc,.home-hero__subtitle,.home-wrapper,.home-wrapper p{font-weight:400!important}.home-cards{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr;justify-items:center;width:min(1100px,96%)}@media (min-width:900px){.home-cards{align-items:start;grid-auto-rows:auto;grid-template-columns:repeat(3,1fr)}}.home-card{background:#c5cfdd;border:1px solid #aeb9c8;border-radius:14px;box-shadow:0 2px 6px #0000000f;display:flex;flex-direction:column;justify-content:space-between;padding:20px 20px 18px;width:100%}.home-card__desc{color:#1c2529;display:block;flex-grow:1;font-size:18px;line-height:1.4;margin:0 0 12px;text-align:center;white-space:normal}.home-card__desc em{display:block;font-family:Cormorant Garamond,serif;font-style:italic;font-weight:200;letter-spacing:.3px;margin-top:6px;opacity:.9}.home-card__btn{--btn-blue:#4682b4;--btn-white:#fff;align-items:center;background:var(--btn-white);border:2px solid var(--btn-blue);border-radius:8px;color:var(--btn-blue);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:17px;font-weight:700;gap:8px;height:48px;justify-content:center;margin-top:auto;padding:0 18px;position:relative;text-decoration:none;transition:all .3s ease-out;width:100%}.home-card__btn:hover{background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:var(--btn-white);transform:translateY(-2px)}.home-card__btn:active{box-shadow:0 2px 6px #0b66d64d;transform:translateY(0)}@media (min-width:900px){.home-cards{align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}.home-card{display:flex;flex-direction:column;height:100%;justify-content:space-between;max-height:165px;padding:16px 18px}.home-card__desc{flex:1 1;font-size:17px;line-height:1.35;margin-bottom:10px;text-align:center}.home-card__btn{font-size:15.5px;height:44px;width:100%}}@media (max-width:768px){.home-cards{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;gap:10px;overflow-x:auto;padding:6px 6px 12px;scroll-snap-type:x mandatory}.home-card{align-self:stretch;background:#c5cfdd;border:1px solid #aeb9c8;border-radius:12px;box-shadow:0 2px 6px #0000000d;display:flex;flex:0 0 86%;flex-direction:column;justify-content:space-between;max-height:145px;padding:12px 14px;scroll-snap-align:center}.home-card__desc{display:block;flex:1 1;font-size:15px;line-height:1.35;margin:0 0 8px;text-align:center}.home-card__desc em{display:block;font-size:14px;margin-top:4px}.home-card__btn{border-width:1.5px;font-size:14.5px;height:40px;width:100%}.home-cards::-webkit-scrollbar{display:none}.home-cards{scrollbar-width:none}}.is-mac-safari .resort-header{grid-column-gap:12px;align-items:center;column-gap:12px;display:grid!important;grid-template-areas:"left center right";grid-template-columns:auto minmax(0,1fr) auto;height:48px;padding:0 12px;position:relative}.is-mac-safari .resort-header-row2{display:contents!important}.is-mac-safari .rentals-chip{grid-area:left;justify-self:start;transform:translate(10px,-10px)!important;white-space:nowrap}.is-mac-safari .resort-name{grid-area:center;justify-self:center;transform:translate(230px,-10px)!important}.is-mac-safari .drive-time,.is-mac-safari .resort-name{margin:0;overflow:hidden;position:static!important;text-overflow:ellipsis;white-space:nowrap}.is-mac-safari .drive-time{grid-area:right;justify-self:end;transform:translate(408px,-10px)!important}.is-mac-safari .vertical-divider{display:none!important}.is-mac-safari .resort-header-row2>*,.is-mac-safari .resort-header>*{min-width:0}body,html{background:linear-gradient(#000000b3,#000000b3),url(/static/media/tpm_bluesky.b2f4dbb4f3a0ec3068fc.jpg) no-repeat 50% fixed;background-size:cover;color:#fff;font-family:Sorts Mill Goudy,serif;margin:0;overflow-x:hidden;padding:0;width:100%}:root{--btn-white:#fff}.ski-resort-finder-container .resort-card,.ski-resort-finder-container .resort-card:active,.ski-resort-finder-container .resort-card:focus,.ski-resort-finder-container .resort-card:hover{box-shadow:2px 2px 12px #0003!important;filter:none!important;transform:none!important;transition:none!important}.page-container{align-items:center;display:flex;flex-direction:column;margin:20px auto 0;max-width:1000px;min-height:100vh;padding:40px 20px}.page-container h1{color:#fff;font-size:3rem;font-weight:700;letter-spacing:2px;margin-bottom:20px;text-align:center}.stat-block--snow{align-items:stretch;display:flex;padding:3px 5px}.stat-block--snow .stat-value{line-height:1!important;margin:0!important}.stat-block--snow .stat-label{line-height:1.15!important;margin:0!important}.snow-col{display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:0 4px;text-align:center}.snow-col--full{flex:1 1;text-align:center}.snow-divider{background:#0000001a;width:1px}.resort-title-row{align-items:center;display:flex;gap:8px;justify-content:center}.resort-status-pill{border:1px solid #0000001a;border-radius:9999px;box-shadow:0 1px 2px #0000002e;font-family:Josefin Slab,serif;font-size:11px;font-weight:600;letter-spacing:.06em;padding:3px 12px;text-transform:uppercase;white-space:nowrap}.resort-status-open{background:#e5f7e8;color:#1d6b33}.resort-status-closed{background:#fde4e4;color:#9d1c1c}.filters-container{background:#0000;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px}.filters-container select{border-radius:8px;font-family:Sorts Mill Goudy,serif;font-size:18px;font-weight:700;padding:10px 14px}.button-group button,.page-container>button,.shred-button button{align-items:center;background:#ffffffa6;border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:8px;box-shadow:none;color:#4682b4;color:var(--btn-blue);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:18px;font-weight:700;gap:8px;height:54px;justify-content:center;margin-top:4px;overflow:hidden;padding:0 20px;position:relative;text-decoration:none;transition:all .3s ease-out;width:auto}.button-group button:hover,.page-container>button:hover,.shred-button button:hover{background:#4682b4;background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:#fff;color:var(--btn-white);transform:translateY(-2px)}.button-group button:active,.page-container>button:active,.shred-button button:active{box-shadow:0 2px 6px #0b66d64d;transform:translateY(0)}.shred-button{background:#0000;border:0;margin-top:10px;padding:0}.ski-resort-finder-container{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:30px;width:100%}.resort-card{align-items:center;background:#c5cfdd!important;border:1px solid #aeb9c8;border-radius:14px;box-shadow:0 2px 6px #0000000f;display:flex;flex-direction:column;margin-bottom:20px;max-width:825px;padding:20px 25px 20px 10px;width:100%}.resort-card.selected{box-shadow:0 0 0 2px #1e90ff20,0 6px 20px #00000014;outline:2px solid #1e90ff20}.resort-header{align-items:center;display:grid;grid-template-columns:auto 1fr auto;height:48px;padding:0 12px;width:100%}.rentals-chip{--btn-blue:#4682b4;--btn-white:#fff;align-items:center;background:#ffffffa6;border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:8px;color:#4682b4;color:var(--btn-blue);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:18px;font-weight:700;gap:8px;height:38px;justify-content:center;justify-self:start;overflow:hidden;padding:0 14px;transform:translate(10px,-10px);transition:all .3s ease-out;width:auto}.rentals-chip:hover{background:#4682b4;background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:#fff;color:var(--btn-white);transform:translate(10px,-12px)}.rentals-chip:active{box-shadow:0 2px 6px #0b66d64d;transform:translate(10px,-10px)}.resort-name{color:#222;font-family:Sorts Mill Goudy,serif;font-size:1.8rem;font-weight:700;justify-self:center;left:50%;line-height:1;margin:0;position:absolute;transform:translateX(calc(-50% - 30px));white-space:nowrap}.resort-name,.resort-name .resort-link{align-items:center;text-decoration:none}.resort-name .resort-link{color:#3d6fa6;cursor:pointer;display:inline-flex;gap:6px;transition:color .2s ease}.resort-name .resort-link .label{border-bottom:2px solid;display:inline-block;padding-bottom:1px}.resort-name .arrow{font-size:.9em;text-decoration:none;transform:translateY(-1px)}@media (hover:hover){.resort-name .resort-link:hover{color:#3d6fa6}}.resort-name .resort-link:focus-visible{border-radius:6px;outline:2px solid #3d6fa6;outline-offset:2px}@media (max-width:768px){.resort-name{position:static!important;text-align:center;transform:none!important}}.drive-time{color:#222;font-family:Josefin Slab,serif;font-size:1.5rem;font-weight:600;justify-self:end;line-height:1;position:absolute;transform:translate(660px);white-space:nowrap}@media (max-width:1280px){.is-mac .resort-card{--drive-time-shift:580px}}.resort-layout{flex-wrap:wrap;gap:10px;justify-content:space-evenly;margin-top:5px;width:100%}.resort-layout,.resort-middle{align-items:center;display:flex}.resort-middle{flex:1 1;flex-direction:column;min-width:280px}.resort-middle h3{font-size:24px;margin:0 0 20px;text-align:center}.resort-image-block{text-align:center}.resort-image-container{max-width:350px;position:relative;width:100%}.resort-image-container img{border-radius:10px;width:100%}.resort-image-container{border-radius:10px;overflow:hidden}.elevation-overlay{align-items:center;background:linear-gradient(180deg,#222,#444);border:2px solid #fff;border-radius:12px;box-shadow:2px 2px 6px #00000080;color:#fff;display:flex;font-family:Josefin Slab,serif;font-size:16px;font-weight:700;gap:6px;padding:6px 14px;position:absolute;z-index:2}.elevation-top{right:8px;top:8px}.elevation-bottom{bottom:10px;right:8px}.terrain-overlay{background:#ffffffd9;border-radius:12px;bottom:14px!important;box-shadow:2px 2px 5px #0000004d;color:#000;display:flex;flex-direction:column;font-family:Josefin Slab,serif;font-size:16px;font-weight:800;gap:6px;left:8px!important;padding:6px 10px;position:absolute;top:auto!important;z-index:2}.terrain-bubble{gap:6px}.resort-right,.terrain-bubble{align-items:center;display:flex}.resort-right{flex:1 1;flex-direction:column;gap:8px;justify-content:center;margin-top:32px;min-width:280px}.button-group{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,auto);justify-content:center;margin-bottom:8px}.stats-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-block{background:#ffffffa6;border:1px solid #0000000f;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:8px 10px;text-align:center}.stat-value{color:#222;font-size:1.6rem;line-height:1.2}.stat-label,.stat-value{font-family:Josefin Slab,serif}.stat-label{color:#444;font-size:.75rem;font-weight:500;line-height:1.1;margin-top:4px}.modal-overlay{background-color:#000000b3}.modal-content{align-items:center;border-radius:16px;box-shadow:0 10px 25px #00000040;display:flex;flex-direction:column;font-family:Josefin Slab,serif;max-width:900px;text-align:center;width:95%}.modal-content h3{font-size:26px;font-weight:700;margin-bottom:0;margin-top:10px}.back-home-button{--btn-blue:#4682b4;--btn-gray:#e0e0e0;align-items:center;background:var(--btn-gray);border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:8px;color:#4682b4;color:var(--btn-blue);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:18px;font-weight:700;gap:8px;justify-content:center;margin:65px auto;padding:10px 20px;transition:all .3s ease}.back-home-button:hover{background:#4682b4;background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:#fff;transform:translateY(-2px)}.back-home-button:active{box-shadow:0 2px 6px #0b66d64d;transform:translateY(0)}@media (max-width:768px){.page-container h1{font-size:2.2rem;line-height:1.15;margin:12px auto;text-align:center}.filters-container{gap:10px;margin:8px 0 12px;padding:0 12px;width:100%}.filters-container select{font-size:16px;padding:10px 12px;width:100%}.page-container>button{margin:6px 12px 14px;width:calc(100% - 24px)}.ski-resort-finder-container{gap:12px;padding:0 10px}.resort-card{border-radius:16px;max-width:100%;padding:10px 14px 18px}.resort-header{grid-gap:8px;display:grid;gap:8px;grid-template-areas:"name" "row2";grid-template-columns:1fr;height:auto!important;padding:8px 12px}.resort-name{color:#000;font-size:1.6rem;grid-area:name;margin:0;position:static!important;text-align:center;text-decoration:underline;transform:none!important}.resort-header-row2{align-items:center;display:flex;gap:16px;justify-content:space-between;width:100%}.rentals-chip{background:#fff;background:var(--btn-white);border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:6px;color:#4682b4;color:var(--btn-blue);flex:1 1 auto;flex:0 0 auto;font-size:.9rem;height:34px;min-width:0;padding:0 12px;text-align:left;transform:none!important}.vertical-divider{align-self:stretch;background:#00000040;flex:0 0 1px}.drive-time{color:#000;font-size:.9rem;margin:0!important;position:static!important;transform:none!important;white-space:nowrap}.resort-middle{min-width:100%}.resort-image-container{max-width:100%}.resort-image-container img{display:block;height:auto;width:100%}.elevation-overlay{border-radius:16px;font-size:12px;gap:6px;padding:2px 6px}.elevation-top{right:4px;top:4px}.elevation-bottom{bottom:4px;right:4px}.terrain-overlay{border-radius:10px;font-size:14px;gap:6px;padding:6px 8px}.resort-right{gap:8px;margin-top:12px;min-width:100%;padding:0 2px}.button-group{gap:10px;grid-template-columns:1fr;margin-bottom:8px;width:100%}.button-group button{padding:0 14px}.button-group button,.shred-button{font-size:16px;height:48px;width:100%}.shred-button{align-items:center;justify-content:center}.stats-grid{gap:14px 18px;grid-template-columns:1fr 1fr;margin-top:12px}.stat-value{font-size:1.1rem}.stat-label{font-size:.85rem;margin-top:6px}}.resort-right .stat-value{color:#222;font-family:Josefin Slab,serif;font-size:1.2rem;font-weight:600;line-height:1.2}.resort-right .stat-label{color:#444;font-family:Josefin Slab,serif;font-size:.9rem;font-weight:500;line-height:1.1;margin-top:4px}@media (max-width:768px){.resort-right .stat-value{font-size:1.2rem}.resort-right .stat-label{font-size:.85rem}}:root{--btn-blue:#4682b4;--btn-fg:#1f3b61}.tpm-split{align-items:stretch;display:inline-flex;height:54px;position:relative}.tpm-split .split-caret,.tpm-split .split-main{align-items:center;background:#ffffffa6;border:2px solid #4682b4;border:2px solid var(--btn-blue);color:#4682b4;color:var(--btn-blue);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:18px;font-weight:700;gap:8px;justify-content:center;padding:0 16px;transition:all .2s ease-out}.tpm-split .split-main{border-radius:8px 0 0 8px;border-right:1px solid #4682b4;border-right:1px solid var(--btn-blue)}.tpm-split .split-caret{border-radius:0 8px 8px 0;padding:0;width:48px}.tpm-split .split-caret:hover,.tpm-split .split-main:hover{background:#4682b4;background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:#fff;transform:translateY(-2px)}.tpm-split .split-caret:active,.tpm-split .split-main:active{box-shadow:0 2px 6px #0b66d64d;transform:translateY(0)}.tpm-split .disabled,.tpm-split .disabled:active,.tpm-split .disabled:hover{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.plan-menu{background:#fffffffa;border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:10px;box-shadow:0 12px 30px #00000040;color:#1f3b61;color:var(--btn-fg);min-width:260px;padding:12px;position:absolute;right:0;top:calc(100% + 8px);z-index:10}.plan-menu .menu-title{color:#1f3b61;color:var(--btn-fg);font:800 16px/1 Josefin Slab,serif;margin:0 0 10px}.plan-menu .menu-list{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:0 0 10px;padding:0}.plan-menu .menu-item{background:#ffffffa6;border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:8px;color:#4682b4;color:var(--btn-blue);cursor:pointer;font:700 16px/1.1 Josefin Slab,serif;padding:10px 12px;text-align:left;transition:all .2s ease-out;width:100%}.plan-menu .menu-item:hover{box-shadow:0 4px 12px #0b66d659;transform:translateY(-2px)}.plan-menu .menu-item.selected,.plan-menu .menu-item:hover{background:#4682b4;background:var(--btn-blue);color:#fff}.plan-menu .menu-cancel{background:#ffffffa6;border:2px solid #4682b4;border:2px solid var(--btn-blue);border-radius:8px;color:#4682b4;color:var(--btn-blue);cursor:pointer;font:700 16px/1 Josefin Slab,serif;padding:10px 12px;transition:all .2s ease-out;width:100%}.plan-menu .menu-cancel:hover{background:#4682b4;background:var(--btn-blue);box-shadow:0 4px 12px #0b66d659;color:#fff;transform:translateY(-2px)}.plan-error{color:#c0392b;font:700 14px/1 Josefin Slab,serif;margin-top:6px;opacity:.85}.modal-overlay .map-modal:not(.map-modal--wide){animation:weather-pop .18s ease-out;background:#c5cfdd;background:var(--pm-bg);border:2px solid #4682b459;border:2px solid var(--pm-border);border-radius:14px;box-shadow:0 20px 40px #0000002e;box-shadow:var(--pm-shadow);color:#1f3b61;color:var(--pm-ink);display:grid;font-family:Josefin Slab,serif;font-size:1.08rem;font-weight:700;grid-template-rows:auto 1fr auto;line-height:1.45;margin:20px;max-width:min(92vw,640px);min-width:480px;width:auto}.map-modal:not(.map-modal--wide) .map-header{align-items:center;border-bottom:2px solid #4682b459;border-bottom:2px solid var(--pm-border);display:flex;justify-content:space-between;padding:14px 18px 12px}.map-modal:not(.map-modal--wide) .map-title{color:#1f3b61;color:var(--pm-ink);font-family:Sorts Mill Goudy,serif;font-size:1.35rem;font-weight:700;letter-spacing:.2px;margin:0}.map-modal:not(.map-modal--wide) .map-close{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #e2a5aa;border-radius:10px;color:#97333a;cursor:pointer;font-weight:900;padding:8px 10px;transition:transform .06s ease,background .15s ease}.map-modal:not(.map-modal--wide) .map-close:hover{background:#ffeef0;transform:translateY(-1px)}.map-modal:not(.map-modal--wide) .map-body{overflow:auto;padding:12px 18px 16px}.weather-content{grid-gap:12px 16px;align-items:start;color:#1f3b61;color:var(--pm-ink);display:grid;gap:12px 16px;grid-template-columns:1fr 1fr}.weather-left,.weather-right{display:grid;justify-items:center;text-align:center}.weather-left h4,.weather-right h4{color:#395b85;color:var(--pm-ink-2);font-family:Sorts Mill Goudy,serif;font-size:1.18rem;font-weight:700;margin:0 0 8px}.weather-content p{color:#1f3b61;color:var(--pm-ink);line-height:1.15;margin:6px 0;text-align:left}.map-modal:not(.map-modal--wide) .map-footer{border-top:2px solid #4682b459;border-top:2px solid var(--pm-border);display:flex;gap:10px;justify-content:center;padding:12px 18px 20px}.map-modal:not(.map-modal--wide) .btn{-webkit-appearance:none;appearance:none;border:2px solid #0000;border-radius:10px;box-shadow:0 6px 14px #3d6fa647;cursor:pointer;font-weight:900;padding:10px 14px;transition:transform .06s ease,background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.map-modal:not(.map-modal--wide) .btn-primary{background:#3d6fa6;background:var(--pm-blue);border-color:#2f5f94;border-color:var(--pm-blue-d);color:#fff}.map-modal:not(.map-modal--wide) .btn-primary:hover{transform:translateY(-1px)}@keyframes weather-pop{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}@media (max-width:720px){.modal-overlay .map-modal:not(.map-modal--wide){font-size:1.02rem;min-width:0;width:92vw}.weather-content{grid-template-columns:1fr}.map-modal:not(.map-modal--wide) .map-title{font-size:1.2rem}}:root{--pm-panel:#c5cfdd}.modal-overlay{background:#00000059}.modal-overlay .map-modal.map-modal--wide{background:#c5cfdd;background:var(--pm-panel);border:2px solid #4682b459;border-radius:14px;box-shadow:0 20px 40px #0000002e;color:#1f3b61;color:var(--pm-ink);display:grid;font-family:Josefin Slab,serif;grid-template-rows:auto 1fr auto;max-height:min(90vh,860px);overflow:hidden;width:clamp(720px,92vw,980px)}.map-modal.map-modal--wide .map-header{align-items:center;border-bottom:2px solid #4682b440;display:flex;justify-content:space-between;padding:14px 16px}.map-modal.map-modal--wide .map-title{color:#1f3b61;color:var(--pm-ink);font-size:1.35rem;font-weight:900;margin:0}.map-modal.map-modal--wide .map-close{background:#fff;border:2px solid #cdd9ea;border-radius:10px;color:#1f3b61;color:var(--pm-ink);cursor:pointer;font-weight:900;padding:8px 12px;transition:transform .06s ease,background .15s ease}.map-modal.map-modal--wide .map-close:hover{background:#f2f6ff;transform:translateY(-1px)}.map-modal.map-modal--wide .map-body{overflow:hidden;padding:16px}.map-modal.map-modal--wide .map-body .map-container,.map-modal.map-modal--wide .map-body .map-container>div{background:#eef3fa;border:2px solid #3d6fa6;border:2px solid var(--pm-blue);border-radius:12px;height:440px!important;overflow:hidden;width:100%!important}.map-modal.map-modal--wide .map-footer{border-top:2px solid #4682b440;display:flex;gap:10px;justify-content:center;padding:12px 16px 16px}.map-modal.map-modal--wide .btn{border:2px solid #0000;border-radius:10px;cursor:pointer;font-weight:900;padding:10px 14px;transition:transform .06s ease,background .15s ease,color .15s ease,box-shadow .15s ease,border-color .15s ease}.map-modal.map-modal--wide .btn-primary{background:#3d6fa6;background:var(--pm-blue);border-color:#2f5f94;border-color:var(--pm-blue-d);box-shadow:0 6px 14px #3d6fa647;color:#fff}.map-modal.map-modal--wide .btn-primary:hover{transform:translateY(-1px)}.map-modal.map-modal--wide .btn-ghost{background:#fff;border-color:#cdd9ea;color:#1f3b61;color:var(--pm-ink)}.map-modal.map-modal--wide .btn-ghost:hover{background:#f2f6ff;transform:translateY(-1px)}.map-modal.map-modal--wide .btn-danger{background:#fff;border-color:#e2a5aa;color:#97333a}.map-modal.map-modal--wide .btn-danger:hover{background:#ffeef0;transform:translateY(-1px)}.map-modal.map-modal--wide .map-label{align-items:center;background:#c5cfdd;background:var(--pm-panel);border:2px solid #3d6fa6;border:2px solid var(--pm-blue);border-radius:12px;box-shadow:0 6px 14px #3d6fa62e;color:#1f3b61;color:var(--pm-ink);display:inline-flex;font-weight:900;gap:8px;padding:8px 12px;white-space:nowrap}.map-modal.map-modal--wide input[type=search],.map-modal.map-modal--wide input[type=text],.map-modal.map-modal--wide select{background:#c5cfdd;background:var(--pm-panel);border:2px solid #3d6fa6;border:2px solid var(--pm-blue);border-radius:10px;color:#1f3b61;color:var(--pm-ink);font-weight:700;padding:10px 12px;width:100%}:root{--pm-bg:#c5cfdd;--pm-ink:#1f3b61;--pm-ink-2:#395b85;--pm-blue:#3d6fa6;--pm-blue-d:#2f5f94;--pm-border:#4682b459;--pm-shadow:0 20px 40px #0000002e}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#c5cfdd;background:var(--pm-bg);display:grid;padding:0;place-items:center;z-index:9999}.rental-modal{animation:pm-pop .18s ease-out;background:#c5cfdd;background:var(--pm-bg);border:2px solid #4682b459;border:2px solid var(--pm-border);border-radius:14px;box-shadow:0 20px 40px #0000002e;box-shadow:var(--pm-shadow);color:#1f3b61;color:var(--pm-ink);font-family:Josefin Slab,serif;font-weight:700;overflow:hidden;width:min(720px,92vw)}.rental-header{align-items:center;border-bottom:2px solid #4682b459;border-bottom:2px solid var(--pm-border);display:flex;gap:12px;justify-content:space-between;padding:14px 18px 12px}.rental-title{color:#1f3b61;color:var(--pm-ink);font-family:Sorts Mill Goudy,serif;font-size:1.35rem;font-weight:700;letter-spacing:.2px;margin:0}.rental-media{display:block;padding:14px 18px 0}.rental-media img{border-radius:12px;height:200px;object-fit:cover;width:100%}.rental-body{grid-gap:10px;display:grid;gap:10px;padding:12px 18px 6px}.info-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:22px 1fr auto}.info-icon{color:#395b85;color:var(--pm-ink-2);font-size:1.05rem}.info-text{font-size:1rem;line-height:1.45}.info-action,.info-text{color:#1f3b61;color:var(--pm-ink)}.info-action{background:#fff;border:2px solid #4682b459;border:2px solid var(--pm-border);border-radius:10px;font-size:.95rem;padding:6px 10px;text-decoration:none;transition:transform .06s ease,background .15s ease,border-color .15s ease}.info-action:hover{background:#f2f6ff;transform:translateY(-1px)}.link{color:#3d6fa6;color:var(--pm-blue);text-decoration:underline}.rental-note{color:#395b85;color:var(--pm-ink-2);font-size:1rem;line-height:1.5;margin:6px 0 0}.rental-footer{border-top:2px solid #4682b459;border-top:2px solid var(--pm-border);display:flex;gap:10px;justify-content:center;padding:12px 18px 18px}.btn{-webkit-appearance:none;appearance:none;border:2px solid #0000;border-radius:10px;box-shadow:0 6px 14px #3d6fa647;cursor:pointer;font-weight:900;padding:10px 14px;transition:transform .06s ease,background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.btn-sm{padding:8px 10px}.btn-primary{background:#3d6fa6;background:var(--pm-blue);border-color:#2f5f94;border-color:var(--pm-blue-d);color:#fff;text-decoration:none}.btn-primary:hover{text-decoration:underline;transform:translateY(-1px)}.btn-outline{border-color:#cdd9ea;box-shadow:none;color:#395b85;color:var(--pm-ink-2)}.btn-outline:hover{background:#f2f6ff}.btn-ghost{background:#fff;border-color:#e2a5aa;box-shadow:none;color:#97333a}.btn-ghost:hover{background:#ffeef0;transform:translateY(-1px)}@keyframes pm-pop{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}@media (max-width:480px){.rental-media img{height:160px}.rental-title{font-size:1.2rem}}.map-modal.resort-sheet{background:#0a4cb1;border:1px solid #00000014;border-radius:18px;box-shadow:0 10px 28px #0000002e;font-family:Josefin Slab,serif;max-width:680px;overflow:hidden;width:92%}.map-title .resort-title-text{color:#000;font-family:Sorts Mill Goudy,serif;font-size:1.35rem;letter-spacing:.2px;margin-left:8px}.pass-badge{margin-left:.25rem}.pass-chip{background:#f6f8fc;border:1px solid #00000014;color:#2b2f3a;font-size:12px;font-weight:700;padding:0 10px}.pass-chip.epic{background:#dfe7fb;border-color:#0b5ed759;color:#123}.pass-chip.ikon{background:#ffe8cf;border-color:#00000014;color:#231a0e}.resort-sheet__stats{margin:12px 14px}.stat{align-items:center;background:#f7f9fc;border:1px solid #e9eef7}.stat-icon{font-size:1.05rem}.stat-body{line-height:1.1}.stat-label{font-size:.8rem}.stat-value{font-size:.98rem;font-weight:700}.resort-sheet__ratings{margin:0 14px 12px}.rating-item{border:1px solid #ececf2}.rating-label{font-size:.8rem;margin-bottom:4px}.rating-stars{font-size:.98rem;letter-spacing:1px}.resort-sheet__grid{margin:10px 14px 8px}.pc-card{border:1.5px solid #e9e9f0}.pc-card__header h3{font-size:1rem}.pc-list{margin:0;padding-left:18px}.pc-list li{line-height:1.5}.map-footer{align-items:center;border-top:1px solid #0000000f;display:flex;justify-content:flex-end;padding:10px 14px 12px}.map-footer .learn-more{border-bottom:1px solid #0000;color:#0b5ed7;font-weight:700;text-decoration:none}.map-footer .learn-more:hover{border-bottom-color:initial}@media (max-width:560px){.map-modal.resort-sheet{width:94%}.resort-sheet__grid,.resort-sheet__ratings,.resort-sheet__stats{grid-template-columns:1fr}}:root{--blue:#0b5ed7;--blue-dark:#0a4cb1}.back-home-button{background:#fff;border-radius:999px;box-shadow:0 4px 12px #0003;color:#333;font-size:16px;font-weight:600;left:20px;padding:6px 10px;position:fixed;text-decoration:none;top:18px;z-index:1000}.pass-type-page{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 80px);padding:28px 16px}.simple-card{background:#c5cfdd;border:1px solid #aeb9c8;border-radius:22px;border-radius:var(--radius);box-shadow:0 10px 28px #0000002e;box-shadow:var(--shadow);font-family:Josefin Slab,serif;line-height:1.55;padding:20px 24px;width:min(670px,88vw)}.simple-title{align-items:center;display:flex;font-size:clamp(28px,3.2vw,42px);gap:8px;justify-content:center;letter-spacing:.2px;margin:0 0 12px;text-align:center}.emoji-badge{background:none;border:none;box-shadow:none;color:inherit;display:inline-block;font-size:1.2em;margin:0;transform:translateY(-6px)}.chip-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:8px 0 18px}.chip{background:#fff;border:2px solid #0b5ed740;border-radius:999px;box-shadow:0 2px 0 #0000000d;color:#2b2f3a;color:var(--ink);cursor:pointer;font-family:Josefin Slab,serif;font-size:18px;font-weight:800;padding:8px 14px}.chip.active{background:#f3f7ff;border-color:#0b5ed78c;color:#0b5ed7;color:var(--blue)}.two-lists{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}@media (min-width:760px){.two-lists{grid-template-columns:1fr 1fr}}.list-title{font-size:24px;font-weight:700;margin:0 0 8px;text-align:center}.pass-badge{text-transform:none}.pass-badge.epic{text-transform:lowercase}.resort-list{list-style:none;margin:0;padding:0}.resort-row{align-items:center;border-radius:12px;display:flex;gap:8px;padding:6px 2px;transition:background .12s ease,box-shadow .12s ease}.resort-row:hover{background:#f7f9fc;box-shadow:inset 0 0 0 1px #00000014;box-shadow:inset 0 0 0 1px var(--border)}.name{color:#2b2f3a;color:var(--ink);flex:1 1;font-size:18px;font-weight:700;letter-spacing:.15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{background:none;border:none;border-radius:0;color:#556070;color:var(--muted);font-size:17px;font-weight:600;margin-left:0;padding:0}.dot{border-radius:50%;height:8px;width:8px}.dot.epic,.dot.ikon{background:#3a7be0}.info-pill{background:#fff;border:2px solid #0b5ed759;border-radius:999px;box-shadow:0 1px 0 #0000000f;color:#0b5ed7;color:var(--blue);cursor:pointer;display:grid;font-family:Josefin Slab,serif;font-size:20px;font-weight:1000;height:28px;place-items:center;width:28px}.info-pill:hover{background:#f3f7ff;border-color:#0b5ed799}.buttons-container{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px}.buy-button{background:#fff;border:2px solid #0b5ed773;border-radius:14px;box-shadow:0 2px 0 #0000000d;color:#2b2f3a;color:var(--ink);font-family:Josefin Slab,serif;font-size:18px;font-weight:700;padding:10px 18px;text-decoration:none;transition:background .12s ease,transform .1s ease,border-color .12s ease}.buy-button:hover{background:#f3f7ff;border-color:#0b5ed7b3;text-decoration:underline;transform:translateY(-1px)}.modal-overlay{background:#0009;overflow:auto;overscroll-behavior:contain;padding:16px;z-index:999}.modal-content,.resort-sheet{-webkit-overflow-scrolling:touch;animation:slideUp .25s ease-out;background:#fff;border-radius:18px;box-shadow:0 10px 28px #0000002e;box-shadow:var(--shadow);font-family:Sorts Mill Goudy,serif;max-height:calc(92dvh - 16px);overflow:auto;padding:28px 24px;width:min(680px,92vw)}body.modal-open{overflow:hidden;touch-action:none}.modal-content h2{color:#2b2f3a;color:var(--ink);font-size:26px;margin:0 0 14px}.modal-content strong{color:#0a4cb1;color:var(--blue-dark);display:block;margin-top:16px}.modal-content ul{color:#2b2f3a;color:var(--ink);list-style:none;margin:8px 0 0;padding-left:0}.modal-content li{line-height:1.55;margin:8px 0}.close-modal-button{background:#fff;border:2px solid #0b5ed773;border-radius:12px;color:#2b2f3a;color:var(--ink);font-weight:700;margin-top:18px;padding:10px 18px}.close-modal-button:hover{background:#f3f7ff;border-color:#0b5ed7b3}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.resort-sheet{background:#c5cfdd!important;border-radius:22px;border-radius:var(--radius);box-shadow:0 10px 28px #0000002e;box-shadow:var(--shadow);font-family:Josefin Slab,serif;max-width:680px;padding:22px 20px 16px;position:relative}.resort-sheet__header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.resort-sheet__title{align-items:center;display:flex;gap:10px}.resort-sheet__title h2{color:#2b2f3a;color:var(--ink);font-size:2rem;font-weight:800;letter-spacing:.3px;margin:0}.pass-chip{background:#e8e8e8;border:1px solid #0000000f;border-radius:999px;color:#333;font-size:.75rem;font-weight:600;letter-spacing:.3px;padding:6px 10px}.pass-chip.epic{background:#6f4aa0;color:#fff}.pass-chip.ikon{background:#f0a23c;color:#211b0e}.close-modal-button.x{align-items:center;background:#fff;border:2px solid #e74c3c;border-radius:50%;color:#e74c3c;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:32px;justify-content:center;line-height:1;position:absolute;right:14px;top:14px;transition:background .15s ease,color .15s ease;width:32px}.close-modal-button.x:hover{background:#e74c3c;color:#fff}.resort-sheet__stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0 8px}.stat{background:#fff;border:2px solid #0b5ed740;border-radius:12px;box-shadow:none!important;display:flex;gap:10px;padding:10px 12px}.stat-icon{color:#0b5ed7;color:var(--blue);font-size:1.1rem}.stat-body{line-height:1.15}.stat-label{color:#556070;color:var(--muted);font-size:1.2rem;font-weight:600;margin-bottom:2px}.stat-value{color:#2b2f3a;color:var(--ink);font-size:1.05rem;font-weight:400}.resort-sheet__ratings{grid-gap:10px;box-shadow:nonel;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin:2px 0 12px}.rating-item{background:#fff;border:2px solid #0b5ed740;border-radius:10px;padding:10px 12px}.rating-label{color:#556070;color:var(--muted);font-size:1.2rem;font-weight:600}.rating-stars{color:#082a72;font-size:1.05rem;font-weight:400}.resort-sheet__grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:10px 0 8px}.pc-card{background:#fff;border:2px solid #0b5ed740;border-radius:14px;padding:12px 14px}.pc-card__header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.pc-card__header h3{font-size:1.2rem;font-weight:600;margin:0}.pc-card__header h3,.pc-list{color:#2b2f3a;color:var(--ink)}.pc-list{font-size:1.05rem;font-weight:400;line-height:1.5}.pc-list li{margin:4px 0}.resort-sheet__footer{align-items:center;display:flex;justify-content:space-between;margin-top:12px}.resort-sheet__footer .learn-more{border-bottom:1px solid #0000;font-weight:600;text-decoration:none}.resort-sheet__footer .learn-more:hover{border-bottom-color:initial}@media (max-width:520px){.simple-card{border-radius:18px;padding:18px}.name{font-size:16px}.emoji-badge{transform:translateY(0)}.back-home-button{left:10px;right:auto;top:10px}.resort-sheet{padding:18px 16px 14px}.resort-sheet__grid,.resort-sheet__ratings,.resort-sheet__stats{grid-template-columns:1fr}}.state-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:8px 0 18px}.state-filter-label{color:#556070;color:var(--muted);font-weight:600}.state-filter-label,.state-filter-select{font-family:Josefin Slab,serif;font-size:18px}.state-filter-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;utf8,<svg fill=%27%230b5ed7%27 height=%2720%27 width=%2720%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M5 7l5 5 5-5%27/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:2px solid #0b5ed759;border-radius:999px;color:#2b2f3a;color:var(--ink);cursor:pointer;font-weight:700;min-width:210px;padding:8px 36px 8px 14px;text-align:center;text-align-last:center}.state-filter-select:focus{border-color:#0b5ed7b3;box-shadow:0 0 0 2px #0b5ed740;box-shadow:0 0 0 2px var(--ring)}@media (max-width:520px){.state-filter-row{align-items:stretch;flex-direction:column}.state-filter-select{width:100%}}:root{--tpm-ink-sub:#395b85;--tpm-blue-dark:#2f5f94;--tpm-blue-ring:#3d6fa647;--tpm-border:#4682b459;--tpm-danger:#97333a;--tpm-danger-br:#e2a5aa;--tpm-ghost-br:#cdd9ea}.manage-friends-panel,.manage-friends-panel *{font-family:Josefin Slab,serif;font-weight:700}.manage-friends-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000059;display:grid;inset:0;place-items:center;position:fixed;z-index:1000}.manage-friends-panel{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #4682b459;border:2px solid var(--tpm-border);border-radius:14px;box-shadow:0 20px 40px #0000002e;max-height:min(86vh,900px);overflow:auto;padding:18px;width:min(720px,92vw)}.manage-friends-panel,.mf-title{color:#1f3b61;color:var(--tpm-ink)}.mf-title{font-size:1.4rem;font-weight:900;letter-spacing:.3px;margin:0 0 12px}.manage-friends-panel input[type=search],.manage-friends-panel input[type=tel],.manage-friends-panel input[type=text],.manage-friends-panel select,.mf-input{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #3d6fa6;border:2px solid var(--tpm-blue);border-radius:10px;color:#1f3b61;color:var(--tpm-ink);font-weight:700;outline:none;padding:12px 14px;transition:box-shadow .15s ease,border-color .15s ease,transform .06s ease;width:100%}.manage-friends-panel input:focus,.manage-friends-panel select:focus,.mf-input:focus{border-color:#2f5f94;border-color:var(--tpm-blue-dark);box-shadow:0 0 0 4px #3d6fa647;box-shadow:0 0 0 4px var(--tpm-blue-ring)}.manage-friends-panel .danger,.manage-friends-panel .ghost,.manage-friends-panel .primary,.mf-btn{border:2px solid #0000;border-radius:10px;cursor:pointer;font-weight:900;padding:10px 14px;transition:transform .06s ease,background .15s ease,color .15s ease,box-shadow .15s ease,border-color .15s ease,filter .12s ease}.manage-friends-panel .primary{background:#3d6fa6;background:var(--tpm-blue);border-color:#2f5f94;border-color:var(--tpm-blue-dark);box-shadow:0 6px 14px #3d6fa647;box-shadow:0 6px 14px var(--tpm-blue-ring);color:#fff}.manage-friends-panel .primary:hover{transform:translateY(-1px)}.manage-friends-panel .ghost{background:#fff;border-color:#cdd9ea;border-color:var(--tpm-ghost-br);color:#395b85;color:var(--tpm-ink-sub)}.manage-friends-panel .ghost:hover{background:#f2f6ff;transform:translateY(-1px)}.manage-friends-panel .danger{background:#fff;border-color:#e2a5aa;border-color:var(--tpm-danger-br);color:#97333a;color:var(--tpm-danger)}.manage-friends-panel .danger:hover{background:#ffeef0;transform:translateY(-1px)}.hint{color:#395b85;color:var(--tpm-ink-sub);font-size:.95rem;font-weight:700}.add-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:1fr auto auto;margin-bottom:12px}.add-row input{composes:mf-input}.add-row button.primary{composes:mf-btn}.suggestions-wrap{grid-gap:10px;display:grid;gap:10px;margin:6px 0 14px}.sugs-head{color:var(--muted);font-size:.95rem;font-weight:900;margin:2px 0 0}.suggestions-list{background:var(--panel);border:2px solid var(--panel-edge);border-radius:12px;margin:0;overflow:hidden}.suggestions-list li{grid-gap:10px;align-items:center;background:var(--chip-bg);border-bottom:1px solid #dae6f4;color:var(--ink);display:grid;font-family:Josefin Slab,serif;font-weight:500;gap:10px;grid-template-columns:34px 1fr auto;padding:10px 12px;transition:background .12s ease,transform .06s ease,box-shadow .12s ease}.suggestions-list li:last-child{border-bottom:0}.suggestions-list li:hover{background:var(--chip-bg-hover);box-shadow:0 6px 14px var(--ring);transform:translateY(-1px)}.suggestions-list li:focus-visible{outline:2px solid var(--blue-d);outline-offset:-2px}.suggestions-list .avatar-wrap,.suggestions-list .emoji-avatar{display:none!important}.suggestions-list .avatar{border-radius:999px;height:24px;object-fit:cover;width:24px}.suggestions-list .handle{color:var(--ink);font-weight:900}.suggestions-list .add-btn{background:#fff;border:2px solid var(--ghost-edge);border-radius:10px;color:var(--blue-d);font-weight:900;padding:6px 10px;transition:transform .06s ease,background .12s ease,color .12s ease,box-shadow .12s ease}.suggestions-list .add-btn:hover{background:#f2f6ff;transform:translateY(-1px)}.divider{border:none;border-top:1px solid #4682b459;border-top:1px solid var(--tpm-border);margin:14px 0}.setting-row{margin:10px 0}.toggle{align-items:center;display:flex;font-weight:800;gap:10px}.error-text{color:#97333a;color:var(--tpm-danger);font-weight:900}.mf-list{grid-gap:8px;display:grid;gap:8px;margin-top:12px}.friend-item{grid-gap:10px;align-items:center;background:#c5cfdd;background:var(--tpm-bg);border:2px solid #4682b459;border:2px solid var(--tpm-border);border-radius:12px;color:#1f3b61;color:var(--tpm-ink);display:grid;gap:10px;grid-template-columns:28px 1fr auto;padding:10px 12px}.friend-item .remove-btn{background:#fff;border:2px solid #cdd9ea;border:2px solid var(--tpm-ghost-br);border-radius:10px;color:#395b85;color:var(--tpm-ink-sub);cursor:pointer;font-weight:900;padding:8px 12px;transition:transform .06s ease,background .15s ease,border-color .15s ease}.friend-item .remove-btn:hover{background:#f2f6ff;transform:translateY(-1px)}.mf-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}@media (prefers-color-scheme:dark){.manage-friends-overlay{background:#00000073}}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}:root{--ink:#141414;--muted:#5c5c5c;--frame:#d4d4dc;--frame-dark:#0e1322;--chip:#eceff4;--accent:#4b4ea1;--accent-dark:#2e316d;--tpm-blue:#3d6fa6;--tpm-blue-dk:#2f5f94;--tpm-ink:#1f3b61;--tpm-bg:#c5cfdd;--tpm-soft:#cdd9ea}body,button,html,input,select,textarea{font-weight:700}.flip-btn,.link,.manage-friends-btn,.primary,.remove-btn,.search-input,.secondary,.select,body,button,html,input,select,textarea{font-family:Josefin Slab,serif!important}.ig-card .ig-footer{align-items:center;display:flex;gap:8px;justify-content:flex-end;padding:12px 14px 16px}.ig-card .ig-footer>*+*{margin-left:12px}.ig-card .ig-footer .gnar-btn,.ig-card .ig-footer .gnar-count,.ig-card .ig-footer .leader-flag{align-items:center;display:inline-flex}.ig-card .ig-footer .gnar-btn{--btn-top:var(--tpm-blue);--btn-bot:var(--tpm-blue-dk);--btn-border:#274f7b;background:linear-gradient(var(--btn-top),var(--btn-bot));border:2px solid var(--btn-border);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff2e,0 4px 10px #00000040;color:#fff;cursor:pointer;font-weight:900;gap:8px;letter-spacing:.3px;line-height:1;padding:10px 16px;transition:box-shadow .12s ease,border-color .12s ease}.ig-card .ig-footer .gnar-btn:hover:not([aria-disabled=true]){border-color:#3d6fa6;border-color:var(--tpm-blue);box-shadow:inset 0 1px 0 #fff3,0 6px 14px #0000004d}.ig-card .ig-footer .gnar-btn:active:not([aria-disabled=true]){box-shadow:inset 0 1px 0 #0003,0 2px 8px #00000038}.ig-card .ig-footer .gnar-btn:focus-visible{box-shadow:0 0 0 3px #ffffff8c,0 0 0 5px #3d6fa68c,inset 0 1px 0 #ffffff2e;outline:none}.ig-card .ig-footer .gnar-btn.liked{background:linear-gradient(140deg,#ffd25e,#ff9a3d);border-color:#7a5200;box-shadow:inset 0 1px 0 #ffffff2e,0 6px 14px #ff993d47;color:#231c00}.ig-card .ig-footer .gnar-btn.is-blocked,.ig-card .ig-footer .gnar-btn[aria-disabled=true]{cursor:not-allowed;filter:grayscale(.05) brightness(.95);opacity:.92}.filters-wrap{margin:0 auto 10px;max-width:1100px;position:relative;z-index:30}.account-chip-btn{background:#121b26eb;border:1px solid #ffffff24;border-radius:12px;box-shadow:0 4px 18px #00000047;color:#e9eef6;cursor:pointer;font-weight:600;padding:10px 14px;pointer-events:auto;position:absolute;right:0;top:-44px;transition:transform .08s ease,background .15s ease,box-shadow .15s ease;z-index:40}.friends-hero{position:relative;z-index:1}@media (max-width:600px){.flip-toggle{align-items:center;display:flex;flex-wrap:wrap;gap:0;justify-content:center;margin-bottom:0;margin-top:0}.flip-btn{flex:0 0 auto}.account-chip-btn{display:block;margin:0 16px 6px auto;position:relative;right:auto;text-align:right;top:auto;width:-webkit-fit-content;width:fit-content}}.ig-card .ig-footer .gnar-count{color:#e8eef7;font-weight:900;letter-spacing:.3px}.ig-card .ig-footer .gnar-chip{align-items:center;background:#ffffff14;border-radius:999px;color:#e8eef7;display:inline-flex;line-height:1;padding:4px 8px}.ig-card .ig-footer .gnar-chip,.tpm-toast{border:1px solid #ffffff2e;font-weight:800}.tpm-toast{background:#0c121ef2;border-radius:999px;bottom:18px;box-shadow:0 10px 24px #00000059;color:#fff;left:50%;padding:10px 14px;position:fixed;transform:translateX(-50%);z-index:1100}@media (prefers-reduced-motion:reduce){.ig-card .ig-footer .gnar-btn{transition:none}}.sr-only{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap;width:1px}.handle{color:#cfd5ea;font-weight:800}.dash{margin:0 .45em;opacity:.6}.friends-page{background:#0000;color:#141414;color:var(--ink);font-family:Josefin Slab,serif;min-height:100dvh;overflow:hidden;position:relative}.friends-hero{margin:28px auto 8px;padding-top:6px;text-align:center}.friends-hero h1{color:#fff;font-family:Sorts Mill Goudy,serif;font-size:clamp(28px,3.6vw,44px);letter-spacing:.3px;margin:0 0 6px}.friends-hero .subtitle{color:#fff;font-weight:700;margin:0}.filter-bar{grid-gap:10px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#c5cfddbf;border:2px solid #4682b459;border-radius:10px;display:grid;gap:10px;grid-template-columns:auto 1fr auto auto;margin:8px auto 14px;padding:10px;width:min(1100px,92vw)}@media (max-width:900px){.filter-bar{grid-template-columns:1fr 1fr}}.filter-bar .manage-friends-btn,.filter-bar .search-input,.filter-bar .select{font-size:1.15rem;padding:14px 16px}.filter-bar .manage-friends-btn{font-weight:800}.search-input,.select{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #3d6fa6;border:2px solid var(--tpm-blue);border-radius:10px;color:#1f3b61;color:var(--tpm-ink);font-weight:700;outline:none;padding:12px 14px;transition:box-shadow .15s ease,border-color .15s ease,transform .06s ease;width:100%}.search-input:hover,.select:hover{transform:translateY(-1px)}.search-input:focus,.select:focus{border-color:#2f5f94;border-color:var(--tpm-blue-dk);box-shadow:0 6px 14px #3d6fa647}.search-input{height:auto;line-height:1.2;min-height:48px;padding-bottom:10px;padding-top:10px;white-space:normal}.search-input::placeholder{text-align:left;white-space:normal}.link,.manage-friends-btn,.primary,.remove-btn,.secondary{background:#fff;border:2px solid #cdd9ea;border:2px solid var(--tpm-soft);border-radius:10px;color:#1f3b61;color:var(--tpm-ink);cursor:pointer;font-weight:900;padding:10px 14px;text-decoration:none;transition:transform .06s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.link:hover,.manage-friends-btn:hover,.secondary:hover{background:#f2f6ff;border-color:#3d6fa6;border-color:var(--tpm-blue);transform:translateY(-1px)}.primary{background:#3d6fa6;background:var(--tpm-blue);border-color:#2f5f94;border-color:var(--tpm-blue-dk);box-shadow:0 6px 14px #3d6fa647;color:#fff}.primary:hover{transform:translateY(-1px)}.danger,.remove-btn{background:#fff;border:2px solid #e2a5aa;color:#97333a;padding:8px 12px}.danger:hover,.remove-btn:hover{background:#ffeef0;transform:translateY(-1px)}@media (max-width:768px){.filter-bar{gap:12px;grid-template-columns:1fr}.filter-bar .manage-friends-btn,.filter-bar .search-input,.filter-bar .select{font-size:1.05rem;padding:16px 18px}}.date-chip-row.view-day{-webkit-overflow-scrolling:touch;display:flex;flex-wrap:nowrap;gap:.75rem;justify-content:center;margin:1rem auto;overflow-x:auto;padding-bottom:.25rem;width:min(1100px,92vw)}.date-chip{align-items:center;background:#c5cfdd;background:var(--tpm-bg);border:2px solid #3d6fa6;border:2px solid var(--tpm-blue);border-radius:999px;color:#1f3b61;color:var(--tpm-ink);cursor:pointer;display:inline-flex;font-family:Josefin Slab,serif;font-size:1rem;font-weight:900;justify-content:center;min-width:112px;padding:10px 14px;text-align:center;transition:transform .06s ease,background .15s ease,color .15s ease,box-shadow .15s ease,border-color .15s ease}.date-chip:hover{transform:translateY(-1px)}.date-chip.active,.date-chip:hover{background:#3d6fa6;background:var(--tpm-blue);box-shadow:0 6px 14px #3d6fa647;color:#fff}.date-chip.active{border-color:#2f5f94;border-color:var(--tpm-blue-dk)}@media (max-width:640px){.date-chip-row.view-day{justify-content:flex-start}}.flip-toggle{background:#2b2d44;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff26,0 10px 18px #00000026;display:flex;gap:12px;margin:16px auto;padding:8px;width:-webkit-max-content;width:max-content}.flip-btn{background:#0000;border:0;border-radius:999px;color:#cfd5ea;cursor:pointer;font-size:1rem;font-weight:800;padding:10px 18px;transition:transform .06s ease,filter .12s ease}.flip-btn:hover{transform:translateY(-1px)}.flip-btn.active{background:#3d6fa6;background:var(--tpm-blue);box-shadow:0 2px 0 #00000026;color:#fff}.friends-page .flip-card .flip-face.back,.friends-page .flip-card.flip .flip-face.front{display:none}.friends-page .flip-card.flip .flip-face.back{display:block}.resort-grid{grid-gap:16px;background:#0e1322;background:var(--frame-dark);border:2px solid #0a0f1a;border-radius:8px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin:16px auto 60px;padding:18px 16px;width:min(1100px,92vw)}@media (max-width:1024px){.resort-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.resort-grid{grid-template-columns:1fr}}.mountain-name{align-items:center;display:flex;justify-content:center;text-align:center}.mountain-name,.mountain-name .pass-badge{text-transform:none}.pass-badge{border-radius:.3em;display:inline-block;font-family:Josefin Slab,serif;font-weight:900;letter-spacing:1px;line-height:1;padding:.2em .6em;text-transform:uppercase;vertical-align:middle}.pass-badge.ikon{background:#f2a900;color:#0d2340;letter-spacing:.5px;text-transform:uppercase}.pass-badge.epic{background:#0d2340;color:#f15a22}.resort-card.poster{--scene-scale:.25;--sky:#aebfd1;--near:#0b3c57;--mid:#0a4e70;--far:#0a2f47;--snow:#f3f7fd;--snow-shadow:#d7e3f2;--rim-highlight:#ffffffd9;min-height:260px;overflow:hidden;position:relative}.resort-card.poster .friend-list,.resort-card.poster .mountain-name{position:relative;z-index:2}.resort-card.poster .tpm-scene{background:#0000;bottom:0;height:100%;left:45%;pointer-events:none;position:absolute;transform:translateX(-50%) scale(var(--scene-scale));transform-origin:bottom center;width:1100px;z-index:1}.resort-card.poster .tpm-scene:after,.resort-card.poster .tpm-scene:before{background:#0000!important;content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.resort-card.poster .tpm-scene:after{background-size:180px 180px,220px 220px,240px 240px;mix-blend-mode:multiply;opacity:.025}.resort-card.poster .tpm-scene .snow{inset:0;position:absolute}.resort-card.poster .tpm-scene .snow>div{animation:fall 12s linear infinite,shake 5s ease-in-out infinite;color:#ecf2f8;position:absolute;top:-120px;z-index:7}@keyframes fall{0%{top:-10%}to{top:100%}}@keyframes shake{0%{transform:translateX(0)}50%{transform:translateX(50px)}to{transform:translateX(0)}}.resort-card.poster .tpm-scene .snowflake1{animation-delay:1s,1s;animation-duration:10s,3s;filter:blur(.5px);left:500px;top:-100px}.resort-card.poster .tpm-scene .snowflake2{animation-delay:2s,2s;animation-duration:8s,5s;filter:blur(.5px);left:20px;top:-100px}.resort-card.poster .tpm-scene .snowflake3{animation-delay:3s,5s;animation-duration:9s,5s;filter:blur(.7px);right:170px;top:-100px;z-index:5}.resort-card.poster .tpm-scene .snowflake4{animation-delay:4s,4s;animation-duration:15s,5s;right:430px;top:-100px;z-index:5}.resort-card.poster .tpm-scene .snowflake5{animation-delay:2.7s,2s;animation-duration:15s,9s;font-size:1.4rem;left:350px;top:-100px;z-index:7}.resort-card.poster{--front-mountain:#0b3c57;--back-mountain:#0a2f47;--cap-snow:#fff}.resort-card.poster .tpm-scene .mountains{width:100%}.resort-card.poster .tpm-scene .mt1{border-bottom:300px solid #000;border-left:150px solid #0000;border-right:150px solid #0000;bottom:0;left:100px;position:absolute;z-index:3}.resort-card.poster .tpm-scene .mtsnow1{border-bottom:100px solid #000;border-left:50px solid #0000;border-right:50px solid #0000;bottom:-100px;left:-50px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-1a,.resort-card.poster .tpm-scene .snow-peak-1b{border-left:25px solid #0000;border-right:25px solid #0000;border-top:30px solid #000;bottom:-130px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-1a{left:-45px}.resort-card.poster .tpm-scene .snow-peak-1b{left:-7px}.resort-card.poster .tpm-scene .mt2{border-bottom:200px solid #000;border-left:150px solid #0000;border-right:150px solid #0000;bottom:0;left:-20px;position:absolute;z-index:6}.resort-card.poster .tpm-scene .snow2{border-bottom:100px solid #000;border-left:75px solid #0000;border-right:75px solid #0000;bottom:-98px;left:-75px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-2a,.resort-card.poster .tpm-scene .snow-peak-2b,.resort-card.poster .tpm-scene .snow-peak-2c{border-left:25px solid #0000;border-right:25px solid #0000;border-top:20px solid #000;position:absolute}.resort-card.poster .tpm-scene .snow-peak-2a{bottom:-110px;left:-60px}.resort-card.poster .tpm-scene .snow-peak-2b{border-top-width:30px;bottom:-120px;left:-25px}.resort-card.poster .tpm-scene .snow-peak-2c{bottom:-110px;right:-60px}.resort-card.poster .tpm-scene .mt3{border-bottom:175px solid #000;border-left:150px solid #0000;border-right:150px solid #0000;bottom:0;left:280px;position:absolute;z-index:6}.resort-card.poster .tpm-scene .snow3{border-bottom:90px solid #000;border-left:70px solid #0000;border-right:70px solid #0000;bottom:-80px;left:-70px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-3a,.resort-card.poster .tpm-scene .snow-peak-3b,.resort-card.poster .tpm-scene .snow-peak-3c,.resort-card.poster .tpm-scene .snow-peak-3d{border-left:25px solid #0000;border-right:25px solid #0000;border-top:30px solid #000;bottom:-100px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-3a{left:-60px}.resort-card.poster .tpm-scene .snow-peak-3b{left:-20px}.resort-card.poster .tpm-scene .snow-peak-3c{right:-20px}.resort-card.poster .tpm-scene .snow-peak-3d{right:-60px}.resort-card.poster .tpm-scene .mt4{border-bottom:250px solid #000;border-left:150px solid #0000;border-right:150px solid #0000;bottom:0;left:800px;position:absolute;z-index:3}.resort-card.poster .tpm-scene .snow4{border-bottom:80px solid #000;border-left:47px solid #0000;border-right:47px solid #0000;bottom:-75px;left:-47px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-4a,.resort-card.poster .tpm-scene .snow-peak-4b{border-left:25px solid #0000;border-right:25px solid #0000;border-top:30px solid #000;bottom:-100px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-4a{left:-45px}.resort-card.poster .tpm-scene .snow-peak-4b{left:-7px}.resort-card.poster .tpm-scene .mt5{border-bottom:150px solid #000;border-left:200px solid #0000;border-right:200px solid #0000;bottom:0;left:500px;position:absolute;z-index:6}.resort-card.poster .tpm-scene .snow5{border-bottom:75px solid #000;border-left:100px solid #0000;border-right:100px solid #0000;bottom:-75px;left:-100px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-5a,.resort-card.poster .tpm-scene .snow-peak-5b,.resort-card.poster .tpm-scene .snow-peak-5c{border-left:25px solid #0000;border-right:25px solid #0000;border-top:20px solid #000;position:absolute}.resort-card.poster .tpm-scene .snow-peak-5a{bottom:-95px;left:-60px}.resort-card.poster .tpm-scene .snow-peak-5b{border-top-width:30px;bottom:-100px;left:-25px}.resort-card.poster .tpm-scene .snow-peak-5c{bottom:-95px;right:-60px}.resort-card.poster .tpm-scene .mt6{border-bottom:175px solid #000;border-left:150px solid #0000;border-right:150px solid #0000;bottom:0;left:950px;position:absolute;z-index:6}.resort-card.poster .tpm-scene .snow6{border-bottom:90px solid #000;border-left:70px solid #0000;border-right:70px solid #0000;bottom:-80px;left:-70px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-6a,.resort-card.poster .tpm-scene .snow-peak-6b,.resort-card.poster .tpm-scene .snow-peak-6c,.resort-card.poster .tpm-scene .snow-peak-6d{border-left:25px solid #0000;border-right:25px solid #0000;border-top:30px solid #000;bottom:-100px;position:absolute}.resort-card.poster .tpm-scene .snow-peak-6a{left:-60px}.resort-card.poster .tpm-scene .snow-peak-6b{left:-20px}.resort-card.poster .tpm-scene .snow-peak-6c{right:-20px}.resort-card.poster .tpm-scene .snow-peak-6d{right:-60px}.resort-card.poster .tpm-scene .mt1:before,.resort-card.poster .tpm-scene .mt2:before,.resort-card.poster .tpm-scene .mt3:before,.resort-card.poster .tpm-scene .mt4:before,.resort-card.poster .tpm-scene .mt5:before,.resort-card.poster .tpm-scene .mt6:before{background:conic-gradient(from 195deg at 52% 10%,#ffffffd9 0 10deg,#fff0 0 1turn),linear-gradient(140deg,#ffffff3d,#fff0 42%),linear-gradient(320deg,#00000029,#0000 45%);bottom:0;-webkit-clip-path:polygon(50% 0,100% 100%,0 100%);clip-path:polygon(50% 0,100% 100%,0 100%);content:"";height:100%;left:-150px;mix-blend-mode:overlay;opacity:.68;pointer-events:none;position:absolute;width:300px}.resort-card.poster .tpm-scene .mt2,.resort-card.poster .tpm-scene .mt3,.resort-card.poster .tpm-scene .mt5,.resort-card.poster .tpm-scene .mt6{border-bottom-color:var(--front-mountain)}.resort-card.poster .tpm-scene .mt1,.resort-card.poster .tpm-scene .mt4{border-bottom-color:var(--back-mountain)}.resort-card.poster .tpm-scene .mtsnow1,.resort-card.poster .tpm-scene .snow2,.resort-card.poster .tpm-scene .snow3,.resort-card.poster .tpm-scene .snow4,.resort-card.poster .tpm-scene .snow5,.resort-card.poster .tpm-scene .snow6{border-bottom-color:var(--cap-snow)}.resort-card.poster .tpm-scene [class^=snow-peak-]{border-top-color:var(--cap-snow)}.friend-list{grid-gap:10px;display:grid;gap:10px;margin-top:8px}.friend-line{grid-gap:10px;background:#0c121edb;border:1px solid #ffffff2e;border-radius:12px;display:grid;grid-template-columns:1fr auto;padding:10px 12px}.friend-left,.friend-line{align-items:center;gap:10px}.friend-left{display:flex;flex-wrap:wrap;min-width:0}.friend-right{align-items:center;display:flex;gap:8px}.friend-right .edit-btn{background:#3d6fa6;background:var(--tpm-blue);border:2px solid #2f5f94;border:2px solid var(--tpm-blue-dk);border-radius:10px;box-shadow:0 6px 14px #3d6fa647;color:#fff;font-weight:900;margin-right:4px;padding:8px 12px;transition:transform .06s ease,box-shadow .15s ease}.friend-right .edit-btn:hover{transform:translateY(-1px)}.friend-name{align-items:center;color:#fff;display:inline-flex;font-weight:900;gap:8px}.friend-line .timestamp{color:#fff!important;font-size:.85rem;font-weight:500}.plan-date-label{color:#1f3b61;color:var(--tpm-ink);font-weight:800;margin:8px 0}.plan-chip .date{color:#cfd5ea;font-weight:800}.plan-chip,.ski-badge,.you-chip{align-items:center;background:#ffffff0f;border:1px solid #ffffff38;border-radius:999px;color:#fff;display:inline-flex;font-weight:800;gap:6px;padding:4px 8px}.you-chip{background:#3d6fa6;background:var(--tpm-blue);border-color:#2f5f94;border-color:var(--tpm-blue-dk);color:#fff}.friend-line.highlight{box-shadow:inset 0 0 0 2px #42aaff59}.friend-line.me{box-shadow:inset 0 0 0 2px #ffffff1f}.friend-line .remove-btn{background:#fff;border:2px solid #e2a5aa;border-radius:10px;color:#97333a;cursor:pointer;font-weight:900;padding:6px 12px;transition:transform .06s ease,background .12s ease,border-color .12s ease}.friend-line .remove-btn:hover{background:#ffeef0;transform:translateY(-1px)}@media (max-width:520px){.friend-line{gap:8px;grid-template-columns:1fr}.friend-right{justify-content:flex-start}}.no-friends-message{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #4682b459;border-radius:10px;box-shadow:0 6px 14px #3d6fa62e;color:#1f3b61;color:var(--tpm-ink);margin:10px auto;padding:16px;text-align:center}.resort-grid .no-friends-message{grid-column:1/-1;width:100%}@media (max-width:640px){.resort-grid{padding:10px 8px}.resort-grid .no-friends-message{border-radius:8px;box-shadow:0 4px 10px #3d6fa626;font-size:clamp(13px,3.4vw,15px);line-height:1.25;margin:8px 0;padding:10px 12px}.resort-grid .no-friends-message p{margin:0}}.posts-toolbar{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:1fr auto;margin:12px auto 10px;width:min(760px,92vw)}.posts-actions{display:inline-flex;gap:10px;justify-content:flex-end}@media (max-width:520px){.posts-toolbar{grid-template-columns:1fr}.posts-actions{justify-content:flex-end}}.ig-feed{grid-gap:16px;display:grid;gap:16px;margin:0 auto 40px;width:min(760px,92vw)}.ig-card{background:#0c121edb;border:1px solid #ffffff3d;border-radius:14px;box-shadow:0 10px 24px #00000040;padding:12px}.ig-header{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr auto;margin-bottom:8px}.ig-left{align-items:center;display:inline-flex;gap:10px;min-width:0}.ig-avatar{border-radius:999px;height:34px;object-fit:cover;outline:1px solid #ffffff40;width:34px}.ig-handle{color:#fff;font-weight:900}.ig-right{align-items:center;color:#e8eef7;display:inline-flex;font-weight:800;gap:6px}.ig-mountain{opacity:.95}.ig-dot{opacity:.6}.ig-date{opacity:.95}.ig-media{background:#d8dde6;border:2px solid #fff3;border-radius:12px;padding:6px}.ig-media img{border-radius:8px;display:block;height:auto;width:100%}.ig-caption{color:#e8eef7;font-weight:800;line-height:1.25;margin:10px 2px 2px;overflow-wrap:anywhere;word-break:break-word}.posts-toolbar .primary,.posts-toolbar .secondary{padding:10px 14px}.posts-wrap{grid-gap:14px;display:grid;gap:14px;margin:0 auto 24px;width:min(1100px,92vw)}.post-day{background:#000000a6;border:2px solid #fff3;border-radius:10px;padding:12px 14px}.post-list{grid-gap:12px;display:grid;gap:12px;list-style:none;margin:0;padding:0}.post-item{grid-gap:12px;align-items:center;background:#0c121edb;border:1px solid #ffffff2e;border-radius:12px;display:grid;gap:12px;grid-template-columns:40px 1fr auto;padding:10px 12px}.post-item .avatar{border-radius:999px;height:40px;object-fit:cover;width:40px}.post-item .photo{border-radius:10px;max-height:72px;object-fit:cover}.post-item .meta{font-weight:900}.post-item .comment{color:#cfd5ea;font-weight:800}.modal-overlay{-webkit-backdrop-filter:saturate(120%) blur(2px);backdrop-filter:saturate(120%) blur(2px);background:#0000008c;inset:0;padding:24px;z-index:2000}.modal{background:#c5cfdd;background:var(--tpm-bg);border:1px solid #1f3b6126;border-radius:16px;box-shadow:0 18px 40px #00000059;max-height:min(88vh,900px);overflow:auto;padding:18px 20px;width:min(820px,92vw)}.modal,.modal h2{color:#1f3b61;color:var(--tpm-ink)}.modal h2{font-weight:900;margin:0 0 10px}.modal .plan-label{display:block;font-weight:800;margin:12px 0 6px}.modal .plan-label,.modal .select{color:#1f3b61;color:var(--tpm-ink)}.modal .select{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #3d6fa6;border:2px solid var(--tpm-blue);border-radius:10px;padding:12px 14px;width:100%}.modal .date-chip-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.modal .date-chip{min-width:120px}.modal .modal-actions{display:flex;gap:10px;justify-content:flex-start;margin-top:12px}.modal .select{line-height:1.2}.modal .select,.modal select option{font-size:1.15rem}@media (max-width:560px){.modal{border-radius:14px;padding:14px}.modal .date-chip{min-width:104px;padding:8px 12px}}.danger{align-items:center;background:#e765651a;border:2px solid #e76767;border-radius:999px;color:#97333a;cursor:pointer;display:inline-flex;font-weight:800;justify-content:center;padding:10px 18px;transition:transform .08s ease,box-shadow .15s ease,background .15s ease}.danger:hover{background:#e7656533;box-shadow:0 4px 12px #e7656540;transform:translateY(-1px)}.danger:active{box-shadow:0 2px 6px #e7656533;transform:translateY(0)}.modal .primary{align-items:center;background:#3d6fa6;background:var(--tpm-blue);border:2px solid #2f5f94;border:2px solid var(--tpm-blue-dk);border-radius:999px;box-shadow:0 6px 14px #3d6fa647;color:#fff;display:inline-flex;font-weight:900;justify-content:center;padding:10px 18px;transition:transform .08s ease,box-shadow .15s ease,background .15s ease}.modal .primary:hover{background:#2f5f94;background:var(--tpm-blue-dk);box-shadow:0 4px 12px #3d6fa640;transform:translateY(-1px)}.modal .primary:active{box-shadow:0 2px 6px #3d6fa633;transform:translateY(0)}.modal .primary[disabled]{box-shadow:none;cursor:default;opacity:.6;transform:none}.posts-toolbar .new-post-btn{--btn-top:#3d6fa6;--btn-bot:#2f5f94;--btn-border:#274f7b;align-items:center;background:linear-gradient(var(--btn-top),var(--btn-bot));border:2px solid var(--btn-border);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff2e,0 6px 14px #3d6fa647;color:#fff;cursor:pointer;display:inline-flex;font-weight:900;gap:8px;padding:10px 16px;transition:transform .06s ease,box-shadow .15s ease,filter .15s ease}.posts-toolbar .new-post-btn:hover{transform:translateY(-1px)}.posts-toolbar .new-post-btn:active{filter:saturate(1.05);transform:translateY(0)}.posts-toolbar .new-post-btn:focus-visible{box-shadow:0 0 0 3px #fff9,0 0 0 5px #3d6fa68c;outline:none}.posts-toolbar .new-post-btn .plus{background:#ffffff2e;border-radius:50%;box-shadow:inset 0 1px 0 #ffffff59;display:inline-grid;font-weight:900;height:18px;line-height:1;place-items:center;width:18px}.modal .post-submit-btn{--btn-top:#3d6fa6;--btn-bot:#2f5f94;--btn-border:#274f7b;align-items:center;background:linear-gradient(var(--btn-top),var(--btn-bot));border:2px solid var(--btn-border);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff2e,0 6px 14px #3d6fa647;color:#fff;cursor:pointer;display:inline-flex;font-weight:900;justify-content:center;padding:10px 16px;transition:transform .06s ease,box-shadow .15s ease,filter .15s ease}.modal .post-submit-btn:hover{transform:translateY(-1px)}.modal .post-submit-btn:active{filter:saturate(1.05);transform:translateY(0)}.modal .post-submit-btn:focus-visible{box-shadow:0 0 0 3px #fff9,0 0 0 5px #3d6fa68c;outline:none}.modal .post-submit-btn[disabled]{cursor:default;filter:none;opacity:.6;transform:none}.posts-composer{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #4682b459;border-radius:14px;box-shadow:0 20px 40px #0000002e;color:#1f3b61;color:var(--tpm-ink);padding:18px}.posts-composer .modal-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.posts-composer .modal-head h2{color:#1f3b61;color:var(--tpm-ink);font-weight:900;margin:0}.posts-composer .composer-grid{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:1fr 1fr}@media (max-width:700px){.posts-composer .composer-grid{grid-template-columns:1fr}}.posts-composer .field,.posts-composer .select{background:#c5cfdd;background:var(--tpm-bg);border:2px solid #3d6fa6;border:2px solid var(--tpm-blue);border-radius:10px;color:#1f3b61;color:var(--tpm-ink);font-size:1.05rem;font-weight:700;line-height:1.1;outline:none;padding:12px 14px;transition:box-shadow .15s ease,border-color .15s ease,transform .06s ease;width:100%}.posts-composer .field:hover,.posts-composer .select:hover{transform:translateY(-1px)}.posts-composer .field:focus,.posts-composer .select:focus{border-color:#2f5f94;border-color:var(--tpm-blue-dk);box-shadow:0 6px 14px #3d6fa647}.posts-composer textarea.field{grid-column:1/-1;min-height:96px}.posts-composer input[type=file].field{background:#c5cfdd;background:var(--tpm-bg);padding:10px 12px}.posts-composer .composer-actions{display:flex;justify-content:flex-end;margin-top:12px}.posts-composer .post-submit-btn{--btn-top:#3d6fa6;--btn-bot:#2f5f94;--btn-border:#274f7b;align-items:center;background:linear-gradient(var(--btn-top),var(--btn-bot));border:2px solid var(--btn-border);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff2e,0 6px 14px #3d6fa647;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1;font-weight:900;justify-content:center;padding:10px 16px;transition:transform .06s ease,box-shadow .15s ease,filter .15s ease}.posts-composer .post-submit-btn:hover{transform:translateY(-1px)}.posts-composer .post-submit-btn:active{filter:saturate(1.05);transform:translateY(0)}.posts-composer .post-submit-btn[disabled]{cursor:default;filter:none;opacity:.6;transform:none}@media (max-width:700px){.posts-composer .composer-grid{grid-template-columns:1fr auto}.posts-composer input[type=date].field{max-width:160px;min-width:120px;width:auto}}.posts-face{min-height:calc(100dvh - 260px)}.posts-empty-wrap{display:grid;margin:14px auto 60px;min-height:23vh;place-items:center;width:min(760px,92vw)}.empty-card{background:#fffffff5;border:2px solid #4682b459;border-radius:14px;box-shadow:0 10px 24px #00000038;color:#1f3b61;color:var(--tpm-ink);max-width:640px;padding:22px 20px;text-align:center;width:100%}.empty-card h3{font-weight:900;margin:0 0 18px}.empty-card p{font-weight:800;margin:0 0 18px;opacity:.9}.empty-actions{display:flex;justify-content:center}.empty-card .new-post-btn{--btn-top:#3d6fa6;--btn-bot:#2f5f94;--btn-border:#274f7b;align-items:center;background:linear-gradient(var(--btn-top),var(--btn-bot));border:2px solid var(--btn-border);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff2e,0 6px 14px #3d6fa647;color:#fff;cursor:pointer;display:inline-flex;font-weight:900;gap:8px;padding:10px 16px;transition:transform .06s ease,box-shadow .15s ease,filter .15s ease}.empty-card .new-post-btn:hover{transform:translateY(-1px)}.empty-card .new-post-btn:active{filter:saturate(1.05);transform:translateY(0)}.empty-card .new-post-btn:focus-visible{box-shadow:0 0 0 3px #fff9,0 0 0 5px #3d6fa68c;outline:none}.empty-card .new-post-btn .plus{background:#ffffff2e;border-radius:50%;box-shadow:inset 0 1px 0 #ffffff59;display:inline-grid;font-weight:900;height:18px;line-height:1;place-items:center;width:18px}@supports ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))){.empty-card{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#c5cfddeb}}@media (max-width:520px){.empty-card{padding:18px 14px}}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.modal-card{animation:modal-fade-in .25s ease;background:#0c1018e6;border:1px solid #ffffff24;border-radius:16px;box-shadow:0 10px 30px #00000073;color:#fff;padding:24px;width:min(480px,92%)}@keyframes modal-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-card h2{font-family:Josefin Slab,serif;font-size:1.6rem;font-weight:600;letter-spacing:.5px;margin-bottom:14px;margin-top:0}.error{background:#4a1f1f;border:1px solid #ff6b6b;border-radius:10px;font-size:.9rem;margin-bottom:12px;padding:10px 12px}.account-info{display:flex;flex-direction:column;font-size:1rem;gap:6px;margin-bottom:18px}.account-info strong{font-weight:600}.actions{display:flex;gap:12px;justify-content:flex-end;margin-top:12px}.actions button{background:#1e2b40;border:1px solid #ffffff26;border-radius:10px;color:#fff;cursor:pointer;font-size:.95rem;padding:10px 14px;transition:background .15s ease,filter .15s ease}.actions button:hover{filter:brightness(1.1)}.actions .danger{background:#4a1f1f;border-color:#ff6b6b}.actions .danger:hover{background:#5a2525;filter:brightness(1.08)}.tiny-note{font-size:.85rem;font-style:italic;line-height:1.4;margin-top:10px;opacity:.75;text-align:left}@media (max-width:480px){.modal-card{padding:20px}.modal-card h2{font-size:1.4rem}.actions{align-items:stretch;flex-direction:column}.actions button{width:100%}}.navbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#12121299;box-shadow:0 1px 4px #00000040;font-family:Sorts Mill Goudy,serif;height:64px;justify-content:space-between;padding:12px 28px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar,.navbar .logo{align-items:center;color:#f1f3f4;display:flex;font-weight:700}.navbar .logo{font-size:24px;gap:8px;letter-spacing:.5px;text-decoration:none;transition:color .3s ease}.navbar .logo:hover{color:#cdd8e3}.navbar .logo>div{align-items:center;display:inline-flex;gap:5px;line-height:1}.navbar-logo-img{height:30px;transform:translateY(-2px);vertical-align:middle;width:30px}.navbar .menu-toggle{cursor:pointer;display:flex;flex-direction:column;height:20px;justify-content:space-between;width:28px}.navbar .menu-toggle div{background-color:#f1f3f4;border-radius:3px;height:3px;transition:all .3s ease;width:100%}.menu-toggle.open div:first-child{transform:rotate(45deg) translate(5px,5px)}.menu-toggle.open div:nth-child(2){opacity:0}.menu-toggle.open div:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.navbar .dropdown{animation:fadeIn .25s ease forwards;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121212f2;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 8px 20px #0006;display:flex;flex-direction:column;gap:12px;padding:16px;position:absolute;right:20px;top:64px}.navbar .dropdown a{border-radius:6px;color:#f1f3f4;font-size:18px;font-weight:500;padding:8px 12px;text-decoration:none;transition:background .2s ease,color .2s ease}.navbar .dropdown a:hover{background:#ffffff14;color:#cdd8e3}@media (max-width:768px){.navbar{padding:12px 18px}.navbar .logo{font-size:20px}.navbar .dropdown a{font-size:16px;padding:6px 10px}}.social-feed-page{color:#333;font-family:Sorts Mill Goudy,serif;text-align:center}.social-feed-page h1{font-size:36px;margin-bottom:20px;margin-top:20px}.post-uploader{margin-bottom:40px;text-align:center}.post-uploader input[type=date],.post-uploader input[type=file],.post-uploader select{border:2px solid #0072ff;border-radius:10px;font-family:Sorts Mill Goudy,serif;font-size:1.1rem;margin:10px;padding:10px}.post-uploader button{background-color:#0072ff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;margin-top:16px;padding:10px 20px}.post-uploader button:disabled{background-color:#ccc;cursor:not-allowed}.preview-container{margin-top:10px}.preview-image{border-radius:12px;box-shadow:0 2px 10px #0003;height:auto;max-width:300px;width:100%}.error{color:#d32f2f;font-size:1.2rem;margin-top:10px}.delete-button{background-color:#ff5252;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Sorts Mill Goudy,serif;font-size:1rem;margin-top:10px;padding:6px 12px}.delete-button:hover{background-color:#e53935}.day-section{margin-top:40px}.day-section h2{color:#0072ff;font-size:1.5rem;margin-bottom:20px}.no-posts{color:#777;font-size:1.5rem}.post-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.post-card{background:#e0f7fa;border-radius:16px;box-shadow:2px 2px 10px #0000001a;max-width:280px;padding:16px;text-align:center;width:100%}.post-card img{border-radius:12px;height:auto;margin-bottom:12px;width:100%}.post-info{padding:0 8px}.post-info h3{align-items:center;display:flex;font-size:1.2rem;gap:6px;justify-content:center;margin:0 0 8px}.avatar{font-size:1.4rem;margin-right:4px}.post-info p{font-size:1rem;margin:4px 0}.timestamp{color:#666;font-size:1rem;margin-top:8px}.weather-modal-overlay{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.weather-modal{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000004d;max-width:300px;padding:20px}.close-map-btn{background:#0072ff;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:10px;padding:6px 12px}.modal-overlay{align-items:center;background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background:#fff;border-radius:10px;max-width:700px;padding:20px;width:90%}.suggestions-list{background:#fff;border:1px solid #ccc;list-style:none;margin:0 auto;max-width:300px;padding:0;position:absolute;text-align:left;width:100%;z-index:1000}.suggestions-list li{cursor:pointer;padding:10px}.suggestions-list li:hover{background-color:#f0f0f0}.address-form{display:flex;gap:10px;justify-content:center;margin:20px auto}.address-form input{border:1px solid #ccc;border-radius:6px;font-size:16px;padding:10px;width:300px}.address-form button{background-color:#0072ff;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 20px}.error{color:red;font-weight:700}.google-distance-page{background-color:#e8f4fa;font-family:Sorts Mill Goudy,serif;min-height:100vh;padding:30px;text-align:center}.distance-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin:15px auto;max-width:400px;padding:20px}.about-wrapper{--nav-h:60px;grid-gap:36px;align-content:start;background-image:url(/static/media/tpm_bluesky.b2f4dbb4f3a0ec3068fc.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;box-sizing:border-box;display:grid;font-family:Sorts Mill Goudy,serif;gap:36px;grid-template-rows:auto 1fr;height:auto;justify-items:center;min-height:calc(100dvh - var(--nav-h));overflow-x:hidden;overflow-y:visible;padding:64px 18px 40px;position:relative;width:100%}@supports (height:100svh){.about-wrapper{min-height:calc(100svh - var(--nav-h))}}@supports (-webkit-touch-callout:none){.about-wrapper{-webkit-overflow-scrolling:touch;height:auto!important;min-height:calc(100vh - var(--nav-h))}}.about-wrapper:before{background:linear-gradient(180deg,#080e118c,#080e11a6 40%,#080e11bf);content:"";inset:0;pointer-events:none;position:absolute}.about-wrapper>*{position:relative}.about-hero{margin:6px 0 0;max-width:980px;text-align:center}.about-title{color:#f2f6f8;font-family:Josefin Slab,serif;font-size:clamp(32px,5.2vw,48px);letter-spacing:.5px;margin:0 0 10px;text-shadow:0 1px 0 #00000059}.about-tag{color:#e4ecef;font-size:clamp(18px,2.1vw,20px);font-style:italic;line-height:1.55;margin:0 auto;max-width:900px;opacity:.95}.about-content{grid-gap:18px;display:grid;gap:18px;justify-items:center;width:min(980px,96%)}.about-block{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c10189e;border:1px solid #ffffff24;border-radius:14px;box-shadow:0 8px 26px #00000052;padding:20px 20px 16px;transition:background .16s ease,border-color .16s ease,transform .16s ease;width:100%}.about-block:hover{background:#0c1018b8;border-color:#ffffff2e;transform:translateY(-1px)}.about-heading{color:#f2f6f8;font-family:Josefin Slab,serif;font-size:clamp(18px,3.2vw,22px);letter-spacing:.2px;margin:0 0 10px}.about-block p{color:#e4ecef;font-weight:400;line-height:1.6;margin:0 0 10px}.about-block p+p{color:#c5cfdd}.about-block+.about-block{position:relative}.about-block+.about-block:before{background:linear-gradient(90deg,#0000,#ffffff29,#0000);content:"";height:1px;left:14px;position:absolute;right:14px;top:-10px}.about-block a{color:#3d6fa6;text-decoration:underline;text-underline-offset:2px}.about-centered,.about-centered .about-heading{text-align:center}.about-centered p{margin-left:auto;margin-right:auto}.merch-drop{animation:merchFadeUp .28s ease-out both;overflow:hidden;text-align:center}@keyframes merchFadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.merch-eyebrow{color:#e2ebf2d9;font-size:12px;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.merch-title{color:#f2f6f8;font-family:Josefin Slab,serif;font-size:clamp(22px,3.4vw,28px);margin:0 0 6px}.merch-sub{color:#cfd8e4;line-height:1.55;margin:0 0 16px}.merch-grid{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin-bottom:14px}.merch-hero,.merch-thumb{background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;display:grid;flex:1 1 300px;max-width:380px;padding:10px;place-items:center}.merch-hero img,.merch-thumb img{border-radius:8px;display:block;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35));height:auto;width:100%}.merch-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:6px}.merch-cta .btn-ghost,.merch-cta .btn-primary{border:1px solid #ffffff24;border-radius:12px;color:#e9eef6;cursor:pointer;display:inline-block;font-weight:600;line-height:1;padding:10px 14px;text-decoration:none;transition:transform .12s ease,background .16s ease,border-color .16s ease}.merch-cta .btn-primary{background:#3d6fa6f2}.merch-cta .btn-primary:hover{transform:translateY(-1px)}.merch-cta .btn-ghost{background:#121b2699}.merch-cta .btn-ghost:hover{transform:translateY(-1px)}.btn-lg{font-size:clamp(16px,1.1rem,18px);padding:12px 18px}@media (max-width:900px){.about-wrapper{gap:28px;padding-top:52px}}@media (max-width:520px){.about-wrapper{gap:22px;padding-top:46px}.about-content{gap:14px}.about-block{padding:16px}.about-title{font-size:clamp(28px,6.2vw,36px)}.about-tag{font-size:clamp(16px,3.8vw,18px)}.merch-hero,.merch-thumb{max-width:100%}}@media only screen and (min-width:393px) and (max-width:430px){.about-wrapper{gap:24px;padding-top:50px}}*{box-sizing:border-box}body{background-color:#f7f9fc;color:#2b2f3a;color:var(--ink);font-family:Josefin Slab,serif}.auth-card{font-size:clamp(16px,1.8vw,18px)}.auth-card,.auth-card *{font-family:Josefin Slab,serif}.auth-container{align-items:center;display:flex;justify-content:center;min-height:93vh;padding:20px;transition:transform .14s ease}.login-page{transform:translateY(-60px)}.signup-page{transform:translateY(-30px)}.reset-page{transform:translateY(-85px)}@media (max-width:520px){.login-page{transform:translateY(-35px)}.signup-page{transform:translateY(-10px)}.reset-page{transform:translateY(-150px)}}.auth-card{animation:fadeIn .35s ease-in-out;background:linear-gradient(180deg,#fffffff5,#ffffffe6);background:var(--panel-grad);border:1px solid #00000014;border:1px solid var(--border);border-radius:22px;border-radius:var(--radius);box-shadow:0 10px 28px #0000002e;box-shadow:var(--shadow);color:#2b2f3a;color:var(--ink);display:flex;flex-direction:column;gap:1.25rem;line-height:1.55;max-width:560px;padding:1.8rem;width:100%}.auth-tabs{border-bottom:1px solid #00000014;border-bottom:1px solid var(--border);display:flex;justify-content:space-around;margin-bottom:.9rem}.auth-tabs button{background:#0000;border:none;border-bottom:3px solid #0000;color:#556070;color:var(--muted);cursor:pointer;flex:1 1;font-size:1.15rem;font-weight:700;padding:.8rem 1rem;transition:color .2s ease,border-color .2s ease,transform .1s ease}.auth-tabs button:hover{color:#2b2f3a;color:var(--ink);transform:translateY(-1px)}.auth-tabs button.active{border-bottom:3px solid #3d6fa6;border-bottom:3px solid var(--blue);color:#2b2f3a;color:var(--ink)}.auth-form{display:flex;flex-direction:column;gap:.8rem}.auth-form label{color:#2b2f3a;color:var(--ink);display:flex;flex-direction:column;font-size:1.12rem;font-weight:700}.auth-form input,.auth-form textarea{background:#fff;border:1px solid #00000014;border:1px solid var(--border);border-radius:14px;color:#2b2f3a;color:var(--ink);font-size:1.12rem;margin-top:8px;padding:.78rem .95rem;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-form input::placeholder,.auth-form textarea::placeholder{color:#556070;color:var(--muted)}.auth-form input:focus,.auth-form textarea:focus{background:#fff;border-color:#3d6fa6;border-color:var(--blue);box-shadow:0 0 0 3px #0b5ed740;box-shadow:0 0 0 3px var(--ring);outline:none}.hint{color:#556070;color:var(--muted);font-size:.9rem;margin-top:6px}.auth-form button{background:#3d6fa6;background:var(--blue);border:1px solid #0000000a;border-radius:14px;box-shadow:0 2px 0 #0000000d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:800;padding:.95rem 1rem;text-align:center;transition:background .18s ease,transform .1s ease,box-shadow .18s ease}.auth-form button:hover{background:#2d537c;background:var(--blue-dark);transform:translateY(-1px)}.auth-form button:disabled{cursor:not-allowed;opacity:.7}.btn-outline{background:#fff;border:2px solid #0b5ed773;border-radius:14px;box-shadow:0 2px 0 #0000000d;color:#2b2f3a;color:var(--ink);display:inline-block;font-size:1.1rem;font-weight:800;margin-top:4px;padding:10px 18px;text-decoration:none;transition:background .12s ease,transform .1s ease,border-color .12s ease,color .12s ease}.btn-outline:hover{background:#f3f7ff;border-color:#0b5ed7b3;text-decoration:underline;transform:translateY(-1px)}.auth-backlink{text-align:center}.auth-error{background:#fdecea;border-left:4px solid #d93025;color:#b3261e;font-size:.95rem}.auth-error,.auth-ok{border-radius:8px;padding:.6rem .8rem}.auth-ok{background:#e6f5ee;border-left:4px solid #1f9d63;color:#176b4d;font-size:1.05rem}.tos-note{color:#556070;color:var(--muted);font-size:1.02rem;margin-top:8px;text-align:center}.tos-note a{color:#3d6fa6;color:var(--blue);text-decoration:underline}.tos-note a:hover{color:#2d537c;color:var(--blue-dark)}@keyframes fadeIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width:520px){.auth-card{border-radius:18px;max-width:92vw;padding:1.6rem}.auth-tabs button{font-size:1rem}}.reset-page{--r:12px;--r-sm:6px}.reset-page .auth-card{display:flex;flex-direction:column;padding:1.2rem 1.2rem 1.05rem}.reset-page .auth-card>*+*{margin-top:var(--r)}.reset-page .auth-title{line-height:1.2;margin:0}.reset-page .auth-form{display:flex;flex-direction:column;gap:var(--r);margin:0;padding:0}.reset-page .auth-form label{margin:0}.reset-page .auth-form label>input{margin-top:var(--r-sm)}.reset-page .auth-form button{margin:0}.reset-page .tos-note{margin:0;text-align:center}.reset-page .auth-backlink.btn-outline{margin:0}@media (max-width:520px){.reset-page{--r:10px;--r-sm:5px}}:root{--ink:#2b2f3a;--muted:#556070;--blue:#3d6fa6;--blue-dark:#2d537c;--panel:#fff;--panel-grad:linear-gradient(180deg,#fffffff5,#ffffffe6);--ring:#0b5ed740;--border:#00000014;--shadow:0 10px 28px #0000002e;--radius:22px}.legal-page{background:linear-gradient(180deg,#fffffff5,#ffffffe6);background:var(--panel-grad);border:1px solid #00000014;border:1px solid var(--border);border-radius:22px;border-radius:var(--radius);box-shadow:0 10px 28px #0000002e;box-shadow:var(--shadow);color:#2b2f3a;color:var(--ink);font-family:Josefin Slab,serif;line-height:1.65;margin:100px auto 140px;max-width:900px;padding:28px 24px}.legal-container{align-items:flex-start;background:linear-gradient(#0000008c,#0000008c),url(/static/media/tpm_bluesky.b2f4dbb4f3a0ec3068fc.jpg) no-repeat 50% /cover fixed;display:flex;justify-content:center;min-height:100vh;padding:20px}@media (max-width:600px){.legal-container{padding:16px}}.legal-page h1{font-size:clamp(32px,4.5vw,46px);letter-spacing:.3px;margin:8px 0 18px;text-align:center}.legal-page h1,.legal-page h2{color:#2b2f3a;color:var(--ink);font-weight:700}.legal-page h2{font-size:clamp(20px,3vw,30px);margin:28px 0 12px}.legal-page h3{color:#2b2f3a;color:var(--ink);font-size:clamp(18px,2.4vw,24px);font-weight:700;margin:22px 0 10px}.legal-page li,.legal-page p{color:#2b2f3a;color:var(--ink);font-size:clamp(15px,1.6vw,18px);margin-bottom:14px}.legal-page ul{list-style:disc;margin-left:24px}.legal-page .meta{color:#556070;color:var(--muted);font-size:14px;margin-bottom:22px;text-align:center}.legal-page a{color:#3d6fa6;color:var(--blue);text-decoration:underline;transition:color .18s ease}.legal-page a:hover{color:#2d537c;color:var(--blue-dark)}.legal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.legal-actions .btn-outline{background:#fff;border:2px solid #0b5ed773;border-radius:14px;box-shadow:0 2px 0 #0000000d;color:#2b2f3a;color:var(--ink);display:inline-block;font-weight:800;padding:10px 16px;text-decoration:none;transition:background .12s ease,transform .1s ease,border-color .12s ease}.legal-actions .btn-outline:hover{background:#f3f7ff;border-color:#0b5ed7b3;text-decoration:underline;transform:translateY(-1px)}@media (max-width:600px){.legal-page{border-radius:18px;margin:80px auto 100px;padding:20px 16px}}.support-wrapper{--nav-h:60px;grid-gap:22px;align-content:start;background-image:url(/static/media/tpm_bluesky.b2f4dbb4f3a0ec3068fc.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;box-sizing:border-box;display:grid;font-family:Sorts Mill Goudy,serif;gap:22px;grid-template-rows:auto 1fr;height:auto;justify-items:center;min-height:calc(100dvh - var(--nav-h));overflow-x:hidden;overflow-y:visible;padding:64px 18px 40px;position:relative;width:100%}@supports (height:100svh){.support-wrapper{min-height:calc(100svh - var(--nav-h))}}@supports (-webkit-touch-callout:none){.support-wrapper{-webkit-overflow-scrolling:touch;height:auto!important;min-height:calc(100vh - var(--nav-h))}}.support-wrapper:before{background:linear-gradient(180deg,#080e118c,#080e11a6 40%,#080e11bf);content:"";inset:0;pointer-events:none;position:absolute}.support-wrapper>*{position:relative}.support-hero{margin:6px 0 0;max-width:980px;text-align:center}.support-title{color:#f2f6f8;font-family:Josefin Slab,serif;font-size:clamp(32px,5.2vw,48px);letter-spacing:.5px;margin:0 0 10px;text-shadow:0 1px 0 #00000059}.support-tag{color:#e4ecef;font-size:clamp(18px,2.1vw,20px);font-style:italic;line-height:1.55;margin:0 auto;max-width:900px;opacity:.95}.support-content{display:grid;justify-items:center;padding:0 12px;width:100%}.support-block{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c10189e;border:1px solid #ffffff24;border-radius:14px;box-shadow:0 8px 26px #00000052;display:flex;flex-direction:column;height:165px;justify-content:center;overflow:hidden;padding:16px 18px;text-align:center;transition:background .16s ease,border-color .16s ease,transform .16s ease;width:min(400px,90%)}.support-block:hover{background:#0c1018b8;border-color:#ffffff2e;transform:translateY(-1px)}.support-heading{color:#f2f6f8;font-family:Josefin Slab,serif;font-size:clamp(18px,3.2vw,20px);letter-spacing:.2px;margin:0 0 8px}.support-block p{color:#e4ecef;font-weight:400;line-height:1.35;margin:0 0 8px}.support-email-line{margin-top:4px}.support-email{color:#3d6fa6;font-weight:600;text-decoration:underline;text-underline-offset:2px;word-break:break-word}@media (max-width:900px){.support-wrapper{gap:24px;padding-top:52px}}@media (max-width:768px){.support-block{height:145px;padding:12px 14px}.support-heading{font-size:17px;margin-bottom:6px}.support-block p,.support-email{font-size:15px}}@media (max-width:520px){.support-wrapper{gap:22px;padding-top:46px}.support-content{gap:14px}.support-title{font-size:clamp(28px,6.2vw,36px)}.support-tag{font-size:clamp(16px,3.8vw,18px)}}@media only screen and (min-width:393px) and (max-width:430px){.support-wrapper{gap:22px;padding-top:50px}}
/*# sourceMappingURL=main.68e33be6.css.map*/