/* 跨越机械品牌统一层。参考现有 work 工作台的色板、Logo、登录信息架构。
   本文件仅影响独立文件传输原型。 */
:root {
  --bg:#f7f8fa;
  --paper:#fff;
  --paper-2:#f2f4f6;
  --paper-3:#edf0f3;
  --ink:#20232a;
  --ink-strong:#20232a;
  --muted:#66707d;
  --muted-2:#8b95a2;
  --border:#e2e5e9;
  --line:#e9ecf0;
  --blue:#45658b;
  --blue-deep:#324d6a;
  --blue-light:#edf2f7;
  --blue-border:#d7e0e9;
  --shadow:none;
  --shadow-xl:0 16px 40px rgb(20 27 40 / 12%);
  --radius:10px;
  --success:#168664;
  font-family:"Segoe UI Variable","Segoe UI","Microsoft YaHei UI","PingFang SC",sans-serif;
}
:root[data-theme="dark"]{
  --bg:#151719;
  --paper:#1c1f22;
  --paper-2:#24282d;
  --paper-3:#2a2e33;
  --ink:#e9ebef;
  --ink-strong:#e9ebef;
  --muted:#a4acb8;
  --muted-2:#8d99a6;
  --border:#30353b;
  --line:#2d3238;
  --blue:#b1c2d8;
  --blue-deep:#d0dcea;
  --blue-light:#303944;
  --blue-border:#4a596c;
  --shadow:none;
  --success:#6bd4a7;
}
.brand {gap:10px}
.brand-symbol {
  background:transparent;
  border-radius:0;
  box-shadow:none;
  width:40px;
  height:40px;
}
.brand-symbol img {width:40px;height:40px;display:block;object-fit:contain}
.brand-name {font-size:17px;letter-spacing:.07em;font-weight:650}
.brand-caption {font-size:11px;letter-spacing:.055em}
.nav-link {border-radius:7px;font-weight:500}
.nav-link.active {color:var(--ink-strong);font-weight:650;background:var(--paper-2)}
.nav-link .nav-count {background:var(--paper);color:var(--ink-strong)}
.topbar {height:74px}
h1 {font-weight:650;letter-spacing:-.03em}
h2 {font-weight:620;letter-spacing:-.01em}
.card {border-radius:10px}
.card-pad {padding:25px}
.btn {border-radius:6px}
.btn-primary {background:#272a30;color:#fff;box-shadow:none}
.btn-primary:not(:disabled):hover {background:#3b4149;box-shadow:none}
:root[data-theme="dark"] .btn-primary {background:#e9ebef;color:#1c1f22}
:root[data-theme="dark"] .btn-primary:not(:disabled):hover {background:#cfd4db}
.btn-outline {border-radius:6px}
.btn-quiet {border-radius:6px}
.pill-tabs {border-radius:7px}
.pill-tabs button {border-radius:5px}
.dropzone {background:var(--paper-2);border-color:var(--border);border-radius:9px}
.dropzone:hover,.dropzone.dragging {background:var(--blue-light);border-color:var(--blue)}
.dropzone::before {display:none}
.dropzone-icon {background:var(--paper);border:1px solid var(--border);box-shadow:none;color:var(--blue)}
.round-icon {border-radius:8px}
.preview-alert {background:var(--paper-2);border-color:var(--border);color:var(--muted)}
.preview-alert svg {color:var(--muted)}
.file-icon.pdf {color:#ba5950;background:#faeeec}
.file-icon.cad {color:#58739b;background:#edf2f7}
.file-icon.sheet {color:#38785e;background:#edf5ef}
.file-icon.zip {color:#826eae;background:#f2eff8}
.account-menu-identity {padding:10px 11px 14px;border-bottom:1px solid var(--border);font-size:12px;font-weight:620}
.account-menu-identity small {display:block;color:var(--muted);font-size:11px;margin-top:6px;font-weight:400}
.sidebar-help::before {display:none}
.sidebar-help {background:var(--paper-2);border:1px solid var(--border)}
.breadcrumb strong {font-weight:600}
.person-card {border-radius:8px}
.person-card.selected {background:var(--blue-light);border-color:var(--blue)}
.kbd {border-radius:4px}
.file-table th {background:var(--paper-2)}
/* Login form follows the current work application: restrained header, centered
   simple form, labels and 48px inputs, charcoal submit, branded gold symbol. */
.access-page {min-height:100svh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink)}
.access-header {
  height:88px;
  flex-shrink:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 clamp(28px,4vw,72px);
}
.kuayue-identity {display:flex;align-items:center;gap:12px}
.kuayue-identity img {width:44px;height:44px;object-fit:contain}
.kuayue-identity strong {font-size:18px;font-weight:650;letter-spacing:.07em;white-space:nowrap}
.kuayue-identity span {font-size:13px;color:var(--muted);border-left:1px solid var(--border);padding-left:15px;margin-left:3px;letter-spacing:.025em}
.appearance-button {width:40px;height:40px;border:1px solid var(--border);border-radius:6px;background:var(--paper);color:var(--muted);display:grid;place-items:center}
.appearance-button:hover {background:var(--paper-2)}
.access-main {flex:1;width:100%;padding:42px 24px 68px;display:grid;place-items:center}
.access-card {width:min(400px,100%);min-width:0}
.access-eyebrow {font-size:12px;color:var(--muted);margin:0 0 16px;line-height:1.5}
.access-card h1 {font-size:29px;font-weight:620;letter-spacing:-.025em;line-height:1.3;margin:0 0 13px}
.access-description {font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 34px}
.access-card form {display:grid;grid-template-columns:minmax(0,1fr)}
.access-card label {font-size:13px;margin:0 0 9px;color:var(--ink)}
.access-card input {
  width:100%;height:48px;padding:0 13px;
  border:1px solid #d7dce3;background:var(--paper);color:var(--ink);
  font-size:15px;border-radius:6px;outline:0;
  margin:0 0 24px;
}
:root[data-theme="dark"] .access-card input {border-color:#454c55}
.access-card input:focus-visible {outline:2px solid #6686ad;outline-offset:2px}
.access-card input::placeholder {color:var(--muted-2)}
.access-password {display:flex;align-items:center;border:1px solid #d7dce3;border-radius:6px;background:var(--paper);margin-bottom:18px;overflow:hidden}
:root[data-theme="dark"] .access-password {border-color:#454c55}
.access-password:focus-within {outline:2px solid #6686ad;outline-offset:2px}
.access-password input {margin:0;border:0;flex:1;min-width:0;background:transparent;border-radius:0;outline:none!important}
.password-toggle {border:0;background:none;color:var(--muted);font-size:12px;padding:0 14px;height:46px;white-space:nowrap}
.password-toggle:hover {color:var(--ink)}
.access-error {color:#b42334;background:#fff1f1;padding:12px 14px;border-radius:6px;font-size:12px;margin:0 0 14px;line-height:1.6}
:root[data-theme="dark"] .access-error {background:#3b2829;color:#faa5a5}
.access-submit {width:100%;height:48px;border:0;border-radius:6px;background:#272a30;color:#fff;font-size:14px;font-weight:650;margin-top:8px}
.access-submit:hover {background:#3b4149}
:root[data-theme="dark"] .access-submit {background:#e9ebef;color:#1c1f22}
.access-demo {margin-top:31px;padding:16px 17px;border:1px solid var(--border);background:var(--paper-2);border-radius:8px}
.access-demo strong {font-size:12px;color:var(--ink);font-weight:650}
.access-demo p {font-size:11.5px;color:var(--muted);line-height:1.75;margin:8px 0 0}
.access-demo code {color:var(--ink);font-family:"Cascadia Code",Consolas,monospace;font-size:11.5px;background:var(--paper);padding:2px 4px;border:1px solid var(--border);border-radius:3px}
.access-footer {padding:0 24px 26px;text-align:center;font-size:12px;color:var(--muted)}
.access-footer span {margin:0 8px}
@media(max-height:760px) and (min-width:761px) {
 .access-header {height:72px}
 .access-main {padding-top:18px;padding-bottom:30px}
 .access-description {margin-bottom:20px}
 .access-demo {margin-top:18px}
}
@media(max-width:760px){
 .access-header{height:76px;padding:0 20px}
 .access-main{place-items:start center;padding:38px 24px 42px}
 .kuayue-identity img{width:36px;height:36px}
 .kuayue-identity strong{font-size:16px}
 .kuayue-identity span{font-size:11px;padding-left:10px}
 .access-card h1{font-size:26px}
 .access-card input{font-size:16px}
 .brand-symbol img {width:33px;height:33px}
}
@media(max-width:380px){
 .kuayue-identity{gap:7px}
 .access-header{padding:0 16px}
 .kuayue-identity span{margin-left:0;padding-left:8px}
 .access-main{padding-left:20px;padding-right:20px}
 .access-footer{font-size:11px}
}
