:root{--bg:#f3f4f1;--surface:#fff;--surface-soft:#fafaf8;--text:#111;--text-soft:#5f5f5f;--border:#deded8;--border-strong:#bfc7bc;--header:#050505;--header-soft:#161616;--accent:#2e8b57;--accent-dark:#236b43;--accent-soft:#e8f5ee;--shadow:0 14px 42px #00000014}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(circle at 100% 0,#eef7f1 0,#f5f5f2 28%,#f3f4f1 100%);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:var(--accent-dark)}h1,h2,h3,p{overflow-wrap:anywhere}h1{margin:.4rem 0;font-size:clamp(2rem,4vw,3rem);line-height:1.08}h2{font-size:1.3rem}h3{margin-top:0}.container{width:min(1180px,100% - 40px);margin:auto}.site-header{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#050505f5;border-bottom:1px solid #ffffff14;position:sticky;top:0;box-shadow:0 8px 24px #0003}.nav{justify-content:space-between;align-items:center;gap:18px;min-height:92px;padding:14px 0;display:flex}.brand-group{align-items:center;gap:14px;min-width:0;display:flex}.logo{color:#fff;align-items:center;gap:14px;min-width:0;text-decoration:none;display:flex}.logo-mark{object-fit:cover;background:#fff;border:2px solid #ffffffbf;border-radius:50%;width:58px;height:58px;box-shadow:0 6px 16px #0000004d}.logo-text{flex-direction:column;min-width:0;display:flex}.logo-title{letter-spacing:.02em;color:#fff;font-size:1.15rem;font-weight:800}.logo-subtitle{color:#b7d9c3;white-space:nowrap;font-size:.82rem}.nav nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.nav nav a,.linkbtn,.nav-chip{color:#fff;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:10px 14px;font-size:.93rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.nav nav a:hover,.linkbtn:hover{background:#ffffff14}.linkbtn{cursor:pointer;background:0 0}.nav nav form{margin:0}.nav-signup{box-shadow:0 8px 22px #2e8b5747;background:var(--accent)!important;color:#fff!important}.nav-signup:hover{background:var(--accent-dark)!important}.main{min-height:calc(100vh - 170px);padding:34px 0 76px}.footer{text-align:center;color:#e8efe9;background:var(--header);border-top:3px solid var(--accent);padding:24px}.hero{color:#fff;background:linear-gradient(136deg,#0b0b0b 0%,#1a1a1a 62%,#133723 100%);border:1px solid #ffffff0f;border-radius:26px;margin-bottom:34px;padding:34px;position:relative;overflow:hidden;box-shadow:0 18px 46px #0000002e}.hero:before{content:"";background:radial-gradient(circle,#2e8b5761 0,#2e8b570f 48%,#0000 70%);border-radius:50%;width:280px;height:280px;position:absolute;inset:auto -100px -100px auto}.hero-grid{grid-template-columns:minmax(0,1.7fr) minmax(180px,.8fr);align-items:center;gap:24px;display:grid;position:relative}.hero p{max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#89d0a7;margin-bottom:8px;font-size:.8rem;font-weight:800}.hero-note{color:#d9efe2;background:#ffffff14;border:1px solid #ffffff1c;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;display:inline-flex}.hero-brand{text-align:center;background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:1px solid #ffffff14;border-radius:24px;justify-self:end;min-width:200px;padding:18px}.hero-brand img{object-fit:cover;background:#fff;border:3px solid #fffc;border-radius:50%;width:160px;height:160px;box-shadow:0 10px 22px #0000004d}.hero-brand span{color:#d6eedf;margin-top:12px;font-weight:700;display:block}.section-heading{margin:34px 0 16px}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:18px;display:grid}.trip-card,.panel,.form-shell{box-shadow:var(--shadow);border:1px solid var(--border);background:#ffffffeb;border-radius:20px;padding:22px}.trip-card{position:relative;overflow:hidden}.trip-card:before{content:"";background:linear-gradient(180deg,var(--accent),#8fc2a4);width:6px;position:absolute;top:0;bottom:0;left:0}.trip-card.ended{color:#616161;background:#eceeea;border-color:#d5d8d2}.trip-card.ended:before{background:linear-gradient(#9aa09a,#c8ccc7)}.card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-top h2{margin:0 0 14px;padding-right:8px}.pill{white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:7px 10px;font-size:.73rem;font-weight:800}.pill.green{background:var(--accent-soft);color:#1f5c3b;border-color:#cae8d6}.pill.orange{color:#8a5a00;background:#fdf1d8;border-color:#f7dbab}.pill.gray{color:#505650;background:#e2e5e0;border-color:#d3d7d0}.details p{color:#313131;margin:8px 0}.card-footer{border-top:1px solid #ecefe8;justify-content:space-between;align-items:flex-end;gap:15px;margin-top:26px;padding-top:18px;display:flex}.card-footer small,.card-footer strong{display:block}.card-footer small{color:var(--text-soft)}.card-footer strong{color:var(--accent-dark);font-size:1.25rem}.button{background:var(--accent);color:#fff;cursor:pointer;text-align:center;border:0;border-radius:12px;justify-content:center;align-items:center;padding:12px 16px;font-size:.95rem;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 10px 22px #2e8b5726}.button:hover{background:var(--accent-dark)}.button.secondary{color:#fff;background:#111;box-shadow:0 10px 22px #00000024}.button.secondary:hover{background:#2a2a2a}.button.ghost{color:#111;border:1px solid var(--border);box-shadow:none;background:#fff}.button.ghost:hover{background:#f2f3f0}.button.danger{background:#b53b40}.button.danger:hover{background:#952f33}.ended .button{box-shadow:none;background:#757b75}.page-header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px;display:flex}.form-shell{width:min(500px,100%);margin:20px auto}.form-shell.centered-brand{text-align:center}.auth-logo{object-fit:cover;background:#fff;border:2px solid #111;border-radius:50%;width:92px;height:92px;margin:0 auto 16px;box-shadow:0 10px 22px #0000001f}.form{gap:14px;display:grid}.form label,.inline-form label{gap:6px;font-weight:700;display:grid}.form input,.form textarea,.inline-form input,.inline-form select{width:100%;font:inherit;color:#111;background:#fff;border:1px solid #cfd4cc;border-radius:11px;padding:12px}.form input:focus,.form textarea:focus,.inline-form input:focus,.inline-form select:focus{border-color:var(--accent);outline:2px solid #2e8b572e}.form textarea{min-height:90px}.panel{margin:0 0 17px}.panel ol{padding-left:23px}.notice{background:var(--accent-soft);color:#17472d;border:1px solid #cfe6d8;border-radius:12px;padding:12px 15px}.inline-form{flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0;display:flex}.inline-form label{min-width:180px}.bus-list{border-block:1px solid #ecefe8;margin-block:16px;padding-block:8px}.empty-state{color:#454545;background:#ffffffb3;border:1px dashed #c6ccc4;border-radius:18px;padding:22px}.inline-actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:860px){.hero-grid{grid-template-columns:1fr}.hero-brand{justify-self:start}}@media (max-width:720px){.container{width:calc(100% - 26px)}.nav{flex-direction:column;align-items:flex-start;gap:14px;padding:14px 0 16px}.brand-group,.logo{width:100%}.logo{align-items:center}.logo-mark{width:52px;height:52px}.logo-title{font-size:1.06rem}.logo-subtitle{white-space:normal;font-size:.76rem}.nav nav{justify-content:flex-start;gap:8px;width:100%}.nav nav a,.linkbtn,.nav-chip{min-height:40px;padding:9px 12px;font-size:.84rem}.main{padding-top:20px}.hero{border-radius:18px;padding:24px 18px}.hero-brand{width:100%;min-width:0}.hero-brand img{width:128px;height:128px}.page-header{flex-direction:column;align-items:stretch}.card-top{flex-direction:column;gap:0}.card-footer{flex-wrap:wrap;align-items:stretch}.card-footer .button,.card-footer form,.card-footer form .button{width:100%}.trip-card,.panel,.form-shell{border-radius:16px;padding:17px}.inline-form{flex-direction:column;align-items:stretch}.inline-form label,.inline-form button{width:100%}}.bus-admin-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.bus-admin-row:last-child{border-bottom:none}.bus-admin-row .inline-form{flex:1;margin:0}.remove-bus-form{margin:0}.remove-bus-form button:disabled{opacity:.45;cursor:not-allowed}@media (max-width:720px){.bus-admin-row{flex-direction:column;align-items:stretch}.bus-admin-row .inline-form,.remove-bus-form,.remove-bus-form button{width:100%}}.admin-divider{border-top:1px solid var(--border);margin:24px 0}.admin-members,.admin-registrations{gap:9px;margin:12px 0;display:grid}.member-row,.registration-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.member-row label{gap:5px;min-width:210px;font-size:.85rem;font-weight:700;display:grid}.member-row select{color:#111;border:1px solid var(--border);font:inherit;background:#fff;border-radius:10px;width:100%;padding:10px}.member-name,.registration-row>div{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.member-name small,.registration-row small{color:var(--text-soft)}.bus-admin-row{border-bottom:1px solid var(--border);padding:5px 0}.button:disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#999}@media (max-width:720px){.member-row,.registration-row{flex-direction:column;align-items:stretch}.member-row label,.member-row button,.registration-row button{width:100%}}
