:root{color:#18322b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink:#18322b;--muted:#5c7268;--line:#18322b1f;--panel:#fffcf7db;--panel-strong:#fffdf8;--green:#2e7d5a;--green-soft:#2e7d5a1f;--amber:#b77a17;--amber-soft:#b77a171f;--red:#b5523c;--red-soft:#b5523c1f;--shadow:0 24px 70px #18322b1a;background:radial-gradient(circle at top,#ddab4d4d,#0000 32%),linear-gradient(#f7f2e8 0%,#eef4f0 52%,#f3f6f4 100%);font-family:Avenir Next,Trebuchet MS,Gill Sans,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 10% 20%,#2e7d5a14,#0000 26%),radial-gradient(circle at 85% 0,#b77a172e,#0000 24%),linear-gradient(#f7f2e8 0%,#eef4f0 52%,#f3f6f4 100%);min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;background-image:linear-gradient(#18322b09 1px,#0000 1px),linear-gradient(90deg,#18322b09 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000073,#0000);mask-image:linear-gradient(#00000073,#0000)}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#ffffffd1;border-radius:16px;padding:.85rem .95rem}input:focus,select:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:2px solid #2e7d5a73}label{color:var(--muted);gap:.5rem;font-size:.92rem;display:grid}h1,h2,h3,p{margin:0}#root{width:100%}.shell,.app-shell{width:min(1180px,100% - 2rem);margin:0 auto;padding:1.2rem 0 2.5rem}.shell{align-items:center;gap:1rem;min-height:100vh;display:grid}.hero-panel,.auth-panel,.onboarding-panel,.panel-card{background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);border:1px solid #ffffffb3;border-radius:28px;position:relative;overflow:hidden}.hero-panel,.auth-panel,.onboarding-panel{padding:1.4rem}.hero-panel:after,.auth-panel:after,.panel-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#b77a172e,#0000 70%);border-radius:999px;width:180px;height:180px;position:absolute;inset:auto -10% -55% auto}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--amber);margin-bottom:.7rem;font-size:.72rem}.hero-panel h1,.onboarding-panel h1,.app-header h1{letter-spacing:-.04em;font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:clamp(2.3rem,5vw,4.3rem);line-height:.94}.hero-copy,.muted{color:var(--muted)}.hero-copy{max-width:55ch;margin-top:.95rem;font-size:1.02rem}.hero-grid,.stats-grid,.dashboard-grid,.vehicle-grid,.form-grid,.kid-list,.stack,.pact-list{gap:1rem;display:grid}.hero-grid,.stats-grid{margin-top:1.4rem}.panel-card{padding:1.1rem}.panel-card.emphasis{background:linear-gradient(160deg, #2e7d5a29, #ffffffe6), var(--panel)}.panel-card.compact{padding:1rem}.card-icon,.inline-icon,.button-icon{flex:none}.card-icon{width:1.25rem;height:1.25rem;color:var(--green)}.inline-icon{width:1rem;height:1rem}.button-icon{width:.95rem;height:.95rem}.auth-panel h2,.panel-card h2,.onboarding-panel h2{margin-bottom:.4rem;font-size:1.35rem}.auth-toggle,.segmented,.tabs,.weekday-row{flex-wrap:wrap;gap:.6rem;display:flex}.auth-toggle button,.segmented button,.tabs button,.weekday-row button,.ghost-button,.date-strip button{border:1px solid var(--line);color:var(--ink);background:#ffffffb8;border-radius:999px;transition:transform .18s,border-color .18s,background .18s}.auth-toggle button,.segmented button,.tabs button,.weekday-row button,.ghost-button{padding:.72rem 1rem}.auth-toggle button.selected,.segmented button.selected,.tabs button.selected,.weekday-row button.selected,.date-strip button.selected{background:#2e7d5a24;border-color:#2e7d5a4d;transform:translateY(-1px)}.auth-card,.composer,.handshake-box,.live-card,.kid-card,.empty-state{gap:1rem;display:grid}.auth-card{margin-top:1rem}.auth-form{gap:.85rem;display:grid}.auth-feedback{border-radius:16px;align-items:flex-start;gap:.65rem;padding:.85rem .95rem;font-size:.93rem;display:flex}.auth-feedback-success{color:var(--green);background:#2e7d5a14;border:1px solid #2e7d5a2e}.auth-feedback-error{color:var(--red);background:#b5523c14;border:1px solid #b5523c2e}.auth-row,.trust-note,.section-heading,.ride-topline,.ride-actions,.link-row,.handshake-row,.meta-row,.header-actions{align-items:center;gap:.8rem;display:flex}.auth-row{align-items:flex-start}.primary-button,.ghost-button{justify-content:center;align-items:center;gap:.55rem;min-height:3rem;display:inline-flex}.primary-button{color:#f7f8f5;background:linear-gradient(135deg,#1d5f45,#2e7d5a);border:0;border-radius:18px;padding:.9rem 1.1rem;box-shadow:0 18px 35px #1d5f453d}.primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.ghost-button{padding:.8rem 1rem}.trust-note{color:var(--muted);font-size:.9rem}.app-header{gap:1rem;margin-bottom:1rem;display:grid}.error-banner{color:var(--red);background:#b5523c14;border:1px solid #b5523c2e;border-radius:18px;align-items:center;gap:.7rem;margin-bottom:1rem;padding:.9rem 1rem;display:flex}.header-actions{justify-content:space-between}.status-chip,.meta-pill,.completed-pill{text-transform:capitalize;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:2rem;padding:.35rem .8rem;font-size:.83rem;display:inline-flex}.status-chip.live,.completed-pill,.status-chip.success{background:var(--green-soft);color:var(--green);border-color:#2e7d5a2e}.status-chip.mock,.status-chip.warning{background:var(--amber-soft);color:var(--amber);border-color:#b77a172e}.status-chip.danger{background:var(--red-soft);color:var(--red);border-color:#b5523c2e}.status-chip.default,.meta-pill{color:var(--muted);background:#18322b0f;border-color:#18322b1a}.date-strip{grid-auto-columns:minmax(92px,1fr);grid-auto-flow:column;gap:.8rem;margin-bottom:1rem;padding-bottom:.45rem;display:grid;overflow-x:auto}.date-strip button{gap:.2rem;min-width:92px;padding:.9rem .7rem;display:grid}.date-strip button span{color:var(--muted);font-size:.8rem}.date-strip button strong{font-size:1rem}.section-heading{justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.toggle-label{grid-template-columns:1fr auto;align-items:center}.tabs{margin-bottom:1rem;position:relative}.tabs button{position:relative;overflow:hidden}.tab-glow{background:linear-gradient(90deg,#2e7d5a,#ddb14d);border-radius:999px;height:3px;position:absolute;inset:auto 12px 8px}.ride-list{gap:.9rem;display:grid}.ride-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:22px;gap:.9rem;padding:1rem;display:grid}.tone-success{background:linear-gradient(#2e7d5a14,#fffdf8)}.tone-warning{background:linear-gradient(#b77a1714,#fffdf8)}.tone-danger{background:linear-gradient(#b5523c1a,#fffdf8)}.ride-topline{justify-content:space-between}.ride-owner{font-weight:700}.ride-card h3,.empty-state h3{font-size:1.15rem}.ride-notes{color:var(--ink)}.handshake-box{background:#ffffff8c;border:1px dashed #18322b2e;border-radius:18px;padding:.95rem}.handshake-row,.link-row,.ride-actions{flex-wrap:wrap;justify-content:space-between}.link-row a{color:var(--green);font-weight:600;text-decoration:none}.meta-row{flex-wrap:wrap}.empty-state{border:1px dashed #18322b2e;border-radius:22px;place-items:start;padding:1rem}.onboarding-shell{max-width:820px}.pact-list{margin-top:1.2rem}.pact-item{background:#ffffffb8;border:1px solid #18322b14;border-radius:22px;grid-template-columns:auto 1fr;align-items:start;gap:.9rem;padding:1rem}.pact-item input{width:1.1rem;height:1.1rem;margin-top:.12rem}.onboarding-actions{gap:1rem;margin-top:1.2rem;display:grid}.inline-link{color:var(--green);font-weight:600;text-decoration-color:#2e7d5a4d}@media (width>=720px){.shell{grid-template-columns:1.25fr .95fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}.hero-grid,.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-header{grid-template-columns:minmax(0,1fr) auto;align-items:end}.header-actions{justify-content:flex-end}}
