@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_383dac{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_383dac{--font-jakarta:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}:root{--navy:#071b3a;--cyan:#1563f2;--cyan-dark:#0f4fd8;--cyan-bright:#5f9cff;--teal:#00afa5;--teal-soft:#19c6bc;--surface:#ffffff;--surface-2:#f7f9fc;--ink:#071b3a;--text:#5b677a;--border:#e5eaf0;--glass:rgba(255,255,255,0.72);--glass-strong:rgba(255,255,255,0.86);--glass-border:rgba(255,255,255,0.76);--soft-shadow:0 22px 60px rgba(7,27,58,0.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 8%,rgba(21,99,242,.18),transparent 26rem),radial-gradient(circle at 90% 38%,rgba(37,99,235,.1),transparent 30rem),linear-gradient(145deg,#f8fcfd,var(--surface-2));color:var(--ink);font-family:var(--font-jakarta),"Plus Jakarta Sans",Inter,ui-sans-serif,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:min(calc(100% - 40px),1200px);margin-inline:auto}.nav{height:68px;display:flex;justify-content:space-between}.logo,.nav{align-items:center}.logo{display:inline-flex;gap:10px;font-size:16px;font-weight:800;letter-spacing:.16em}.logo-mark{display:grid;width:52px;height:40px;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:13px;background:rgba(255,255,255,.92);box-shadow:0 7px 22px rgba(7,27,58,.14)}.logo-mark img{width:48px;height:36px;object-fit:contain}.logo small{display:block;margin-top:-2px;color:var(--cyan);font-size:8px;letter-spacing:.22em}.nav-links{display:flex;gap:20px;font-size:13px;font-weight:700}.app-nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{width:42px;height:42px;display:grid;flex:0 0 auto;padding:0;place-items:center;border:1px solid rgba(7,27,58,.1);border-radius:50%;background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--ink);cursor:pointer;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .2s ease,transform .2s ease}.theme-toggle:hover{background:var(--surface);transform:rotate(8deg)}.theme-toggle svg{grid-area:1/1;width:19px;height:19px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;transition:opacity .2s ease,transform .25s ease}.theme-toggle .moon-icon{opacity:0;transform:scale(.5) rotate(-30deg)}:root[data-theme=dark] .theme-toggle .sun-icon{opacity:0;transform:scale(.5) rotate(30deg)}:root[data-theme=dark] .theme-toggle .moon-icon{opacity:1;transform:scale(1) rotate(0)}.hero{min-height:calc(100vh - 72px);display:grid;align-items:center;background:radial-gradient(circle at 75% 20%,rgba(25,198,188,.13),transparent 25%),var(--navy);color:white}.hero h1{max-width:850px;margin:0;font-size:clamp(54px,9vw,110px);letter-spacing:-.07em;line-height:.93}.hero h1 span{color:var(--cyan-bright)}.hero p{max-width:600px;margin:28px 0;color:#a6b8c9;line-height:1.7}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border:0;border-radius:15px;background:linear-gradient(135deg,var(--cyan),var(--cyan-dark));color:#ffffff;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(21,99,242,.2);transition:transform .2s ease,box-shadow .2s ease}.button:hover{box-shadow:0 16px 34px rgba(21,99,242,.28);transform:translateY(-1px)}.button.secondary{border:1px solid rgba(7,27,58,.1);background:rgba(255,255,255,.62);color:var(--ink);box-shadow:none}.app-page{min-height:100vh;padding-bottom:80px}header.app-header{position:relative;z-index:10;padding-top:14px;color:var(--navy)}header.app-header .nav{padding:0 16px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass);box-shadow:0 12px 36px rgba(7,27,58,.09);backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%)}section.app-header.page-title{width:min(calc(100% - 40px),1200px);margin:14px auto 0;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:radial-gradient(circle at 80% 20%,rgba(25,198,188,.16),transparent 28%),rgba(7,27,58,.96);color:white;box-shadow:var(--soft-shadow)}.page-title{padding:58px 0}.page-title h1{margin:0;font-size:clamp(42px,6vw,72px);letter-spacing:-.055em}.page-title p{color:var(--text)}section.app-header.page-title p{color:#a6b8c9}.auth-layout{width:min(calc(100% - 32px),620px)}.auth-layout .page-title{padding:52px 0 12px;text-align:center}.panel{margin-top:24px;padding:28px;border:1px solid var(--glass-border);border-radius:26px;background:var(--glass);box-shadow:var(--soft-shadow);backdrop-filter:blur(26px) saturate(145%);-webkit-backdrop-filter:blur(26px) saturate(145%)}.panel h2{margin-top:0}.form{display:grid;grid-gap:14px;gap:14px}.form input,.form select{width:100%;height:48px;padding:0 14px;border:1px solid rgba(7,27,58,.09);border-radius:13px;background:rgba(255,255,255,.66);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.form input:focus,.form select:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(21,99,242,.1)}.form-hint{margin:-4px 0 2px;color:var(--text);font-size:12px}.trailer-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.trailer-card{padding:18px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.62);text-align:left}.trailer-card.selected{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(21,99,242,.12)}.trailer-card span,.trailer-card strong{display:block}.trailer-card span{margin-top:5px;color:var(--text);font-size:12px}.trailer-card .trailer-stock{color:var(--teal);font-size:11px;font-weight:700}.trailer-card.is-unavailable{opacity:.5}.trailer-card.is-unavailable:hover{opacity:1}.trailer-card.is-unavailable .trailer-stock{color:#b91c1c}.booking-conflict{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding:14px 16px;border:1px solid color-mix(in srgb,#f59e0b 55%,var(--border));border-radius:14px;background:color-mix(in srgb,#f59e0b 10%,var(--surface));scroll-margin-top:96px}.booking-conflict-head{display:flex;align-items:flex-start;gap:10px}.booking-conflict-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#f59e0b;color:#1f1300;font-weight:800;font-size:14px;line-height:1}.booking-conflict p{margin:0;color:var(--ink);font-size:14px}.booking-conflict-chips,.booking-conflict-note{color:var(--text);font-size:13px}.booking-conflict-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.booking-conflict-chips button{padding:7px 12px;border-radius:999px;border:1px solid var(--cyan);background:var(--surface);color:var(--cyan-dark);font-weight:700;font-size:13px;cursor:pointer}.booking-conflict-chips button:hover{background:color-mix(in srgb,var(--cyan) 10%,var(--surface))}.booking-conflict-clear{align-self:flex-start;padding:0;border:0;background:none;color:var(--cyan-dark);font-weight:700;font-size:13px;cursor:pointer}.booking-conflict-clear:hover{text-decoration:underline}.slot-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px}.slot-grid button{height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.slot-grid button.selected{border-color:var(--cyan);background:var(--cyan);color:#ffffff;font-weight:700}.message{display:flex;align-items:flex-start;gap:8px;padding:12px 14px;border-radius:10px;border:1px solid transparent;border-left-width:3px;background:var(--surface-2);color:var(--text);font-size:13px;line-height:1.4}.message:before{font-weight:700;line-height:1.3}.message.is-error{background:rgba(220,38,38,.08);border-color:rgba(220,38,38,.5);color:#b91c1c}.message.is-error:before{content:"!"}.message.is-success{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.5);color:#047857}.message.is-success:before{content:"✓"}.message.is-info:before{content:"i";font-style:italic}:root[data-theme=dark] .message.is-error{background:rgba(248,113,113,.12);border-color:rgba(248,113,113,.55);color:#fca5a5}:root[data-theme=dark] .message.is-success{background:rgba(52,211,153,.14);border-color:rgba(52,211,153,.5);color:#6ee7b7}table{width:100%;border-collapse:collapse}td,th{padding:12px;border-bottom:1px solid var(--border);font-size:12px;text-align:left}@media (max-width:760px){header.app-header{padding-top:10px}header.app-header .nav{width:calc(100% - 20px);height:58px;padding:0 10px;border-radius:18px}.logo{font-size:14px}.logo-mark{width:45px;height:34px;border-radius:11px}.logo-mark img{width:41px;height:31px}.auth-layout .page-title{padding-top:40px}.panel{padding:22px;border-radius:22px}.trailer-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(3,1fr)}}@media (prefers-color-scheme:dark){:root:not([data-theme]){--surface:#0d223c;--surface-2:#091a30;--ink:#f4f9fb;--text:#a9bac8;--border:#213b57;--glass:rgba(13,34,60,0.75);--glass-strong:rgba(13,34,60,0.9);--glass-border:rgba(255,255,255,0.11);--soft-shadow:0 22px 60px rgba(0,0,0,0.25)}:root:not([data-theme]) body{background:radial-gradient(circle at 10% 8%,rgba(21,99,242,.15),transparent 26rem),radial-gradient(circle at 90% 38%,rgba(37,99,235,.12),transparent 30rem),#091a30}:root:not([data-theme]) header.app-header{color:#f4f9fb}:root:not([data-theme]) .button.secondary,:root:not([data-theme]) .form input,:root:not([data-theme]) .form select,:root:not([data-theme]) .trailer-card{border-color:rgba(255,255,255,.1);background:rgba(13,34,60,.7);color:#f4f9fb}}:root[data-theme=dark]{color-scheme:dark;--surface:#0d223c;--surface-2:#091a30;--ink:#f4f9fb;--text:#a9bac8;--border:#213b57;--glass:rgba(13,34,60,0.75);--glass-strong:rgba(13,34,60,0.9);--glass-border:rgba(255,255,255,0.11);--soft-shadow:0 22px 60px rgba(0,0,0,0.25)}:root[data-theme=dark] body{background:radial-gradient(circle at 10% 8%,rgba(21,99,242,.15),transparent 26rem),radial-gradient(circle at 90% 38%,rgba(37,99,235,.12),transparent 30rem),#091a30}:root[data-theme=dark] header.app-header{color:#f4f9fb}:root[data-theme=dark] .button.secondary,:root[data-theme=dark] .form input,:root[data-theme=dark] .form select,:root[data-theme=dark] .trailer-card{border-color:rgba(255,255,255,.1);background:rgba(13,34,60,.7);color:#f4f9fb}.portal-auth-page{min-height:100vh;background:radial-gradient(circle at 8% 10%,rgba(25,198,188,.15),transparent 26rem),radial-gradient(circle at 92% 28%,rgba(37,99,235,.1),transparent 30rem),linear-gradient(145deg,#f8fcfd,#edf5f8);color:var(--ink);transition:background .25s ease,color .25s ease}.portal-auth-header{position:relative;z-index:20;padding-top:14px}.portal-auth-nav{height:68px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 16px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass);box-shadow:0 12px 36px rgba(7,27,58,.1);backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%)}.portal-auth-links{display:flex;gap:38px;color:var(--text);font-size:13px;font-weight:800}.portal-auth-links a:hover{color:var(--cyan)}.portal-auth-nav .theme-toggle{justify-self:end}.portal-auth-shell{min-height:calc(100vh - 82px);display:grid;align-items:center;padding:64px 0 72px}.portal-auth-layout{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(520px,1.12fr);grid-gap:clamp(48px,6vw,96px);gap:clamp(48px,6vw,96px);align-items:center}.portal-eyebrow{display:block;margin-bottom:28px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-auth-intro h1{margin:0;color:var(--ink);font-size:clamp(68px,7.2vw,112px);font-weight:800;letter-spacing:-.075em;line-height:.9}.portal-auth-intro h1 span{color:var(--cyan)}.portal-auth-intro>p{max-width:530px;margin:40px 0 48px;color:var(--text);font-size:16px}.portal-auth-points{display:grid;grid-gap:18px;gap:18px}.portal-auth-points span{display:flex;align-items:center;gap:18px;color:var(--ink);font-size:13px;font-weight:700}.portal-auth-points b{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--glass-border);border-radius:11px;background:var(--glass);color:var(--cyan);font-size:9px;box-shadow:0 8px 24px rgba(7,27,58,.07)}.portal-auth-card{border:1px solid var(--glass-border);border-radius:30px;background:var(--glass);color:var(--ink);box-shadow:0 28px 75px rgba(7,27,58,.14);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}.portal-auth-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;margin:18px 18px 0;padding:4px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.portal-auth-tabs button{height:46px;border:0;border-radius:12px;background:transparent;color:var(--text);font-size:13px;font-weight:800;cursor:pointer;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.portal-auth-tabs button.is-active{background:var(--glass-strong);color:var(--ink);box-shadow:0 5px 16px rgba(7,27,58,.09)}.portal-auth-form{display:grid;padding:clamp(34px,4vw,52px)}.portal-form-heading{margin-bottom:32px}.portal-form-heading h2{margin:0 0 12px;color:var(--ink);font-size:clamp(31px,3vw,44px);letter-spacing:-.055em;line-height:1}.portal-form-heading p{margin:0;color:var(--text);font-size:13px}.portal-auth-form label{display:grid;grid-gap:10px;gap:10px;margin-bottom:20px;color:var(--ink);font-size:11px;font-weight:800}.portal-auth-form input{width:100%;height:58px;padding:0 18px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:14px;outline:0;background:color-mix(in srgb,var(--surface-2) 78%,transparent);color:var(--ink);font-size:15px;font-weight:600}.portal-auth-form input::placeholder{color:color-mix(in srgb,var(--text) 75%,transparent)}.portal-auth-form input:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(21,99,242,.11)}.portal-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.portal-primary-button{width:100%;min-height:60px;margin-top:4px;border-radius:15px;background:linear-gradient(135deg,var(--cyan) 0,var(--cyan-dark) 100%);box-shadow:0 16px 34px rgba(21,99,242,.2);font-size:13px;color:#ffffff}.portal-primary-button span{margin-left:8px;font-size:20px}.portal-auth-actions button,.portal-recovery-link{border:0;background:transparent;color:var(--text);font-size:11px;font-weight:700;cursor:pointer}.portal-recovery-link{justify-self:center;margin-top:18px}.portal-auth-actions button:hover,.portal-recovery-link:hover{color:var(--cyan)}.portal-recovery-link:disabled{cursor:not-allowed;opacity:.45}.portal-social{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.portal-social-divider{display:flex;align-items:center;gap:12px;margin-bottom:2px;color:var(--text);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.portal-social-divider:after,.portal-social-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.portal-social-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;border:1px solid var(--border);border-radius:15px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease}.portal-social-button:hover{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 6%,var(--surface))}.portal-social-button svg{flex:0 0 auto}.portal-demo-accounts{display:grid;grid-gap:8px;gap:8px;margin-top:16px;padding:14px;border:1px dashed color-mix(in srgb,var(--cyan) 35%,transparent);border-radius:14px;background:color-mix(in srgb,var(--cyan) 5%,transparent)}.portal-demo-accounts strong{color:var(--text);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.portal-demo-accounts button{padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:600;text-align:left;cursor:pointer;transition:border-color .15s ease}.portal-demo-accounts button:hover{border-color:var(--cyan)}.portal-nav-link{padding:8px 12px;border-radius:10px;color:var(--ink);font-size:13px;font-weight:700}.portal-nav-link:hover{background:color-mix(in srgb,var(--cyan) 8%,transparent)}.portal-nav-link.is-active{background:color-mix(in srgb,var(--cyan) 12%,transparent);color:var(--cyan)}.nav-divider{width:1px;height:20px;flex:0 0 auto;background:var(--border)}.portal-hero-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.portal-hero-eyebrow{display:block;margin-bottom:14px;color:var(--teal-soft);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.account-status-card{display:flex;align-items:center;gap:14px;padding:16px 20px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.account-status-card small{display:block;color:#a6b8c9;font-size:11px}.account-status-card strong{font-size:15px}.account-status-card .status-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:rgba(32,184,121,.2);color:#4be0a4;font-weight:800}.account-status-card:not(.is-approved) .status-icon{background:rgba(255,184,0,.16);color:#ffd166}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.panel-heading h2{margin:4px 0 0}.panel-kicker{color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.panel-description{margin:-6px 0 18px;color:var(--text);font-size:13px}.booking-step{padding:7px 12px;border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:12px;font-weight:700;white-space:nowrap}.icon-refresh{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--ink);font-size:16px;cursor:pointer;transition:transform .3s ease}.icon-refresh:hover{transform:rotate(180deg)}.empty-state{margin:6px 0;padding:18px;border:1px dashed var(--border);border-radius:14px;color:var(--text);font-size:13px}.document-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:18px}.document-drop{position:relative;display:grid;grid-gap:6px;gap:6px;padding:20px;border:1.5px dashed var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 60%,transparent);cursor:pointer;transition:border-color .2s ease,background .2s ease}.document-drop:hover{border-color:var(--cyan)}.document-drop.is-done{border-style:solid;border-color:color-mix(in srgb,#20b879 55%,transparent);background:color-mix(in srgb,#20b879 6%,transparent)}.document-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.document-drop .document-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--cyan) 10%,transparent);color:var(--cyan);font-size:13px;font-weight:800}.document-drop.is-done .document-icon{background:rgba(32,184,121,.14);color:#1a9d66}.document-drop small{color:var(--text);font-size:11px}.flow-result{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:16px 18px;border-radius:16px;animation:flowResultIn .3s ease}@keyframes flowResultIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.flow-result.is-success{border:1px solid rgba(32,184,121,.35);background:rgba(32,184,121,.1)}.flow-result.is-error{border:1px solid rgba(225,66,66,.32);background:rgba(225,66,66,.08)}.flow-result.is-info{border:1px solid rgba(21,99,242,.3);background:rgba(21,99,242,.08)}.flow-result-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:50%;font-size:17px;font-weight:800}.flow-result.is-success .flow-result-icon{background:rgba(32,184,121,.18);color:#1a9d66}.flow-result.is-error .flow-result-icon{background:rgba(225,66,66,.14);color:#c43c3c}.flow-result.is-info .flow-result-icon{background:rgba(21,99,242,.14);color:var(--cyan)}.flow-result strong{display:block;font-size:14px}.flow-result.is-success strong{color:#157f53}.flow-result.is-error strong{color:#b03636}.flow-result.is-info strong{color:var(--cyan-dark)}.flow-result div span{color:var(--text);font-size:12px}.flow-result>button{display:grid;width:30px;height:30px;margin-left:auto;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text);font-size:18px;cursor:pointer}.flow-result>button:hover{background:color-mix(in srgb,var(--ink) 7%,transparent)}.trailer-illustration{width:100%;height:76px;margin-bottom:10px;object-fit:contain}.trailer-price{margin-top:8px;color:var(--cyan);font-size:12px;font-weight:700}.schedule-picker{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.schedule-controls{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:16px}.schedule-controls label{display:grid;grid-gap:6px;gap:6px;color:var(--text);font-size:12px;font-weight:700}.schedule-controls input,.schedule-controls select{height:48px;padding:0 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--ink)}.slot-label-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;color:var(--text);font-size:12px;font-weight:700}.slot-label-row small{font-weight:500;opacity:.7}.slot-grid button:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}.slot-grid button:not(:disabled){cursor:pointer}.slot-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:52px;font-weight:600}.slot-grid button .slot-free{font-size:10px;font-weight:600;opacity:.7}.slot-grid button.selected .slot-free{opacity:.9}.location-picker{margin-top:22px}.location-layout{display:grid;grid-template-columns:minmax(220px,1fr) 1.2fr;grid-gap:14px;gap:14px;align-items:stretch}.location-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.location-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.location-option:not(.is-empty):hover{border-color:var(--cyan-bright)}.location-option.selected{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(21,99,242,.12)}.location-option.is-empty{opacity:.55;cursor:not-allowed}.location-option.is-muted{opacity:.6}.location-option.is-muted:hover{opacity:1;border-color:var(--cyan-bright)}.location-main strong{display:block;color:var(--ink);font-size:14px}.location-main small{display:block;margin-top:2px;color:var(--text);font-size:12px}.location-count{display:flex;flex-direction:column;align-items:center;min-width:56px;padding:6px 10px;border-radius:12px;background:color-mix(in srgb,var(--teal) 12%,transparent);color:var(--teal)}.location-count b{font-size:20px;line-height:1}.location-count small{font-size:10px;color:var(--text)}.location-count.is-empty{background:color-mix(in srgb,#dc2626 10%,transparent);color:#b91c1c}.location-map{min-height:280px;height:100%;border:1px solid var(--border);border-radius:14px;overflow:hidden;z-index:0}.map-pin-icon{background:transparent;border:0}.map-pin-badge{gap:6px;transform:translate(-50%,-120%);padding:5px 10px;border-radius:999px;border:1px solid var(--cyan);background:var(--surface);box-shadow:0 6px 16px rgba(7,27,58,.18);white-space:nowrap;cursor:pointer}.map-pin-badge,.map-pin-badge .map-pin-count{display:inline-flex;align-items:center;font-size:12px}.map-pin-badge .map-pin-count{justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--cyan);color:#ffffff;font-weight:800}.map-pin-badge .map-pin-name{color:var(--ink);font-weight:700}.map-pin-badge.is-selected{border-color:var(--cyan-dark);box-shadow:0 0 0 3px rgba(21,99,242,.18),0 6px 16px rgba(7,27,58,.22)}.map-pin-badge.is-empty{border-color:var(--border);cursor:not-allowed}.map-pin-badge.is-empty.is-clickable{cursor:pointer}.map-pin-badge.is-empty .map-pin-count{background:#dc2626}.map-pin-badge.is-empty .map-pin-name{color:var(--text)}@media (max-width:720px){.location-layout{grid-template-columns:1fr}.location-map{min-height:240px}}.schedule-picker .portal-primary-button{margin-top:18px}.checkout-card{margin-top:20px;padding:20px;border:1px solid color-mix(in srgb,var(--cyan) 30%,transparent);border-radius:18px;background:color-mix(in srgb,var(--cyan) 5%,transparent)}.checkout-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.checkout-summary small{display:block;color:var(--cyan);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.checkout-summary strong{display:block;margin-top:2px}.checkout-summary span{color:var(--text);font-size:12px}.checkout-price{font-size:22px;letter-spacing:-.03em}.checkout-note{margin:14px 0 0;color:var(--text);font-size:12px}.checkout-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}.reservation-list{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.reservation-item{display:grid;grid-template-columns:1.2fr 1.4fr auto;align-items:center;grid-gap:14px;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-2) 55%,transparent)}.reservation-item strong{display:block;font-size:14px}.reservation-item small{color:var(--text);font-size:12px}.reservation-meta span{display:block;font-size:13px;font-weight:600}.status-pill{padding:6px 12px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.status-pill.status-confirmed,.status-pill.unit-available,.status-pill.verification-approved{background:rgba(32,184,121,.14);color:#1a9d66}.status-pill.status-payment_pending,.status-pill.unit-maintenance,.status-pill.verification-pending{background:rgba(255,184,0,.14);color:#b5830a}.status-pill.status-active{background:color-mix(in srgb,var(--cyan) 12%,transparent);color:var(--cyan)}.status-pill.status-completed{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--text)}.status-pill.status-cancelled,.status-pill.status-expired,.status-pill.unit-disabled,.status-pill.verification-rejected{background:rgba(225,66,66,.1);color:#c43c3c}.status-pill.verification-unsubmitted{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--text)}.verification-queue{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.verification-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-2) 55%,transparent);flex-wrap:wrap}.verification-item strong{display:block}.verification-item small{color:var(--text);font-size:12px}.verification-docs{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.verification-docs span{padding:4px 9px;border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:10px;font-weight:700}.calendar-nav,.verification-actions{display:flex;gap:8px}.calendar-nav{align-items:center}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.calendar-weekdays span{padding:4px;color:var(--text);font-size:11px;font-weight:800;letter-spacing:.08em;text-align:center;text-transform:uppercase}.calendar-weekdays{margin-bottom:6px}.calendar-day{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:68px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 45%,transparent);color:inherit;font:inherit;text-align:left;cursor:pointer}.calendar-day:hover{border-color:color-mix(in srgb,var(--cyan) 45%,var(--border))}.calendar-day.is-outside{opacity:.4}.calendar-day.is-today .calendar-day-number{color:var(--cyan)}.calendar-day.is-selected{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 8%,transparent)}.calendar-day-number{font-size:13px;font-weight:800}.calendar-day-count{color:var(--text);font-size:10px;font-weight:700;white-space:nowrap}.calendar-day-load{width:100%;height:4px;margin-top:auto;border-radius:999px;background:color-mix(in srgb,var(--ink) 8%,transparent);overflow:hidden}.calendar-day-load span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--cyan-bright))}.calendar-legend{margin:12px 0 0;color:var(--text);font-size:12px}@media (max-width:720px){.calendar-day{min-height:52px;padding:6px}.calendar-day-count{font-size:9px}}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text);font-size:11px;font-weight:800;letter-spacing:.08em;text-align:left;text-transform:uppercase}.admin-table td{padding:12px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);vertical-align:top}.admin-table small{color:var(--text)}@media (max-width:760px){.document-grid,.reservation-item,.schedule-controls{grid-template-columns:1fr}.reservation-item{gap:8px}.portal-hero-inner{align-items:flex-start;flex-direction:column}}.portal-auth-actions{display:flex;justify-content:center;gap:24px;margin-top:18px}.portal-form-note{margin:18px 0 0;color:var(--text);font-size:10px;text-align:center}.portal-auth-form .message{margin:16px 0 0}:root[data-theme=dark] .portal-auth-page{background:radial-gradient(circle at 8% 10%,rgba(25,198,188,.15),transparent 26rem),radial-gradient(circle at 92% 28%,rgba(37,99,235,.14),transparent 30rem),linear-gradient(145deg,#081a33,#091a30)}:root[data-theme=dark] .portal-auth-nav{box-shadow:0 12px 38px rgba(0,0,0,.24)}:root[data-theme=dark] .portal-auth-card{box-shadow:0 28px 75px rgba(0,0,0,.24)}:root[data-theme=dark] .portal-auth-tabs button.is-active{background:rgba(255,255,255,.11);color:#f4f9fb}@media (max-width:960px){.portal-auth-layout{grid-template-columns:1fr;max-width:720px;gap:48px}.portal-auth-intro{text-align:center}.portal-auth-intro>p{margin-right:auto;margin-left:auto}.portal-auth-points{width:max-content;margin-inline:auto;text-align:left}}@media (max-width:680px){.portal-auth-header{padding-top:10px}.portal-auth-nav{width:calc(100% - 20px);height:58px;grid-template-columns:1fr auto;padding:0 10px;border-radius:18px}.portal-auth-links{display:none}.portal-auth-nav .theme-toggle{width:40px;height:40px}.portal-auth-shell{min-height:calc(100vh - 68px);padding:44px 0 56px}.portal-auth-layout{width:min(calc(100% - 24px),1180px);gap:36px}.portal-eyebrow{margin-bottom:20px}.portal-auth-intro h1{font-size:58px}.portal-auth-intro>p{margin:25px auto 30px;font-size:13px}.portal-auth-card{border-radius:23px}.portal-auth-tabs button{height:42px;font-size:11px}.portal-auth-form{padding:28px 21px}.portal-form-row{grid-template-columns:1fr;gap:0}.portal-form-heading h2{font-size:31px}}.user-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 4px}.user-toolbar input[type=search]{flex:1 1 240px;min-width:200px}.user-toolbar input[type=search],.user-toolbar select{height:44px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 55%,transparent);color:var(--ink);outline:none}.user-toolbar input[type=search]:focus,.user-toolbar select:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(21,99,242,.1)}.role-pill{padding:5px 11px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.role-pill.role-customer{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--text)}.role-pill.role-operator{background:color-mix(in srgb,var(--cyan) 12%,transparent);color:var(--cyan)}.role-pill.role-admin{background:rgba(0,175,165,.16);color:#0f8c84}.user-flag{color:#c43c3c;font-weight:700}.user-row-actions{display:flex;gap:8px;justify-content:flex-end}.button.small{min-height:36px;padding:0 14px;border-radius:11px;font-size:13px;box-shadow:none}.button.ghost-danger{border:1px solid rgba(196,60,60,.4);background:transparent;color:#c43c3c}.button.ghost-danger:hover{background:rgba(196,60,60,.08);transform:none}.modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(7,27,58,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(100%,520px);max-height:90vh;overflow-y:auto;padding:26px 28px;border:1px solid var(--glass-border);border-radius:22px;background:var(--surface);box-shadow:0 30px 80px rgba(7,27,58,.3)}.modal-card .panel-heading{margin-bottom:18px}.modal-card .form label{display:grid;grid-gap:6px;gap:6px}.modal-card .form label span{font-size:12px;font-weight:700;color:var(--text)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}@media (max-width:560px){.form-row{grid-template-columns:1fr}.user-row-actions{flex-direction:column}}.consent-banner{position:fixed;left:16px;bottom:16px;z-index:9999;max-width:360px;display:flex;flex-direction:column;gap:12px;padding:16px 18px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 48px rgba(7,27,58,.18);font-family:Plus Jakarta Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-size:13px;line-height:1.5;animation:consent-in .3s ease both}.consent-banner .consent-text{margin:0}.consent-banner .consent-text a{color:var(--cyan);text-decoration:underline}.consent-banner .consent-actions{display:flex;gap:8px;justify-content:flex-end}.consent-banner .consent-btn{font-family:inherit;font-weight:600;font-size:13px;padding:8px 16px;border-radius:10px;cursor:pointer;border:1px solid transparent;transition:filter .15s ease,background .15s ease}.consent-banner .consent-btn--ghost{background:transparent;color:var(--text);border-color:var(--border)}.consent-banner .consent-btn--ghost:hover{background:var(--surface-2)}.consent-banner .consent-btn--primary{background:var(--cyan);color:#fff}.consent-banner .consent-btn--primary:hover{filter:brightness(1.06)}@keyframes consent-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.consent-banner{left:12px;right:12px;bottom:12px;max-width:none}}@media (prefers-reduced-motion:reduce){.consent-banner{animation:none}}