:root{--cw-primary:#1a73e8;--cw-bg-from:#f0f4ff;--cw-bg-to:#ffffff;--cw-radius:18px;--cw-text:#0f172a;--cw-muted:#475569;--cw-border:#e2e8f0}
*{box-sizing:border-box}
.cwcll-wrap{min-height:70vh;padding:40px 16px;display:grid;place-items:center;position:relative;isolation:isolate}
.cwcll-bg{position:fixed;inset:0;background:linear-gradient(160deg,var(--cw-bg-from),var(--cw-bg-to));z-index:-1}
.cwcll-card{width:100%;max-width:420px;background:#fff;border-radius:var(--cw-radius);box-shadow:0 20px 60px rgba(2,6,23,.08),0 2px 6px rgba(2,6,23,.06);padding:28px;border:1px solid var(--cw-border)}
.cwcll-logo{display:flex;justify-content:center;margin-bottom:12px}
.cwcll-logo img{max-width:220px;height:auto}
.cwcll-title{text-align:center;font-size:24px;font-weight:700;color:var(--cw-text);margin-bottom:6px}
.cwcll-alert{padding:10px 12px;border-radius:12px;font-size:14px;margin:10px 0 14px 0;border:1px solid transparent}
.cwcll-alert.error{background:#fee2e2;border-color:#fecaca;color:#7f1d1d}
.cwcll-alert.info{background:#e0f2fe;border-color:#bae6fd;color:#0c4a6e}
.cwcll-form{margin-top:10px}
.cwcll-field{margin-bottom:14px}
.cwcll-field label{display:block;font-size:13px;color:var(--cw-muted);margin-bottom:6px}
.cwcll-field input[type="text"],.cwcll-field input[type="password"]{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--cw-border);outline:none;font-size:16px;transition:border-color .2s,box-shadow .2s}
.cwcll-field input:focus{border-color:var(--cw-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--cw-primary) 20%, transparent)}
.cwcll-field-password{position:relative}
.cwcll-toggle{position:absolute;right:10px;top:30px;width:34px;height:34px;border-radius:10px;border:1px solid var(--cw-border);background:#fff;cursor:pointer}
.cwcll-toggle:after{content:"👁️";display:block;line-height:32px;text-align:center}
.cwcll-toggle.is-on:after{content:"🙈"}
.cwcll-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:6px 0 14px 0;flex-wrap:wrap}
.cwcll-remember{display:flex;gap:8px;font-size:14px;color:var(--cw-muted);align-items:center}
.cwcll-submit{width:100%;padding:12px 16px;border:none;border-radius:12px;background:var(--cw-primary);color:#fff;font-weight:700;font-size:16px;cursor:pointer;transition:transform .05s ease,filter .2s ease,box-shadow .2s ease;box-shadow:0 10px 24px color-mix(in srgb, var(--cw-primary) 35%, transparent)}
.cwcll-submit:hover{filter:brightness(1.05)}
.cwcll-submit:active{transform:translateY(1px)}
.cwcll-link,.cwcll-link-home{color:var(--cw-primary);text-decoration:none}
.cwcll-link:hover,.cwcll-link-home:hover{text-decoration:underline}
.cwcll-foot{margin-top:14px;text-align:center}
.cwcll-already{max-width:600px;margin:40px auto;padding:16px;border:1px solid var(--cw-border);border-radius:12px;background:#fff}
@media (prefers-color-scheme: dark){
  :root{--cw-bg-from:#0b1220;--cw-bg-to:#0b1220;--cw-text:#e2e8f0;--cw-muted:#94a3b8;--cw-border:#1f2937}
  .cwcll-card{background:#0f172a;border-color:var(--cw-border)}
  .cwcll-field input{background:#0b1220;border-color:var(--cw-border);color:#e2e8f0}
  .cwcll-toggle{background:#0b1220;border-color:var(--cw-border);color:#e2e8f0}
  .cwcll-already{background:#0f172a;border-color:var(--cw-border);color:#e2e8f0}
}