.cp-partner{color:var(--cp-text, #f1f5f9);background:var(--cp-surface, #141a2a);border:1px solid var(--cp-border, #334155);border-radius:12px;padding:20px;margin:16px;max-width:940px;box-sizing:border-box}.cp-partner *{box-sizing:border-box}.cp-partner h2,.cp-partner h3{margin:0 0 16px}.cp-partner form,.cp-partner-fields{display:grid;gap:14px}.cp-partner-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.cp-partner label{display:grid;gap:6px;min-width:0}.cp-partner input,.cp-partner select,.cp-partner button{min-height:44px;border:1px solid var(--cp-border, #334155);border-radius:8px;padding:10px 12px;font:inherit;color:inherit;background:var(--cp-surface, #141a2a);max-width:100%}.cp-partner input,.cp-partner select{width:100%;min-width:0}.cp-partner button{cursor:pointer}.cp-partner button:disabled{opacity:.55;cursor:not-allowed}.cp-partner .cp-primary{background:#2563eb;color:#fff;border-color:#2563eb}.cp-partner .cp-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}.cp-partner article{padding:14px 0;border-top:1px solid var(--cp-border, #334155);overflow-wrap:anywhere}.cp-partner .cp-error{padding:12px;border-left:3px solid #b42318}.cp-partner dialog{color:inherit;background:var(--cp-surface, #141a2a);border:1px solid var(--cp-border, #334155);border-radius:12px;padding:20px;width:min(520px,calc(100vw - 32px))}.cp-partner dialog::backdrop{background:#0008}.cp-partner small{display:block;margin-top:12px}[data-theme=dark] .cp-partner{--cp-text: #f1f5f9;--cp-surface: #141a2a;--cp-border: #334155}[data-theme=light] .cp-partner{--cp-text: #172033;--cp-surface: #fff;--cp-border: #d0d5dd}@media (min-width: 972px){.cp-partner{margin:16px auto}}.cp-partner .cp-actions{display:flex;gap:8px;flex-wrap:wrap}.cp-partner .cp-actions .cp-primary{flex:1 1 200px}.cp-partner .cp-license{display:flex;align-items:center;gap:10px;flex-wrap:wrap;align-self:end;min-height:44px}.cp-partner .cp-upload{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px dashed var(--cp-border, #334155);border-radius:8px;cursor:pointer}:root:has(.cst-app,.portal-restyle){--portal-bg: #f5f6f8;--portal-card: #fff;--portal-soft: #eef2f7;--portal-line: #e3e6eb;--portal-ink: #1a2233;--portal-muted: #5b6576;--portal-primary: #1f3a5f;--portal-on-primary: #fff;--portal-ok: #067647;--portal-warn: #93370d;--portal-error: #b42318;color-scheme:light}@media (prefers-color-scheme: dark){:root:has(.cst-app,.portal-restyle){--portal-bg: #101827;--portal-card: #182438;--portal-soft: #22324a;--portal-line: #35465d;--portal-ink: #edf2f8;--portal-muted: #b6c2d2;--portal-primary: #b6cee9;--portal-on-primary: #15263f;--portal-ok: #7adcb3;--portal-warn: #f3c286;--portal-error: #ffa7a0;color-scheme:dark}}body:has(.cst-app,.portal-restyle),body:has(.cst-app,.portal-restyle) #root{background:var(--portal-bg);color:var(--portal-ink);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-variant-numeric:tabular-nums}@keyframes cstBreath{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.35}}.cst-breath{animation:cstBreath 1.8s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.cst-breath{animation:none}}body:has(.cst-app,.portal-restyle) :is(button,input,select,textarea){font-family:inherit}body:has(.cst-app,.portal-restyle) :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--portal-primary)!important;outline-offset:3px}body:has(.cst-app,.portal-restyle) :is(input,select,textarea,option){background-color:var(--portal-card)!important;color:var(--portal-ink)!important;border-color:var(--portal-line)!important;accent-color:var(--portal-primary)}body:has(.cst-app,.portal-restyle) button:disabled{cursor:not-allowed}body:has(.cst-app,.portal-restyle) .cst-app,body:has(.cst-app,.portal-restyle) .portal-restyle{background:var(--portal-bg)!important;color:var(--portal-ink)!important}body:has(.cst-app,.portal-restyle) :is(.cst-card,.cst-topbar,.cl-hub-header,.portal-history){background:var(--portal-card)!important;color:var(--portal-ink);border-color:var(--portal-line)!important;box-shadow:0 2px 10px #1a223308}body:has(.cst-app,.portal-restyle) :is(.cst-brand-title,.cst-card-title,.cst-section-title h2,.cst-route){color:var(--portal-ink)}body:has(.cst-app,.portal-restyle) :is(.cst-brand-sub,.cst-muted,.cst-field label,.cst-pill){color:var(--portal-muted)}body:has(.cst-app,.portal-restyle) :is(.cst-pill,.cst-tag,.cst-tab,.cst-btn){background:var(--portal-soft);color:var(--portal-primary);border-color:var(--portal-line)}body:has(.cst-app,.portal-restyle) .cst-btn.primary{background:var(--portal-primary);color:var(--portal-on-primary)}body:has(.cst-app,.portal-restyle) .cst-error{color:var(--portal-error)}body:has(.cst-app,.portal-restyle) :is(.cst-success,.cst-price){color:var(--portal-ok)}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(2, 6, 23)"],[style*="; background: rgb(2, 6, 23)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(2, 6, 23,"],[style*="; background: rgba(2, 6, 23,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(2, 6, 23)"],[style*="; background-color: rgb(2, 6, 23)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(2, 6, 23,"],[style*="; background-color: rgba(2, 6, 23,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(6, 10, 20)"],[style*="; background: rgb(6, 10, 20)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(6, 10, 20,"],[style*="; background: rgba(6, 10, 20,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(6, 10, 20)"],[style*="; background-color: rgb(6, 10, 20)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(6, 10, 20,"],[style*="; background-color: rgba(6, 10, 20,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(8, 17, 31)"],[style*="; background: rgb(8, 17, 31)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(8, 17, 31,"],[style*="; background: rgba(8, 17, 31,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(8, 17, 31)"],[style*="; background-color: rgb(8, 17, 31)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(8, 17, 31,"],[style*="; background-color: rgba(8, 17, 31,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(10, 15, 30)"],[style*="; background: rgb(10, 15, 30)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(10, 15, 30,"],[style*="; background: rgba(10, 15, 30,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(10, 15, 30)"],[style*="; background-color: rgb(10, 15, 30)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(10, 15, 30,"],[style*="; background-color: rgba(10, 15, 30,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(11, 20, 38)"],[style*="; background: rgb(11, 20, 38)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(11, 20, 38,"],[style*="; background: rgba(11, 20, 38,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(11, 20, 38)"],[style*="; background-color: rgb(11, 20, 38)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(11, 20, 38,"],[style*="; background-color: rgba(11, 20, 38,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(12, 18, 34)"],[style*="; background: rgb(12, 18, 34)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(12, 18, 34,"],[style*="; background: rgba(12, 18, 34,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(12, 18, 34)"],[style*="; background-color: rgb(12, 18, 34)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(12, 18, 34,"],[style*="; background-color: rgba(12, 18, 34,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(12, 20, 38)"],[style*="; background: rgb(12, 20, 38)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(12, 20, 38,"],[style*="; background: rgba(12, 20, 38,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(12, 20, 38)"],[style*="; background-color: rgb(12, 20, 38)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(12, 20, 38,"],[style*="; background-color: rgba(12, 20, 38,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(15, 22, 41)"],[style*="; background: rgb(15, 22, 41)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(15, 22, 41,"],[style*="; background: rgba(15, 22, 41,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(15, 22, 41)"],[style*="; background-color: rgb(15, 22, 41)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(15, 22, 41,"],[style*="; background-color: rgba(15, 22, 41,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(15, 23, 42)"],[style*="; background: rgb(15, 23, 42)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(15, 23, 42,"],[style*="; background: rgba(15, 23, 42,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(15, 23, 42)"],[style*="; background-color: rgb(15, 23, 42)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(15, 23, 42,"],[style*="; background-color: rgba(15, 23, 42,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(17, 27, 48)"],[style*="; background: rgb(17, 27, 48)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(17, 27, 48,"],[style*="; background: rgba(17, 27, 48,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(17, 27, 48)"],[style*="; background-color: rgb(17, 27, 48)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(17, 27, 48,"],[style*="; background-color: rgba(17, 27, 48,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(17, 24, 39)"],[style*="; background: rgb(17, 24, 39)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(17, 24, 39,"],[style*="; background: rgba(17, 24, 39,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(17, 24, 39)"],[style*="; background-color: rgb(17, 24, 39)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(17, 24, 39,"],[style*="; background-color: rgba(17, 24, 39,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(30, 41, 59)"],[style*="; background: rgb(30, 41, 59)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(30, 41, 59,"],[style*="; background: rgba(30, 41, 59,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(30, 41, 59)"],[style*="; background-color: rgb(30, 41, 59)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(30, 41, 59,"],[style*="; background-color: rgba(30, 41, 59,"]){background-color:var(--portal-card)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(255, 255, 255)"],[style*="; background: rgb(255, 255, 255)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(255, 255, 255,"],[style*="; background: rgba(255, 255, 255,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(255, 255, 255)"],[style*="; background-color: rgb(255, 255, 255)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(255, 255, 255,"],[style*="; background-color: rgba(255, 255, 255,"]){background-color:var(--portal-soft)!important}body:has(.cst-app,.portal-restyle) :is([style^="background: rgb(148, 163, 184)"],[style*="; background: rgb(148, 163, 184)"]),body:has(.cst-app,.portal-restyle) :is([style^="background: rgba(148, 163, 184,"],[style*="; background: rgba(148, 163, 184,"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgb(148, 163, 184)"],[style*="; background-color: rgb(148, 163, 184)"]),body:has(.cst-app,.portal-restyle) :is([style^="background-color: rgba(148, 163, 184,"],[style*="; background-color: rgba(148, 163, 184,"]){background-color:var(--portal-soft)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(226, 232, 240)"],[style*="; color: rgb(226, 232, 240)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(248, 250, 252)"],[style*="; color: rgb(248, 250, 252)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(241, 245, 249)"],[style*="; color: rgb(241, 245, 249)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(203, 213, 225)"],[style*="; color: rgb(203, 213, 225)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(255, 255, 255)"],[style*="; color: rgb(255, 255, 255)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(224, 242, 254)"],[style*="; color: rgb(224, 242, 254)"]){color:var(--portal-ink)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(148, 163, 184)"],[style*="; color: rgb(148, 163, 184)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(100, 116, 139)"],[style*="; color: rgb(100, 116, 139)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(71, 85, 105)"],[style*="; color: rgb(71, 85, 105)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(63, 63, 70)"],[style*="; color: rgb(63, 63, 70)"]){color:var(--portal-muted)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(56, 189, 248)"],[style*="; color: rgb(56, 189, 248)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(125, 211, 252)"],[style*="; color: rgb(125, 211, 252)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(96, 165, 250)"],[style*="; color: rgb(96, 165, 250)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(147, 197, 253)"],[style*="; color: rgb(147, 197, 253)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(165, 180, 252)"],[style*="; color: rgb(165, 180, 252)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(199, 210, 254)"],[style*="; color: rgb(199, 210, 254)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(167, 139, 250)"],[style*="; color: rgb(167, 139, 250)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(99, 102, 241)"],[style*="; color: rgb(99, 102, 241)"]){color:var(--portal-primary)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(134, 239, 172)"],[style*="; color: rgb(134, 239, 172)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(110, 231, 183)"],[style*="; color: rgb(110, 231, 183)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(209, 250, 229)"],[style*="; color: rgb(209, 250, 229)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(45, 212, 191)"],[style*="; color: rgb(45, 212, 191)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(52, 211, 153)"],[style*="; color: rgb(52, 211, 153)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(16, 185, 129)"],[style*="; color: rgb(16, 185, 129)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(34, 197, 94)"],[style*="; color: rgb(34, 197, 94)"]){color:var(--portal-ok)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(251, 191, 36)"],[style*="; color: rgb(251, 191, 36)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(252, 211, 77)"],[style*="; color: rgb(252, 211, 77)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(245, 158, 11)"],[style*="; color: rgb(245, 158, 11)"]){color:var(--portal-warn)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(252, 165, 165)"],[style*="; color: rgb(252, 165, 165)"]),body:has(.cst-app,.portal-restyle) :is([style^="color: rgb(239, 68, 68)"],[style*="; color: rgb(239, 68, 68)"]){color:var(--portal-error)!important}body:has(.cst-app,.portal-restyle) :is([style^="color: rgba(255, 255, 255,"],[style*="; color: rgba(255, 255, 255,"]){color:var(--portal-muted)!important}body:has(.cst-app,.portal-restyle) [style*="border:"][style*="rgba(255, 255, 255,"],body:has(.cst-app,.portal-restyle) [style*="border-bottom:"][style*="rgba(255, 255, 255,"]{border-color:var(--portal-line)!important}body:has(.cst-app,.portal-restyle) .cl-hub-title{background:none!important;-webkit-text-fill-color:var(--portal-ink);animation:none!important}body:has(.cst-app,.portal-restyle) .cl-v17-allin{background:var(--portal-soft)!important;border-color:var(--portal-line)!important;box-shadow:none!important}body:has(.cst-app,.portal-restyle) :is(button,a)[style*=linear-gradient]{background:var(--portal-primary)!important;color:var(--portal-on-primary)!important;box-shadow:none!important}body:has(.cst-app,.portal-restyle) .portal-desktop>div>aside{background:var(--portal-card);border-color:var(--portal-line)!important}body:has(.cst-app,.portal-restyle) [aria-label=Language]{position:sticky!important;top:8px!important;width:max-content;margin:0 0 12px auto;background:var(--portal-card)!important;box-shadow:none!important}.portal-history-tabs{display:flex;gap:8px}.portal-history-tabs button{padding:10px 14px;border-radius:9px;border:1px solid var(--portal-line);background:var(--portal-card);color:var(--portal-muted);cursor:pointer}.portal-history-tabs button[aria-selected=true]{background:var(--portal-primary);color:var(--portal-on-primary)}.portal-history{border:1px solid var(--portal-line);border-radius:14px;padding:14px}.portal-history article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 0;border-bottom:1px solid var(--portal-line);overflow-wrap:anywhere}.portal-history small{display:block;color:var(--portal-muted);font-size:11px;margin-top:8px}@media (max-width: 767px){body:has(.cst-app,.portal-restyle) .portal-route-grid{grid-template-columns:minmax(0,1fr)!important}body:has(.cst-app,.portal-restyle) .cst-topbar-inner{flex-wrap:wrap}body:has(.cst-app,.portal-restyle) .cst-actions{justify-content:flex-start}body:has(.cst-app,.portal-restyle) :is(button,select,input:not([type=checkbox]):not([type=radio])){min-height:44px}body:has(.cst-app,.portal-restyle) .sanlyn-app-shell{padding-bottom:26px}body:has(.cst-app,.portal-restyle) [style*="position: fixed;"][style*="bottom: 0px;"]{bottom:26px!important}}@media (prefers-reduced-motion: reduce){body:has(.cst-app,.portal-restyle) *,body:has(.cst-app,.portal-restyle) *:before{animation:none!important;transition:none!important}}body:has(.portal-v17) .sanlyn-app-shell>[aria-label=Language],body:has(.portal-v17) .portal-desktop [aria-label=Language]{display:none!important}.portal-v17 .cl-hub-header .cl-shell{flex-wrap:wrap}.portal-v17 .cl-hub-header .cl-shell>div:first-child{flex:1 1 180px!important;min-width:0!important}.portal-v17 .cl-hub-title{font-size:15px!important;overflow-wrap:anywhere}.portal-v17 .cl-hub-sub{display:none}.portal-v17 .cl-v17-allin,.portal-v17 .cl-hub-header .cl-desktop-only,.portal-v17 .cl-hub-header .cl-mobile-only{display:none!important}.portal-v17 .cl-shell{max-width:1200px;margin-inline:auto}.portal-language{display:flex;gap:2px;padding:2px;background:var(--portal-soft);border-radius:8px}.portal-language button{border:0;border-radius:6px;padding:6px 8px;background:transparent;color:var(--portal-muted);cursor:pointer}.portal-language button[aria-pressed=true]{background:var(--portal-primary);color:var(--portal-on-primary)}.portal-orders-map{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);border:1px solid var(--portal-line);border-radius:12px;background:var(--portal-card);margin-bottom:12px;overflow:hidden}.portal-orders-list{padding:10px 12px;min-width:0}.portal-section-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:44px;border:0;background:transparent;color:var(--portal-ink);text-align:left;cursor:pointer}.portal-order-row{display:flex;gap:10px;align-items:center;padding:8px;margin-top:6px;border:1px solid var(--portal-line);border-radius:8px;font-size:12px}.portal-order-row>div:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.portal-order-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;color:var(--portal-muted)}.portal-order-actions{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.portal-order-actions button,.portal-order-detail button{border:0;background:transparent;color:var(--portal-primary);min-height:32px;cursor:pointer}.portal-status,.portal-status-booked{border-radius:6px;padding:3px 7px;background:var(--portal-soft);color:var(--portal-muted);font-size:11px}.portal-status-booked{background:var(--portal-primary);color:var(--portal-on-primary)}.portal-order-detail{padding:10px;background:var(--portal-soft);border-radius:8px;margin-top:8px;overflow-wrap:anywhere}.portal-order-detail button{float:right}.portal-read-at{color:var(--portal-muted);display:block;padding-top:8px;font-size:10px}.portal-route-overview{min-width:0;background:var(--portal-soft);border-left:1px solid var(--portal-line)}.portal-route-overview summary{color:var(--portal-primary);font-size:12px;font-weight:700;padding:12px;min-height:44px;box-sizing:border-box;cursor:pointer}.portal-map-caption,.portal-schedule-meta{font-size:11px;line-height:1.5;color:var(--portal-muted);margin:0 0 10px}.portal-v17 .portal-market-row{display:block!important}.portal-v17 .portal-history-tabs{font-size:11px}.portal-v17 .portal-history-tabs button{padding:5px 10px}body:has(.cst-app,.portal-restyle) .portal-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start}body:has(.cst-app,.portal-restyle) .portal-route-card{padding:10px!important;min-width:0}.portal-sailings{font-size:12px}.portal-sailing-row{border-top:1px solid var(--portal-line, #1F2D44);padding:10px 0}.portal-sailing-main{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.portal-sailing-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;min-width:0}.portal-sailing-meta>small{flex-basis:100%;color:var(--portal-muted, #94A3B8)}.portal-sailing-prices{flex-shrink:0;text-align:right}.portal-sailing-prices small{display:block;font-size:10px;color:var(--portal-muted, #94A3B8)}.portal-sailing-prices>div+div{margin-top:5px}.portal-real-rate{color:var(--portal-warn, #F59E0B)}.portal-row-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px;margin-top:8px}.portal-row-actions button,.portal-show-more{font:inherit;min-height:32px;padding:5px 12px;border-radius:8px;border:1px solid var(--portal-line, #1F2D44);background:var(--portal-card, #111B30);color:var(--portal-primary, #38BDF8);cursor:pointer}.portal-row-actions .portal-book-button{background:var(--portal-primary, #38BDF8);color:var(--portal-on-primary, #03101A);border-color:transparent}.portal-row-actions button:disabled{opacity:.55;cursor:not-allowed}.portal-show-more{width:100%;border:0}.portal-booked{background:var(--portal-soft, #0C1426);padding:10px;border-radius:8px;margin-bottom:10px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.portal-booked>strong{color:var(--portal-primary, #38BDF8)}@media (max-width: 1100px){body:has(.cst-app,.portal-restyle) .portal-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width: 767px){.portal-orders-map{grid-template-columns:minmax(0,1fr)}.portal-route-overview{border-left:0;border-top:1px solid var(--portal-line)}body:has(.cst-app,.portal-restyle) .portal-route-grid{grid-template-columns:minmax(0,1fr)!important}.portal-v17 .cl-section-inner{padding:12px 10px 40px!important}.portal-v17 .cl-hub-header{padding:10px!important}body:has(.cst-app,.portal-restyle) .portal-book-carriers{grid-template-columns:minmax(0,1fr)!important}.portal-order-row{align-items:flex-start}}html,body,#root{min-height:100%;margin:0;background:#08111f;color:#e2e8f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}button,input,select,textarea{font:inherit}.cst-app{min-height:100vh;background:linear-gradient(180deg,#08111f,#0b1526 48%,#08111f)}.cst-shell{max-width:1180px;margin:0 auto;padding:18px}.cst-topbar{position:sticky;top:0;z-index:80;background:#080d19e0;border-bottom:1px solid rgba(148,163,184,.14);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cst-topbar-inner{display:flex;align-items:center;gap:12px;justify-content:space-between}.cst-brand{min-width:0}.cst-brand-title{font-size:19px;font-weight:900;color:#f8fafc;letter-spacing:0}.cst-brand-sub{margin-top:2px;font-size:11px;color:#64748b;font-weight:700}.cst-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.cst-btn{border:1px solid rgba(148,163,184,.18);border-radius:8px;padding:9px 13px;background:#0f172ab8;color:#cbd5e1;cursor:pointer;font-size:12px;font-weight:800}.cst-btn.primary{background:linear-gradient(135deg,#0ea5e9,#2563eb);border-color:#60a5fa8c;color:#fff}.cst-btn.ghost{background:#ffffff0a}.cst-btn:disabled{opacity:.58;cursor:not-allowed}.cst-tabs{display:flex;gap:6px;padding-top:12px;overflow-x:auto}.cst-tab{border:1px solid rgba(148,163,184,.16);background:#0f172a94;color:#94a3b8;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}.cst-tab.active{color:#e0f2fe;border-color:#38bdf87a;background:#0ea5e929}.cst-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cst-card{background:#0f172aa8;border:1px solid rgba(148,163,184,.14);border-radius:8px;padding:14px;min-width:0}.cst-card-title{font-size:14px;font-weight:900;color:#f8fafc;margin-bottom:8px}.cst-muted{color:#64748b;font-size:12px;line-height:1.6}.cst-route{display:flex;align-items:center;gap:8px;color:#e0f2fe;font-weight:900;font-size:15px}.cst-price{margin-top:12px;color:#6ee7b7;font-size:24px;font-weight:950}.cst-meta{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}.cst-pill{border-radius:7px;border:1px solid rgba(148,163,184,.14);background:#ffffff0d;padding:4px 7px;font-size:11px;color:#94a3b8;font-weight:800}.cst-panel{max-width:760px}.cst-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cst-field label{display:block;margin-bottom:6px;color:#94a3b8;font-size:11px;font-weight:850}.cst-field input,.cst-field select,.cst-field textarea{width:100%;border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#02061780;color:#e2e8f0;padding:10px 11px;outline:none}.cst-field textarea{min-height:92px;resize:vertical}.cst-field.full{grid-column:1 / -1}.cst-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 10px}.cst-section-title h2{margin:0;color:#f8fafc;font-size:16px}.cst-list{display:grid;gap:10px}.cst-quote-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.cst-tag{color:#bae6fd;background:#0ea5e91f;border:1px solid rgba(14,165,233,.28);border-radius:7px;padding:4px 8px;font-size:11px;font-weight:850}.cst-login-box{width:min(360px,calc(100vw - 32px));margin:70px auto 0}.cst-error{color:#fca5a5;font-size:12px;margin-top:10px}.cst-success{color:#86efac;font-size:12px;margin-top:10px}.cst-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617b8;z-index:200;display:flex;align-items:center;justify-content:center;padding:18px}.cst-modal-box{width:min(620px,100%);background:#0f172a;border:1px solid rgba(148,163,184,.22);border-radius:8px;padding:16px;box-shadow:0 24px 70px #0000008c}@media (max-width: 820px){.cst-shell{padding:14px}.cst-grid,.cst-form{grid-template-columns:1fr}.cst-topbar-inner{align-items:flex-start}.cst-brand-title{font-size:17px}}.fh-landing{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(160deg,#0b1220,#1a2333 55%,#0b1220);color:#e6edf6;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.fh-aurora{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.fh-aurora span{position:absolute;border-radius:50%;filter:blur(90px);will-change:transform}.fh-a1{width:60vw;height:60vw;max-width:900px;max-height:900px;left:-20%;top:-35%;background:#38bdf8;opacity:.22;animation:fhA 26s ease-in-out infinite alternate}.fh-a2{width:50vw;height:50vw;max-width:760px;max-height:760px;right:-18%;top:10%;background:#c3d4f0;opacity:.15;animation:fhB 30s ease-in-out infinite alternate}.fh-a3{width:60vw;height:60vw;max-width:860px;max-height:860px;left:15%;bottom:-45%;background:#38bdf8;opacity:.16;animation:fhC 22s ease-in-out infinite alternate}@keyframes fhA{to{transform:translate(14%,10%) scale(1.15)}}@keyframes fhB{to{transform:translate(-16%,8%) scale(.92)}}@keyframes fhC{to{transform:translate(-10%,-10%) scale(1.08)}}@media (prefers-reduced-motion: reduce){.fh-aurora span{animation:none}}.fh-wrap{position:relative;max-width:1280px;margin:0 auto;padding:24px clamp(16px,3vw,40px) 120px;display:flex;flex-direction:column;gap:28px}.fh-top{display:flex;align-items:center;gap:12px}.fh-mark{width:40px;height:40px;border-radius:10px;background:#38bdf8;color:#0b1220;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;flex:none}.fh-brand{display:flex;flex-direction:column;line-height:1.2}.fh-brand b{font-size:18px;letter-spacing:1px}.fh-brand small{font-size:12px;color:#c3d4f0;letter-spacing:1.5px}.fh-hero h1{margin:0;font-size:clamp(22px,3.2vw,34px);line-height:1.3}.fh-hero p{margin:8px 0 0;color:#c3d4f0;font-size:15px}.fh-grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:24px;align-items:start}.fh-glass{background:#0f1828d6!important;border:1px solid rgba(195,212,240,.16)!important;border-radius:16px!important;padding:22px!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fh-login .cst-card-title,.fh-sheet .cst-card-title{font-size:18px}.fh-rates-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.fh-rates-head h2{margin:0;font-size:18px;color:#f8fafc}.fh-pill{font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid rgba(195,212,240,.2);color:#c3d4f0}.fh-dock{position:fixed;left:0;right:0;bottom:0;z-index:90;padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#0b122000,#0b1220f2 30%)}.fh-dock-btn{width:100%;min-height:52px;border-radius:14px!important;font-size:17px!important}.fh-shade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;background:#03060ca6}.fh-sheet{position:fixed;left:0;right:0;bottom:0;z-index:96;max-height:88vh;overflow-y:auto;background:#111c2e;border-radius:18px 18px 0 0;padding:12px 8px 24px}.fh-sheet .fh-glass{background:transparent!important;border:0!important}.fh-grab{display:block;width:40px;height:4px;border-radius:2px;background:#3b4a63;margin:0 auto 8px}.fh-landing .cst-btn{min-height:44px;font-size:14px}.fh-landing .cst-field input{min-height:46px;font-size:15px}@media (max-width: 1023px){.fh-grid{grid-template-columns:1fr}.fh-wrap{gap:18px}}.a7-page{min-height:100vh;box-sizing:border-box;background:linear-gradient(160deg,#0b1220,#1a2333 55%,#0b1220);color:#e6edf6;font-family:Noto Sans SC,system-ui,sans-serif;font-size:14px;line-height:1.5;padding:16px;display:flex;flex-direction:column;align-items:center;gap:16px}.a7-top{width:100%;max-width:1200px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.a7-logo{display:flex;align-items:center;gap:10px}.a7-mark{width:32px;height:32px;border-radius:9px;background:#38bdf8;color:#0b1220;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.a7-name{font-weight:700;letter-spacing:1px}.a7-name small{font-weight:400;color:#c3d4f0;font-size:13px;margin-left:6px;letter-spacing:0}.a7-langs{display:inline-flex;padding:4px;gap:4px;border-radius:10px;background:#c3d4f01a;border:1px solid rgba(195,212,240,.14)}.a7-langs button{min-height:36px;min-width:48px;border:0;border-radius:8px;background:transparent;color:#c3d4f0;font-size:13px;cursor:pointer;font-family:inherit}.a7-langs button[aria-pressed=true]{background:#38bdf838;color:#e6edf6;font-weight:700}.a7-main{flex:1;width:100%;display:flex;justify-content:center;align-items:flex-start;padding-top:min(6vh,48px)}.a7-card{width:100%;max-width:420px;box-sizing:border-box;padding:20px;border-radius:16px;background:#0f1828e6;border:1px solid rgba(56,189,248,.45);display:flex;flex-direction:column;gap:12px}.a7-card.wide{max-width:520px;border-color:#c3d4f029}.a7-card.warn{border-color:#f3c28673}.a7-card.err{border-color:#fca5a573}@media (min-width:768px){.a7-card{padding:28px;gap:14px}.a7-page{padding:20px 40px}}.a7-brand{display:flex;flex-direction:column;gap:2px;padding-bottom:12px;border-bottom:1px solid rgba(195,212,240,.14)}.a7-brand b{font-size:26px;font-weight:700;letter-spacing:2px}.a7-brand span{font-size:14px;color:#c3d4f0}@media (max-width:767px){.a7-brand{display:none}}.a7-inv{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#38bdf81f;color:#bae6fd;font-size:13px}.a7-inv b{color:#e6edf6}.a7-card h1{margin:0;font-size:18px;font-weight:700}.a7-card h1.a7-inviter{font-size:20px;line-height:1.4}.a7-card h1.a7-inviter b{color:#38bdf8}.a7-card h2{margin:0;font-size:17px;font-weight:700}.a7-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#c3d4f0;min-width:0}.a7-field .note{font-size:11px;color:#8b9ab3}.a7-field .req{color:#fca5a5}.a7-field input{min-height:48px;box-sizing:border-box;padding:0 12px;border-radius:10px;border:1px solid rgba(195,212,240,.22);background:#0b122099;color:#e6edf6;font-size:15px;width:100%;font-family:inherit}.a7-field input[readonly],.a7-locked{min-height:44px;box-sizing:border-box;padding:10px 12px;border-radius:10px;border:1px solid rgba(195,212,240,.14);background:#c3d4f00f;color:#e6edf6;font-size:14px;display:flex;align-items:center;gap:8px}.a7-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.a7-codeRow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.a7-btn{min-height:48px;border-radius:10px;border:0;background:#38bdf8;color:#0b1220;font-weight:700;font-size:15px;cursor:pointer;font-family:inherit}.a7-btn:disabled{opacity:.6;cursor:default}.a7-ghost{min-height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(56,189,248,.5);background:transparent;color:#bae6fd;font-size:14px;cursor:pointer;font-family:inherit}.a7-muted{font-size:12px;color:#8b9ab3}.a7-err{color:#fca5a5;font-size:13px}.a7-alert{padding:10px 12px;border-radius:10px;border:1px dashed currentColor;font-size:13px}.a7-ok{padding:14px;border-radius:12px;border:1px solid rgba(122,220,179,.45);background:#7adcb314;color:#a7f3d0}.a7-steps{display:flex;gap:6px}.a7-steps span{flex:1;text-align:center;font-size:12px;padding:4px 0;border-radius:6px;border:1px solid rgba(195,212,240,.2);color:#8b9ab3}.a7-steps span.done{border-color:#7adcb380;color:#e6edf6}.a7-steps span.on{border-color:#38bdf8;background:#38bdf824;color:#e6edf6}.a7-upload{padding:16px;border-radius:12px;border:1.5px dashed rgba(56,189,248,.55);background:#38bdf80d;text-align:center;display:flex;flex-direction:column;gap:2px}.a7-row{display:flex;gap:8px;flex-wrap:wrap}.a7-admin{min-height:100vh;box-sizing:border-box;background:#f7f8fa;color:#161920;font-family:Noto Sans SC,system-ui,sans-serif;font-size:14px;padding:24px clamp(16px,3vw,40px);display:flex;flex-direction:column;gap:18px}.a7-admin h1{margin:0;font-size:22px}.a7-admin h3{margin:0;font-size:16px;font-weight:700}.a7-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:18px;align-items:start}.a7-box{padding:18px;border-radius:12px;background:#fff;border:1px solid #E2E5EC;display:flex;flex-direction:column;gap:12px;min-width:0}.a7-box label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#4b5262}.a7-box input,.a7-box select{min-height:44px;border-radius:8px;border:1px solid #D0D5DD;padding:0 10px;background:#fff;color:#161920;font-family:inherit;font-size:14px}.a7-pbtn{min-height:44px;border-radius:8px;border:0;background:#2563eb;color:#fff;font-weight:700;cursor:pointer;font-family:inherit;padding:0 14px}.a7-sbtn{min-height:36px;padding:0 10px;border-radius:6px;border:1px solid #D0D5DD;background:#fff;color:#1f3a5f;font-size:12px;cursor:pointer;font-family:inherit}.a7-hint{font-size:12px;color:#4b5262;padding:8px 10px;border-radius:8px;background:#f1f4f9}.a7-linkbox{display:flex;gap:8px;align-items:center;padding:10px;border-radius:8px;border:1px solid #E2E5EC;font-family:JetBrains Mono,monospace;font-size:12px;color:#4b5262;word-break:break-all}.a7-table{overflow-x:auto}.a7-table>div{min-width:560px}.a7-tr{display:grid;gap:8px;padding:10px 0;align-items:center;font-size:13px;border-bottom:1px solid #E2E5EC}.a7-th{font-size:12px;color:#4b5262;padding:6px 0}.a7-tag{font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;display:inline-block}.a7-tag.ok{background:#e7f6ee;color:#137a45}.a7-tag.wait{background:#eef3fd;color:#1f3a5f}.a7-tag.off{background:#f1f2f4;color:#4b5262}.a7-tag.pend{background:#fffaeb;color:#b54708}.a7-picks{display:flex;flex-direction:column;border:1px solid #E2E5EC;border-radius:8px;max-height:220px;overflow:auto}.a7-picks button{text-align:left;min-height:40px;padding:6px 10px;border:0;border-bottom:1px solid #F1F2F4;background:#fff;cursor:pointer;font-family:inherit;font-size:13px}
