:root{
--puy-primary:#0867d8;
--puy-primary-dark:#0b2850;
--puy-accent:#ffd451;
--puy-text:#17243a;
--puy-muted:#68758a;
--puy-border:#dbe4ee;
--puy-soft:#f2f6fb;
--puy-white:#fff;
--puy-danger:#c72c41;
}
*{box-sizing:border-box}
.puy-standalone{margin:0;background:linear-gradient(135deg,#f7f9fc,#eef4fa);color:var(--puy-text);font-family:Inter,Segoe UI,Arial,sans-serif}
.puy-standalone a{text-decoration:none}
.puy-header{background:#fff;border-bottom:1px solid var(--puy-border)}
.puy-header-inner{max-width:1180px;margin:0 auto;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.puy-brand{display:flex;align-items:center;gap:11px;color:var(--puy-primary-dark)}
.puy-brand-mark{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--puy-primary),var(--puy-primary-dark));color:#fff;font-weight:900;font-size:23px}
.puy-brand>span:last-child{display:flex;flex-direction:column}
.puy-brand strong{font-size:16px}
.puy-brand small{font-size:10px;color:var(--puy-muted);margin-top:3px}
.puy-back-home{color:var(--puy-primary-dark);font-size:13px;font-weight:800}
.puy-auth-layout{max-width:1180px;min-height:680px;margin:0 auto;padding:55px 20px;display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}
.puy-auth-layout.compact-layout{max-width:1020px}
.puy-auth-intro{padding:28px}
.puy-kicker{display:inline-flex;padding:8px 12px;border-radius:999px;background:#e7f1ff;color:var(--puy-primary);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.puy-auth-intro h1{font-size:clamp(39px,5vw,61px);line-height:1.05;letter-spacing:-.045em;color:var(--puy-primary-dark);margin:20px 0}
.puy-auth-intro>p{font-size:18px;line-height:1.72;color:var(--puy-muted)}
.puy-benefit-list{display:grid;gap:14px;margin-top:30px}
.puy-benefit-list>div{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.72);border:1px solid rgba(219,228,238,.9)}
.puy-benefit-list b{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:var(--puy-accent);color:#263447;font-size:12px}
.puy-benefit-list span{font-weight:700;color:#405066}
.puy-auth-card{background:#fff;border:1px solid var(--puy-border);border-radius:25px;padding:35px;box-shadow:0 24px 60px rgba(15,45,80,.12)}
.puy-auth-card.wide{max-width:720px}
.puy-auth-heading{text-align:center;margin-bottom:25px}
.puy-auth-heading>span{font-size:11px;font-weight:900;color:var(--puy-primary);text-transform:uppercase;letter-spacing:.08em}
.puy-auth-heading h2{font-size:34px;letter-spacing:-.03em;color:var(--puy-primary-dark);margin:9px 0}
.puy-auth-heading p{color:var(--puy-muted);margin:0}
.puy-form{display:flex;flex-direction:column;gap:12px}
.puy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.puy-field{display:flex;flex-direction:column;gap:7px}
.puy-field label{font-size:13px;color:#2d3b50;font-weight:800}
.puy-field label em{font-style:normal;font-weight:500;color:var(--puy-muted);margin-left:4px}
.puy-field input{width:100%;min-height:50px;border:1px solid #cbd7e4;border-radius:11px;padding:13px 14px;font:inherit;outline:none;background:#fff;color:var(--puy-text)}
.puy-field input:focus{border-color:var(--puy-primary);box-shadow:0 0 0 4px rgba(8,103,216,.09)}
.puy-field input.puy-invalid{border-color:var(--puy-danger);box-shadow:0 0 0 4px rgba(199,44,65,.08)}
.puy-field>small{color:var(--puy-muted);font-size:11px;line-height:1.4}
.puy-error-text{display:none;color:var(--puy-danger)!important;font-size:11px}
.puy-error-text.visible{display:block}
.puy-password-wrap{position:relative}
.puy-password-wrap input{padding-right:70px}
.puy-password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:#edf3fb;color:var(--puy-primary-dark);border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800;cursor:pointer}
.puy-check{display:flex;align-items:flex-start;gap:9px;color:var(--puy-muted);font-size:12px;line-height:1.5}
.puy-check input{margin-top:3px}
.puy-check.legal{margin-top:4px}
.puy-form-options{display:flex;justify-content:space-between;align-items:center;gap:15px}
.puy-form-options a{font-size:12px;font-weight:800;color:var(--puy-primary)}
.puy-submit{width:100%;min-height:52px;border:1px solid #df2031;border-radius:12px;background:#fff;color:#df2031;font-size:15px;font-weight:900;cursor:pointer;transition:.2s}
.puy-submit:hover{background:#df2031;color:#fff;transform:translateY(-1px);box-shadow:0 12px 26px rgba(223,32,49,.16)}
.puy-auth-footer{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:21px;padding-top:19px;border-top:1px solid var(--puy-border);font-size:13px;color:var(--puy-muted)}
.puy-auth-footer a{color:var(--puy-primary);font-weight:900}
.puy-alert{max-width:720px;margin:28px auto 0;padding:14px 17px;border-radius:12px;font-weight:700}
.puy-alert.success{background:#dcfce7;color:#166534;border:1px solid #86efac}
.puy-alert.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.puy-account{max-width:1120px;margin:0 auto;padding:48px 20px 70px}
.puy-account-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:36px;border-radius:23px;background:linear-gradient(135deg,var(--puy-primary-dark),var(--puy-primary));color:#fff}
.puy-account-hero>div>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#b5d9ff}
.puy-account-hero h1{font-size:38px;letter-spacing:-.035em;margin:8px 0;color:#fff}
.puy-account-hero p{margin:0;color:#d9eaff}
.puy-logout{background:#fff;color:var(--puy-primary-dark);border-radius:10px;padding:12px 16px;font-weight:900;white-space:nowrap}
.puy-account-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0}
.puy-account-summary article{padding:20px;border-radius:15px;background:#fff;border:1px solid var(--puy-border)}
.puy-account-summary small{display:block;color:var(--puy-muted);margin-bottom:7px}
.puy-account-summary strong{color:var(--puy-primary-dark);font-size:19px}
.puy-account-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:20px}
.puy-profile-panel,.puy-account-info{background:#fff;border:1px solid var(--puy-border);border-radius:19px;padding:28px}
.puy-panel-head>span{color:var(--puy-primary);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.puy-panel-head h2{font-size:27px;color:var(--puy-primary-dark);margin:8px 0 22px}
.puy-account-info{display:flex;flex-direction:column;gap:0}
.puy-account-info>div{padding:17px 0;border-bottom:1px solid var(--puy-border)}
.puy-account-info>div:last-child{border-bottom:0}
.puy-account-info span{display:block;color:var(--puy-muted);font-size:11px;margin-bottom:5px}
.puy-account-info strong{color:var(--puy-primary-dark);font-size:14px}
.puy-footer{background:#fff;border-top:1px solid var(--puy-border);padding:22px 20px}
.puy-footer>div{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;color:var(--puy-muted);font-size:11px}
@media(max-width:900px){.puy-auth-layout{grid-template-columns:1fr;gap:20px;max-width:760px}.puy-auth-intro{text-align:center}.puy-benefit-list{max-width:520px;margin-left:auto;margin-right:auto}.puy-account-grid{grid-template-columns:1fr}}
@media(max-width:650px){.puy-header-inner{padding:12px 14px}.puy-brand small{display:none}.puy-auth-layout{padding:28px 14px}.puy-auth-intro{padding:15px}.puy-auth-card{padding:22px}.puy-grid{grid-template-columns:1fr}.puy-form-options{align-items:flex-start;flex-direction:column}.puy-account{padding:28px 14px 55px}.puy-account-hero{align-items:flex-start;flex-direction:column;padding:27px 22px}.puy-account-summary{grid-template-columns:1fr}.puy-footer>div{flex-direction:column}}
