.auth-shell{background:#f5f7fb;display:flex;flex-direction:column}.auth-nav{height:64px;background:#01283c;color:#fff;padding:0 16px}.brand{display:flex;align-items:baseline;color:#fff;text-decoration:none;font-weight:800}.brand__primary{font-size:20px}.brand__secondary{font-size:20px;opacity:.9}.brand__section{opacity:.85;font-weight:600}.auth-links .link{color:#fff;opacity:.9;text-decoration:none}.auth-links .link:hover{opacity:1;text-decoration:underline}.auth-main{flex:1;display:grid;place-items:center;padding:24px 16px}.card{width:100%;max-width:420px;background:#fff;border:1px solid #e8eaf0;border-radius:12px;padding:20px;box-shadow:0 10px 30px rgba(2,6,23,.06)}.card.alt{margin-top:16px;text-align:center}.card__title{margin:6px 0 16px;font-weight:800;font-size:22px;color:#0f172a}.form-row{margin-bottom:14px}.label{display:block;font-size:13px;color:#374151;margin-bottom:6px}.input{width:100%;height:42px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px}.input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.15)}.input-group{position:relative;display:flex;align-items:stretch}.input--with-btn-auth{padding-right:76px}.ghost-btn-auth{position:absolute;right:6px;top:6px;height:30px;padding:0 10px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;cursor:pointer;font-size:12px}.ghost-btn-auth:hover{background:#f9fafb}.form-actions{margin-top:12px}.btn-auth{height:40px;border:0;border-radius:8px;cursor:pointer;font-weight:700}.btn-auth-block{width:100%}.btn-auth-primary{background:#2563eb;color:#fff}.btn-auth-primary:disabled{opacity:.6;cursor:not-allowed}.btn-auth-secondary{background:#f3f4f6;color:#111827}.btn-auth-secondary:hover{background:#e5e7eb}.form-meta{margin-top:10px;text-align:center}.form-meta .link{color:#2563eb;text-decoration:none}.form-meta .link:hover{text-decoration:underline}.alert{padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:12px}.alert--danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.auth-overlay{position:fixed;inset:0;background:hsla(0,0%,100%,.6);display:grid;place-items:center;z-index:99}.auth-shell{min-height:100vh;background:#f3f4f6}.auth-nav{display:flex;align-items:center;justify-content:space-between;padding:14px 18px}.lsc-auth-topbar-links{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.lsc-auth-sep{color:#9ca3af}.lsc-auth-wrap{display:flex;justify-content:center;padding:18px 12px 40px}.lsc-auth-card{width:100%;max-width:980px}.lsc-auth-steps{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.lsc-auth-step{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid #e5e7eb;background:#f9fafb;font-size:12px;color:#4b5563;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lsc-auth-step.is-active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;font-weight:600}.lsc-auth-step.is-done{border-color:#bbf7d0;background:#ecfdf5;color:#166534;font-weight:600}.lsc-auth-title{font-size:18px;font-weight:700;color:#111827;margin-bottom:3px}.lsc-auth-sub{font-size:13px;color:#6b7280}.lsc-auth-inline{display:flex;gap:10px;align-items:center}.lsc-auth-inline .lsc-btn{flex-shrink:0}.lsc-auth-otp{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px}.lsc-otp-input{width:42px!important;flex:0 0 42px!important;text-align:center;font-size:16px;font-weight:700;padding:8px 0!important}.lsc-auth-actions{margin-top:14px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.lsc-auth-overlay{position:fixed;inset:0;background:rgba(15,23,42,.32);display:flex;align-items:center;justify-content:center;z-index:9999}@media (max-width:640px){.lsc-auth-inline{flex-direction:column;align-items:stretch}.lsc-otp-input{width:40px!important;flex:0 0 40px!important}.lsc-auth-card{max-width:100%}}.bsw-shell{min-height:100vh;background:#f3f4f6;padding:32px 16px 64px}.bsw-container{max-width:820px;margin:0 auto}.bsw-brandbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.bsw-brand{font-size:20px;font-weight:800;color:#111827;text-decoration:none}.bsw-brand span{color:#f59e0b}.bsw-signout{background:none;border:none;color:#6b7280;font-size:13px;cursor:pointer}.bsw-head{margin-bottom:20px}.bsw-head h1{font-size:22px;font-weight:800;color:#111827;margin:0 0 4px}.bsw-head p{color:#6b7280;font-size:14px;margin:0}.bsw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.bsw-steps{display:flex;gap:4px;margin-bottom:20px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.bsw-step{flex:1 0 auto;min-width:92px;display:flex;flex-direction:column;gap:6px;background:none;border:none;cursor:default;text-align:left;padding:0}.bsw-step.clickable{cursor:pointer}.bsw-step:disabled{cursor:default}.bsw-step:focus-visible{outline:2px solid #4f46e5;outline-offset:3px;border-radius:4px}.bsw-step-bar{height:4px;border-radius:4px;background:#e5e7eb;transition:background .15s}.bsw-step.active .bsw-step-bar{background:#4f46e5}.bsw-step.done .bsw-step-bar{background:#22c55e}.bsw-step-label{font-size:11px;font-weight:600;color:#9ca3af;white-space:nowrap}.bsw-step-num{font-variant-numeric:tabular-nums}.bsw-step.active .bsw-step-label{color:#4f46e5}.bsw-step.done .bsw-step-label{color:#16a34a}.bsw-step.done .bsw-step-label:after{content:" ✓";font-weight:700}.bsw-card{overflow:visible}.bsw-step-title{margin:2px 0 0;font-size:17px}.bsw-alert{margin-bottom:16px}.bsw-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.bsw-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.bsw-row-gap{margin-top:14px}.bsw-span-full{grid-column:1/-1}@media (max-width:860px){.bsw-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.bsw-grid-2,.bsw-grid-3{grid-template-columns:minmax(0,1fr)}}.bsw-req{color:#dc2626;font-weight:700}.bsw-field-invalid input,.bsw-field-invalid select,.bsw-field-invalid textarea{border-color:#f87171}.bsw-field-invalid input:focus,.bsw-field-invalid select:focus,.bsw-field-invalid textarea:focus{border-color:#dc2626;box-shadow:0 0 0 1px rgba(220,38,38,.18)}.bsw-group-label{font-size:13px;font-weight:500;color:#374151}.bsw-note{margin:16px 0 0;font-size:12px;color:#6b7280;line-height:1.55}.bsw-note-top{margin:0 0 14px}.bsw-note-inline{display:block;margin-top:8px;font-size:11px;color:#6b7280;line-height:1.5}.bsw-url-input{display:flex;align-items:stretch;border:1px solid #d1d5db;border-radius:8px;background:#fff;overflow:hidden}.bsw-url-input:focus-within{border-color:#2563eb;box-shadow:0 0 0 1px rgba(37,99,235,.15)}.bsw-field-invalid .bsw-url-input{border-color:#f87171}.bsw-field-invalid .bsw-url-input:focus-within{border-color:#dc2626;box-shadow:0 0 0 1px rgba(220,38,38,.18)}.bsw-url-prefix{display:flex;align-items:center;padding:0 2px 0 10px;font-size:12px;color:#9ca3af;background:#f9fafb;border-right:1px solid #eef0f2;white-space:nowrap;max-width:46%;overflow:hidden;text-overflow:ellipsis}.bsw-url-input input{flex:1 1 auto;min-width:0;border:none!important;border-radius:0!important;box-shadow:none!important}.bsw-url-status{font-size:11px;min-height:15px;margin-top:3px;color:#6b7280}.bsw-url-status.checking{color:#6b7280}.bsw-url-status.available{color:#16a34a;font-weight:600}.bsw-url-status.taken{color:#b91c1c;font-weight:600}.bsw-url-status.warn{color:#b45309}.bsw-url-preview{font-size:11px;color:#6b7280;margin-top:2px;word-break:break-all}.bsw-url-preview strong{color:#111827}.bsw-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.bsw-radio-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.bsw-choice{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;font-size:13px;background:#fff}.bsw-choice:hover{border-color:#c7d2fe}.bsw-choice:focus-within{outline:2px solid #4f46e5;outline-offset:2px}.bsw-choice.selected{border-color:#4f46e5;box-shadow:inset 0 0 0 1px #4f46e5;background:#eef2ff}.bsw-choice-block{display:flex;margin-bottom:4px}.bsw-tag{margin-left:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#4f46e5;background:#e0e7ff;border-radius:999px;padding:2px 6px}.bsw-summary{margin-top:14px;padding:14px 16px;border:1px solid #eef0f2;border-radius:10px;background:#f9fafb}.bsw-summary-title{font-size:12px;font-weight:700;color:#374151;margin-bottom:6px}.bsw-summary-line{font-size:13px;color:#4b5563;line-height:1.55}.bsw-doc-list{list-style:none;margin:0;padding:0}.bsw-doc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #f0f1f3}.bsw-doc-row:last-child{border-bottom:none}.bsw-doc-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.bsw-doc-name{font-size:13px;font-weight:600;color:#111827;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bsw-doc-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 7px}.bsw-doc-badge.req{color:#b91c1c;background:#fee2e2}.bsw-doc-badge.rec{color:#b45309;background:#fef3c7}.bsw-doc-badge.opt{color:#6b7280;background:#f3f4f6}.bsw-doc-hint{font-size:12px;color:#9ca3af}.bsw-doc-status{font-size:12px;font-weight:600;color:#16a34a;overflow-wrap:anywhere}.bsw-doc-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.bsw-upload-btn{cursor:pointer;margin:0}.bsw-upload-btn:focus-within{outline:2px solid #4f46e5;outline-offset:2px}@media (max-width:600px){.bsw-doc-row{align-items:flex-start;flex-direction:column}.bsw-doc-actions{width:100%}}.bsw-review-group{margin-bottom:18px}.bsw-review-group h3{font-size:13px;font-weight:700;color:#111827;margin:0 0 8px;display:flex;justify-content:space-between}.bsw-review-edit{font-size:12px;color:#4f46e5;background:none;border:none;cursor:pointer}.bsw-review-edit:hover{text-decoration:underline}.bsw-review-edit:focus-visible{outline:2px solid #4f46e5;outline-offset:2px;border-radius:3px}.bsw-kv{display:grid;grid-template-columns:160px 1fr;gap:4px 12px;font-size:13px}.bsw-kv dt{color:#6b7280}.bsw-kv dd{color:#111827;margin:0;overflow-wrap:anywhere}.bsw-kv-empty{color:#9ca3af}@media (max-width:520px){.bsw-kv{grid-template-columns:minmax(0,1fr);gap:0 0}.bsw-kv dt{margin-top:8px;font-size:11px}}.bsw-agreements{margin-top:20px;border-top:1px solid #eef0f2;padding-top:16px}.bsw-agree{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;line-height:1.5}.bsw-agree:last-child{margin-bottom:0}.bsw-agree input{margin-top:1px;flex-shrink:0}.bsw-prep{max-width:560px;margin:8vh auto 0}.bsw-prep-body{text-align:center;padding:44px 28px}.bsw-spinner{width:40px;height:40px;margin:0 auto;border:3px solid #e5e7eb;border-top-color:#f59e0b;border-radius:50%;animation:bsw-spin .8s linear infinite}@keyframes bsw-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.bsw-spinner{animation-duration:2s}}.bsw-prep-title{margin:18px 0 6px;font-size:18px;color:#111827}.bsw-prep-sub{color:#6b7280;margin:0;font-size:14px}.bsw-fault{max-width:560px;margin:0 auto;padding:32px 28px}.bsw-fault-title{margin:0 0 8px;font-size:18px;color:#111827}.bsw-fault-msg{color:#6b7280;margin:0;font-size:14px}.bsw-fault-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.bsw-fault-ref{color:#9ca3af;font-size:12px;margin:16px 0 0;font-family:ui-monospace,monospace}.bsw-done{text-align:center;padding:44px 28px}.bsw-done-mark{font-size:44px;color:#16a34a;line-height:1}.bsw-done-actions{margin-top:22px}.auth-modes{display:flex;gap:6px;padding:4px;background:#f3f4f6;border:1px solid #e8eaf0;border-radius:10px;margin-bottom:16px}.auth-mode{flex:1 1 0;min-width:0;padding:9px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#4b5563;font-size:12.5px;font-weight:600;line-height:1.25;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.auth-mode:hover:not(:disabled){color:#111827}.auth-mode.is-active{background:#fff;border-color:#dbe1ea;color:#1d4ed8;box-shadow:0 1px 2px rgba(2,6,23,.06)}.auth-mode:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.auth-mode:disabled{cursor:not-allowed;opacity:.7}@media (max-width:400px){.auth-modes{flex-direction:column;gap:4px}.auth-mode{width:100%;text-align:center}}.auth-mode-head{margin-bottom:14px}.auth-mode-title{font-size:14px;font-weight:700;color:#0f172a}.auth-mode-sub{margin-top:2px;font-size:12.5px;color:#6b7280}.auth-card-wide{max-width:520px}.ws-list{display:flex;flex-direction:column;gap:10px;margin:4px 0 16px}.ws-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;text-align:left;cursor:pointer;transition:border-color .12s,box-shadow .12s}.ws-option:hover:not(:disabled){border-color:#c7d2fe}.ws-option.is-selected{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb;background:#eff6ff}.ws-option:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.ws-option:disabled{cursor:not-allowed;background:#f9fafb}.ws-name{font-size:14px;font-weight:700;color:#0f172a}.ws-role{margin-top:2px;font-size:12.5px;color:#6b7280}.ws-blocked-reason{margin-top:4px;font-size:12px;color:#b45309}.ws-badge{flex-shrink:0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:999px;background:#eef2ff;color:#4338ca}.ws-badge--blocked{background:#fef3c7;color:#b45309}.ws-meta{min-width:0}.auth-note{font-size:12.5px;color:#6b7280;line-height:1.55}.auth-actions-row{display:flex;gap:10px;margin-top:4px}.auth-actions-row .btn-auth{flex:1 1 0}.ws-group-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;margin:4px 0 6px}.ws-list+.ws-group-label{margin-top:16px}