:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#10263e;background:#f5f7fa;font-size:15px}*{box-sizing:border-box}body{margin:0}header{padding:22px 5%;background:#fff;border-bottom:1px solid #dae2eb;display:flex;align-items:center;gap:24px}header>span{color:#66788d}header button{margin-left:auto}.brand{font-size:23px;font-weight:750;color:#10263e;text-decoration:none;letter-spacing:-1px}.brand b{display:inline-block;background:#0bb0c2;padding:2px 8px;border-radius:4px;transform:rotate(-7deg)}main{max-width:1220px;margin:40px auto;padding:0 24px}h1{font-size:32px;letter-spacing:-1px;margin:0 0 12px}h2{font-size:19px;margin:0 0 18px}p{line-height:1.6;color:#607086}.card{background:white;border:1px solid #dbe3eb;border-radius:14px;padding:28px;margin-bottom:20px}.auth{max-width:480px;margin:40px auto}.columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-weight:600;margin:16px 0 6px}input,textarea,select{width:100%;border:1px solid #ced9e4;border-radius:8px;padding:12px;font:inherit;background:#fff;color:inherit}button,.button{font:inherit;cursor:pointer;border:1px solid #ced9e4;background:#fff;color:#10263e;padding:10px 15px;border-radius:8px;text-decoration:none;display:inline-block;min-height:42px}button:hover{background:#eef5f7}button:disabled{opacity:.5;cursor:wait}.primary{background:#10263e;color:#fff;border-color:#10263e}.primary:hover{background:#1c405d}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.muted{color:#61758a;font-size:13px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid #e4eaf0}.row strong{display:block}.status{font-size:12px;padding:5px 9px;background:#e6f4ef;border-radius:20px}.table{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}td,th{padding:12px;border-bottom:1px solid #e4eaf0;overflow-wrap:anywhere}#notice:not(:empty){padding:14px 18px;background:#e7f3f4;border:1px solid #bcdfe0;border-radius:10px;margin-bottom:20px;overflow-wrap:anywhere}code{display:block;padding:15px;background:#edf3f7;overflow-wrap:anywhere;white-space:pre-wrap}dialog{border:1px solid #dbe3eb;border-radius:14px;max-width:520px;width:calc(100% - 32px);padding:28px}dialog::backdrop{background:#07172b80}footer{text-align:center;padding:28px;color:#6b7a8b;font-size:12px}a{color:#007e90}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #16b2c5;outline-offset:3px}@media(max-width:700px){.columns{grid-template-columns:1fr}header{padding:18px;gap:12px}header>span{display:none}main{padding:0 16px;margin-top:24px}.card{padding:20px}.row{align-items:flex-start;flex-direction:column}h1{font-size:27px}}

