:root{
    --bg:#071318;
    --bg-2:#0b1d24;
    --bg-3:#112932;
    --panel:rgba(16,33,40,.78);
    --panel-strong:rgba(18,40,49,.92);
    --panel-soft:rgba(255,255,255,.055);
    --glass:rgba(255,255,255,.08);
    --line:rgba(255,255,255,.12);
    --line-strong:rgba(255,255,255,.22);
    --text:#f5fbfd;
    --text-soft:#d9eef0;
    --muted:#9cb7bd;
    --primary:#63e6da;
    --primary-2:#22b8a8;
    --cyan:#8ef5f0;
    --gold:#63e6da;
    --gold-2:#22b8a8;
    --gold-soft:rgba(99,230,218,.14);
    --green:#47d987;
    --green-2:#27aa66;
    --red:#ff7272;
    --red-2:#e04d4d;
    --silver:#8b9ab5;
    --shadow-sm:0 12px 26px rgba(0,0,0,.22);
    --shadow-md:0 22px 50px rgba(0,0,0,.30);
    --shadow-lg:0 34px 90px rgba(0,0,0,.40);
    --radius-xs:12px;
    --radius-sm:16px;
    --radius-md:22px;
    --radius-lg:30px;
    --radius-xl:42px;
    --content-width:1260px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
    font-family:Inter,Arial,Helvetica,sans-serif;
    color:var(--text);
    background:
        radial-gradient(circle at 14% 0%, rgba(99,230,218,.20), transparent 30%),
        radial-gradient(circle at 90% 12%, rgba(69,160,255,.12), transparent 24%),
        radial-gradient(circle at 46% 100%, rgba(124,236,199,.10), transparent 28%),
        linear-gradient(180deg,#071318 0%, #08181d 42%, #071116 100%);
    min-height:100vh;
}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.page{min-height:100vh;display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden}
.page::before,.page::after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(10px)}
.page::before{top:80px;left:-160px;width:430px;height:430px;background:radial-gradient(circle, rgba(99,230,218,.22), transparent 70%)}
.page::after{right:-170px;bottom:120px;width:480px;height:480px;background:radial-gradient(circle, rgba(69,160,255,.14), transparent 72%)}
.container,.narrow{width:min(var(--content-width),calc(100% - 40px));margin:0 auto;position:relative;z-index:1}
.narrow{width:min(940px,calc(100% - 40px))}
.topline{
    background:linear-gradient(90deg,rgba(99,230,218,.16),rgba(69,160,255,.12));
    border-bottom:1px solid rgba(255,255,255,.08);
    color:#dffcf9;
    font-size:13px;
}
.topline__inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:10px 0}
.header{
    position:sticky;top:0;z-index:50;
    background:rgba(7,19,24,.78);
    border-bottom:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(24px);
}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px 0}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand__logo{
    width:54px;height:54px;border-radius:20px;display:grid;place-items:center;flex:0 0 54px;
    color:#08101d;font-weight:900;letter-spacing:.3px;
    background:linear-gradient(135deg,#dffffb,var(--gold) 44%,var(--gold-2));
    box-shadow:0 18px 42px rgba(34,184,168,.28), inset 0 1px 0 rgba(255,255,255,.8);
}
.brand__text strong{display:block;font-size:19px;line-height:1.05;letter-spacing:-.01em}
.brand__text small{display:block;margin-top:4px;color:var(--muted);font-size:13px}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;row-gap:10px}
.nav a{
    padding:11px 15px;border-radius:999px;color:var(--text-soft);
    border:1px solid transparent;
    transition:.2s ease;
}
.nav a:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.1);color:#fff}
.nav a.active{background:var(--gold-soft);border-color:rgba(99,230,218,.26);color:#dffffb;font-weight:800}
.nav__account{background:rgba(99,230,218,.10)!important;color:#dffffb!important;border-color:rgba(99,230,218,.18)!important}
.chip{
    display:inline-flex;align-items:center;gap:8px;
    padding:9px 14px;border-radius:999px;
    background:rgba(246,201,107,.13);
    color:#dffffb;
    border:1px solid rgba(99,230,218,.24);
    font-size:13px;font-weight:800;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.button{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    min-height:48px;padding:14px 22px;border:none;border-radius:17px;
    color:#09111f;font-weight:900;
    background:linear-gradient(135deg,#dffffb,var(--gold) 46%,var(--gold-2));
    box-shadow:0 16px 34px rgba(34,184,168,.24), inset 0 1px 0 rgba(255,255,255,.75);
    transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.button:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 22px 46px rgba(34,184,168,.30)}
.button--small{min-height:40px;padding:10px 16px;border-radius:14px;font-size:14px}
.button--ghost{
    background:rgba(255,255,255,.06);
    color:var(--text);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:none;
}
.button--ghost:hover{background:rgba(255,255,255,.10);box-shadow:var(--shadow-sm)}
.button--danger{background:linear-gradient(135deg,#ff8b8b,#e74747);color:#fff}
button:disabled,.button:disabled{opacity:.54;cursor:not-allowed;transform:none;filter:none;box-shadow:none}
.card{
    position:relative;overflow:hidden;
    padding:30px;border-radius:var(--radius-lg);
    background:linear-gradient(180deg,rgba(26,34,65,.83),rgba(14,20,42,.86));
    border:1px solid rgba(255,255,255,.11);
    box-shadow:var(--shadow-md);
    backdrop-filter:blur(18px);
}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent)}
.card--soft{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045));box-shadow:none}
.card--outlined{box-shadow:none;border:1px dashed rgba(255,255,255,.22)}
.hero{padding:54px 0 36px}
.hero__shell{display:grid;grid-template-columns:minmax(0,1.08fr) 440px;gap:30px;align-items:stretch}
.hero-panel{
    min-height:100%;padding:42px 42px 36px;border-radius:var(--radius-xl);
    background:
        linear-gradient(135deg,rgba(25,35,70,.94),rgba(10,16,34,.92) 58%,rgba(39,33,23,.86)),
        radial-gradient(circle at 78% 12%, rgba(99,230,218,.18), transparent 30%);
}
.hero-panel::after{content:"";position:absolute;right:-90px;top:-120px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(99,230,218,.16),transparent 70%)}
.hero h1{margin:18px 0 18px;font-size:64px;line-height:.98;letter-spacing:-.055em;max-width:12ch}
.lead{font-size:18px;line-height:1.72;color:var(--text-soft);max-width:760px}
.hero__actions,.actions,.print-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.live-tag{display:inline-flex;align-items:center;min-height:44px;padding:11px 15px;border-radius:999px;background:rgba(99,230,218,.12);border:1px solid rgba(99,230,218,.24);color:#dffffb;font-size:14px;font-weight:800}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}
.stat,.highlight-card,.feature,.route-card,.result,.metric-card,.step,.hero-feature,.ticket-flow__item{
    background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
    border:1px solid rgba(255,255,255,.12);
    box-shadow:var(--shadow-sm);
    backdrop-filter:blur(12px);
}
.stat{padding:22px;border-radius:24px}
.stat strong{display:block;font-size:34px;line-height:1;color:#fff}
.stat span,.stat small{display:block;margin-top:8px;color:var(--muted);font-size:14px;line-height:1.45}
.hero-utility{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.highlight-card{padding:20px;border-radius:24px}
.highlight-card strong{display:block;margin-bottom:6px;color:#fff;font-size:16px}
.highlight-card span{display:block;color:var(--muted);font-size:14px;line-height:1.55}
.search-card{
    display:grid;gap:18px;
    background:linear-gradient(180deg,rgba(22,30,58,.92),rgba(12,18,38,.92));
    border-color:rgba(99,230,218,.18);
}
.search-card h3{margin:0;font-size:25px;letter-spacing:-.02em}
.search-card p{margin:0;color:var(--muted);line-height:1.6}
.hero__features{display:grid;gap:14px;margin-top:4px}
.hero-feature{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:22px}
.hero-feature__icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;flex:0 0 44px;background:var(--gold-soft);border:1px solid rgba(246,201,107,.2);font-size:22px}
.hero-feature strong{display:block;margin-bottom:4px;color:#fff}
.hero-feature span{display:block;color:var(--muted);font-size:14px;line-height:1.45}
.hero-mini-seats{margin-top:6px;padding:20px;border-radius:26px;background:linear-gradient(135deg,rgba(99,230,218,.16),rgba(69,160,255,.10));border:1px solid rgba(255,255,255,.12)}
.hero-mini-seats__title{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#dffffb;font-weight:800;margin-bottom:14px}
.section{padding:34px 0 64px}
.section--muted{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01))}
.section__head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px}
.section__head h1,.section__head h2,.card h1,.card h2{margin:14px 0 10px;line-height:1.04;letter-spacing:-.045em;color:#fff}
.section__head h1,.section__head h2,.card h1{font-size:44px}
.card h2{font-size:34px}
.section__head p,.muted{color:var(--muted);line-height:1.66}
.grid{display:grid;gap:18px}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.feature{padding:26px;border-radius:28px;transition:.18s ease}
.feature:hover,.route-card:hover,.result:hover,.highlight-card:hover,.metric-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(99,230,218,.24)}
.feature__icon,.step__num{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;margin-bottom:18px;background:var(--gold-soft);border:1px solid rgba(246,201,107,.18);font-size:26px;color:#dffffb}
.feature h3,.step h3,.result h3,.route-card h3{margin:0 0 10px;color:#fff;letter-spacing:-.02em}
.feature p,.step p{margin:0;color:var(--muted);line-height:1.65}
.section-callout{display:grid;grid-template-columns:1.18fr .82fr;gap:20px;align-items:start}
.promo-card{background:linear-gradient(135deg,rgba(13,45,55,.96),rgba(9,30,42,.92));border-color:rgba(99,230,218,.20)}
.promo-card .button--ghost{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2)}
.ticket-flow{display:grid;gap:14px;margin-top:18px}
.ticket-flow__item{display:flex;gap:13px;align-items:flex-start;padding:16px;border-radius:22px}
.ticket-flow__num{width:36px;height:36px;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#062126;font-weight:900;display:grid;place-items:center;flex:0 0 36px}
.route-card{display:flex;flex-direction:column;gap:14px;min-height:230px;padding:26px;border-radius:28px}
.route-card h3{font-size:25px;line-height:1.14}
.route-card__meta{display:grid;gap:7px;color:var(--muted)}
.route-card__meta p{margin:0}
.route-card__bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;border-top:1px solid rgba(255,255,255,.10)}
.route-card strong{font-size:clamp(28px,4vw,32px);line-height:1;white-space:nowrap;color:#dffffb}
.form,.list{display:grid;gap:16px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label{font-size:14px;font-weight:800;color:#dce8fb}
.field small{font-size:12px;color:var(--muted);line-height:1.45}
input,select,textarea{
    width:100%;min-height:50px;padding:14px 16px;border-radius:16px;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);
    color:#fff;outline:none;transition:.18s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
input::placeholder,textarea::placeholder{color:#7f90af}
select option{background:#102027;color:#fff}
input:focus,select:focus,textarea:focus{border-color:rgba(99,230,218,.46);box-shadow:0 0 0 4px rgba(99,230,218,.10)}
.search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}
.search-grid--admin{grid-template-columns:repeat(3,minmax(0,1fr))}
.field--button{display:flex;align-items:end;justify-content:flex-end;gap:10px}

.search-card .search-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.hero__side .field--button{grid-column:1 / -1;justify-content:stretch;}
.hero__side .field--button .button{width:100%;min-height:52px;}
.hero__side .field--button .button + .button{width:100%;}
.route-card__bottom .button{flex:0 0 auto;min-width:136px;padding-inline:14px;}
.route-card h3{font-size:22px;line-height:1.16;}
.route-card__meta{min-height:72px;}
.route-card__bottom{align-items:flex-end;}
.nav::-webkit-scrollbar{height:6px}
.nav::-webkit-scrollbar-thumb{background:rgba(99,230,218,.28);border-radius:999px}
.profile-quicklinks{display:grid;gap:14px}

.password-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.password-toggle{min-width:100px}
.result{display:grid;gap:16px;padding:24px;border-radius:30px;transition:.18s ease}
.result__main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}
.result__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.result h3{font-size:30px}
.meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--text-soft);font-size:14px;line-height:1.5}
.meta span{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.11);padding:8px 11px;border-radius:999px}
.route-note{background:var(--gold-soft)!important;color:#dffffb!important;border-color:rgba(99,230,218,.24)!important}
.price{min-width:170px;text-align:right;padding:17px 18px;border-radius:24px;background:linear-gradient(180deg,rgba(99,230,218,.14),rgba(69,160,255,.06));border:1px solid rgba(99,230,218,.20)}
.price strong{display:block;font-size:34px;line-height:1;color:#dffffb;white-space:nowrap}
.price small{display:block;color:var(--muted);margin-top:6px}
.details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.details>div{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:var(--text-soft)}
.details strong{color:#fff}
.empty{text-align:center;padding:32px 24px}
.empty h3{margin-top:0;color:#fff}
.demo-note,.surface-note{padding:17px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);line-height:1.65;color:var(--text-soft)}
.bus-card{display:grid;gap:12px;overflow-x:auto;padding-bottom:4px}
.bus-card__top{padding:13px 16px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);text-align:center;color:#dffffb;font-weight:900}
.seat-row,.seat-row--demo{display:grid!important;grid-template-columns:60px 60px 24px 60px 60px!important;gap:10px!important;justify-content:center!important;align-items:center!important;min-width:324px!important}
.aisle{width:24px!important;height:60px!important}
.seat{width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;max-width:60px!important;max-height:60px!important;border:none!important;border-radius:20px!important;color:#fff;font-weight:900;font-size:20px;display:grid!important;place-items:center!important;padding:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 20px rgba(0,0,0,.14);transition:.16s ease}
.seat.free{background:linear-gradient(180deg,#43e08a,#20a85e)}
.seat.busy{background:linear-gradient(180deg,#ff8080,#e34b4b);cursor:not-allowed}
.seat.selected{background:linear-gradient(180deg,#7ff2e7,#22b8a8);box-shadow:0 0 0 4px rgba(99,230,218,.24),0 14px 28px rgba(34,184,168,.24)}
.seat.unavailable{background:linear-gradient(180deg,#8f9bb4,#657188);cursor:not-allowed;opacity:.88}
.seat:hover:not(:disabled){transform:translateY(-2px) scale(1.03);filter:brightness(1.05)}
.legend{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-top:10px}
.dot{width:11px;height:11px;border-radius:50%;display:inline-block;margin-right:7px;vertical-align:middle}
.dot--free{background:#43e08a}.dot--busy{background:#ff7777}.dot--selected{background:#22b8a8}.dot--unavailable{background:#8f9bb4}
.booking-box{display:grid;gap:9px;margin:14px 0 18px;color:var(--text-soft)}
.ajax-note{min-height:22px;color:#dffffb}
.badge-group{display:flex;gap:8px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--text-soft);border:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:800}
.badge--paid,.badge--reserved{background:rgba(56,214,122,.13);color:#dffffb;border-color:rgba(56,214,122,.24)}
.badge--cancelled{background:rgba(255,107,107,.13);color:#ffd1d1;border-color:rgba(255,107,107,.24)}
.ticket{gap:16px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045))}
.ticket__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ticket-card{background:linear-gradient(135deg,rgba(16,40,49,.95),rgba(9,23,29,.92));border:1px dashed rgba(99,230,218,.34)}
.ticket-card::after{content:"";position:absolute;right:28px;top:26px;width:80px;height:80px;border-radius:24px;border:1px dashed rgba(99,230,218,.28)}
.qr{width:136px;height:136px;border:10px solid rgba(255,255,255,.95);border-radius:20px;background:repeating-linear-gradient(45deg,#050814 0 8px,#fff 8px 16px);box-shadow:var(--shadow-sm)}
.print-actions{margin-top:18px}
.flash{margin-top:16px;padding:15px 18px;border-radius:20px;font-weight:800;border:1px solid rgba(255,255,255,.12)}
.flash--success{background:rgba(56,214,122,.12);color:#c3ffd9;border-color:rgba(56,214,122,.28)}
.flash--error{background:rgba(255,107,107,.12);color:#ffd1d1;border-color:rgba(255,107,107,.28)}
.table-wrap{overflow-x:auto;background:rgba(16,24,48,.82);border-radius:28px;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow-md)}
.table{width:100%;border-collapse:collapse;min-width:960px;color:var(--text-soft)}
.table th,.table td{padding:16px;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;vertical-align:top}
.table thead th{background:rgba(255,255,255,.055);color:#dffffb;font-size:14px;font-weight:900}
.table tbody tr:hover{background:rgba(255,255,255,.035)}
.table small{color:var(--muted)}
.table input,.table select{min-width:130px}
.table td select{width:100%}
.admin-select{min-width:185px;margin-bottom:8px}
.admin-body .chip{background:var(--gold-soft);color:#dffffb}
.admin-body .card{background:linear-gradient(180deg,rgba(26,34,65,.85),rgba(14,20,42,.88))}
.admin-dashboard-head{align-items:flex-start}
.admin-actions{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;min-width:420px}
.admin-actions .button{height:44px;min-height:44px}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.metric-card{padding:24px;border-radius:28px}
.metric-card span{display:block;font-size:14px;color:var(--muted);margin-bottom:10px}
.metric-card strong{font-size:32px;line-height:1.05;color:#fff}
.toast{position:fixed;right:18px;bottom:18px;z-index:90;min-width:280px;max-width:min(430px,calc(100vw - 32px));padding:16px 18px;border-radius:20px;box-shadow:var(--shadow-lg);font-weight:900;color:#08101d;background:linear-gradient(135deg,#dffffb,var(--gold))}
.toast--success{background:linear-gradient(135deg,#dffcf9,#47d987)}
.toast--error{background:linear-gradient(135deg,#ffd1d1,#ff6b6b);color:#2b0909}
.footer{margin-top:auto;padding:54px 0 36px;background:linear-gradient(180deg,rgba(8,12,28,.96),rgba(5,7,16,.98));border-top:1px solid rgba(255,255,255,.08);color:#edf4ff}
.footer__grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:28px}
.footer h3,.footer h4{margin-top:0;margin-bottom:12px;color:#fff}
.footer p,.footer__list{color:var(--muted)}
.footer__list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.footer__list li{line-height:1.55}
.footer a:hover{text-decoration:underline;color:#fff}
.footer__bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:13px}
@media (max-width:1180px){.hero h1{font-size:54px}.hero__shell{grid-template-columns:1fr}.admin-actions{min-width:0;width:100%}.hero__side .search-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:980px){.grid--2,.grid--3,.grid--4,.stats,.footer__grid,.hero-utility,.metric-grid,.section-callout{grid-template-columns:1fr}.section__head,.result__main{flex-direction:column;align-items:flex-start}.price{text-align:left;width:100%}.search-grid,.search-grid--admin,.search-card .search-grid{grid-template-columns:1fr}.field--button,.hero__side .field--button{justify-content:stretch}.field--button .button,.hero__side .field--button .button{width:100%}.details{grid-template-columns:1fr}.admin-actions{grid-template-columns:1fr 1fr}.hero h1{max-width:none}.actions{align-items:stretch}.actions .button{width:100%}}
@media (max-width:700px){.topline{display:none}.container,.narrow{width:calc(100% - 24px)}.header__inner{flex-direction:column;align-items:stretch}.nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.nav a,.nav .button{flex:0 0 auto}.hero{padding-top:24px}.hero-panel{padding:26px}.hero h1{font-size:40px}.lead{font-size:16px}.section__head h1,.section__head h2,.card h1{font-size:34px}.card h2{font-size:27px}.button,.hero__actions .button,.print-actions .button,.actions .button{width:100%}.hero__actions,.actions,.print-actions{display:grid;grid-template-columns:1fr}.stats{grid-template-columns:1fr}.route-card__bottom{flex-direction:column;align-items:stretch}.route-card__bottom .button{width:100%}.route-card strong,.price strong{font-size:clamp(28px,9vw,34px)}.seat-row,.seat-row--demo{grid-template-columns:50px 50px 16px 50px 50px!important;gap:7px!important;min-width:280px!important}.seat{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;max-width:50px!important;max-height:50px!important;font-size:16px;border-radius:15px!important}.aisle{width:16px!important;height:50px!important}.legend{gap:12px}.admin-actions{grid-template-columns:1fr}.password-toggle{min-width:84px;padding-left:10px;padding-right:10px}.toast{right:12px;left:12px;bottom:12px;min-width:0;max-width:none}.brand__text small{display:none}}
@media print{.topline,.header,.footer,.print-actions,.button{display:none!important}body{background:#fff;color:#000}.page::before,.page::after{display:none}.card,.table-wrap{box-shadow:none;border:1px solid #ddd;background:#fff;color:#000}.container,.narrow{width:100%}.section{padding:0}.muted,.meta,.badge{color:#555!important}}

/* luxury commercial upgrade */
.topline{
    background:linear-gradient(90deg,rgba(99,230,218,.10),rgba(69,160,255,.06),rgba(99,230,218,.10));
    border-bottom:1px solid rgba(255,255,255,.06);
}
.topline__inner span{position:relative;padding-left:16px}
.topline__inner span::before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;border-radius:50%;transform:translateY(-50%);background:var(--primary)}
.header{position:sticky;top:0;z-index:50;background:rgba(7,19,24,.58);backdrop-filter:blur(18px)}
.header::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(99,230,218,.26),transparent)}
.card,.feature,.route-card,.result,.stat,.highlight-card,.search-card,.metric-card,.ticket-flow__item,.trust-card,.faq-card{
    position:relative;
    overflow:hidden;
}
.card::after,.feature::after,.route-card::after,.result::after,.stat::after,.highlight-card::after,.search-card::after,.metric-card::after,.ticket-flow__item::after,.trust-card::after,.faq-card::after{
    content:"";
    position:absolute;
    inset:-1px auto auto -1px;
    width:180px;
    height:120px;
    pointer-events:none;
    background:radial-gradient(circle at top left, rgba(255,255,255,.11), transparent 70%);
}
.button{position:relative;overflow:hidden;isolation:isolate}
.button::after{
    content:"";position:absolute;top:0;bottom:0;left:-55%;width:42%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
    transform:skewX(-24deg);transition:left .38s ease;z-index:-1;
}
.button:hover::after{left:115%}
.hero-panel{
    box-shadow:0 30px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06);
}
.search-card{
    border-color:rgba(99,230,218,.22);
    box-shadow:0 24px 70px rgba(0,0,0,.34), 0 0 0 1px rgba(99,230,218,.06);
}
.hero__features,.hero-mini-seats{margin-top:10px}
.hero-mini-seats{
    background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(99,230,218,.10));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.trust-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}
.trust-card{
    display:flex;gap:14px;align-items:flex-start;padding:22px;border-radius:26px;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
    border:1px solid rgba(255,255,255,.11);
    box-shadow:var(--shadow-sm);
}
.trust-card__icon{
    width:46px;height:46px;border-radius:16px;display:grid;place-items:center;flex:0 0 46px;
    background:linear-gradient(135deg,rgba(99,230,218,.30),rgba(34,184,168,.18));
    border:1px solid rgba(99,230,218,.26);font-size:20px;color:#fff;font-weight:900;
}
.trust-card strong,.faq-card strong{display:block;color:#fff;margin-bottom:8px;font-size:16px}
.trust-card p,.faq-card p{margin:0;color:var(--muted);line-height:1.6;font-size:14px}
.section--compact{padding-top:8px;padding-bottom:18px}
.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.faq-card{padding:24px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.10)}
.summary-bar{
    display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;
    margin:18px 0 20px;padding:20px 22px;border-radius:24px;
    background:linear-gradient(135deg,rgba(16,40,49,.95),rgba(9,23,29,.92));
    border:1px solid rgba(99,230,218,.16);box-shadow:var(--shadow-sm);
}
.summary-bar__main{display:grid;gap:10px}
.summary-bar__main strong{font-size:22px;color:#fff;letter-spacing:-.02em}
.summary-bar__chips{display:flex;gap:10px;flex-wrap:wrap}
.summary-chip{
    display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;
    background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:var(--text-soft);font-size:13px;font-weight:700;
}
.summary-bar__side{max-width:360px;font-size:14px;line-height:1.55}
.result{
    background:linear-gradient(135deg,rgba(17,35,43,.98),rgba(10,21,27,.96));
    border:1px solid rgba(99,230,218,.12);
    box-shadow:0 24px 58px rgba(0,0,0,.26);
}
.result__content{display:grid;gap:12px}
.result__actions{padding-top:4px;border-top:1px solid rgba(255,255,255,.08)}
.result h3{font-size:34px;line-height:1.05;letter-spacing:-.03em;margin:.1em 0 0}
.route-card{
    background:linear-gradient(180deg,rgba(18,37,46,.94),rgba(10,22,28,.92));
    border:1px solid rgba(99,230,218,.12);
}
.route-card__bottom{padding-top:18px}
.route-card .button,.result .button{box-shadow:0 12px 28px rgba(34,184,168,.22)}
.feature,.highlight-card,.stat,.metric-card{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.05))}
.feature__icon,.step__num,.hero-feature__icon{box-shadow:0 10px 24px rgba(34,184,168,.12)}
.ticket{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.10)}
.ticket__top strong{font-size:24px;letter-spacing:-.02em}
.table-wrap,.admin-body .card{background:linear-gradient(180deg,rgba(18,37,46,.92),rgba(10,22,28,.92));border-color:rgba(99,230,218,.12)}
.footer{
    background:linear-gradient(180deg,rgba(5,12,16,.98),rgba(4,9,13,1));
}
.footer__grid>div:first-child{
    padding-right:10px;
}
.footer__grid>div:first-child h3{font-size:28px;letter-spacing:-.03em}
.footer__list a{color:var(--text-soft)}
@media (max-width:1180px){
    .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
    .trust-grid,.faq-grid{grid-template-columns:1fr}
    .summary-bar{padding:18px}
}
@media (max-width:700px){
    .summary-bar__main strong{font-size:20px}
    .result h3{font-size:28px}
    .trust-card,.faq-card{padding:18px}
    .summary-bar__chips{gap:8px}
}

/* fixes: route cards and more commercial copy layout */
.section-callout .grid--3{
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.route-card{
    min-width:0;
}
.route-card h3{
    font-size:clamp(20px,2vw,24px);
    line-height:1.15;
    word-break:normal;
    overflow-wrap:anywhere;
}
.route-card__meta{
    min-height:0;
    gap:8px;
}
.route-card__bottom{
    display:grid;
    grid-template-columns:1fr;
    align-items:stretch;
    gap:14px;
}
.route-card__bottom .button{
    width:100%;
    min-width:0;
    padding-inline:14px;
    white-space:normal;
    text-align:center;
    line-height:1.2;
}
.route-card strong{
    font-size:clamp(26px,3vw,34px);
    white-space:normal;
}
.price strong{
    white-space:nowrap;
}
@media (max-width:1180px){
    .section-callout .grid--3{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
    .section-callout .grid--3{grid-template-columns:1fr;}
}

/* final commercial copy + admin usability */
.hero h1{max-width:14ch}
.hero-panel{background:
    linear-gradient(135deg,rgba(16,40,49,.96),rgba(7,20,26,.94) 58%,rgba(9,56,58,.82)),
    radial-gradient(circle at 78% 12%, rgba(99,230,218,.18), transparent 30%);
}
.route-card{overflow:hidden;min-height:255px}
.route-card__bottom{display:grid;grid-template-columns:1fr;gap:14px;align-items:stretch}
.route-card__bottom .button{width:100%;min-width:0;white-space:normal;line-height:1.2;min-height:46px}
.route-card strong{display:block;font-size:clamp(27px,3.2vw,34px);white-space:normal;line-height:1.06}
.route-card h3{font-size:clamp(21px,2.2vw,25px);line-height:1.12}
.route-card__meta{min-height:74px}
.result__content{min-width:0;max-width:100%}
.result__main{align-items:stretch}
.result .price{align-self:stretch;display:grid;align-content:center;min-width:190px}
.result__actions{justify-content:flex-end}
.price strong{font-size:clamp(30px,4vw,36px)}
.admin-stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 18px}
.admin-panel-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:20px}
.admin-mini-list{gap:12px}
.admin-mini-item{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:16px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10)}
.admin-mini-item strong{display:block;color:#fff;margin-bottom:4px}
.admin-mini-item span{display:block;color:var(--text-soft);line-height:1.45}
.admin-mini-item small{display:block;color:var(--muted);margin-top:4px}
.admin-help-steps{display:grid;gap:12px;margin-top:18px}
.admin-help-steps div{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.admin-help-steps strong{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--gold-soft);color:#dffffb}
.admin-help-steps span{color:var(--text-soft)}
.metric-card small{display:block;margin-top:8px;color:var(--muted);line-height:1.35}
.metric-card--accent{background:linear-gradient(135deg,rgba(99,230,218,.18),rgba(255,255,255,.055));border-color:rgba(99,230,218,.25)}
.admin-kpi-line{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 14px}
.admin-kpi-line span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);color:var(--text-soft);font-size:13px;font-weight:800}
.admin-list-card{padding:20px!important}
.admin-list-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.admin-row-hint{display:block;color:var(--muted);margin-top:8px;line-height:1.35}
.seat-admin-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:14px}
.table td{min-width:120px}.table td:last-child{min-width:150px}
.admin-body .search-card{margin-bottom:18px}
.admin-body .section__head .actions{margin-top:0}
@media (max-width:1180px){.admin-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-panel-grid{grid-template-columns:1fr}}
@media (max-width:980px){.result .price{min-width:0;width:100%}.result__actions{justify-content:stretch}.result__actions .button{width:100%}.admin-stats-row{grid-template-columns:1fr}.admin-mini-item{display:grid}.table td{min-width:140px}}


/* admin seats/users repair */
.seat-admin-summary{margin:18px 0;display:grid;gap:10px}
.seat-admin-summary strong{font-size:18px;color:#fff}
.admin-body .form.card--soft{margin-bottom:14px}
.admin-body .form.card--soft .grid{align-items:end}
.admin-body .list form.card{overflow:visible}
.admin-body .field input:disabled,
.admin-body .field select:disabled{opacity:.72;cursor:not-allowed}
.admin-body .actions .muted{max-width:100%;}
.admin-list-card .actions,.admin-body .actions{gap:10px}
.admin-body .search-card .search-grid--admin{grid-template-columns:minmax(280px,520px) auto auto}
.admin-body .search-card .field--button{align-items:end}
@media (max-width:980px){
    .admin-body .search-card .search-grid--admin{grid-template-columns:1fr}
    .admin-body .list form.card{padding:20px}
}


/* final hero and admin seats improvements */
.hero-panel{
    min-height:auto;
}
.hero-selling-panel{
    margin-top:22px;
    padding:22px;
    border-radius:28px;
    background:linear-gradient(135deg,rgba(99,230,218,.13),rgba(69,160,255,.07));
    border:1px solid rgba(99,230,218,.18);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.hero-selling-panel__label{
    display:inline-flex;
    margin-bottom:8px;
    color:var(--primary);
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.hero-selling-panel strong{
    display:block;
    color:#fff;
    font-size:22px;
    line-height:1.2;
    letter-spacing:-.02em;
}
.hero-selling-panel p{
    margin:8px 0 0;
    color:var(--muted);
    line-height:1.65;
}
.hero-selling-panel__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
}
.hero-selling-panel__grid span{
    padding:10px 12px;
    border-radius:16px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.10);
    color:var(--text-soft);
    font-weight:800;
    font-size:14px;
}
.hero__main .card{
    height:auto;
}
.hero__shell{
    align-items:start;
}

.admin-seat-toolbar{
    display:grid;
    grid-template-columns:minmax(280px,.65fr) 1fr;
    gap:18px;
    align-items:end;
}
.admin-seat-toolbar .search-grid{
    grid-template-columns:1fr;
}
.admin-seat-toolbar__info{
    display:grid;
    gap:6px;
    padding:16px 18px;
    border-radius:22px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.10);
}
.admin-seat-toolbar__info strong{color:#fff;font-size:18px}
.admin-seat-toolbar__info span{color:var(--muted)}
.seat-admin-dashboard{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin:18px 0;
}
.seat-admin-kpi{
    padding:20px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
    border:1px solid rgba(255,255,255,.11);
    box-shadow:var(--shadow-sm);
}
.seat-admin-kpi span{
    display:block;
    color:var(--muted);
    font-size:14px;
    margin-bottom:8px;
}
.seat-admin-kpi strong{
    display:block;
    color:#fff;
    font-size:34px;
    line-height:1;
}
.seat-admin-kpi--free{border-color:rgba(71,217,135,.22)}
.seat-admin-kpi--unavailable{border-color:rgba(139,154,181,.25)}
.seat-admin-kpi--busy{border-color:rgba(255,114,114,.25)}
.admin-seat-workspace{
    align-items:start;
    margin-bottom:28px;
}
.admin-seat-map-card{
    position:sticky;
    top:104px;
}
.admin-seat-map-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
    margin-bottom:18px;
}
.admin-seat-map-head h2{
    margin-bottom:0;
}
.seat-admin-legend{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    color:var(--muted);
    font-size:13px;
    align-items:center;
}
.admin-seat-map .seat{
    text-decoration:none;
}
.admin-seat-help{
    margin:16px 0 0;
}
.admin-seat-guide .ticket-flow{
    margin-top:18px;
}
.admin-seat-editor-head{
    margin-top:30px;
    margin-bottom:18px;
}
.admin-seat-editor-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:16px;
}
.admin-seat-editor{
    padding:22px;
    scroll-margin-top:120px;
    border-color:rgba(99,230,218,.12);
}
.admin-seat-editor.is-free{border-color:rgba(71,217,135,.18)}
.admin-seat-editor.is-unavailable{border-color:rgba(139,154,181,.22)}
.admin-seat-editor.is-busy{border-color:rgba(255,114,114,.22)}
.admin-seat-editor__top{
    display:flex;
    gap:14px;
    align-items:center;
    margin-bottom:16px;
}
.admin-seat-editor__top strong{
    display:block;
    color:#fff;
    font-size:18px;
}
.admin-seat-editor__top span{
    display:block;
    color:var(--muted);
    margin-top:4px;
}
.admin-seat-preview{
    width:58px;
    height:58px;
    border-radius:18px;
    display:grid;
    place-items:center;
    font-weight:900;
    color:#fff;
    background:linear-gradient(180deg,var(--green),var(--green-2));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 20px rgba(0,0,0,.15);
}
.admin-seat-editor.is-unavailable .admin-seat-preview{
    background:linear-gradient(180deg,#8f9bb4,#657188);
}
.admin-seat-editor.is-busy .admin-seat-preview{
    background:linear-gradient(180deg,var(--red),var(--red-2));
}
.admin-seat-editor__fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.admin-seat-editor .actions{
    margin-top:16px;
}
@media (max-width:980px){
    .admin-seat-toolbar,
    .admin-seat-workspace,
    .seat-admin-dashboard{
        grid-template-columns:1fr;
    }
    .admin-seat-map-card{
        position:relative;
        top:auto;
    }
}
@media (max-width:700px){
    .hero-selling-panel__grid,
    .admin-seat-editor__fields{
        grid-template-columns:1fr;
    }
    .admin-seat-editor-grid{
        grid-template-columns:1fr;
    }
    .admin-seat-map-head{
        flex-direction:column;
    }
}

/* final fixes: route number, real sale cities, ticket screen and one-page print */
.route-card__bottom{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-items:stretch!important;
}
.route-card__bottom .button{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.2!important;
}
.route-card strong{
    white-space:normal!important;
    line-height:1.05!important;
}

body.ticket .header,
body.ticket .topline{
    background:rgba(7,19,24,.82);
}
.ticket-section{
    padding-top:46px;
}
.ticket-container{
    width:min(1040px,calc(100% - 40px));
}
.ticket-window{
    position:relative;
    padding:34px;
    border-radius:34px;
    background:
        linear-gradient(135deg,rgba(16,40,49,.98),rgba(8,22,28,.96)),
        radial-gradient(circle at 86% 16%,rgba(99,230,218,.15),transparent 28%);
    border:1px solid rgba(99,230,218,.25);
    box-shadow:0 34px 90px rgba(0,0,0,.42);
    overflow:hidden;
}
.ticket-watermark{
    position:absolute;
    right:34px;
    top:24px;
    font-size:96px;
    line-height:1;
    font-weight:900;
    color:rgba(255,255,255,.035);
    pointer-events:none;
}
.ticket-header-row{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:22px;
    align-items:start;
    z-index:1;
}
.ticket-header-row h1{
    margin:16px 0 10px;
    font-size:clamp(34px,5vw,54px);
    line-height:1.02;
    letter-spacing:-.045em;
}
.ticket-status-panel{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
    min-width:160px;
}
.ticket-body{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1fr) 250px;
    gap:26px;
    align-items:stretch;
    margin-top:28px;
}
.ticket-info-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.ticket-info-item{
    padding:16px 18px;
    border-radius:20px;
    background:rgba(255,255,255,.075);
    border:1px solid rgba(255,255,255,.12);
    min-height:82px;
}
.ticket-info-item--wide{
    grid-column:1 / -1;
}
.ticket-info-item span{
    display:block;
    color:var(--muted);
    font-size:13px;
    margin-bottom:7px;
}
.ticket-info-item strong{
    display:block;
    color:#fff;
    font-size:17px;
    line-height:1.25;
}
.ticket-qr-panel{
    display:grid;
    place-items:center;
    align-content:center;
    gap:12px;
    min-height:100%;
    padding:22px;
    border-radius:26px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    text-align:center;
}
.ticket-qr-panel strong{
    color:#fff;
    font-size:15px;
}
.ticket-qr-panel span{
    color:var(--muted);
    font-size:13px;
}
.ticket-footer-row{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
    margin-top:26px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.10);
}
.ticket-footer-row > div:first-child{
    display:grid;
    gap:4px;
    color:var(--muted);
}
.ticket-footer-row > div:first-child strong{
    color:#fff;
}
body.ticket .details{
    display:grid;
}

@media (max-width:860px){
    .ticket-header-row,
    .ticket-body{
        grid-template-columns:1fr;
    }
    .ticket-status-panel{
        justify-content:flex-start;
    }
    .ticket-qr-panel{
        min-height:220px;
    }
}
@media (max-width:620px){
    .ticket-window{
        padding:22px;
        border-radius:26px;
    }
    .ticket-info-grid{
        grid-template-columns:1fr;
    }
}

@media print{
    @page{size:A4 portrait;margin:9mm;}
    html,body{
        width:210mm!important;
        min-height:0!important;
        background:#fff!important;
    }
    body.ticket{
        background:#fff!important;
        color:#111!important;
        -webkit-print-color-adjust:exact;
        print-color-adjust:exact;
    }
    body.ticket .topline,
    body.ticket .header,
    body.ticket .footer,
    body.ticket .print-actions,
    body.ticket .page::before,
    body.ticket .page::after,
    body.ticket .ticket-watermark{
        display:none!important;
    }
    body.ticket .page{
        display:block!important;
        min-height:0!important;
        overflow:visible!important;
        background:#fff!important;
    }
    body.ticket .section,
    body.ticket .ticket-section{
        padding:0!important;
        margin:0!important;
    }
    body.ticket .container,
    body.ticket .ticket-container{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }
    body.ticket .ticket-window,
    body.ticket .ticket-card,
    body.ticket .card{
        width:100%!important;
        min-height:0!important;
        max-height:276mm!important;
        margin:0!important;
        padding:10mm!important;
        border-radius:12px!important;
        background:#fff!important;
        color:#111!important;
        border:1px solid #d8d8d8!important;
        box-shadow:none!important;
        page-break-inside:avoid!important;
        break-inside:avoid!important;
        overflow:hidden!important;
    }
    body.ticket .ticket-window::before,
    body.ticket .ticket-window::after,
    body.ticket .ticket-card::before,
    body.ticket .ticket-card::after,
    body.ticket .card::before,
    body.ticket .card::after{
        display:none!important;
    }
    body.ticket .chip,
    body.ticket .badge{
        background:#f3f7f7!important;
        color:#111!important;
        border:1px solid #d4dddd!important;
        box-shadow:none!important;
        padding:5px 9px!important;
        font-size:10pt!important;
    }
    body.ticket .ticket-header-row{
        display:grid!important;
        grid-template-columns:1fr auto!important;
        gap:10mm!important;
        align-items:start!important;
    }
    body.ticket .ticket-header-row h1{
        color:#111!important;
        font-size:25pt!important;
        line-height:1.05!important;
        margin:7mm 0 4mm!important;
        letter-spacing:-.02em!important;
    }
    body.ticket .muted,
    body.ticket p{
        color:#333!important;
        font-size:10pt!important;
        line-height:1.35!important;
        margin:0!important;
    }
    body.ticket .ticket-body{
        display:grid!important;
        grid-template-columns:1fr 42mm!important;
        gap:8mm!important;
        margin-top:9mm!important;
        align-items:start!important;
    }
    body.ticket .ticket-info-grid{
        display:grid!important;
        grid-template-columns:repeat(2,1fr)!important;
        gap:4mm!important;
    }
    body.ticket .ticket-info-item{
        min-height:0!important;
        padding:4mm!important;
        background:#f8fbfb!important;
        border:1px solid #dbe5e5!important;
        border-radius:8px!important;
        color:#111!important;
    }
    body.ticket .ticket-info-item--wide{
        grid-column:1 / -1!important;
    }
    body.ticket .ticket-info-item span{
        color:#666!important;
        font-size:8.5pt!important;
        margin-bottom:2mm!important;
    }
    body.ticket .ticket-info-item strong{
        color:#111!important;
        font-size:10.5pt!important;
        line-height:1.15!important;
    }
    body.ticket .ticket-qr-panel{
        min-height:0!important;
        padding:4mm!important;
        background:#f8fbfb!important;
        border:1px solid #dbe5e5!important;
        border-radius:8px!important;
    }
    body.ticket .qr{
        width:32mm!important;
        height:32mm!important;
        border-width:3mm!important;
        border-color:#fff!important;
        box-shadow:none!important;
    }
    body.ticket .ticket-qr-panel strong,
    body.ticket .ticket-qr-panel span,
    body.ticket .ticket-footer-row strong,
    body.ticket .ticket-footer-row span{
        color:#111!important;
    }
    body.ticket .ticket-qr-panel span,
    body.ticket .ticket-footer-row span{
        font-size:8.5pt!important;
        color:#555!important;
    }
    body.ticket .ticket-footer-row{
        margin-top:8mm!important;
        padding-top:5mm!important;
        border-top:1px solid #ddd!important;
        color:#111!important;
    }
}
