:root{
  color-scheme:light;
  --lw-primary:#30343A;
  --lw-primary-2:#0b3d91;
  --lw-soft:#FFF0E5;
  --lw-line:#DDE1E3;
  --lw-muted:#6D7378;
  --lw-bg:#F2F2F0;
  --lw-card:#fff;
  --lw-danger:#a12d34;
  --lw-shadow:0 24px 70px rgba(12,56,46,.13);
}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{font-family:system-ui,-apple-system,"Sarabun","Noto Sans Thai",sans-serif;background:radial-gradient(circle at 20% 5%,#fff 0,transparent 38%),linear-gradient(180deg,#F2F2F0 0,#FAF9F7 52%,#EEEDEB 100%);color:var(--lw-primary);-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button{cursor:pointer}
.line-workspace{min-height:100dvh;display:grid;place-items:center;padding:calc(22px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom))}
.lw-card{width:min(100%,470px);padding:22px;border:1px solid rgba(200,220,212,.92);border-radius:30px;background:rgba(255,255,255,.96);box-shadow:var(--lw-shadow);backdrop-filter:blur(18px)}
.lw-brand-row{display:flex;align-items:center;gap:12px;margin-bottom:26px}.lw-brand-row>div:last-child{min-width:0}.lw-brand-row small,.lw-brand-row strong{display:block}.lw-brand-row small{color:var(--lw-muted);font-size:11px;letter-spacing:.12em}.lw-brand-row strong{font-size:17px;line-height:1.35}.lw-logo{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:16px;background:linear-gradient(145deg,var(--lw-primary),var(--lw-primary-2));color:#fff;font-weight:900;font-size:15px;letter-spacing:.03em;box-shadow:0 10px 25px rgba(22,63,53,.2)}
.lw-workspace-icon{width:78px;height:78px;display:grid;place-items:center;margin:4px auto 16px;border-radius:24px;background:linear-gradient(145deg,var(--lw-soft),#fff);border:1px solid var(--lw-line);font-size:18px;font-weight:900;box-shadow:0 12px 30px rgba(23,70,59,.08)}
.lw-card h1{margin:0;text-align:center;font-size:clamp(29px,8vw,40px);line-height:1.15;letter-spacing:-.025em}.lw-subtitle{max-width:360px;margin:10px auto 22px;text-align:center;color:var(--lw-muted);font-size:15px;line-height:1.65}
.lw-status{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 14px;border-radius:16px;background:var(--lw-soft);color:var(--lw-primary);font-size:14px;font-weight:750;text-align:center}.lw-status[data-mode="error"]{background:#fff0f1;color:var(--lw-danger)}.lw-status[data-mode="success"]{background:#e9f7ef;color:#17613e}.lw-status[data-mode="ready"] .lw-spinner,.lw-status[data-mode="error"] .lw-spinner,.lw-status[data-mode="success"] .lw-spinner{display:none}.lw-spinner{width:18px;height:18px;border:2px solid rgba(22,63,53,.2);border-top-color:var(--lw-primary);border-radius:50%;animation:lw-spin .7s linear infinite}@keyframes lw-spin{to{transform:rotate(360deg)}}
.lw-login{display:grid;gap:14px;margin-top:18px;padding:18px;border:1px solid var(--lw-line);border-radius:22px;background:#fff}.lw-login-head strong,.lw-login-head p{display:block;margin:0}.lw-login-head strong{font-size:17px}.lw-login-head p{margin-top:5px;color:var(--lw-muted);font-size:12px;line-height:1.55}.lw-login label{display:grid;gap:7px}.lw-login label>span{font-size:13px;font-weight:800}.lw-login input{width:100%;min-height:50px;padding:11px 13px;border:1px solid #c7d9d2;border-radius:14px;background:#fff;color:#172e29;outline:none}.lw-login input:focus{border-color:var(--lw-primary-2);box-shadow:0 0 0 4px rgba(35,99,83,.11)}.lw-form-error{margin:0;padding:10px 12px;border-radius:12px;background:#fff0f1;color:var(--lw-danger);font-size:12px;font-weight:750;line-height:1.5}.lw-primary,.lw-secondary{min-height:50px;border-radius:15px;font-weight:850}.lw-primary:focus-visible,.lw-secondary:focus-visible{outline:3px solid var(--lw-primary-2);outline-offset:3px}.lw-primary{border:0;background:#0b3d91;color:#fff;box-shadow:0 12px 25px rgba(22,63,53,.2)}.lw-primary:disabled{opacity:.58;cursor:wait}.lw-secondary{width:100%;margin-top:12px;border:1px solid #bfd4cc;background:#fff;color:var(--lw-primary)}
.lw-login-head .lw-current-account{margin-top:10px;padding:10px 12px;border-radius:12px;background:#fff7ed;color:#8a3d00;font-weight:750}
.lw-parent-choice{margin-top:16px;padding:17px;border:1px solid #d8e7e1;border-radius:20px;background:linear-gradient(135deg,#f7fbfa,#edf7f3)}.lw-parent-choice small,.lw-parent-choice strong,.lw-parent-choice p{display:block;margin:0}.lw-parent-choice small{color:var(--lw-muted);font-size:11px;letter-spacing:.06em}.lw-parent-choice strong{margin-top:3px;font-size:16px}.lw-parent-choice p{margin-top:4px;color:var(--lw-muted);font-size:12px;line-height:1.5}
.lw-security-note{display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:0 4px;color:var(--lw-muted);font-size:11px;line-height:1.55}.lw-security-note span{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:var(--lw-soft);color:var(--lw-primary);font-weight:900}.lw-security-note p{margin:1px 0 0}
@media(max-width:520px){.line-workspace{place-items:start center;padding-left:12px;padding-right:12px}.lw-card{padding:18px;border-radius:0;min-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:100%;box-shadow:none;border:0;background:rgba(255,255,255,.88)}.lw-brand-row{margin-bottom:24px}.lw-workspace-icon{margin-top:10px}.lw-login{padding:16px}.lw-card h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){.lw-spinner{animation:none}}

/* Hidden sections must stay hidden even when author display:grid/flex is set. */
.line-workspace [hidden]{display:none!important}
.lw-recovery{display:grid;gap:12px;margin:16px 0 0;padding:18px;background:#F7FBFF;border:1px solid #DBE8F4;border-radius:16px}
.lw-recovery p{margin:0;color:#4B6683;font-size:14px;line-height:1.6}
.lw-recovery .lw-retry{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;padding:10px 14px;font-size:14px;margin-top:0}
.lw-recovery .lw-primary{background:#176DE5;box-shadow:none}
