:root{--bg:#0f1720;--bg-accent:#162536;--card:#121f2dd1;--card-strong:#0b1825eb;--border:#98c4ff2e;--text:#edf5ff;--muted:#a8bfd8;--accent:#8df0d0;--accent-strong:#f8c65f;--shadow:0 24px 60px #01081052;--headline-font:"Iowan Old Style", "Palatino Linotype", "URW Palladio L", serif;--body-font:"Avenir Next", "Segoe UI", "Helvetica Neue", sans-serif}*{box-sizing:border-box}html{background:radial-gradient(circle at 0 0,#8df0d01f,#0000 28%),radial-gradient(circle at 100% 0,#f8c65f1f,#0000 22%),linear-gradient(#112234 0%,#09111a 100%)}body{min-height:100vh;color:var(--text);font-family:var(--body-font);background:0 0;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell,.page-shell{width:min(1120px,100vw - 2rem);margin:0 auto;padding:3rem 0 5rem}.hero,.page-header{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(135deg,#8df0d01f,#0000 55%),linear-gradient(#09111ad1,#112234eb);border-radius:28px;padding:2rem;position:relative;overflow:hidden}.hero:after,.page-header:after{content:"";background:radial-gradient(circle,#f8c65f40,#0000 70%);border-radius:50%;width:16rem;height:16rem;position:absolute;inset:auto -6rem -6rem auto}.eyebrow,.route-eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.74rem;font-weight:700}.hero h1,.page-header h1,.route-card h2,.form-section h2,.panel-card h2,.summary-callout h2,.metric-card h2{font-family:var(--headline-font);margin:0;font-weight:600;line-height:1.05}.hero h1,.page-header h1{max-width:14ch;font-size:clamp(2.5rem,5vw,4.8rem)}.hero-copy,.page-header p,.route-card p,.form-section p,.panel-card p,.summary-callout li,.metric-card p,.field span,.data-table th,.data-table td{color:var(--muted)}.hero-copy,.page-header p{max-width:56rem;margin:1rem 0 0;font-size:1rem;line-height:1.7}.route-grid,.reservation-grid,.metric-grid,.dashboard-grid{gap:1rem;margin-top:1.5rem;display:grid}.route-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.route-card,.panel-card,.metric-card,.summary-callout{border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;padding:1.4rem}.route-card{transition:transform .18s,border-color .18s,background .18s}.route-card:hover{background:#102131eb;border-color:#8df0d066;transform:translateY(-3px)}.route-card p{margin:.7rem 0 0;line-height:1.6}.route-link{color:var(--accent-strong);margin-top:1rem;font-size:.92rem;font-weight:700;display:inline-flex}.page-form{gap:1rem;margin-top:1.5rem;display:grid}.form-section{border:1px solid var(--border);background:var(--card-strong);box-shadow:var(--shadow);border-radius:24px;gap:1.25rem;padding:1.4rem;display:grid}.field-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;display:grid}.field-grid.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.field{gap:.45rem;display:grid}.field span{font-size:.86rem;font-weight:600}.field input,.field-input,.field select{width:100%;color:var(--text);background:#080f17b3;border:1px solid #98c4ff29;border-radius:14px;padding:.9rem 1rem}.field input::placeholder{color:#a8bfd88c}.summary-callout ul,.panel-list,.result-stack{margin:1rem 0 0}.summary-callout ul,.panel-list{padding-left:1.1rem}.summary-callout li,.panel-list li{line-height:1.7}.form-actions{justify-content:flex-start;align-items:center;margin-top:1rem;display:flex}.status-message{border-radius:14px;margin:1rem 0 0;padding:.9rem 1rem;line-height:1.6}.status-message.success{color:#dffcf2;background:#39b58129;border:1px solid #39b58152}.status-message.error{color:#ffd8de;background:#cf496729;border:1px solid #cf496752}.result-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin:.75rem 0 0;display:grid}.result-grid div{background:#09111a66;border:1px solid #98c4ff24;border-radius:16px;padding:.9rem 1rem}.result-grid dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.result-grid dd{color:var(--text);word-break:break-word;margin:.35rem 0 0;font-size:.95rem;line-height:1.5}.inline-link{color:var(--accent-strong);margin-top:.8rem;font-weight:700;display:inline-flex}.helper-text{color:var(--muted);margin:1rem 0 0;line-height:1.6}.reservation-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.metric-card h2{margin-top:.4rem;font-size:2rem}.dashboard-grid{grid-template-columns:1.1fr 1fr}.panel-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.action-button{color:#092433;background:linear-gradient(135deg, var(--accent), #f7ffaf);cursor:pointer;border:none;border-radius:999px;padding:.8rem 1.1rem;font-weight:700}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #98c4ff1f;padding:.8rem 0;font-size:.92rem}.empty-state{color:var(--muted);padding:1.2rem 0}@media (max-width:860px){.dashboard-grid{grid-template-columns:1fr}.panel-heading{flex-direction:column}}@media (max-width:640px){.shell,.page-shell{width:min(100vw - 1rem,1120px);padding:1rem 0 3rem}.hero,.page-header,.route-card,.panel-card,.metric-card,.summary-callout,.form-section{border-radius:20px}}
