/* GEO EchoTrace palette shared by Workspace and AI 商务策划 */
:root{
  --geo-brand:#FF6E40;
  --geo-brand-hover:#EF5B32;
  --geo-brand-tint:#FFF1EB;
  --geo-title:#111827;
  --geo-secondary:#687588;
  --geo-muted:#A0AEC0;
  --geo-border:#E5EAF0;
  --geo-page:#F7F9FC;
  --geo-surface:#FFFFFF;
}
:root{font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#111827;background:#f6f7f9;font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{display:flex;min-height:100vh}.side{width:236px;position:fixed;top:0;bottom:0;left:0;background:#fff;border-right:1px solid #e6e8ed;display:flex;flex-direction:column;padding:24px 15px;z-index:10}.brand{display:flex;gap:9px;align-items:center;padding:5px 11px 25px;font-size:16px;font-weight:780;white-space:nowrap}.mark{display:inline-grid;place-items:center;background:#ff6e40;color:#fff;border-radius:7px;width:31px;height:31px;font-size:18px}.navlabel{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#95a0ad;padding:14px 11px 8px}.nav{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:6px;margin:2px 0;color:#6b7788;transition:.12s}.nav:hover,.nav.active{background:#fff0ea;color:#d95329;font-weight:650}.navicon{font-size:17px;width:20px;text-align:center}.sidefooter{margin-top:auto;border-top:1px solid #edf0f4;padding-top:14px}.main{margin-left:236px;min-width:0;flex:1}.top{height:69px;background:#fff;border-bottom:1px solid #e8ebef;display:flex;align-items:center;justify-content:space-between;padding:0 36px}.toplinks{display:flex;align-items:center;gap:18px;color:#637083}.toplinks a:hover{color:#f16b43}.userpill{display:flex;gap:10px;align-items:center;min-width:0}
.userdetails{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.userdetails .username{font-size:13px;font-weight:700;color:#111827;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.accountname{font-size:11px;color:#8b97a8;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.avatar{width:32px;height:32px;border-radius:50%;background:#e7eaf0;display:grid;place-items:center;color:#475467;font-weight:700}.content{max-width:1310px;margin:0 auto;padding:34px 35px 65px}.pagehead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.eyebrow{color:#f16b43;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.pagehead h1{font-size:27px;letter-spacing:-.8px;margin:6px 0 6px}.sub{color:#8490a0;line-height:1.7}.btn{display:inline-flex;gap:6px;align-items:center;justify-content:center;background:#fff;color:#323c4e;border:1px solid #dce0e6;border-radius:5px;padding:10px 16px;font-weight:650;min-height:39px}.btn:hover{background:#f7f8fa}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:#ff6e40;border-color:#ff6e40;color:#fff}.btn.primary:hover{background:#f15c30}.btn.danger{color:#bc4039}.btn.small{padding:7px 11px;min-height:31px;font-size:12px}.btn.flat{border:none;background:transparent}.pill{display:inline-flex;padding:4px 9px;border-radius:99px;font-size:11px;color:#745a38;background:#fff4db}.pill.ok{color:#147d5c;background:#e9f8f0}.pill.off{color:#67758c;background:#eef1f6}.card{background:#fff;border:1px solid #e8ebf0;border-radius:9px;padding:24px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card h3{margin:0 0 8px;font-size:16px}.muted{color:#8692a1}.stat{font-size:31px;font-weight:800;letter-spacing:-1px;margin:9px 0}.flex{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.rowlist{display:grid;gap:10px}.project{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border:1px solid #e8ebef;background:#fff;border-radius:8px;gap:10px}.project:hover{border-color:#ffc5b0}.project b{display:block;margin-bottom:5px}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:17px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:13px;font-weight:650}.field input,.field textarea,.field select,input.search,select.search{width:100%;border:1px solid #dce2e9;border-radius:5px;padding:11px 12px;background:#fff;color:#111827;outline:none;min-height:41px}.field textarea{min-height:104px;resize:vertical;line-height:1.7}.field input:focus,.field textarea:focus,.field select:focus{border-color:#ff916c;box-shadow:0 0 0 3px #ff6e401f}.field input[type=checkbox]{width:18px;height:18px;min-height:0}.smallnote{font-size:12px;color:#85909e;line-height:1.8}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tablewrap{overflow:auto;background:#fff;border:1px solid #e8ebef;border-radius:9px}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:15px 17px;border-bottom:1px solid #edf0f3;vertical-align:middle}th{font-size:12px;background:#fafbfc;color:#718095;font-weight:650}tr:last-child td{border-bottom:none}.link{color:#e65b32;cursor:pointer}.link:hover{text-decoration:underline}.stage{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 22px}.dot{height:5px;flex:1;min-width:16px;background:#e7eaf0;border-radius:99px}.dot.passed{background:#ff936f}.dot.current{background:#ff6e40}.panel{display:grid;grid-template-columns: minmax(0,1.6fr) minmax(260px,1fr);gap:17px}.approval{border-left:3px solid #ff6e40;background:#fff7f4;padding:13px 17px;color:#6a4d42;border-radius:4px;margin:16px 0}.code{font-family:ui-monospace,monospace;font-size:12px;color:#7a8797}.itemrow{border:1px solid #edf0f4;padding:11px 12px;border-radius:6px;margin-bottom:7px;display:flex;gap:9px;align-items:flex-start}.itemrow:hover{border-color:#ffd0c0}.toast{position:fixed;bottom:22px;right:24px;background:#111827;color:white;padding:13px 17px;border-radius:6px;z-index:50;box-shadow:0 12px 30px #11182730;max-width:450px}.toast.err{background:#aa423d}.overlay{position:fixed;inset:0;background:#11182785;display:flex;justify-content:center;align-items:center;z-index:30;padding:25px}.modal{background:#fff;border-radius:10px;padding:27px;max-width:800px;width:100%;max-height:92vh;overflow:auto}.modal h2{margin:0 0 17px}.loginwall{min-height:100vh;display:grid;place-items:center;background:#f6f7f9;padding:20px}.loginbox{width:100%;max-width:430px;padding:38px;background:#fff;border:1px solid #e8edf1;border-radius:12px;box-shadow:0 15px 45px #1118270a}.loginbox h1{font-size:26px;margin:22px 0 8px}.empty{text-align:center;padding:65px 18px;color:#8490a0}.empty h3{color:#2d3748}.article{line-height:1.8;white-space:pre-wrap}.tight{margin:0}.section{margin-top:30px}.kpis{display:flex;gap:26px}.kpis>div{flex:1}.chip{border-radius:5px;padding:5px 9px;font-size:12px;background:#f6f7f9;color:#657184}.toolbar input.search{max-width:300px}.loading{padding:90px;text-align:center;color:#8692a1}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.panel{grid-template-columns:1fr}.content{padding:24px}}@media(max-width:700px){.side{width:58px;padding:16px 6px}.side .navtxt,.brandtxt,.sidefooter .navtxt,.navlabel{display:none}.brand{padding:8px 6px 20px}.nav{justify-content:center;padding:12px 3px}.main{margin-left:58px}.top{padding:0 15px}.toplinks{gap:8px}.content{padding:20px 13px}.cards,.formgrid{grid-template-columns:1fr}.pagehead{align-items:flex-start;flex-direction:column}.accountname{display:none}.userdetails .username{max-width:88px;font-size:12px}.toplinks .secondarylink{display:none}}

@media(max-width:480px){.top{padding:0 9px;gap:8px}.top .chip{display:none}.toplinks{gap:7px}.userpill{gap:6px}.avatar{width:27px;height:27px}.userdetails .username{max-width:72px}}

/* P2 v0.3 unified palette: align both apps with GEO EchoTrace */
body{color:var(--geo-title);background:var(--geo-page)}
.side,.top,.card,.tablewrap,.project,.loginbox{background:var(--geo-surface)}
.side{border-right-color:var(--geo-border);transition:width .16s ease,padding .16s ease}
.main{transition:margin-left .16s ease}
.brand{color:var(--geo-title);min-width:0}
.brandtxt{overflow:hidden;text-overflow:ellipsis}
.mark,.btn.primary{background:var(--geo-brand);border-color:var(--geo-brand)}
.btn.primary:hover{background:var(--geo-brand-hover);border-color:var(--geo-brand-hover)}
.nav,.toplinks,.sub,.smallnote,.muted{color:var(--geo-secondary)}
.nav.active,.nav:hover{background:var(--geo-brand-tint);color:var(--geo-brand-hover)}
.eyebrow,.link{color:var(--geo-brand)}
.navlabel,.accountname{color:var(--geo-muted)}
.avatar{background:var(--geo-brand-tint);color:var(--geo-brand-hover)}
.top{border-bottom-color:var(--geo-border)}
.card,.tablewrap,.project,.loginbox{border-color:var(--geo-border)}
/* Collapse / expand the left navigation without remounting workflow state */
.sidebar-actions{padding:0 7px 7px}
.sidebar-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:34px;padding:7px 11px;border:1px solid var(--geo-border);border-radius:5px;background:#F7F9FC;color:var(--geo-secondary);font-size:12px;text-align:left;white-space:nowrap}
.sidebar-toggle:hover,.sidebar-toggle:focus-visible{color:var(--geo-brand-hover);border-color:#FFD1C2;background:var(--geo-brand-tint)}
.sidebar-toggle-icon{display:inline-flex;justify-content:center;align-items:center;min-width:18px;font-size:13px;font-weight:700}
.sidebar-collapsed .side{width:72px;padding:20px 8px}
.sidebar-collapsed .main{margin-left:72px}
.sidebar-collapsed .side .brand{padding:5px 8px 19px;justify-content:center}
.sidebar-collapsed .side .brandtxt,.sidebar-collapsed .side .navtxt,.sidebar-collapsed .side .navlabel{display:none}
.sidebar-collapsed .side .sidebar-actions{padding:0 1px 8px}
.sidebar-collapsed .side .sidebar-toggle{justify-content:center;padding:7px 2px}
.sidebar-collapsed .side .nav{justify-content:center;padding:12px 3px}
.sidebar-collapsed .side .navicon{width:24px}
/* User account menu. Logout is never presented as a permanent top-bar action. */
.user-menu{position:relative;z-index:22}
.user-trigger{display:flex;align-items:center;gap:10px;min-height:43px;padding:5px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--geo-title);text-align:left}
.user-trigger:hover,.user-trigger[aria-expanded="true"]{background:var(--geo-brand-tint);border-color:#FFE0D5}
.user-trigger:focus-visible{outline:2px solid var(--geo-brand);outline-offset:2px}
.user-chevron{font-size:18px;color:var(--geo-secondary);margin-left:2px}
.user-dropdown[hidden]{display:none !important}
.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:225px;min-width:195px;padding:7px;background:#fff;border:1px solid var(--geo-border);border-radius:8px;box-shadow:0 12px 36px rgb(17 24 39 / 13%);z-index:25}
.user-dropdown-identity{padding:10px 12px;display:flex;flex-direction:column;gap:4px}
.user-dropdown-identity strong{font-size:13px;color:var(--geo-title);max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-dropdown-identity span{font-size:12px;color:var(--geo-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-dropdown button{display:block;width:100%;border:0;border-radius:5px;background:transparent;padding:10px 12px;text-align:left;color:var(--geo-title);font-size:13px}
.user-dropdown button:hover,.user-dropdown button:focus-visible{background:var(--geo-brand-tint);color:var(--geo-brand-hover);outline:none}
.user-dropdown .logout-action{color:#B34737}
.user-dropdown-divider{border-top:1px solid var(--geo-border);margin:5px 3px}
@media(max-width:700px){
 .app:not(.sidebar-collapsed) .side{width:194px;padding:17px 10px}
 .app:not(.sidebar-collapsed) .main{margin-left:194px}
 .app:not(.sidebar-collapsed) .side .brandtxt,.app:not(.sidebar-collapsed) .side .navtxt,.app:not(.sidebar-collapsed) .side .navlabel{display:initial}
 .app:not(.sidebar-collapsed) .side .nav{justify-content:flex-start;padding:12px 9px}
 .app.sidebar-collapsed .side{width:58px;padding:16px 6px}
 .app.sidebar-collapsed .main{margin-left:58px}
 .top-title{font-size:12px}
 .toplinks{gap:7px}
 .user-trigger{padding:5px;gap:6px}
 .user-trigger .accountname{display:none}
 .user-chevron{font-size:15px}
 .user-dropdown{width:194px}
}
@media(max-width:480px){
 .topidentity .chip{display:none}
 .userdetails .username{max-width:72px}
 .sidebar-collapsed .side .sidebar-actions{padding:0 0 8px}
}

/* Ensure the platform name is readable in the expanded navigation. */
.side .brand{font-size:13px;gap:7px;padding-left:7px;padding-right:0}
.side .brandtxt{font-size:13px;overflow:visible;letter-spacing:-.25px}
@media(max-width:700px){
  /* On mobile expanded nav overlays content instead of squeezing it into a narrow column. */
  .app:not(.sidebar-collapsed) .main{margin-left:58px}
  .app:not(.sidebar-collapsed) .side{z-index:24;box-shadow:8px 0 24px rgb(17 24 39 / 12%)}
  .top-title{white-space:nowrap;max-width:102px;overflow:hidden;text-overflow:ellipsis}
}

/* P2 v0.5: unified user and app authorization */
#usersTable{min-width:840px}
#usersTable td{font-size:13px}
#usersTable tr[hidden]{display:none}
#userSearch{max-width:300px}
#permissionForm .field{padding:7px 0}
#permissionForm label input[type=checkbox]{width:18px;min-height:18px;height:18px;margin-right:8px;vertical-align:middle;accent-color:#ff6e40}
#permissionForm .field label{display:flex;align-items:center;font-size:14px}
@media(max-width:700px){#userSearch{max-width:170px}}

/* P2 v0.6 GEO live directory and account profile */
#usersTable{min-width:1080px}
#userSearch{width:230px}
.profile-card{max-width:730px}
.profile-card .field{margin-bottom:15px}
.profile-card .field input{max-width:580px}
@media(max-width:800px){#userSearch{width:145px}.profile-card{max-width:100%}}

/* v0.6.1 independent Workspace / Plan branded sign-in portal (GEO remains identity provider) */
.portal-auth{min-height:100vh;display:grid;grid-template-columns:minmax(390px,51%) 1fr;background:#fff;color:#111827}
.portal-hero{position:relative;overflow:hidden;min-height:100vh;padding:39px clamp(30px,5vw,84px);display:flex;flex-direction:column;background:linear-gradient(155deg,#111827 3%,#1c2937 55%,#24313e 100%);color:#fff}
.portal-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 65% 52%,#ff6e401c,transparent 34%),linear-gradient(120deg,transparent 40%,#ff6e4008)}
.portal-brand{display:flex;align-items:center;gap:12px;position:relative;z-index:1}
.portal-brand-symbol{width:41px;height:41px;background:#ff6e40;border-radius:11px;display:grid;place-items:center;font-size:23px}
.portal-brand strong{display:block;font-size:18px;letter-spacing:-.3px}.portal-brand small{display:block;font-size:11px;color:#b9c5d2;margin-top:3px}
.portal-hero-copy{position:relative;z-index:1;margin-top:clamp(52px,8vh,105px)}
.portal-eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:#ffae8d}
.portal-hero h1{font-size:clamp(30px,3.2vw,49px);letter-spacing:-1px;line-height:1.23;max-width:535px;margin:17px 0}
.portal-hero p{max-width:485px;font-size:15px;line-height:1.95;color:#c4d0dc}
.portal-orbit{height:235px;position:relative;z-index:1;display:grid;place-items:center;margin:5px 0}
.portal-globe{width:175px;height:175px;border:1px solid #ffae8d66;border-radius:50%;position:relative;box-shadow:0 0 0 20px #ff6e400b,0 0 0 43px #ff6e4008,inset -17px -9px 58px #ff6e4030;transform:rotate(-12deg);background:radial-gradient(circle at 33% 23%,#ffbe9d40,transparent 65%)}
.portal-globe:after,.portal-globe:before,.portal-globe i{content:"";position:absolute;border:1px solid #ffb39480;border-radius:50%;inset:0}
.portal-globe:before{left:24%;right:24%}.portal-globe:after{top:29%;bottom:29%;transform:rotate(13deg)}
.portal-globe i:nth-child(1){left:43%;right:43%}.portal-globe i:nth-child(2){top:44%;bottom:44%}.portal-globe i:nth-child(3){inset:-12%;border-style:dashed;opacity:.25}
.orbit-badge{position:absolute;border:1px solid #ff9d7950;background:#263341e8;padding:7px 12px;border-radius:6px;font-size:11px;box-shadow:0 9px 20px #0002}
.orbit-badge-a{top:24px;left:22%}.orbit-badge-b{top:88px;right:9%}.orbit-badge-c{bottom:20px;left:24%}
.portal-features{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:auto;border-top:1px solid #fff2;padding-top:25px}
.portal-features b{font-size:13px;display:block;margin-bottom:8px}.portal-features span{font-size:11px;color:#b7c2cc;line-height:1.6;display:block}
.portal-auth-main{display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:50px clamp(34px,7vw,110px);position:relative}
.portal-auth-inner{width:100%;max-width:425px;margin:auto}
.portal-mobile-brand{display:none}.portal-kicker{font-size:12px;letter-spacing:1.6px;color:#ff6e40;font-weight:800}
.portal-auth h2{font-size:clamp(25px,2.2vw,34px);letter-spacing:-.6px;margin:12px 0 14px;line-height:1.3}
.portal-desc{color:#687588;line-height:1.9;margin-bottom:28px;font-size:14px}
.portal-auth-primary{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;background:#ff6e40;color:white;border-radius:7px;padding:16px 19px;font-weight:750;box-shadow:0 10px 24px #ff6e402f;transition:background .15s}
.portal-auth-primary:hover{background:#ed5a30;color:white}.portal-auth-primary:focus-visible,.portal-register a:focus-visible{outline:3px solid #fdac91;outline-offset:3px}
.portal-register{margin:21px 0 22px;text-align:center;color:#687588}.portal-register a{color:#e96139;font-weight:750}
.portal-security{background:#f8fafc;border:1px solid #e8eef3;border-radius:7px;padding:12px;color:#687588;font-size:11px;line-height:1.7}
.portal-security span{font-size:16px;color:#ff6e40;margin-right:4px}.portal-notice{border:1px solid #e3eadc;background:#f3f8f0;color:#317a39;padding:12px 14px;border-radius:6px;margin-bottom:18px;font-size:13px}
.portal-divider{height:1px;background:#e9edf2;margin:30px 0 22px}
.portal-shortcuts{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;font-size:12px}.portal-shortcuts span{color:#9aa4b1;width:100%;font-size:11px}.portal-shortcuts a{color:#687588}.portal-shortcuts a:hover{color:#ff6e40}
.portal-footer{font-size:11px;color:#a0aec0;text-align:center;margin:36px auto 0}
@media(max-width:900px){.portal-auth{grid-template-columns:1fr}.portal-hero{min-height:240px;padding:28px 28px 34px}.portal-hero-copy{margin-top:28px}.portal-hero h1{font-size:29px;max-width:600px}.portal-hero p{font-size:13px;line-height:1.7}.portal-orbit,.portal-features{display:none}.portal-auth-main{min-height:calc(100vh - 240px);padding:46px 28px}}
@media(max-width:520px){.portal-hero{min-height:222px}.portal-brand strong{font-size:15px}.portal-auth-main{padding:35px 23px}.portal-auth-inner{max-width:100%}.portal-auth h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.portal-auth-primary{transition:none}}

/* P2 v0.7.1 security panel shared between Workspace and Plan */
.security-section{max-width:730px;background:#fff;border:1px solid #e4e9ee;border-radius:8px;padding:26px 28px;margin-top:20px}
.security-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.security-title h3{margin:0 0 4px;font-size:18px;color:#111827}
.security-title p{margin:0}
.security-status{background:#fff2ec;color:#d8552d;border-radius:5px;padding:6px 11px;font-size:12px;white-space:nowrap}
.security-section .field{margin-bottom:16px}.security-section .field input{max-width:575px;width:100%}
.security-section .smallnote{margin-top:17px;line-height:1.8}
@media(max-width:700px){.security-section{padding:20px 17px}.security-title{display:block}.security-status{display:inline-block;margin-top:10px}}


/* P2 v0.7.2 email verification and public recovery */
.portal-text-button{color:#e96139;background:transparent;border:0;padding:0;font:inherit;cursor:pointer;font-weight:750}
.portal-text-button:hover{text-decoration:underline}
.portal-recovery{margin-top:22px;padding:20px;border:1px solid #e4e9ee;border-radius:9px;background:#fff;box-shadow:0 8px 26px rgba(17,24,39,.04)}
.portal-recovery h3{font-size:18px;margin:0 0 10px;color:#111827}
.portal-recovery .sub{color:#687588;font-size:13px;line-height:1.7}
.portal-recovery label{display:block;margin:13px 0 8px;font-size:13px;color:#111827;font-weight:650}
.portal-recovery input{display:block;width:100%;padding:12px;border:1px solid #d5dde6;border-radius:6px;margin:8px 0 13px;font:inherit}
.portal-recovery input:focus{outline:2px solid #ffb496;border-color:#ff6e40}
.portal-recovery button.btn{margin-top:12px;width:100%}

/* P2 v0.7.3 login devices & audit */
.session-entry{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 0;border-bottom:1px solid #edf0f3}
.session-entry:last-child{border-bottom:0}
.session-entry strong{color:#111827;font-size:14px}
.session-entry .smallnote{margin:6px 0 0;line-height:1.5;word-break:break-word}
.session-entry .btn{flex-shrink:0}
@media(max-width:550px){.session-entry{align-items:flex-start}.session-entry .btn{max-width:105px}}

/* OSC Workspace unified identity - GEO EchoTrace login-page visual system. */
.ws-auth{min-height:100dvh;display:grid;grid-template-columns:minmax(370px,43%) minmax(400px,57%);background:#fff;color:#182333;font-family:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
.ws-auth [hidden]{display:none!important}
.ws-auth-form-pane{min-height:100dvh;display:flex;flex-direction:column;padding:44px clamp(30px,5.3vw,100px) 24px;background:#fff;position:relative;z-index:1}
.ws-auth-inner{width:100%;max-width:430px;margin:auto; padding:20px 0}
.ws-auth-logo{display:flex;align-items:center;gap:10px;font-size:17px;letter-spacing:-.4px;color:#121a27;font-weight:650}
.ws-auth-logo strong{font-weight:800}.ws-auth-logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#ff6e40;color:white;font-size:22px}
.ws-auth-head{margin-top:76px;margin-bottom:35px}.ws-auth-head h1{font-size:35px;font-weight:790;letter-spacing:-1px;margin:10px 0 10px;color:#152338}.ws-auth-head p{margin:0;color:#778497;font-size:14px}
.ws-auth-kicker{font-size:11px;letter-spacing:2px;color:#ef704a;font-weight:750}
.ws-auth-form label:not(.ws-auth-policy){display:block;margin:20px 0 10px;color:#3c4857;font-weight:680;font-size:13px}
.ws-auth-form>input,.ws-auth-register input:not([type=checkbox]){box-sizing:border-box;background:#f7f9fb;width:100%;height:50px;border-radius:8px;border:1px solid #e1e7ee;padding:12px 15px;color:#162336;font-size:14px;transition:border-color .15s,box-shadow .15s}
.ws-auth-form>input:focus,.ws-auth-register input:focus{border-color:#ff6e40;outline:0;box-shadow:0 0 0 3px rgba(255,110,64,.14)}
.ws-auth-actions{display:flex;gap:12px;margin-top:28px}
.ws-auth-primary,.ws-auth-secondary{height:46px;flex:1;cursor:pointer;border-radius:8px;font-weight:750;font-size:15px;transition:transform .12s,background .12s}
.ws-auth-primary{background:#ff6e40;color:white;border:1px solid #ff6e40}.ws-auth-primary:hover{background:#ee5b32}.ws-auth-secondary{background:#fff;color:#f06138;border:1px solid #ffb69b}.ws-auth-secondary:hover{background:#fff5f1}
.ws-auth-primary:disabled,.ws-auth-secondary:disabled{opacity:.55;cursor:wait}
.ws-auth-help{text-align:right;margin-top:18px;font-size:12px}
.ws-auth-policy{display:flex;align-items:flex-start;gap:8px;margin:23px 0 0;color:#8993a3;font-size:12px;line-height:1.65;cursor:pointer}.ws-auth-policy input{accent-color:#ff6e40;margin-top:3px}
.ws-auth-error{font-size:12px;color:#be4530;margin-top:12px;min-height:18px}
.ws-auth-shortcuts{font-size:12px;color:#a2aebc;border-top:1px solid #eef1f5;padding-top:21px;margin-top:18px}.ws-auth-shortcuts a{color:#617085;text-decoration:none}.ws-auth-shortcuts a:hover{color:#ff6e40}
.ws-auth-footer{font-size:11px;color:#abb4c0;text-align:center;margin:24px 0 0}
.ws-auth-register{margin-top:30px;padding-top:16px;border-top:1px solid #e8edf3}.ws-auth-register h3{font-size:20px;color:#182333;margin:0 0 8px}.ws-auth-register p{font-size:12px;color:#7c8797;line-height:1.8}.ws-auth-register label:not(.ws-auth-policy){display:block;font-size:12px;font-weight:650;color:#3c4857;margin:14px 0}.ws-auth-register label>input:not([type=checkbox]){display:block;margin-top:8px;height:44px}
.ws-auth-hero{position:relative;display:flex;align-items:flex-end;overflow:hidden;background:radial-gradient(circle at 50% 34%,#233a58 0%,#14253b 38%,#0c192d 83%);color:white;isolation:isolate;padding:72px clamp(42px,6vw,110px)}
.ws-auth-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,15,29,.92) 94%);z-index:-1}
.ws-auth-hero-content{position:relative;max-width:620px;z-index:2}.ws-auth-chip{font-size:10px;color:#ffb89d;letter-spacing:2px;border:1px solid rgba(255,156,120,.25);background:rgba(255,110,64,.08);padding:9px 13px;border-radius:100px;font-weight:750}
.ws-auth-hero h2{font-size:clamp(30px,3.7vw,57px);font-weight:760;line-height:1.28;margin:25px 0;letter-spacing:-1.5px;color:#fff}
.ws-auth-hero-content>p{font-size:14px;line-height:1.95;color:#adbdd2;max-width:470px;margin:0 0 38px}
.ws-auth-features{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.ws-auth-features>div{min-height:106px;display:flex;flex-direction:column;gap:10px;border:1px solid rgba(174,198,223,.18);border-radius:12px;background:rgba(255,255,255,.06);padding:17px 15px;backdrop-filter:blur(10px)}.ws-auth-features strong{font-size:13px;color:#f5f8fc}.ws-auth-features span{font-size:11px;line-height:1.7;color:#9eb0c6}
.ws-auth-particles{position:absolute;inset:0;z-index:-1;opacity:.95;overflow:hidden}
.ws-auth-orb{position:absolute;top:7%;left:15%;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 25% 30%,rgba(111,172,208,.19),transparent 57%),repeating-radial-gradient(ellipse at center,transparent 0,transparent 15px,rgba(123,193,224,.15) 16px,transparent 17px),radial-gradient(circle,rgba(45,126,173,.18),transparent 70%);box-shadow:0 0 140px rgba(68,170,240,.16),inset -25px -30px 80px rgba(42,123,192,.13);transform:rotate(-17deg)}
.ws-orbit{position:absolute;border:1px solid rgba(119,192,226,.22);border-radius:50%;transform:rotate(-28deg)}.ws-orbit-a{top:8%;left:21%;width:55%;height:59%}.ws-orbit-b{top:5%;left:27%;width:40%;height:65%;transform:rotate(34deg)}.ws-orbit-c{top:20%;left:13%;width:73%;height:43%;transform:rotate(-52deg)}
@media(max-width:1050px){.ws-auth{grid-template-columns:47% 53%}.ws-auth-form-pane{padding:32px}.ws-auth-hero{padding:42px}.ws-auth-features{grid-template-columns:1fr}.ws-auth-features>div{min-height:0}}
@media(max-width:750px){.ws-auth{grid-template-columns:1fr}.ws-auth-form-pane{min-height:auto;padding:25px 24px 25px}.ws-auth-inner{margin:5vh auto 0}.ws-auth-head{margin:40px 0 26px}.ws-auth-head h1{font-size:30px}.ws-auth-hero{min-height:275px;padding:34px 24px}.ws-auth-hero h2{font-size:26px}.ws-auth-hero-content>p{margin-bottom:18px}.ws-auth-features{display:none}.ws-auth-orb{top:-26%;left:37%;width:67%}.ws-auth-footer{margin-top:45px}}
@media(prefers-reduced-motion:reduce){.ws-auth-primary,.ws-auth-secondary{transition:none}}
