/* SwordControl Studio — Entry / Auth Production UI v40 */
/* Tokens come from management-ui.css (the design-system foundation); the palette that
   actually renders comes from studio-workspace.css, which remaps them under
   body.mr-management — the same layer dashboard.html and admin.html use. This file
   used to carry its own full copy of the v32 :root block; all 26 values were
   identical to the foundation except --sc-font-mono, so the copy only risked drift.
   Only the two things a page layer legitimately owns are kept here. */
:root{
  color-scheme:dark;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--sc-bg-0);color:var(--sc-text);font-family:var(--sc-font-ui)}
button,input{font:inherit}button{cursor:pointer}
body.sc-auth{min-height:100vh;padding:24px;display:grid;place-items:center;background-color:var(--sc-bg-0)}body.sc-auth{background-image:radial-gradient(circle at 18% 8%,var(--sc-dark-green-tea-bg),transparent 28%),linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
/* Экран входа — одна компактная карточка по центру: маркетинговая половина убрана,
   поэтому двухколоночная сетка больше не нужна. */
.auth-shell{width:min(432px,100%);min-height:0;padding:32px 28px;border:1px solid var(--sc-border-strong);border-radius:16px;background:var(--sc-bg-1);box-shadow:0 28px 90px rgba(0,0,0,.42)}
.auth-product{min-width:0;padding:24px;display:grid;grid-template-rows:auto 1fr auto;border-right:1px solid var(--sc-border);background:linear-gradient(180deg,rgba(255,255,255,.014),transparent 25%),var(--sc-bg-0)}
.auth-product__top{display:flex;align-items:center;gap:11px}.auth-mark{width:36px;height:36px;display:grid;place-items:center;background:var(--sc-text);color:var(--sc-bg-0);font-size:10px;font-weight:900;letter-spacing:.08em}.auth-kicker{font-size:9px;font-weight:800;letter-spacing:.15em;color:var(--sc-text-3)}.auth-product__name{margin-top:3px;font-size:12px;font-weight:700;color:var(--sc-text-2)}
.auth-product__content{align-self:center;max-width:540px;padding:40px 0}.auth-product__eyebrow{color:var(--sc-dark-green-tea);font-size:9px;font-weight:800;letter-spacing:.14em}.auth-product__content h1{max-width:520px;margin:10px 0 0;font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-.038em;font-weight:760}.auth-product__content p{max-width:500px;margin:16px 0 0;color:var(--sc-text-2);font-size:12px;line-height:1.65}
.auth-capabilities{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sc-border);border-bottom:1px solid var(--sc-border)}.auth-capability{min-width:0;padding:11px 9px;border-right:1px solid var(--sc-border)}.auth-capability:last-child{border-right:0}.auth-capability span{display:block;color:var(--sc-text-disabled);font:700 8px var(--sc-font-mono)}.auth-capability b{display:block;margin-top:7px;font-size:10px;letter-spacing:.08em}.auth-capability small{display:block;margin-top:3px;color:var(--sc-text-3);font-size:9px;line-height:1.35}
.auth-system-state{display:flex;gap:6px;flex-wrap:wrap}.auth-system-state__item{min-width:150px;display:grid;grid-template-columns:8px 1fr;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--sc-border);background:var(--sc-surface-0)}.auth-state-dot{width:7px;height:7px;border-radius:50%;background:var(--sc-amber)}.auth-state-dot.is-ok{background:var(--sc-green)}.auth-state-dot.is-error{background:var(--sc-red)}.auth-state-dot.is-neutral{background:var(--sc-text-disabled)}.auth-system-state__item small{display:block;color:var(--sc-text-3);font-size:8px;font-weight:800;letter-spacing:.08em}.auth-system-state__item b{display:block;margin-top:3px;color:var(--sc-text-2);font-size:9px;line-height:1.2}
.auth-workspace{display:block;border-radius:0;background:transparent}.auth-container{width:min(390px,100%);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.logo{margin:0 0 22px;text-align:left}.auth-card-kicker{color:var(--sc-dark-green-tea);font-size:9px;font-weight:800;letter-spacing:.13em}.logo h1{margin:7px 0 0;color:var(--sc-text);font-size:24px;line-height:1.1;font-weight:760;letter-spacing:-.02em}.logo .subtitle{margin-top:5px;color:var(--sc-text-3);font-size:11px}
.tabs{height:36px;display:flex;margin:0 0 18px;border-bottom:1px solid var(--sc-border);gap:2px}.tab{position:relative;flex:1;display:grid;place-items:center;padding:0 8px;border:0;color:var(--sc-text-3);font-size:10px;font-weight:750;cursor:pointer;transition:background var(--sc-fast) var(--sc-ease),color var(--sc-fast) var(--sc-ease)}.tab:hover{color:var(--sc-text);background:var(--sc-surface-0)}.tab.active{color:var(--sc-text);background:var(--sc-surface-0)}.tab.active::after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;background:var(--sc-dark-green-tea)}
.tab-content{display:none}.tab-content.active{display:block}.form-group{margin:0 0 13px}label{display:flex;justify-content:space-between;gap:8px;margin:0 0 6px;color:var(--sc-text-2);font-size:10px;font-weight:650}label span{color:var(--sc-text-3);font-size:9px;font-weight:500}.auth-input-wrap{position:relative}.auth-input-wrap input{padding-right:52px!important}input{width:100%;height:36px;padding:0 10px;border:1px solid var(--sc-border);border-radius:2px;background:var(--sc-bg-0);color:var(--sc-text);font-size:12px;outline:none;transition:border-color var(--sc-fast),box-shadow var(--sc-fast),background var(--sc-fast)}input::placeholder{color:var(--sc-text-disabled)}input:hover{border-color:var(--sc-border-strong)}input:focus{border-color:var(--sc-dark-green-tea);box-shadow:0 0 0 1px var(--sc-dark-green-tea);background:var(--sc-bg-1)}.auth-field-action{position:absolute;right:4px;top:4px;width:44px;height:28px;padding:0;border:0;background:transparent;color:var(--sc-text-3);font:750 8px var(--sc-font-mono);letter-spacing:.04em}.auth-field-action:hover{background:var(--sc-surface-1);color:var(--sc-text)}
.auth-primary{width:100%;height:38px;margin-top:4px;font-size:11px;font-weight:800;letter-spacing:.02em}.auth-primary:active{transform:translateY(1px)}.auth-primary:disabled{opacity:.42;cursor:default}
.error-message,.success-message{display:none;margin-top:9px;padding:8px 9px;border:1px solid;font-size:10px;line-height:1.4}.error-message{color:var(--sc-red);background:var(--sc-red-bg);border-color:var(--sc-red)}.success-message{color:var(--sc-green);background:var(--sc-green-bg);border-color:var(--sc-green)}.code-hint,.password-strength{margin-top:5px;color:var(--sc-text-3);font-size:9px;line-height:1.35}.auth-strength-track{height:2px;margin-top:6px;background:var(--sc-border-subtle);overflow:hidden}.auth-strength-track span{display:block;width:0;height:100%;background:var(--sc-red);transition:width .16s ease,background .16s ease}.auth-footnote{margin-top:14px;padding-top:10px;border-top:1px solid var(--sc-border-subtle);color:var(--sc-text-3);font-size:9px}.auth-footnote span{margin-right:6px;color:var(--sc-green);font-weight:800;letter-spacing:.08em}.auth-card-footer{display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:10px;border-top:1px solid var(--sc-border-subtle);color:var(--sc-text-disabled);font:700 8px var(--sc-font-mono);letter-spacing:.07em}
/* Electron mode UI is created by legacy JS. Override its old inline visual styles. */
#modeSwitchContainer{margin:0 0 16px!important;padding:8px 9px!important;text-align:left!important;border:1px solid var(--sc-border)!important;border-radius:2px!important;background:var(--sc-surface-0)!important}#modeSwitchContainer>label{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0!important}#modeLabel{margin:0!important;color:var(--sc-text-2)!important;font-size:9px!important;font-weight:750!important;letter-spacing:.05em!important;text-transform:uppercase!important}#modeSwitchContainer label>div{width:30px!important;height:16px!important}#modeSwitchContainer label>div span:first-of-type{border-radius:0!important;background:var(--sc-border-strong)!important}#modeSwitchContainer label>div span:last-of-type{width:10px!important;height:10px!important;left:3px!important;bottom:3px!important;border-radius:0!important;background:var(--sc-text)!important}.modeSwitch:checked + span,#modeSwitch:checked + span{background:var(--sc-dark-green-tea)!important}#modeSwitch:checked + span + span{transform:translateX(14px)!important}#serverInfo{margin-top:7px!important;color:var(--sc-text-3)!important;font-size:9px!important;line-height:1.4!important}
#serverDiscovery{margin:0 0 16px!important;padding:9px!important;border:1px solid var(--sc-border)!important;border-radius:2px!important;background:var(--sc-bg-0)!important}#serverDiscovery>div{margin:0!important;padding:0!important;background:transparent!important;border-radius:0!important}#serverDiscovery h3{margin:0 0 8px!important;color:var(--sc-text-2)!important;font-size:10px!important;letter-spacing:.04em!important;text-transform:uppercase!important}#serverList p{color:var(--sc-text-3)!important;font-size:9px!important}#serverList>div{min-height:32px!important;margin:4px 0!important;padding:6px 7px!important;border:1px solid var(--sc-border)!important;border-radius:1px!important;background:var(--sc-surface-0)!important;color:var(--sc-text-2)!important;font-size:9px!important}#serverDiscovery button{width:auto!important;min-height:28px!important;padding:0 8px!important;border:1px solid var(--sc-border)!important;border-radius:1px!important;background:var(--sc-surface-2)!important;color:var(--sc-text)!important;font-size:9px!important;font-weight:700!important}#serverDiscovery input{width:100%!important;margin:5px 0!important}#serverDiscovery #connectManualBtn{margin-left:0!important}
@media(max-width:900px){body.sc-auth{padding:12px;place-items:start center}.auth-shell{min-height:0;padding:26px 22px}.auth-product{min-height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--sc-border)}.auth-product__content{padding:28px 0 20px}.auth-product__content h1{font-size:34px;max-width:580px}.auth-capabilities{margin-top:22px}.auth-system-state{margin-top:10px}.auth-workspace{padding:28px 18px}}
@media(max-width:520px){body.sc-auth{padding:8px}.auth-shell{padding:22px 16px}.auth-product{padding:14px}.auth-product__content{padding:22px 0 14px}.auth-product__content h1{font-size:27px}.auth-product__content p{font-size:11px}.auth-capabilities{grid-template-columns:1fr}.auth-capability{border-right:0;border-bottom:1px solid var(--sc-border)}.auth-capability:last-child{border-bottom:0}.auth-system-state{display:grid;grid-template-columns:1fr 1fr}.auth-system-state__item{min-width:0}.auth-workspace{padding:24px 14px}.logo h1{font-size:22px}}
