:root{color:#10211d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#eef5f1;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top,#4e7a5821,#0000 35%),linear-gradient(#edf3ef 0%,#eef7f3 100%);min-width:320px;margin:0}button,a{font:inherit}#root{min-height:100vh}img{max-width:100%;display:block}.page-shell{max-width:1200px;margin:0 auto;padding:32px 24px 60px}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #12221b0f;border-radius:22px;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;display:flex;box-shadow:0 18px 45px #1e342a0f}.brand{color:#10211d;align-items:center;gap:10px;font-weight:700;display:inline-flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#1a6b4f,#6ecf8c);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;display:inline-flex}.nav{align-items:center;gap:26px;display:flex}.nav a,.link-btn{color:#365148;font-weight:600;text-decoration:none}.primary-btn,.secondary-btn{border:none;border-radius:999px;padding:.85rem 1.3rem;font-weight:700;transition:transform .2s,box-shadow .2s}.primary-btn{color:#fff;background:linear-gradient(135deg,#123d2f,#305c44);box-shadow:0 14px 28px #123d2f38}.primary-btn:hover,.secondary-btn:hover{transform:translateY(-1px)}.secondary-btn{color:#183a2d;background:#18403614}.large{padding:1rem 1.5rem}.small{padding:.7rem 1rem}.content{margin-top:36px}.hero-section{grid-template-columns:1.2fr .8fr;align-items:center;gap:28px;display:grid}.hero-copy{background:#ffffff80;border:1px solid #10211d0d;border-radius:32px;padding:36px 30px;box-shadow:0 22px 60px #0f3a320f}.eyebrow{color:#1f7c59;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.74rem;font-weight:800}.eyebrow.green{color:#1a6b4f}.hero-copy h1{letter-spacing:-.07em;color:#0f201d;max-width:620px;margin:0;font-size:clamp(2.7rem,4.2vw,5rem);line-height:.95}.subtext{color:#46615d;max-width:540px;margin-top:18px;font-size:1.06rem}.cta-row{gap:16px;margin-top:28px;display:flex}.mini-stats{flex-wrap:wrap;gap:18px;margin-top:28px;display:flex}.stat-box{background:#fffc;border:1px solid #10211d0a;border-radius:18px;flex-direction:column;min-width:110px;padding:14px 18px;display:flex}.stat-box strong{color:#10211d;font-size:1.5rem}.stat-box span{color:#5d716d;font-size:.83rem}.hero-panel{flex-direction:column;gap:20px;display:flex}.panel-card{color:#fff;background:linear-gradient(#113229f5,#0b1c15db);border-radius:28px;padding:24px;box-shadow:0 28px 60px #0f1d1a40}.hero-ribbon h2{letter-spacing:-.05em;color:#fff;margin:18px 0 8px;font-size:clamp(1.7rem,2vw,2.5rem)}.badge,.mini-tag,.tag{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.badge,.mini-tag{background:#ffffff1f;padding:.55rem .8rem}.meta-row{color:#fffc;align-items:center;gap:10px;display:flex}.scenic-card{background:linear-gradient(#ffffff2b,#ffffff0f);border:1px solid #ffffff1f}.scenic-card ul{color:#fffc;margin:18px 0;padding-left:1.1rem}.reserve-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.price{font-size:1.25rem;font-weight:800}.search-panel{background:#ffffffbd;border:1px solid #0e1f1a0d;border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px;padding:18px 20px;display:grid;box-shadow:0 18px 40px #293e360f}.field-box{background:#f2f8f5;border-radius:16px;flex-direction:column;gap:8px;padding:15px 18px;display:flex}.field-box label{color:#719188;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:700}.field-box span{color:#11251f;font-weight:700}.find-btn{align-self:center;width:100%}.routes-section{margin-top:52px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.section-heading h3{letter-spacing:-.06em;color:#10211d;margin:0;font-size:clamp(1.8rem,2vw,2.6rem)}.card-cover{justify-content:space-between;align-items:flex-start;min-height:190px;padding:18px;display:flex}.hike-card.sunset .card-cover{background:linear-gradient(135deg,#c97f42,#e9c067 52%,#f4ebe0 100%)}.hike-card.forest .card-cover{background:linear-gradient(135deg,#235c46,#5ab272 58%,#d6f1d8 100%)}.hike-card.alpine .card-cover{background:linear-gradient(135deg,#1b3b5f,#5d88b5 56%,#e4efff 100%)}.tag,.rating{color:#fff;background:#0c1c172b;padding:.5rem .7rem}.card-info{padding:20px 18px 22px}.card-info h4{letter-spacing:-.06em;color:#10211d;margin:0;font-size:1.45rem}.card-info p{color:#57736c;margin-top:8px;font-weight:600}.card-meta{color:#2e4a42;justify-content:space-between;margin-top:18px;font-weight:700;display:flex}.planner-layout{grid-template-columns:1.4fr .6fr;gap:24px;margin-top:52px;display:grid}.plan-card{background:#ffffffb3;border:1px solid #0f211c0d;border-radius:28px;box-shadow:0 20px 40px #1127200f}.large-plan{padding:24px 22px 18px}.compact{margin-bottom:18px}.itinerary-list{flex-direction:column;gap:18px;display:flex}.itinerary-row{background:#f1f7f3;border-radius:18px;grid-template-columns:110px 1fr;align-items:center;gap:18px;padding:12px 14px;display:grid}.time-pill{color:#104a39;background:#dfeee6;border-radius:12px;justify-content:center;padding:.65rem;font-weight:800;display:inline-flex}.itinerary-row p{color:#23403c;margin:0;font-weight:600}.side-panel{padding:24px 22px}.side-panel h3{letter-spacing:-.06em;color:#10211d;margin:0 0 18px;font-size:clamp(1.7rem,2vw,2.3rem)}.reason-list{color:#39514c;gap:12px;margin:0;padding-left:1.2rem;display:grid}.score-box{background:linear-gradient(135deg,#dff4e7,#eefaf1);border-radius:20px;flex-direction:column;margin-top:28px;padding:18px;display:flex}.score-box strong{color:#103d32;font-size:2rem}.score-box span{color:#497064;font-weight:600}@media (width<=900px){.topbar,.nav,.section-heading,.hero-section,.planner-layout{flex-direction:column;align-items:stretch}.topbar,.section-heading,.hero-section,.planner-layout{display:grid}.hero-section,.planner-layout,.card-grid,.search-panel{grid-template-columns:1fr}.nav{justify-content:space-between;gap:10px;display:flex}.primary-btn,.secondary-btn{justify-content:center;width:100%}.cta-row{flex-direction:column}.search-panel{padding:16px}}@media (width<=560px){.page-shell{padding:18px 14px 40px}.topbar{border-radius:18px;padding:14px 14px 18px}.nav{flex-wrap:wrap;justify-content:space-between}.hero-copy{padding:24px 18px}.hero-copy h1{font-size:2.5rem}.itinerary-row{grid-template-columns:1fr}}.app-shell{color:#1c2a25;background:#f5f5f4;min-height:100vh}body.theme-dark,.app-shell.theme-dark{color:#edf6f2;background:#081116}.theme-dark .topbar{background:#081116e6;border-color:#94a3b82e}.theme-dark .main-nav{background:#0f171ee6;border:1px solid #94a3b82e}.theme-dark .nav-button{color:#dfeceb;background:0 0}.theme-dark .nav-button.active{color:#ecfdf5;background:#0d4a2b61;box-shadow:inset 0 0 0 1px #86efac40}.theme-dark .ghost-btn,.theme-dark .toggle-btn,.theme-dark .header-actions .ghost-btn,.theme-dark .header-actions .toggle-btn{color:#edf6f2;background:#0f171ecc;border:1px solid #94a3b833}.theme-dark .brand-name,.theme-dark .nav-button.active,.theme-dark .hero-content h1,.theme-dark .field-box label,.theme-dark .field-box input,.theme-dark .field-box select,.theme-dark .field-group input,.theme-dark .field-group select,.theme-dark .field-group textarea,.theme-dark .card-body h3,.theme-dark .ticket-card h4,.theme-dark .admin-header h2,.theme-dark .organizer-banner h2,.theme-dark .profile-header h2,.theme-dark .tickets-wrap h3,.theme-dark .mini-stat-card strong,.theme-dark .modal-body h4,.theme-dark .create-header h3,.theme-dark .ticket-pass-top h4,.theme-dark .queue-item strong,.theme-dark .success-box h4,.theme-dark .brand-copy,.theme-dark .main-nav,.theme-dark .nav-button,.theme-dark .hero-content p,.theme-dark .card-description,.theme-dark .modal-section p,.theme-dark .profile-header p,.theme-dark .ticket-grid span,.theme-dark .ticket-ref,.theme-dark .quick-stat,.theme-dark .admin-message,.theme-dark .organizer-login-card h3,.theme-dark .organizer-login-card p{color:#edf6f2}.theme-dark .main-nav,.theme-dark .field-box,.theme-dark .search-panel,.theme-dark .map-panel,.theme-dark .hike-card,.theme-dark .profile-panel,.theme-dark .manifest-box,.theme-dark .admin-panel,.theme-dark .ticket-card,.theme-dark .organizer-banner,.theme-dark .mini-stat-card,.theme-dark .admin-queue,.theme-dark .queue-item,.theme-dark .mpesa-summary,.theme-dark .create-modal,.theme-dark .ticket-modal,.theme-dark .checkout-modal,.theme-dark .event-modal,.theme-dark .organizer-login-card,.theme-dark .organizer-panel,.theme-dark .admin-reset-box{background:#0c1419f2;border-color:#94a3b82e}.theme-dark .nav-button,.theme-dark .ghost-btn,.theme-dark .toggle-btn,.theme-dark .field-box input,.theme-dark .field-box select,.theme-dark .field-group input,.theme-dark .field-group select,.theme-dark .field-group textarea,.theme-dark .ticket-card,.theme-dark .mini-stat-card,.theme-dark .queue-item,.theme-dark .admin-reset-box,.theme-dark .organizer-login-card,.theme-dark .organizer-panel{color:#edf6f2}.theme-dark .field-box input,.theme-dark .field-box select,.theme-dark .field-group input,.theme-dark .field-group select,.theme-dark .field-group textarea,.theme-dark .scanner-row input{background:#0f171eb3;border-color:#94a3b833}.theme-dark .admin-panel,.theme-dark .admin-reset-box,.theme-dark .admin-queue,.theme-dark .queue-item,.theme-dark .mini-stat-card,.theme-dark .manifest-box,.theme-dark .organizer-panel{background:#0c1419f5;border-color:#94a3b824}.theme-dark .admin-header h2,.theme-dark .admin-queue h3,.theme-dark .admin-reset-box h3,.theme-dark .queue-item strong,.theme-dark .queue-item p,.theme-dark .mini-stat-card strong,.theme-dark .mini-stat-card span,.theme-dark .admin-message,.theme-dark .safe-badge,.theme-dark .status-ok,.theme-dark .table-btn,.theme-dark th,.theme-dark td{color:#edf6f2}.theme-dark .safe-badge{background:#0f171ee6;border:1px solid #94a3b82e}.theme-dark .status-ok{color:#dcfce7;background:#22c55e2e}.theme-dark .status-tag.pending{color:#fde68a;background:#f59e0b26}.theme-dark th{color:#cfe1dd}.theme-dark .table-btn{color:#a7f3d0}.theme-dark .ticket-pass-body{background:#0f171eb8;border-color:#94a3b83d}.theme-dark .hero-banner{background:radial-gradient(circle at 0 0,#16a34a29,#0000 30%),#071c1b;box-shadow:0 24px 48px #0206176b}.theme-dark .event-modal,.theme-dark .checkout-modal,.theme-dark .create-modal,.theme-dark .ticket-modal{color:#edf6f2;background:#0f1720;border:1px solid #94a3b82e;box-shadow:0 30px 60px #02061799}.theme-dark .modal-body,.theme-dark .modal-footer,.theme-dark .checkout-form,.theme-dark .phone-prompt,.theme-dark .success-box{color:#edf6f2;background:#0f1720}.theme-dark .modal-stats,.theme-dark .mpesa-summary,.theme-dark .gear-tag,.theme-dark .pickup-note,.theme-dark .field-group input,.theme-dark .field-group select,.theme-dark .field-group textarea{color:#edf6f2;background:#0f171eb8;border-color:#94a3b82e}.theme-dark .modal-body h4,.theme-dark .checkout-header h3,.theme-dark .modal-footer strong,.theme-dark .ticket-card h4,.theme-dark .success-box h4,.theme-dark .checkout-header p,.theme-dark .mpesa-summary strong,.theme-dark .mpesa-summary span,.theme-dark .field-group label,.theme-dark .modal-section p,.theme-dark .info-list,.theme-dark .tier-name,.theme-dark .tier-box small,.theme-dark .modal-footer small,.theme-dark .hero-overlay h2,.theme-dark .pickup-note,.theme-dark .map-link{color:#edf6f2}.theme-dark .checkout-form .field-group label{color:#dfeceb}.theme-dark .checkout-form .field-group input,.theme-dark .checkout-form .field-group select,.theme-dark .checkout-form .field-group textarea{color:#f8fafc;background:#0f171ecc;border-color:#94a3b833}.theme-dark .modal-section p,.theme-dark .modal-section .pickup-note,.theme-dark .field-group input,.theme-dark .field-group select,.theme-dark .field-group textarea,.theme-dark .gear-tag,.theme-dark .tier-box,.theme-dark .modal-stats,.theme-dark .mpesa-summary{border-color:#94a3b82e}.theme-dark .info-list li,.theme-dark .info-list li:before,.theme-dark .map-link{color:#d7f9e8}.theme-dark .gear-tag{background:#0f171eeb;border:1px solid #94a3b82e}.theme-dark .tier-box{color:#edf6f2;background:#0f171ecc;border:1px solid #94a3b833}.theme-dark .tier-box.selected{background:#0d4a2b33;border-color:#6ee7b773}.theme-dark .tier-price,.theme-dark .modal-footer strong{color:#8ef0be}.theme-dark .pickup-note{color:#f5f3ff;background:#7877c61f;border-color:#c4b5fd47}.theme-dark .map-link{opacity:1;margin-top:.7rem;text-decoration:underline;display:inline-block}.theme-dark .badge-chip.light,.theme-dark .map-pill,.theme-dark .status-pill,.theme-dark .validated-tag,.theme-dark .status-ok{color:#061f17}.theme-dark .tag-pill,.theme-dark .county-option,.theme-dark .county-show-more{color:#edf6f2;background:#0f171eb3;border-color:#94a3b833}.theme-dark .county-option.selected,.theme-dark .county-show-more:hover{color:#b3f7d2;background:#10b9811f}.theme-dark .card-footer small,.theme-dark .modal-stats span,.theme-dark .ticket-grid span,.theme-dark .queue-item p,.theme-dark .manifest-head p,.theme-dark .ticket-pass-top span,.theme-dark .ticket-pass-grid span,.theme-dark .brand-sub,.theme-dark .ticket-ref,.theme-dark .admin-ticket-block p,.theme-dark .field-group label,.theme-dark .field-box label,.theme-dark .brand-sub,.theme-dark .organizer-banner p,.theme-dark .mini-stat-card span,.theme-dark .status-tag.pending,.theme-dark .status-tag.ok{color:#b0c6c0}.theme-dark .app-shell .empty-state,.theme-dark .empty-state{background:#0c1419e6;border-color:#94a3b82e}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-bottom:1px solid #e7e5e4;justify-content:space-between;align-items:center;gap:1rem;max-width:1280px;margin:0 auto;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.brand-wrap{cursor:pointer;align-items:center;gap:.8rem;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#0d4a2b,#1c6d46);border-radius:.9rem;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #072f1f38}.brand-mark.small{width:2.2rem;height:2.2rem;font-size:.9rem}.brand-copy{flex-direction:column;display:flex}.brand-name{letter-spacing:-.06em;color:#0d4a2b;font-size:1.4rem;font-weight:900}.brand-accent{color:#00a344}.brand-sub{text-transform:uppercase;letter-spacing:.18em;color:#6b7280;font-size:.62rem}.main-nav{background:#f2f2f1;border-radius:1rem;align-items:center;gap:.5rem;padding:.35rem;display:flex}.nav-button{color:#4f5d58;background:0 0;border:none;border-radius:.8rem;align-items:center;gap:.45rem;padding:.7rem 1rem;font-weight:600;display:inline-flex;position:relative}.nav-button.active{color:#0d4a2b;background:#fff;box-shadow:0 2px 8px #00000014}.nav-badge{color:#fff;background:#00a344;border-radius:999px;justify-content:center;align-items:center;min-width:1.15rem;height:1.15rem;padding:0 .35rem;font-size:.62rem;font-weight:800;display:inline-flex}.header-actions{align-items:center;gap:.8rem;display:flex}.instant-tag{color:#0b6b42;background:#edfff4;border:1px solid #c7efd6;border-radius:999px;align-items:center;gap:.45rem;padding:.55rem .8rem;font-size:.72rem;font-weight:700;display:none}.primary-btn,.secondary-btn,.ghost-btn,.toggle-btn,.table-btn{border:none;border-radius:.9rem;font-weight:700;transition:all .2s}.primary-btn{color:#fff;background:linear-gradient(135deg,#0d4a2b,#214d3c);padding:.8rem 1.2rem;box-shadow:0 14px 22px #0d4a2b33}.primary-btn.small,.secondary-btn.small,.ghost-btn.small,.toggle-btn{padding:.7rem 1rem;font-size:.78rem}.primary-btn.full{width:100%}.secondary-btn{color:#103728;background:#114c3414;padding:.8rem 1.1rem}.ghost-btn{color:#374151;background:#f3f4f6;padding:.75rem 1rem}.primary-btn:hover,.secondary-btn:hover,.ghost-btn:hover,.toggle-btn:hover,.table-btn:hover{transform:translateY(-1px)}.content-area{max-width:1280px;margin:0 auto;padding:1.75rem 1.2rem 3rem}.discover-view,.hub-view,.organizer-view,.admin-view{flex-direction:column;gap:1.5rem;display:flex}.hero-banner{background:radial-gradient(circle at 0 0,#24805642,#0000 35%),#062d1f;border-radius:2rem;min-height:15rem;padding:2.2rem;position:relative;overflow:hidden;box-shadow:0 24px 48px #062d1f33}.hero-content{z-index:1;max-width:44rem;position:relative}.hero-pill{color:#a7f3d0;letter-spacing:.08em;text-transform:uppercase;background:#10b9811f;border:1px solid #6ee7b738;border-radius:999px;padding:.45rem .8rem;font-size:.72rem;font-weight:800;display:inline-flex}.hero-content h1{color:#fff;letter-spacing:-.08em;margin:1rem 0 .8rem;font-size:clamp(2.5rem,4vw,4.2rem);line-height:.96}.hero-content p{color:#fffc;max-width:40rem;margin:0;font-size:1rem}.highlight{color:#a7f3d0;font-weight:800}.tag-row{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.tag-pill.selected{color:#fff;background:#ffffff2e;border-color:#ffffff42}.search-panel{background:#fffc;border:1px solid #ece9e6;border-radius:1.5rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;padding:1rem;display:grid;box-shadow:0 18px 34px #1e293b0d}.field-box{background:#f6f8f6;border:1px solid #eef1ef;border-radius:1rem;flex-direction:column;gap:.55rem;padding:.8rem .85rem;display:flex}.field-box label{color:#72817d;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.field-box input,.field-box select,.field-group input,.field-group select,.field-group textarea{color:#111827;background:#fff;border:1px solid #e3e5e4;border-radius:.8rem;width:100%;padding:.72rem .8rem;transition:border-color .2s,box-shadow .2s}.field-box input:focus,.field-box select:focus,.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:#0d4a2b66;outline:none;box-shadow:0 0 0 4px #0d4a2b14}.county-field-box,.county-input-wrap{position:relative}.county-suggestions{z-index:10;background:#fff;border:1px solid #e5e7eb;border-radius:.8rem;flex-direction:column;gap:.2rem;max-height:12rem;padding:.35rem;display:flex;position:absolute;top:calc(100% + .4rem);left:0;right:0;overflow:auto;box-shadow:0 18px 30px #0f172a1a}.county-option{text-align:left;color:#1f2937;background:0 0;border:none;border-radius:.6rem;width:100%;padding:.6rem .7rem;font-weight:600}.county-option.selected,.county-option:hover{color:#0d4a2b;background:#ecfdf5}.county-show-more{color:#0d4a2b;background:#f3f4f6;border:none;border-radius:.7rem;margin-top:.2rem;padding:.7rem;font-weight:800}.chip-inline{align-items:center;gap:.6rem;display:flex}.chip-inline select,.chip-inline input{flex:1}.tag-cloud{flex-wrap:wrap;gap:.45rem;margin-top:.6rem;display:flex}.tag-pill{color:#0d4a2b;background:#edfdf3;border:1px solid #0d4a2b26;border-radius:999px;padding:.4rem .7rem;font-size:.72rem;font-weight:700}.map-link{color:#0d4a2b;margin-top:.5rem;font-weight:700;text-decoration:none;display:inline-block}.compact-form{flex-direction:column;gap:.9rem;display:flex}.price-box .range-wrap{align-items:center;gap:.7rem;display:flex}.price-box input[type=range]{width:100%}.price-box .price-input{width:8rem;min-width:6rem}.range-label{color:#0d4a2b;white-space:nowrap;font-size:.72rem;font-weight:800}.toolbar-row{color:#52615d;justify-content:space-between;align-items:center;gap:1rem;font-size:.8rem;display:flex}.toggle-group{background:#efefef;border-radius:.9rem;align-items:center;padding:.3rem;display:inline-flex}.toggle-btn{color:#53635d;background:0 0}.toggle-btn.active{color:#0d4a2b;background:#fff;box-shadow:0 2px 8px #00000014}.map-panel{background:#fff;border:1px solid #ece7e3;border-radius:1.7rem;padding:1rem;box-shadow:0 16px 30px #1f29370a}.map-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.map-head h3{color:#0d4a2b;margin:0;font-size:1.05rem}.map-head p{color:#6b7280;margin:.2rem 0 0;font-size:.7rem}.map-pill{color:#0b6b42;background:#edfff4;border-radius:999px;align-items:center;padding:.45rem .7rem;font-size:.7rem;font-weight:800;display:inline-flex}.map-surface{background:linear-gradient(#0d4a2b0a,#0d4a2b0a),linear-gradient(135deg,#dceee2,#f7faf8 40%,#eae7de 100%);border:1px solid #e9e3dc;border-radius:1.1rem;height:26rem;position:relative;overflow:hidden}.map-surface:before{content:"";background-image:linear-gradient(90deg,#1018280a 1px,#0000 1px),linear-gradient(#1018280a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.map-pin{color:#fff;cursor:pointer;background:#0d4a2be6;border:2px solid #ffffffbf;border-radius:999px;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:.58rem;font-weight:800;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 12px 22px #0d4a2b42}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;display:grid}.hike-card{background:#fff;border:1px solid #ece7e5;border-radius:1.8rem;overflow:hidden;box-shadow:0 14px 32px #0f172a0d}.card-image-wrap{background-position:50%;background-size:cover;justify-content:space-between;align-items:flex-start;height:13rem;padding:1rem;display:flex;position:relative}.card-badges{flex-wrap:wrap;gap:.5rem;display:flex}.badge-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:.45rem .7rem;font-size:.62rem;font-weight:800;display:inline-flex}.badge-chip.light{color:#0f172a;background:#ffffffd9}.card-rating{color:#fff;cursor:pointer;background:#00000061;border:none;border-radius:999px;align-items:center;gap:.3rem;padding:.4rem .7rem;font-size:.7rem;font-weight:800;transition:transform .2s,background .2s;display:inline-flex}.card-rating:hover,.card-rating:focus-visible{background:#00000080;transform:translateY(-1px)}.card-rating.liked{color:#fff;background:#ef4444}.card-body{padding:1.1rem 1rem 1.2rem}.card-meta-line{color:#6b7280;justify-content:space-between;align-items:center;gap:.5rem;font-size:.7rem;font-weight:600;display:flex}.verified-dot{color:#0d4a2b;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;display:inline-flex}.card-body h3{color:#111827;letter-spacing:-.05em;margin:.55rem 0 .5rem;font-size:1.2rem;line-height:1.2}.card-description{color:#667170;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8rem;line-height:1.55;display:-webkit-box;overflow:hidden}.three-stats{background:#f6f7f6;border-radius:1rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1rem;padding:.75rem .6rem;display:grid}.three-stats div{flex-direction:column;gap:.3rem;display:flex}.three-stats span{text-transform:uppercase;letter-spacing:.08em;color:#7b8381;font-size:.6rem}.three-stats strong{color:#111827;font-size:.72rem}.card-footer{border-top:1px solid #eef1ef;justify-content:space-between;align-items:end;gap:1rem;margin-top:1rem;padding-top:.9rem;display:flex}.card-footer small{color:#7a817f;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;display:block}.card-footer strong{color:#0d4a2b;font-size:1.2rem}.empty-state{text-align:center;background:#fff;border:1px solid #ece7e5;border-radius:1.5rem;grid-column:1/-1;padding:2.5rem 1.5rem}.empty-state h4{margin:0 0 .5rem;font-size:1.1rem}.empty-state p{color:#64748b;margin:0 0 1rem}.profile-panel,.manifest-box,.admin-panel,.ticket-card,.organizer-banner,.profile-summary,.admin-queue,.queue-item,.mpesa-summary,.success-box,.create-modal,.ticket-modal,.checkout-modal,.event-modal{background:#fff;border:1px solid #ece7e5;border-radius:1.7rem;box-shadow:0 14px 30px #0f172a0a}.profile-panel{padding:1.4rem}.profile-header{border-bottom:1px solid #f1f1f0;align-items:center;gap:1.2rem;padding-bottom:1rem;display:flex}.profile-avatar{color:#a7f3d0;background:#0d4a2b;border-radius:1.1rem;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-weight:900;display:flex}.profile-header h2{letter-spacing:-.06em;margin:0;font-size:1.8rem}.profile-header p{color:#667170;margin:.2rem 0 0}.profile-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;padding:1rem;display:grid}.profile-form{flex-direction:column;gap:.8rem;margin-top:1.2rem;display:flex}.profile-summary div{flex-direction:column;gap:.2rem;display:flex}.profile-summary span{color:#6b7280;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.profile-summary strong{color:#0f172a;font-size:1.6rem}.tickets-wrap{flex-direction:column;gap:1rem;display:flex}.tickets-wrap h3{color:#0f172a;margin:0;font-size:1.25rem}.ticket-card{padding:1.3rem}.ticket-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;display:flex}.status-pill{color:#0d4a2b;letter-spacing:.08em;text-transform:uppercase;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;padding:.38rem .8rem;font-size:.62rem;font-weight:900;display:inline-flex}.ticket-ref{color:#667170;font-size:.68rem}.ticket-card h4{color:#0f172a;margin:1rem 0 .9rem;font-size:1.3rem}.ticket-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.ticket-grid div{flex-direction:column;gap:.25rem;display:flex}.ticket-grid span,.modal-stats span,.mini-stat-card span,.queue-item p,.ticket-pass-grid span,.mpesa-summary span,.create-header p,.ticket-header strong,.checkout-header p,.success-box p,.organizer-banner p,.manifest-head p{color:#5a6470;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.ticket-grid strong,.modal-stats strong,.mini-stat-card strong,.mpesa-summary strong,.ticket-pass-grid strong,.success-box h4,.organizer-banner h2,.manifest-head h3,.admin-header h2,.create-header h3{color:#111827;font-weight:800}.theme-dark .ticket-grid span,.theme-dark .modal-stats span,.theme-dark .mini-stat-card span,.theme-dark .queue-item p,.theme-dark .ticket-pass-grid span,.theme-dark .mpesa-summary span,.theme-dark .create-header p,.theme-dark .ticket-header strong,.theme-dark .checkout-header p,.theme-dark .success-box p,.theme-dark .organizer-banner p,.theme-dark .manifest-head p{color:#cde7e2}.theme-dark .ticket-grid strong,.theme-dark .modal-stats strong,.theme-dark .mini-stat-card strong,.theme-dark .mpesa-summary strong,.theme-dark .ticket-pass-grid strong,.theme-dark .success-box h4,.theme-dark .organizer-banner h2,.theme-dark .manifest-head h3,.theme-dark .admin-header h2,.theme-dark .create-header h3{color:#f3faf8}.ticket-actions{border-top:1px solid #f1f1f0;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.organizer-banner{color:#fff;background:linear-gradient(135deg,#0d4a2b,#122b22);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1.5rem;display:flex}.verified-badge,.safe-badge,.status-ok{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;font-size:.68rem;font-weight:800;display:inline-flex}.verified-badge{color:#a7f3d0;background:#10b98124;padding:.4rem .7rem}.organizer-banner h2{color:#fff;letter-spacing:-.06em;margin:.8rem 0 .2rem;font-size:2rem}.organizer-banner p{color:#ffffffbf;margin:0}.organizer-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.stats-grid,.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.mini-stat-card{background:#fff;border:1px solid #ece7e5;border-radius:1.2rem;flex-direction:column;gap:.3rem;padding:1rem 1.1rem;display:flex}.mini-stat-card strong{font-size:1.4rem;line-height:1.2}.manifest-box{padding:1.2rem}.manifest-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.manifest-head h3{margin:0;font-size:1.05rem}.manifest-head p{margin:.2rem 0 0}.manifest-actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.8rem}th,td{text-align:left;border-bottom:1px solid #f1f1f0;padding:.75rem .7rem}th{color:#6b7280;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.status-tag{border-radius:999px;justify-content:center;align-items:center;padding:.4rem .6rem;font-size:.62rem;font-weight:800;display:inline-flex}.status-tag.ok{color:#0d4a2b;background:#dcfce7}.status-tag.pending{color:#92400e;background:#fef3c7}.table-btn{color:#0d4a2b;background:0 0;font-weight:700;text-decoration:underline}.admin-panel{padding:1.4rem}.admin-header{border-bottom:1px solid #f1f1f0;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.admin-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.safe-badge{color:#374151;background:#f3f4f6;border-radius:.6rem;padding:.35rem .6rem;display:inline-flex}.status-ok{color:#0d4a2b;background:#dcfce7;padding:.45rem .7rem}.admin-header h2{letter-spacing:-.06em;margin:.7rem 0 0;font-size:1.8rem}.admin-metrics{margin-top:1rem}.admin-reset-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:1.2rem;margin-top:1.2rem;padding:1.1rem}.admin-reset-box h3{color:#111827;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .9rem;font-size:1rem}.admin-message{color:#0d4a2b;margin:.8rem 0 0;font-size:.82rem;font-weight:700}.admin-queue{margin-top:1.4rem;padding:1.1rem}.admin-queue h3{color:#111827;text-transform:uppercase;letter-spacing:.12em;margin:0 0 .9rem;font-size:.9rem}.queue-item{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;padding:1rem;display:flex}.queue-item strong{color:#111827;display:block}.queue-item p{margin:.35rem 0 0}.queue-actions{align-items:center;gap:.7rem;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#0f172ab8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.event-modal,.create-modal,.ticket-modal,.checkout-modal{width:min(72rem,100%);max-height:92vh;overflow:hidden}.modal-hero{height:17rem;position:relative}.modal-hero img{object-fit:cover;width:100%;height:100%}.hero-overlay{background:linear-gradient(#0000001a,#000c);flex-direction:column;justify-content:flex-end;padding:1.3rem;display:flex;position:absolute;inset:0}.modal-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;display:flex}.hero-overlay h2{color:#fff;letter-spacing:-.06em;margin:0;font-size:clamp(1.6rem,2vw,2.2rem)}.close-button{color:#fff;z-index:5;cursor:pointer;background:#0f172a80;border:none;border-radius:50%;width:2.2rem;height:2.2rem;font-size:1.4rem;line-height:1;position:absolute;top:.9rem;right:.9rem}.modal-body{max-height:60vh;padding:1.2rem 1.2rem 0;overflow-y:auto}.modal-stats{background:linear-gradient(#242d34f5,#121c22f5);border:1px solid #94a3b824;border-radius:1.1rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem;padding:.9rem 1rem;box-shadow:inset 0 1px #ffffff08,0 10px 24px #02061733}.modal-stats div{border-radius:.8rem;flex-direction:column;gap:.3rem;padding:.45rem .55rem;display:flex}.modal-body h4{color:#111827;letter-spacing:-.02em;margin:0 0 .55rem;font-size:.9rem}.modal-section{margin-bottom:1rem}.modal-section p{color:#5a6464;margin:0;line-height:1.65}.info-list{color:#4b5b58;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem .8rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:grid}.info-list li{padding-left:1.1rem;position:relative}.info-list li:before{content:"✓";color:#0d4a2b;font-weight:900;position:absolute;left:0}.gear-row{flex-wrap:wrap;gap:.45rem;display:flex}.gear-tag{color:#334155;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:.8rem;justify-content:center;align-items:center;padding:.45rem .7rem;font-size:.68rem;font-weight:600;display:inline-flex}.pickup-note{color:#734e00;background:#fef3c7;border:1px solid #f5d48d;border-radius:.8rem;padding:.7rem .8rem;font-weight:700}.tier-section{padding-bottom:1rem}.tier-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.tier-box{text-align:left;background:#fff;border:2px solid #e5e7eb;border-radius:1rem;flex-direction:column;gap:.3rem;padding:.85rem;display:flex}.tier-box.selected{background:#f2fbf6;border-color:#0d4a2b}.tier-name{color:#0f172a;font-size:.75rem;font-weight:800}.tier-price{color:#0d4a2b;font-size:1rem;font-weight:900}.tier-box small{color:#6b7280;font-size:.62rem}.modal-footer{background:#f9fafb;border-top:1px solid #f1f1f0;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.2rem 1.2rem;display:flex}.modal-footer small{color:#6b7280;font-size:.68rem;display:block}.modal-footer strong{color:#0d4a2b;font-size:1.5rem}.checkout-modal{background:#fff;border:1px solid #e5e7eb;border-radius:1.2rem;width:min(32rem,100%);padding:1.3rem;overflow:hidden;box-shadow:0 18px 40px #0f172a26}.checkout-header{border-bottom:1px solid #f1f1f0;align-items:center;gap:.8rem;padding:.2rem 0 1rem;display:flex}.checkout-header h3{color:#111827;margin:0;font-size:1.2rem}.checkout-header p{margin:.2rem 0 0}.checkout-form,.phone-prompt,.success-box{margin-top:1.15rem}.mpesa-summary{background:linear-gradient(#f8fafc,#eef5f1);border:1px solid #0d4a2b1f;border-radius:1.1rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-bottom:1rem;padding:1rem;display:grid;box-shadow:inset 0 1px #ffffffb3,0 10px 18px #0f172a14}.mpesa-summary div{background:#ffffff80;border-radius:.8rem;flex-direction:column;gap:.25rem;padding:.45rem .55rem;display:flex}.mpesa-summary span{color:#475569}.mpesa-summary strong{color:#0f172a}.field-group{flex-direction:column;gap:.45rem;margin-bottom:.9rem;display:flex}.checkout-form .field-group input,.checkout-form .field-group select,.checkout-form .field-group textarea{background:#f8fafc;border:1px solid #dfe7ee;border-radius:.8rem;min-height:2.8rem;padding:.7rem .8rem}.field-group label{letter-spacing:.08em;text-transform:uppercase;color:#4b5563;font-size:.7rem;font-weight:800}.checkout-form .field-group label{color:#475569}.checkout-form .field-group input,.checkout-form .field-group select,.checkout-form .field-group textarea{color:#0f172a;background:#fff;border-color:#dfe7ee}.split-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.simulator-screen{color:#fff;background:#111827;border:4px solid #374151;border-radius:1.9rem;width:18rem;margin:0 auto;padding:1rem}.sim-topline{color:#ffffffb3;justify-content:space-between;align-items:center;font-size:.58rem;display:flex}.sim-body{background:#1f2937;border:1px solid #374151;border-radius:1rem;margin-top:.9rem;padding:.8rem}.sim-header{color:#a7f3d0;margin-bottom:.5rem;font-size:.68rem;font-weight:800}.sim-summary-box{background:#0f172abf;border:1px solid #a7f3d033;border-radius:.8rem;gap:.55rem;margin:.7rem 0 .8rem;padding:.7rem;display:grid}.sim-summary-box div{color:#fffc;justify-content:space-between;align-items:baseline;gap:.8rem;font-size:.58rem;display:flex}.sim-summary-box strong{color:#fff;text-align:right;font-size:.7rem}.sim-text{color:#ffffffd9;font-size:.72rem;line-height:1.5}.sim-body label{color:#ffffffb3;letter-spacing:.08em;text-transform:uppercase;margin-top:.8rem;font-size:.6rem;font-weight:700;display:block}.sim-body input{color:#fff;text-align:center;letter-spacing:.35rem;background:#0f172a;border:1px solid #374151;margin-top:.3rem}.sim-actions{gap:.5rem;margin-top:.8rem;display:flex}.success-box{text-align:center;padding:1rem .5rem 0}.success-icon{color:#0d4a2b;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:3.2rem;height:3.2rem;margin:0 auto .6rem;font-size:2rem;font-weight:900;display:flex}.success-box h4{margin:0;font-size:1.3rem}.success-box p{margin:.4rem 0 0;line-height:1.5}.receipt-box{color:#fff;text-align:left;background:#0f172a;border-radius:1rem;margin-top:1rem;padding:.8rem}.receipt-head{color:#ffffffb3;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:.5rem;padding-bottom:.45rem;font-size:.62rem;display:flex}.receipt-box p{color:#fff;margin:.7rem 0 0;font-size:.7rem;line-height:1.5}.success-actions{justify-content:center;align-items:center;gap:.7rem;margin-top:1rem;display:flex}.create-modal{width:min(42rem,100%);max-height:92vh;padding:1rem 1.1rem 1.2rem;overflow-y:auto}.create-header{border-bottom:1px solid #f1f1f0;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.create-header h3{letter-spacing:-.05em;margin:0;font-size:1.3rem}.create-header p{margin:.25rem 0 0}.create-form{padding-top:.9rem}.upload-thumb-row{flex-wrap:wrap;gap:.6rem;margin-top:.75rem;display:flex}.upload-thumb{object-fit:cover;border:1px solid #e7e5e4;border-radius:.8rem;width:4.2rem;height:4.2rem;box-shadow:0 8px 16px #0f172a14}.photo-gallery{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.7rem;margin-top:.5rem;display:grid}.gallery-image{object-fit:cover;border:1px solid #e7e5e4;border-radius:.9rem;width:100%;height:120px}.create-actions{justify-content:flex-end;align-items:center;gap:.8rem;padding-top:.5rem;display:flex}.ticket-modal{width:min(28rem,100%);padding:1rem 1rem 1.1rem}.ticket-header{border-bottom:1px solid #f1f1f0;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.8rem;display:flex}.ticket-pass-body{background:#fafaf9;border:2px dashed #d6d3d1;border-radius:1.1rem;margin-top:1rem;padding:1rem}.ticket-pass-top{justify-content:space-between;align-items:flex-start;gap:.7rem;display:flex}.ticket-pass-top span{color:#6b7280;text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;display:block}.ticket-pass-top h4{color:#0f172a;letter-spacing:-.04em;margin:.3rem 0 .2rem;font-size:1.1rem}.ticket-pass-top small{color:#6b7280;font-size:.68rem}.validated-tag{color:#0d4a2b;background:#dcfce7;border-radius:.6rem;justify-content:center;align-items:center;padding:.35rem .5rem;font-size:.56rem;font-weight:900;display:inline-flex}.ticket-pass-grid{border-top:1px solid #ece7e5;border-bottom:1px solid #ece7e5;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.9rem;padding:.7rem 0;display:grid}.scanner-row{align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.scanner-row input{background:#fff;border:1px solid #dfe3e8;border-radius:.9rem;flex:1;min-height:2.9rem;padding:.7rem .9rem}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-pass-grid div{flex-direction:column;gap:.25rem;display:flex}.qr-box{background:#0f171e08;border:1px solid #94a3b829;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;margin-top:1rem;padding:1rem;display:flex}.qr-svg{background:#fff;border-radius:.85rem;width:7.2rem;height:7.2rem;padding:.5rem;box-shadow:inset 0 0 0 1px #0f171e0f}.qr-code{color:#fff;background:repeating-linear-gradient(45deg,#111827,#111827 8px,#fff 8px 16px);border-radius:.8rem;justify-content:center;align-items:center;width:7rem;height:7rem;font-size:1.2rem;font-weight:900;display:flex}.ticket-actions-row{justify-content:space-between;align-items:center;gap:.8rem;margin-top:1rem;display:flex}.toast{z-index:80;color:#fff;background:#0f172af5;border-radius:1rem;padding:.8rem 1rem;font-size:.78rem;font-weight:700;position:fixed;bottom:1.4rem;right:1.4rem;box-shadow:0 16px 30px #0f172a33}@media (width<=980px){.topbar{flex-wrap:wrap;justify-content:center}.search-panel,.card-grid,.stats-grid,.admin-metrics,.modal-stats,.tier-list,.split-fields,.ticket-grid,.profile-summary{grid-template-columns:1fr 1fr}}@media (width<=760px){.app-shell{min-width:0}.modal-backdrop{align-items:flex-start;padding:.75rem}.event-modal,.create-modal,.ticket-modal,.checkout-modal{width:min(100%,42rem);max-height:90vh}.topbar{gap:.8rem;padding:.8rem .85rem}.main-nav{justify-content:flex-start;gap:.4rem;width:100%;padding:.35rem;overflow-x:auto}.header-actions{justify-content:space-between;width:100%}.instant-tag{display:none}.search-panel,.card-grid,.stats-grid,.admin-metrics,.modal-stats,.tier-list,.split-fields,.ticket-grid,.profile-summary,.info-list{grid-template-columns:1fr}.tag-row,.toolbar-row,.organizer-banner,.manifest-head,.admin-header,.queue-item,.modal-footer,.ticket-actions-row,.ticket-actions,.create-actions,.success-actions{flex-direction:column;align-items:stretch}.hero-banner{padding:1.4rem}.hero-content h1{font-size:2rem}.queue-actions{flex-direction:column;justify-content:stretch;width:100%}.queue-actions button,.primary-btn,.secondary-btn,.ghost-btn{width:100%}.ticket-card .ticket-actions{flex-direction:column;align-items:stretch}.ticket-card .ticket-actions button{width:100%}}@media (width<=480px){.topbar{padding:.7rem .75rem}.brand-wrap{justify-content:center;width:100%}.brand-name{font-size:1rem}.hero-content h1{font-size:1.7rem}.hero-content p,.card-description,.modal-section p{font-size:.92rem}.main-nav .nav-button{white-space:nowrap;padding:.55rem .7rem;font-size:.8rem}.field-group input,.field-group select,.field-group textarea,.field-box input,.field-box select{font-size:1rem}.create-modal,.event-modal,.ticket-modal,.checkout-modal{padding:1rem}}
