/* Suvilabs — editorial entrance. Scoped tokens preserve the workspace theme. */
.auth-editorial {
  --ink:#242331; --ink-2:#62616c; --ink-3:#777580; --surface:#fff; --surface-2:#f7f6f2;
  --line:#deddd8; --line-soft:#e9e7e1; --accent-ink:#725528; --danger:#ac3432;
  --accent-soft:#eee5d3; --ink-on-accent:#fff; color-scheme:light;
  background:#f8f7f3; color:var(--ink); padding:18px; gap:20px;
  grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); min-height:100svh;
}
.auth-story { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; min-height:730px; padding:36px 40px 28px; border-radius:24px; color:#f7f3eb; background:#19182a; }
.auth-story::before { content:""; position:absolute; z-index:-1; width:620px; height:620px; border-radius:50%; right:-280px; top:100px; background:radial-gradient(circle,#39314666,transparent 68%); pointer-events:none; }
.auth-story::after { content:""; position:absolute; z-index:-1; inset:0; background-image:var(--motif); background-size:44px 44px; opacity:.18; mask-image:linear-gradient(135deg,transparent 20%,#000); pointer-events:none; }
.auth-story-top,.auth-story-bottom,.auth-entry-header,.auth-entry-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.auth-editorial .brand { text-decoration:none; display:inline-flex; align-items:center; gap:11px; color:inherit; min-width:0; }
.auth-editorial .brand-name { font-size:1.15rem; font-weight:700; letter-spacing:-.04em; overflow-wrap:anywhere; }
.auth-editorial .brand img { height:32px; max-width:120px; object-fit:contain; }
.auth-brand-symbol { width:34px; height:34px; display:grid; place-items:center; color:#e2c48c; }
.auth-brand-symbol .ic { width:32px; height:32px; }
.auth-edition { font-size:9px; letter-spacing:.16em; font-weight:600; opacity:.66; flex:none; }
.auth-story-content { width:100%; max-width:620px; margin:56px auto 32px; }
.auth-eyebrow { margin:0 0 22px; font-size:10px; font-weight:600; letter-spacing:.2em; color:#d9bf94; }
.auth-story h2 { margin:0; font-family:Georgia,'Times New Roman',serif; font-size:clamp(32px,3.8vw,58px); font-weight:400; line-height:1.14; letter-spacing:-.045em; }
.auth-story h2 em { color:#dfc295; font-weight:400; }
.auth-story-description { font-size:13px; max-width:39ch; line-height:1.8; margin:22px 0 0; color:#bcb8ca; }
.auth-story-bottom { justify-content:flex-start; gap:25px; color:#c6c1d1; font-size:10px; border-top:1px solid #ffffff15; padding-top:24px; flex-wrap:wrap; }
.auth-story-bottom span { display:flex; align-items:center; gap:7px; }
.auth-story-bottom .ic { color:#d5ba8b; }
.auth-illustration { position:relative; isolation:isolate; padding:42px 0 22px; margin-top:22px; }
.auth-orbit { position:absolute; z-index:-1; left:50%; top:56%; width:450px; height:450px; transform:translate(-50%,-50%); border:1px solid #cfb08016; border-radius:50%; }
.orbit-two { width:340px; height:340px; border-style:dashed; opacity:.6; }
.auth-demo-label { display:flex; align-items:center; gap:8px; color:#b9b0c6; font-size:8px; letter-spacing:.18em; margin:0 0 12px 14px; }
.auth-demo-label span { height:5px; width:5px; background:#d7bc8b; border-radius:50%; }
.auth-prompt-card { display:flex; align-items:center; gap:12px; padding:16px 18px; margin:0 8px; border:1px solid #ffffff20; border-radius:14px; background:#2b283c; box-shadow:0 10px 30px #08071924; position:relative; z-index:3; }
.auth-prompt-card small { color:#bcb5ce; font-size:9px; }
.auth-prompt-card p { margin:2px 0 0; font-size:12px; font-weight:500; }
.auth-prompt-card .mascot-svg { flex:none; }
.auth-prompt-mark { display:grid; place-items:center; width:40px; height:40px; color:#dfc295; }
.auth-prompt-arrow { display:grid; place-items:center; margin-left:auto; width:30px; height:30px; border:1px solid #ffffff20; border-radius:50%; color:#e1c896; flex:none; }
.auth-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:24px 4px 0; gap:10px; perspective:900px; }
.auth-result { padding:18px 14px 12px; min-height:224px; border-radius:12px; display:flex; flex-direction:column; box-shadow:0 15px 30px #08071930; animation:auth-card-arrive .8s var(--ease-out) both; }
.result-document { background:#f5f0e6; color:#363238; transform:rotate(-6deg) translateY(10px); }
.result-slides { background:#e8dac2; color:#39312a; transform:translateY(-2px); animation-delay:90ms; }
.result-code { background:#cfd9d4; color:#293b35; transform:rotate(6deg) translateY(10px); animation-delay:180ms; }
.auth-file-icon { width:28px; height:28px; display:grid; place-items:center; border:1px solid #00000020; border-radius:7px; margin-bottom:14px; }
.auth-file-icon .ic { width:16px; height:16px; }
.auth-file-type { font-size:7px; letter-spacing:.13em; font-weight:700; opacity:.65; }
.auth-result strong { font-size:12px; line-height:1.45; font-weight:600; margin:7px 0 14px; }
.result-document > i { display:block; height:4px; width:90%; background:#57505c20; margin:3px 0; border-radius:3px; }
.result-document > i:last-of-type { width:65%; }
.auth-file-bottom { font-size:8px; display:flex; align-items:center; justify-content:space-between; padding-top:12px; margin-top:auto; gap:4px; }
.auth-chart { display:flex; align-items:flex-end; gap:5px; height:36px; margin-bottom:8px; }
.auth-chart i { flex:1; background:#897251; height:40%; border-radius:3px 3px 0 0; }
.auth-chart i:nth-child(2) { height:65%; }.auth-chart i:nth-child(3){height:55%}.auth-chart i:nth-child(4){height:80%}.auth-chart i:nth-child(5){height:100%;background:#3b3930}
.auth-code-lines { font-family:var(--mono); font-size:7px; display:flex; flex-direction:column; gap:4px; margin:0 0 8px; }
.auth-code-lines b { font-weight:400; color:#557362; }
.auth-entry { min-width:0; display:flex; flex-direction:column; padding:20px 28px 10px; }
.auth-entry-header { min-height:36px; justify-content:flex-end; }
.auth-switch { display:flex; gap:4px; background:#efeee9; padding:4px; border:1px solid #e4e2da; border-radius:999px; }
.auth-switch a { display:block; padding:6px 21px; font-size:11px; color:#716d74; text-decoration:none; border-radius:999px; font-weight:600; }
.auth-switch a[aria-current="page"] { background:#fff; color:#242331; box-shadow:0 1px 5px #211e3210; }
.auth-mobile-brand { display:none; }
.auth-editorial .auth-form { padding:56px 10px; flex:1; }
.auth-editorial .auth-card { width:min(390px,100%); gap:20px; animation:rise .5s var(--ease-out) both; }
.auth-card-mark { display:grid; place-items:center; width:48px; height:48px; margin-bottom:3px; border:1px solid #ddd6c7; background:#f1ebdf; color:#897049; border-radius:14px; }
.auth-card-mark .ic { width:25px; height:25px; }
.auth-editorial .auth-card h1 { font-size:clamp(25px,2.35vw,35px); letter-spacing:-.055em; font-weight:600; line-height:1.23; }
.auth-editorial .auth-card .sub { font-size:12px; line-height:1.8; margin:-9px 0 8px; }
.auth-editorial .auth-card form { gap:19px!important; }
.auth-editorial .field label { font-size:11px; font-weight:600; }
.auth-editorial .input { background:#fff; border:1px solid #dcdad4; border-radius:10px; min-height:48px; box-shadow:0 1px 2px #22222203; font-size:13px; padding:12px 14px; }
.auth-editorial .input:focus { border-color:#9a8057; box-shadow:0 0 0 3px #b7996630; }
.auth-editorial .input::placeholder { color:#98939b; opacity:1; }
.auth-editorial .btn { min-height:46px; font-size:12px; font-weight:600; border-radius:10px; gap:10px; }
.auth-editorial .btn.primary { background:#292638; border:1px solid #292638; color:#fff; box-shadow:0 5px 12px #1d183415; }
.auth-editorial .btn.primary:hover:not(:disabled) { background:#403850; border-color:#403850; transform:translateY(-1px); }
.auth-editorial .btn.outline { background:transparent; border-color:#dcdad4; color:#37323f; }
.auth-editorial .btn.outline:hover:not(:disabled) { background:#efeee9; }
.auth-editorial a:not(.brand):not(.btn):not(.auth-switch a) { color:#755a31; }
.auth-editorial .auth-card > .muted { font-size:11px; color:#6e6975; }
.auth-editorial .or-line { font-size:10px; margin:-3px 0; color:#77717d; }
.auth-editorial .notice { font-size:12px; }
.auth-editorial .notice.danger { background:#fff0ef; border-color:#e9bcb8; color:#982d2a; }
.auth-editorial .notice.ok { background:#edf6ef; color:#27643f; border-color:#c1d9c8; }
.auth-editorial .field-help,.auth-editorial .help { font-size:10px; color:#77717d; }
.auth-password { position:relative; }
.auth-password .input { padding-right:108px; width:100%; }
.auth-password-toggle { position:absolute; right:5px; top:5px; bottom:5px; display:flex; align-items:center; gap:5px; padding:0 8px; border:0; border-radius:6px; color:#716a79; background:transparent; font-size:9px; }
.auth-password-toggle:hover { background:#f2efea; }
.auth-entry-footer { font-size:9px; color:#837d87; margin:8px 0; }
.auth-editorial :focus-visible { outline:2px solid #8b6a3b; outline-offset:3px; }
@keyframes auth-card-arrive { from { opacity:0; translate:0 15px; } to { opacity:1; translate:0 0; } }
@media(min-width:1600px){.auth-editorial{padding:28px;gap:30px}.auth-story{padding:44px 64px}.auth-entry{padding:24px 60px}.auth-story-content{margin-top:70px;margin-bottom:70px}}
@media(max-width:1100px) and (min-width:761px){.auth-story{padding:28px 24px}.auth-entry{padding:14px 16px}.auth-results{gap:7px}.auth-result{padding:14px 10px;min-height:210px}.auth-story-bottom{gap:12px;font-size:9px}.auth-prompt-card{padding:13px 10px;gap:7px}.auth-prompt-card p{font-size:10px}.auth-edition{font-size:8px}}
@media(max-width:760px){
 .auth-editorial{display:block;padding:0;min-height:100svh}.auth-story{display:none}
 .auth-entry{padding:22px 24px 16px;min-height:100svh}.auth-entry-header{justify-content:space-between;gap:8px}.auth-mobile-brand{display:block}.auth-editorial .brand-name{font-size:1rem}.auth-editorial .brand{gap:6px}.auth-brand-symbol{width:26px;height:26px;color:#957442}.auth-brand-symbol .ic{width:27px;height:27px}
 .auth-switch a{padding:5px 13px;font-size:10px}.auth-editorial .auth-form{padding:54px 0 40px;align-items:center}.auth-editorial .auth-card{width:min(400px,100%);gap:20px}.auth-editorial .auth-card h1{font-size:31px}.auth-editorial .input{font-size:16px;min-height:50px}.auth-editorial .field label{font-size:12px}.auth-editorial .btn{min-height:48px;font-size:13px}.auth-editorial .auth-card .sub{font-size:13px}.auth-editorial .auth-card>.muted{font-size:12px}.auth-entry-footer{font-size:9px;flex-wrap:wrap;gap:6px}
}
@media(max-width:360px){.auth-entry{padding:18px}.auth-editorial .brand-name{font-size:.88rem}.auth-switch a{padding:5px 10px}.auth-editorial .auth-card h1{font-size:28px}.auth-editorial .auth-form{padding-top:38px}}
@media(prefers-reduced-motion:reduce){.auth-editorial *,.auth-editorial *::before,.auth-editorial *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
