*{box-sizing:border-box}
html{scroll-behavior:smooth}
html[data-theme=dark]{color-scheme:dark;--rec-bg:#101b22;--rec-panel:#1e2d33;--rec-soft:#293b3b;--rec-text:#f2f7f2;--rec-muted:#b6c5bf;--rec-line:#53635d;--rec-gold:#eabb61;--rec-btn:#0e9284;--rec-btn-text:#fff;--rec-field:#172a31;--rec-glow:#bb91341c;--rec-danger:#ffc9b8}
html[data-theme=light]{color-scheme:light;--rec-bg:#fcf7e9;--rec-panel:#fffaf0;--rec-soft:#f3ead6;--rec-text:#22483c;--rec-muted:#526c61;--rec-line:#dec998;--rec-gold:#a67b29;--rec-btn:#128b7d;--rec-btn-text:#fff;--rec-field:#fffdf7;--rec-glow:#f0cc692c;--rec-danger:#8d3623}
body.girvi-recovery{background:radial-gradient(ellipse 42% 60% at 0 70%,var(--rec-glow),transparent),var(--rec-bg);color:var(--rec-text);min-height:100vh;overflow-x:hidden}
.rec-page{max-width:1570px;margin:auto;padding:33px clamp(14px,3vw,50px) 55px;min-width:0}
.rec-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(16px,2vw,35px);align-items:stretch}
.rec-stage,.rec-card{min-width:0;border-radius:31px;overflow:hidden;border:1px solid var(--rec-line);min-height:min(670px,78vh)}
.rec-stage{position:relative;isolation:isolate;display:flex;align-items:end;color:#fff2c7;background:linear-gradient(135deg,#2c261f,#735332);box-shadow:0 18px 60px #7d55232b}
.rec-stage video{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.rec-stage:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#15191044 10%,#221a16b3 82%,#181610e3)}
.rec-stage:after{content:"";position:absolute;inset:12px;pointer-events:none;border:1px solid #fff5c619;border-radius:25px}
.rec-stage-content{position:relative;padding:clamp(24px,4vw,48px);width:100%}
.rec-label{display:inline-flex;gap:8px;align-items:center;border:1px solid #ffdeb45e;background:#fff1d41f;color:#fff0c5;border-radius:99px;padding:9px 14px;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.rec-dot{height:9px;width:9px;border-radius:50%;background:#20d5b3;box-shadow:0 0 0 5px #38c5a81c}
.rec-stage h1{font-size:clamp(33px,4.15vw,65px);line-height:1.05;letter-spacing:-.055em;margin:24px 0 28px;max-width:600px;font-weight:900}
.rec-stage p{font-size:clamp(15px,1.15vw,18px);line-height:1.7;color:#fff9e3e8;max-width:600px;font-weight:650}
.rec-trail{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:27px}
.rec-trail span{display:inline-flex;align-items:center;gap:8px;background:#fff8eacb;color:#57421b;font-size:12px;font-weight:850;padding:9px 11px;border-radius:12px}
.rec-trail b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#edbb42;color:#422500}
.rec-card{display:flex;flex-direction:column;gap:15px;background:linear-gradient(160deg,var(--rec-panel),var(--rec-bg));padding:clamp(22px,2.6vw,41px);box-shadow:0 14px 48px #1d352b10}
.rec-card>*{min-width:0}
.rec-head{display:flex;align-items:center;gap:14px}
.rec-head-icon{height:49px;width:49px;border-radius:15px;background:linear-gradient(135deg,#ffe5a5,#e7af3f);display:grid;place-items:center;color:#67430c;font-size:24px;flex:0 0 auto}
.rec-head h2{font-size:clamp(22px,2vw,29px);margin:0 0 3px;line-height:1.22;letter-spacing:-.03em;color:var(--rec-text)}
.rec-head p{color:var(--rec-muted);font-size:13px;margin:0;line-height:1.5}
.rec-divider{border:0;border-top:1px solid var(--rec-line);margin:2px 0}
.rec-form{display:flex;flex-direction:column;gap:15px}
.rec-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.rec-field label{font-size:14px;font-weight:800;color:var(--rec-text)}
.rec-field input{width:100%;border:1px solid var(--rec-line);border-radius:12px;padding:12px 14px;min-height:49px;background:var(--rec-field);color:var(--rec-text);font:inherit;box-shadow:inset 0 1px 2px #0000000b}
.rec-field input:focus-visible,.rec-role:focus-visible,.rec-button:focus-visible,.rec-link:focus-visible{outline:3px solid var(--rec-gold);outline-offset:2px}
.rec-field small{font-size:12px;color:var(--rec-muted);line-height:1.6}
.rec-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rec-role{border-radius:13px;padding:11px 14px;background:var(--rec-field);border:1px solid var(--rec-line);display:flex;align-items:center;gap:11px;min-height:62px;text-align:left;color:var(--rec-text);cursor:pointer}
.rec-role[aria-pressed=true]{background:color-mix(in srgb,var(--rec-gold) 16%,var(--rec-field));border-color:var(--rec-gold);box-shadow:0 0 0 2px #d8b35930}
.rec-role-emoji{width:32px;height:32px;display:grid;place-items:center;font-size:19px;background:var(--rec-soft);border-radius:9px}
.rec-role b{display:block;font-size:14px}.rec-role small{display:block;font-size:11px;color:var(--rec-muted)}
.rec-button{border:0;border-radius:13px;min-height:50px;padding:12px 20px;background:linear-gradient(100deg,#087a70,#12a99a);color:#fff;font:inherit;font-size:15px;font-weight:900;cursor:pointer;box-shadow:0 9px 22px #128d7e24;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.rec-button:hover{filter:brightness(1.075)}
.rec-button[disabled]{cursor:not-allowed;opacity:.64}
.rec-notice{border:1px solid var(--rec-line);border-left:4px solid var(--rec-gold);background:var(--rec-soft);padding:14px 16px;border-radius:12px;line-height:1.55;color:var(--rec-text);font-size:14px}
.rec-notice strong{display:block;margin-bottom:5px}
.rec-notice.bad{border-left-color:#c75340;color:var(--rec-danger)}
.rec-notice.good{border-left-color:#10a475}
.rec-help-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.rec-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--rec-line);border-radius:11px;background:var(--rec-field);padding:10px 14px;color:var(--rec-text);text-decoration:none;font-weight:750;font-size:13px;min-height:43px}
.rec-link:hover{border-color:var(--rec-gold)}
.rec-password-line{position:relative;display:flex}
.rec-password-line input{padding-right:83px}
.rec-show{border:0;position:absolute;right:5px;top:5px;bottom:5px;padding:0 12px;border-radius:9px;background:var(--rec-soft);color:var(--rec-text);cursor:pointer;font-weight:800}
.rec-status{font-size:13px;color:var(--rec-muted);text-align:center}
.rec-tagline{margin:0;color:var(--rec-muted);font-size:12px;border-top:1px solid var(--rec-line);padding-top:15px}
.rec-help{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px}
.rec-hidden{display:none!important}
@media(max-width:960px){.rec-grid{grid-template-columns:1fr}.rec-stage,.rec-card{min-height:auto}.rec-stage{min-height:350px}.rec-stage-content{padding:30px}.rec-stage h1{max-width:780px;font-size:clamp(30px,6vw,52px)}}
@media(max-width:560px){.rec-page{padding:16px 12px 35px}.rec-stage,.rec-card{border-radius:19px}.rec-stage{min-height:280px}.rec-stage-content,.rec-card{padding:19px}.rec-stage h1{font-size:clamp(29px,9vw,40px);margin:18px 0}.rec-trail{gap:6px}.rec-trail span{font-size:10px;padding:6px 7px}.rec-role-grid{grid-template-columns:1fr}.rec-help-links>*{flex:1 1 auto}.rec-head h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rec-stage video{display:none}}