[hidden]{display:none!important}
.unified-login{margin:64px auto;padding:36px;max-width:460px;box-shadow:0 12px 42px #10263e08}.login-eyebrow{display:block;color:#007e90;font-size:13px;font-weight:650;margin-bottom:18px}.unified-login h1{font-size:34px}.unified-login form{margin-top:28px}.password-field{position:relative}.password-field input{padding-right:76px}.password-field button{position:absolute;right:4px;top:4px;min-height:36px;padding:6px 10px;border:0;background:transparent;font-size:13px}.login-submit{width:100%;margin-top:28px}.login-note{margin-top:22px;margin-bottom:0}.unified-login input{min-height:48px}@media(max-width:600px){.unified-login{margin:28px auto;padding:24px}header .brand{font-size:21px}}

.login-art .la-shadow{fill:#0b0f30;opacity:.55}
.login-art .la-ink{stroke:#0b0f30;stroke-width:7;stroke-linejoin:round}
.login-art .la-fill-white{fill:#fff}.login-art .la-fill-soft{fill:#c8d0fb}.login-art .la-fill-red{fill:#e3141c}
.login-art .la-screen{fill:#e6eafd}
.login-art .la-card{fill:#fff;stroke:#c8d0fb;stroke-width:2}
.login-art .la-avatar{fill:#1a1a6e}.login-art .la-line{fill:#1a1a6e}.login-art .la-line-soft{fill:#cdd3ee}
.login-art .la-check-bg{fill:#1f9d63;stroke:#0b0f30;stroke-width:5}
.login-art .la-check{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.login-art .la-notch{fill:#9ea9e6}
.login-art .la-band-ink{fill:none;stroke:#0b0f30;stroke-width:24;stroke-linecap:round;stroke-linejoin:round}
.login-art .la-band{fill:none;stroke:#fff;stroke-width:11;stroke-linecap:round;stroke-linejoin:round}
.login-art .la-mic-ink{fill:none;stroke:#0b0f30;stroke-width:19;stroke-linecap:round}
.login-art .la-mic{fill:none;stroke:#e3141c;stroke-width:8;stroke-linecap:round}
.login-art .la-dot{fill:#1a1a6e}
.login-art .la-spark{fill:#f5b83d}.login-art .la-spark-light{fill:#ffffff}
.login-art .la-track{fill:#e3e7f7}.login-art .la-progress{fill:#1a1a6e}
.login-art .la-ring{fill:none;stroke:#1f9d63;stroke-width:3;opacity:0}
.login-art .la-burst{fill:#f5b83d;opacity:0}.login-art .la-b2,.login-art .la-b5{fill:#e3141c}.login-art .la-b3{fill:#1f9d63}
.login-art .la-wave{fill:none;stroke:#ff6b78;stroke-width:2.5;opacity:0}
.login-art .la-mic-dot{fill:#e3141c}
/* Animated story, one 7 s loop: request typed -> work in progress -> resolved. Reduced motion shows the final frame. */
@media (prefers-reduced-motion:no-preference){
  .login-art *{transform-box:fill-box}
  .login-art .la-float{animation:la-float 5s ease-in-out infinite}
  .login-art .la-shadow{transform-origin:center;animation:la-shadow 5s ease-in-out infinite}
  .login-art .la-headset{transform-origin:50% 100%;animation:la-nod 7s ease-in-out infinite}
  .login-art .la-ticket{transform-origin:center;animation:la-card 7s cubic-bezier(.2,.8,.2,1) infinite}
  .login-art .la-type{transform-origin:left center;animation:7s cubic-bezier(.4,0,.2,1) infinite}
  .login-art .la-t1{animation-name:la-type1}.login-art .la-t2{animation-name:la-type2}.login-art .la-t3{animation-name:la-type3}.login-art .la-t4{animation-name:la-type4}
  .login-art .la-progress{transform-origin:left center;animation:la-progress 7s ease-in-out infinite}
  .login-art .la-pop{transform-origin:center;animation:la-pop 7s cubic-bezier(.34,1.56,.64,1) infinite}
  .login-art .la-ring{transform-origin:center;animation:la-ring 7s ease-out infinite}
  .login-art .la-burst{animation:7s cubic-bezier(.15,.7,.3,1) infinite}
  .login-art .la-b1{animation-name:la-b1}.login-art .la-b2{animation-name:la-b2}.login-art .la-b3{animation-name:la-b3}.login-art .la-b4{animation-name:la-b4}.login-art .la-b5{animation-name:la-b5}.login-art .la-b6{animation-name:la-b6}
  .login-art .la-wave{transform-origin:center;animation:la-wave 2.4s ease-out infinite}.login-art .la-w2{animation-delay:1.2s}
  .login-art .la-mic-dot{transform-origin:center;animation:la-blink 2.4s ease-in-out infinite}
  .login-art .la-bubble{transform-origin:20% 100%;animation:la-bubble 7s cubic-bezier(.34,1.4,.64,1) infinite}
  .login-art .la-dot{animation:la-typing 1.2s ease-in-out infinite}
  .login-art .la-d2{animation-delay:.16s}.login-art .la-d3{animation-delay:.32s}
  .login-art .la-spark{transform-origin:center;animation:la-twinkle 3.2s ease-in-out infinite}
  .login-art .la-s2{animation-delay:1.1s}.login-art .la-s3{animation-delay:2s}.login-art .la-s4{animation-delay:.6s}
}
@media (prefers-reduced-motion:reduce){.login-art .la-bubble .la-dot{opacity:.6}}
@keyframes la-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes la-shadow{0%,100%{transform:scaleX(1);opacity:.55}50%{transform:scaleX(.9);opacity:.38}}
@keyframes la-nod{0%,58%,100%{transform:rotate(0)}63%{transform:rotate(-2.5deg)}68%{transform:rotate(1.5deg)}73%{transform:rotate(0)}}
@keyframes la-card{0%{transform:translateY(14px) scale(.96);opacity:0}7%,90%{transform:none;opacity:1}97%,100%{transform:translateY(-6px);opacity:0}}
@keyframes la-type1{0%,7%{transform:scaleX(0)}15%,100%{transform:scaleX(1)}}
@keyframes la-type2{0%,13%{transform:scaleX(0)}19%,100%{transform:scaleX(1)}}
@keyframes la-type3{0%,19%{transform:scaleX(0)}28%,100%{transform:scaleX(1)}}
@keyframes la-type4{0%,26%{transform:scaleX(0)}33%,100%{transform:scaleX(1)}}
@keyframes la-progress{0%,34%{transform:scaleX(0);fill:#1a1a6e}45%{transform:scaleX(.35)}52%{transform:scaleX(.55)}60%{transform:scaleX(1);fill:#1a1a6e}63%,100%{transform:scaleX(1);fill:#1f9d63}}
@keyframes la-pop{0%,60%{transform:scale(0)}66%,90%{transform:scale(1)}97%,100%{transform:scale(0)}}
@keyframes la-ring{0%,62%{transform:scale(1);opacity:0}63%{opacity:.9}78%,100%{transform:scale(2.3);opacity:0}}
@keyframes la-b1{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(0,-34px);opacity:0}}
@keyframes la-b2{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(29px,-17px);opacity:0}}
@keyframes la-b3{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(29px,17px);opacity:0}}
@keyframes la-b4{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(0,34px);opacity:0}}
@keyframes la-b5{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(-29px,17px);opacity:0}}
@keyframes la-b6{0%,62%{transform:translate(0,0);opacity:0}63%{opacity:1}76%,100%{transform:translate(-29px,-17px);opacity:0}}
@keyframes la-wave{0%{transform:scale(1);opacity:.85}100%{transform:scale(2.4);opacity:0}}
@keyframes la-blink{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes la-bubble{0%,4%{transform:scale(0);opacity:0}10%,58%{transform:scale(1);opacity:1}63%,100%{transform:scale(0);opacity:0}}
@keyframes la-typing{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}
@keyframes la-twinkle{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.55}}
@font-face{font-family:Inter;src:url('/_otl/inter.woff2') format('woff2');font-display:swap}
.signin-screen{background:#fff}.signin-screen>header,.signin-screen>footer{display:none}.signin-screen main{max-width:none;margin:0;padding:0}.signin-layout{display:grid;grid-template-columns:54.5% 45.5%;min-height:100svh}.signin-story{position:relative;overflow:hidden;background:#0b2036;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:48px 6.4%;min-height:100svh}.signin-brand{display:flex;align-items:center;gap:24px;z-index:1}.signin-brand img{width: min(58%,375px);height:auto}.signin-brand span{border-left:1px solid #31516a;padding-left:24px;color:#b4c5d9;font-size:16px;white-space:nowrap}.signin-story:after{content:'';position:absolute;right:-130px;top:-160px;width:320px;height:320px;border:1px solid #23466b;border-radius:50%;box-shadow:0 0 0 30px #0b2036,0 0 0 31px #23466b}.signin-story-main{text-align:center;z-index:1;margin:50px 0}.signin-story-main .login-art{width: min(360px,65%);display:block;margin:0 auto 32px;overflow:visible}.login-art .la-bubble{display:none}.signin-story-main h1{font-size:36px;letter-spacing:-1.2px;color:#fff;margin:0 0 20px}.signin-story-main p{font-size:17px;color:#b6c4d6;margin:0}.signin-credit{text-align:center;color:#b6c4d6;font-size:13px;z-index:1;margin:0}.signin-credit a{color:#7ed1dd;text-decoration:none;font-weight:650}.signin-orbits{position:absolute;bottom:0;left:0;width:32%;pointer-events:none}.signin-form{display:flex;align-items:center;justify-content:center;padding:64px 9%}.signin-form-inner{width:100%;max-width:500px}.signin-form h2{font-size:40px;letter-spacing:-1.3px;margin:0 0 14px}.signin-lead{font-size:18px;margin:0 0 42px;color:#60718c}.signin-form label{font-size:16px;margin:0 0 12px}.signin-form input:not([type=checkbox]){height:60px;border-radius:12px;padding:16px 18px;font-size:16px}.signin-password-label{display:flex;align-items:center;justify-content:space-between;margin-top:30px;margin-bottom:12px;gap:12px}.signin-password-label label{margin:0}.text-link{border:0;padding:0;min-height:0;background:transparent;color:#00869c;border-radius:0}.text-link:hover{background:transparent;text-decoration:underline}.signin-form .password-field input{padding-right:60px}.signin-form .password-field button{height:52px;top:4px;right:8px;color:#6b7c99;display:flex;align-items:center;justify-content:center}.signin-form .remember{display:flex;align-items:center;gap:12px;margin:26px 0 10px}.remember input{width:19px;height:19px;margin:0;accent-color:#0b2036}.remember-help{font-size:13px;line-height:1.55;color:#72829a;margin:0}.signin-form .login-submit{height:64px;margin-top:10px;border-radius:12px;font-size:18px;font-weight:650;background:#0b2036}.signin-help{text-align:center;font-size:16px;margin:28px 0 0}.signin-help button{text-decoration:underline}#signin-support{margin-top:20px;padding:16px;background:#f3f6fa;border-radius:10px;font-size:14px}#signin-support p{margin-bottom:0}.signin-screen #notice:not(:empty){position:fixed;right:3%;top:16px;width:min(480px,90%);z-index:10;box-shadow:0 4px 20px #10263e20}
@media(max-width:1100px){.signin-brand{flex-wrap:wrap;gap:16px}.signin-brand img{width:280px;max-width:100%}.signin-brand span{border-left:0;padding-left:0}.signin-story-main h1{font-size:30px}.signin-form{padding:48px 8%}.signin-form h2{font-size:34px}}
@media(max-width:760px){.signin-layout{grid-template-columns:1fr}.signin-story{min-height:0;padding:28px 24px;gap:0}.signin-brand{flex-wrap:nowrap;justify-content:space-between}.signin-brand img{width:220px;max-width:60%}.signin-brand span{font-size:12px;white-space:normal}.signin-story-main,.signin-credit,.signin-orbits,.signin-story:after{display:none}.signin-form{padding:40px 24px 48px;align-items:flex-start}.signin-form h2{font-size:32px}.signin-lead{font-size:16px;margin-bottom:32px}.signin-form input:not([type=checkbox]){height:54px}.signin-form .password-field button{height:46px}.signin-form .login-submit{height:56px}.signin-help{font-size:14px}}
/* Compact sign-in on phones and tablets; content determines row heights. */
.signin-layout>*{min-width:0}.signin-brand img{aspect-ratio:645.9 / 95;flex-shrink:0}
@media(max-width:960px){
 .signin-layout{display:flex;flex-direction:column;min-height:100svh}
 .signin-story{min-height:0;flex:none;padding:24px max(20px,env(safe-area-inset-left));display:block}
 .signin-brand{max-width:500px;margin:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
 .signin-brand img{width:235px;max-width:85%;height:auto}
 .signin-brand span{padding:0;border:0;font-size:13px;white-space:normal;overflow-wrap:anywhere}
 .signin-story-main,.signin-credit,.signin-orbits,.signin-story:after{display:none}
 .signin-form{flex:1;padding:30px max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom));align-items:flex-start}
 .signin-form-inner{max-width:500px;min-width:0}
 .signin-form h2{font-size:30px;letter-spacing:-.8px;margin-bottom:10px}
 .signin-lead{font-size:16px;line-height:1.5;margin-bottom:26px}
 .signin-form label{font-size:14px;margin-bottom:8px}
 .signin-form input:not([type=checkbox]){height:52px;padding:14px;font-size:16px;min-width:0}
 .signin-password-label{margin-top:18px;margin-bottom:8px;align-items:center;gap:8px}
 .signin-password-label label{margin:0}.signin-password-label .text-link{font-size:14px;min-height:44px}
 .signin-form .password-field button{height:44px;width:44px;top:4px;right:4px;padding:10px}
 .signin-form .remember{min-height:44px;margin:16px 0 0;gap:10px}.remember input{flex-shrink:0}
 .remember-help{font-size:12px;line-height:1.5;margin:0 0 8px}
 .signin-form .login-submit{height:52px;font-size:16px;margin-top:8px}
 .signin-help{font-size:14px;margin:16px 0 0}.signin-help button{min-height:44px;font-size:14px}
 .signin-screen #notice:not(:empty){position:relative;right:auto;top:auto;width:auto;margin:12px 16px}
}
/* Mobile composition: branded illustration above an overlapping sign-in card. */
@media(max-width:960px){
 .signin-screen{background:#edf2f6}
 .signin-layout{background:linear-gradient(#0b2036 0 260px,#edf2f6 260px);padding-bottom:max(16px,env(safe-area-inset-bottom))}
 .signin-story{padding:26px 20px 42px;background:#0b2036}
 .signin-brand{align-items:center;gap:8px}
 .signin-brand img{width:250px;max-width:90%}
 .signin-brand span{font-size:12px}
 .signin-story-main{display:block;margin:14px 0 0}
 .signin-story-main .login-art{width:150px;max-width:48%;height:112px;margin:0 auto;overflow:visible}
 .signin-story-main h1,.signin-story-main p{display:none}
 .signin-form{position:relative;z-index:1;flex:none;display:block;width:calc(100% - 28px);max-width:540px;margin:-24px auto 0;padding:26px 20px 22px;background:#fff;border-radius:24px;box-shadow:0 12px 36px #0b20360a}
 .signin-form-inner{max-width:none}
 .signin-form h2{text-align:center;font-size:28px}
 .signin-lead{text-align:center;font-size:14px;margin-bottom:30px}
 .signin-form .signin-help{margin-top:18px}
 .signin-form:after{content:'One Ticket Less · A product of Cipherstacks';display:block;text-align:center;font-size:11px;line-height:1.6;color:#72829a;margin-top:30px}
}
