/* User-facing CyberAware pages */
:root{
  --ca-bg:#eef4fb;--ca-card:#ffffff;--ca-text:#142033;--ca-muted:#64748b;--ca-border:#dbe7f3;--ca-primary:#2563eb;--ca-sky:#38bdf8;--ca-success:#16a34a;--ca-danger:#dc2626;--ca-warning:#f59e0b;
}
body.ca-public-body{
  min-height:100vh;
  font-family:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  background:
    radial-gradient(circle at 15% 8%,rgba(56,189,248,.24),transparent 22rem),
    radial-gradient(circle at 88% 20%,rgba(37,99,235,.22),transparent 28rem),
    linear-gradient(135deg,#07111f,#0e2744 46%,#123b67);
  color:var(--ca-text);
}
.ca-auth-shell{width:min(1040px,calc(100% - 28px));margin:auto;display:grid;grid-template-columns:1.08fr .92fr;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:30px;box-shadow:0 35px 90px rgba(2,6,23,.45);overflow:hidden;backdrop-filter:blur(18px);}
.ca-auth-info{position:relative;overflow:hidden;padding:44px;color:#fff;background:linear-gradient(135deg,rgba(37,99,235,.38),rgba(8,22,38,.18));}
.ca-auth-info:before{content:"";position:absolute;right:-100px;bottom:-120px;width:340px;height:340px;border-radius:50%;background:rgba(56,189,248,.16);}
.ca-auth-info>*{position:relative;z-index:1;}
.ca-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:38px;}
.ca-auth-logo{width:52px;height:52px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#38bdf8);box-shadow:0 18px 38px rgba(37,99,235,.38);}
.ca-auth-info h1{font-weight:850;letter-spacing:-.05em;font-size:clamp(2rem,4vw,3.2rem);line-height:1;margin-bottom:18px;}
.ca-auth-info p{color:rgba(255,255,255,.78);font-size:1.02rem;max-width:32rem;}
.ca-auth-benefits{display:grid;gap:12px;margin-top:30px;}
.ca-auth-benefit{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);}
.ca-auth-form{background:rgba(255,255,255,.96);padding:46px 42px;display:flex;flex-direction:column;justify-content:center;}
.ca-auth-card-title{font-size:1.45rem;font-weight:850;letter-spacing:-.035em;margin-bottom:4px;}
.ca-auth-subtitle{color:var(--ca-muted);font-size:.92rem;margin-bottom:24px;}
.ca-auth-form .form-label{font-weight:750;font-size:.84rem;color:#334155;}
.ca-auth-form .form-control{border-radius:14px;border:1px solid var(--ca-border);padding:.82rem .95rem;}
.ca-auth-form .input-group-text{border-radius:14px 0 0 14px!important;border-color:var(--ca-border);background:#f8fbff;}
.ca-auth-form .input-group .form-control{border-left:0;}
.ca-auth-form .btn{border-radius:14px;font-weight:800;padding:.85rem 1rem;}
.ca-auth-primary{background:linear-gradient(135deg,var(--ca-primary),#0ea5e9);border:none;color:#fff;box-shadow:0 16px 30px rgba(37,99,235,.24);}
.ca-auth-primary:hover{color:#fff;transform:translateY(-1px);box-shadow:0 22px 40px rgba(37,99,235,.3);}
.ca-auth-foot{font-size:.72rem;color:#94a3b8;text-align:center;margin-top:26px;}
.ca-login-mini{display:flex;align-items:center;gap:8px;color:#64748b;font-size:.78rem;margin-top:18px;}
.ca-public-card{background:#fff;border:1px solid var(--ca-border);border-radius:24px;box-shadow:0 22px 55px rgba(15,23,42,.12);}
.ca-training-shell{width:min(920px,calc(100% - 28px));margin:34px auto;}
.ca-training-hero{border-radius:28px;padding:28px;color:#fff;background:linear-gradient(135deg,#07111f,#164a7a 62%,#2563eb);box-shadow:0 24px 55px rgba(15,23,42,.24);margin-bottom:18px;}
.ca-training-hero h1{font-weight:850;letter-spacing:-.04em;margin:0;font-size:clamp(1.6rem,3vw,2.5rem);}
.ca-training-hero p{color:rgba(255,255,255,.75);margin:.5rem 0 0;}
.ca-training-card{background:#fff;border:1px solid var(--ca-border);border-radius:24px;box-shadow:0 18px 45px rgba(15,23,42,.10);padding:30px;}
.ca-option-card{border:2px solid #e4edf7;border-radius:16px;padding:15px 18px;cursor:pointer;transition:all .18s ease;margin-bottom:12px;background:#fff;}
.ca-option-card:hover{border-color:#2563eb;background:#f0f7ff;transform:translateY(-1px);}
.ca-score-circle{width:132px;height:132px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;margin:0 auto 22px;border:10px solid;}
.ca-simulation-note{font-size:.72rem;color:#94a3b8;text-align:center;margin-top:20px;}
@media(max-width:820px){.ca-auth-shell{grid-template-columns:1fr}.ca-auth-info{padding:30px}.ca-auth-form{padding:34px 24px}.ca-auth-benefits{display:none}}
