@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{color:#071b43;font-synthesis:none;--red:#c8101e;--red-dark:#a90c18;--green:#078744;--navy:#071b43;--muted:#657085;--line:#dde3ea;--surface:#fff;--sidebar-width:268px;background:#f3f6f8;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}a{color:inherit}.form-message{border-radius:9px;margin:0;padding:10px 12px}.error-message{color:#a00008;background:#fff0f0;border:1px solid #f2b8b8}.loading-page{min-height:100vh;color:var(--navy);place-items:center;font-weight:800;display:grid}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #ffbf47}svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.campaign-brand{width:132px;color:var(--green);grid-template-columns:62px 1fr;line-height:.84;display:grid}.campaign-brand b{letter-spacing:-.12em;grid-row:span 2;font-size:1.85rem}.campaign-brand span{letter-spacing:.17em;align-self:end;font-size:.63rem;font-weight:900}.campaign-brand strong{letter-spacing:.02em;font-size:.78rem;font-style:italic}.campaign-brand.compact{grid-template-columns:48px 1fr;width:101px}.campaign-brand.compact b{font-size:1.42rem}.campaign-brand.compact span{font-size:.48rem}.campaign-brand.compact strong{font-size:.6rem}.auth-page{background:var(--surface);min-height:100svh;display:grid}.auth-panel{flex-direction:column;min-width:0;padding:20px;display:flex}.auth-brand{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:14px;font-size:.68rem;font-weight:800;display:flex}.auth-card{width:min(100%,460px);margin:auto;padding:42px 0 32px}.eyebrow{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 13px;font-size:.72rem;font-weight:900}.auth-card h1,.page-section h1{color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(2.1rem,10vw,3.5rem);line-height:1}.auth-description,.page-section>p{color:var(--muted);margin:16px 0 0;line-height:1.65}.auth-form,.content-form{gap:19px;margin-top:30px;display:grid}.field{min-width:0}.field label{color:#263752;margin-bottom:8px;font-size:.82rem;font-weight:800;display:block}.field>input,.password-control input{width:100%;min-height:52px;color:var(--navy);background:#fff;border:1.5px solid #b9c4d1;border-radius:10px;padding:13px 14px}.field>input:hover,.password-control:hover{border-color:#7f8da1}.field input:focus{border-color:var(--green);outline:3px solid #07874426}.field input[aria-invalid=true]{border-color:var(--red)}.field small{color:var(--muted);margin-top:7px;font-size:.74rem;display:block}.field-error{color:var(--red-dark);margin-top:7px;font-size:.76rem;font-weight:700;display:block}.password-control{border:1.5px solid #b9c4d1;border-radius:10px;grid-template-columns:1fr 50px;display:grid;overflow:hidden}.password-control input{border:0;border-radius:0;min-width:0}.password-control button{color:#526077;background:#f1f4f7;border:0;place-items:center;display:grid}.primary-action{background:var(--red);color:#fff;border:0;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:13px 18px;font-weight:850;text-decoration:none;display:flex;box-shadow:0 10px 24px #c8101e2e}.primary-action:hover{background:var(--red-dark)}.primary-action svg{width:18px}.auth-links{text-align:center;margin-top:26px}.auth-links p,.back-link{color:#526077;margin:0;font-size:.83rem}.auth-links a,.back-link a{color:var(--red);text-underline-offset:3px;font-weight:800}.auth-links .recovery-note{border-top:1px solid var(--line);color:#7a8596;margin-top:18px;padding-top:18px;line-height:1.55}.demo-note{color:#526077;background:#f7f9fb;border:1px dashed #97a3b4;border-radius:9px;gap:4px;margin-top:22px;padding:12px 14px;font-size:.72rem;line-height:1.5;display:grid}.demo-note strong{color:var(--green);text-transform:uppercase;letter-spacing:.09em}.privacy-note{border-left:3px solid var(--green);color:#526077;background:#f0f8f4;margin:22px 0 0;padding:13px;font-size:.78rem;line-height:1.55}.auth-copyright{color:#8490a1;margin:0;font-size:.68rem}.auth-visual{display:none}.success-feedback{text-align:center;background:#f0faf5;border:1px solid #bee0cd;border-radius:16px;margin-top:30px;padding:25px}.success-feedback>span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:50px;height:50px;margin:0 auto;display:grid}.success-feedback h2{margin:16px 0 8px;font-size:1.35rem}.success-feedback p{color:var(--muted);margin:0 0 22px;line-height:1.55}.app-shell{background:#f3f6f8;grid-template-rows:72px 1fr auto;min-height:100svh;display:grid}.app-header{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;grid-column:1;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;display:flex;position:sticky;top:0}.mobile-menu-button{width:46px;height:46px;color:var(--navy);background:#edf1f5;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.header-title{align-items:center;gap:10px;min-width:0;display:flex}.header-title>span{color:var(--muted);font-size:.72rem;font-weight:750;display:none}.user-menu{position:relative}.user-menu summary{cursor:pointer;border-radius:10px;align-items:center;gap:9px;min-height:48px;padding:4px;list-style:none;display:flex}.user-menu summary::-webkit-details-marker{display:none}.user-avatar{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.user-summary{display:none}.user-summary strong,.user-summary small{display:block}.user-summary strong{font-size:.78rem}.user-summary small{color:var(--green);margin-top:2px;font-size:.63rem;font-weight:900}.user-menu>div{border:1px solid var(--line);background:#fff;border-radius:12px;width:205px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 45px #071b4324}.user-menu>div a,.user-menu>div button{width:100%;color:var(--navy);text-align:left;background:0 0;border:0;border-radius:8px;padding:12px;font-size:.78rem;font-weight:700;text-decoration:none;display:block}.user-menu>div a:hover,.user-menu>div button:hover{background:#eef2f6}.sidebar{z-index:50;width:min(86vw, var(--sidebar-width));background:var(--navy);color:#fff;flex-direction:column;padding:25px 18px 18px;transition:transform .22s;display:flex;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:18px 0 50px #0004}.sidebar.open{transform:translate(0)}.sidebar-backdrop{z-index:45;opacity:0;pointer-events:none;background:#020817a8;border:0;transition:opacity .22s;position:fixed;inset:0}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.sidebar-brand{border-bottom:1px solid #ffffff1c;gap:12px;padding:0 10px 23px;display:grid}.sidebar-brand .campaign-brand{color:#fff}.sidebar-brand>span{color:#aebbd2;letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:750}.sidebar-user{background:#ffffff0d;border-radius:12px;align-items:center;gap:11px;margin:20px 4px;padding:12px;display:flex}.sidebar-user>span{background:var(--red);border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user strong{font-size:.78rem}.sidebar-user small{color:#83d7a9;margin-top:3px;font-size:.63rem;font-weight:900}.navigation-menu{gap:5px;display:grid}.navigation-menu a,.navigation-menu button{color:#b9c5d8;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;min-height:48px;padding:11px 13px;font-size:.8rem;font-weight:750;text-decoration:none;display:flex}.navigation-menu a:hover,.navigation-menu button:hover,.navigation-menu a.active{color:#fff;background:#ffffff12}.navigation-menu a.active{box-shadow:inset 3px 0 var(--red)}.navigation-menu button{width:100%}.sidebar-phase{color:#74829a;letter-spacing:.14em;margin:auto 10px 0;font-size:.6rem;font-weight:850}.content-area{min-width:0;padding:24px 16px 42px}.page-section{width:min(100%,1120px);margin:0 auto}.page-section.narrow{width:min(100%,620px)}.page-section h1{max-width:840px}.content-form{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px;box-shadow:0 14px 40px #071b430d}.required-notice{border-left:4px solid var(--red);color:#7b1119;background:#fff0f1;border-radius:6px;margin-top:22px;padding:14px 16px;font-size:.82rem;font-weight:700;line-height:1.5}.welcome-copy{max-width:620px}.welcome-card{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:15px;margin-top:28px;padding:21px;display:flex;box-shadow:0 12px 35px #071b430d}.status-dot{background:var(--green);box-sizing:content-box;border:3px solid #c4ecd5;border-radius:50%;flex:none;width:13px;height:13px}.welcome-card small,.welcome-card strong,.welcome-card p{display:block}.welcome-card small{color:var(--green);text-transform:uppercase;font-size:.68rem;font-weight:900}.welcome-card strong{margin-top:5px;font-size:1.05rem}.welcome-card p{color:var(--muted);margin:4px 0 0;font-size:.78rem}.phase-note{background:var(--navy);color:#fff;border-radius:16px;margin-top:18px;padding:21px}.phase-note h2{margin:0;font-size:1rem}.phase-note p{color:#bdc8da;margin:8px 0 0;font-size:.8rem;line-height:1.6}.app-footer{border-top:1px solid var(--line);color:#7a8596;background:#fff;flex-wrap:wrap;justify-content:center;align-items:center;gap:13px;min-height:65px;padding:14px;font-size:.68rem;display:flex}.app-footer .campaign-brand{opacity:.8}@media (width>=390px){.auth-panel{padding:24px}.user-summary,.header-title>span{display:block}}@media (width>=768px){.auth-page{grid-template-columns:minmax(420px,48%) 1fr}.auth-panel{padding:28px 42px}.auth-visual{background:linear-gradient(145deg, var(--navy), #0c366a);align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.auth-visual:before{content:"";background:radial-gradient(circle at 20% 20%,#07874488,#0000 38%),linear-gradient(0deg,#071b43 0,#0000 60%);position:absolute;inset:0}.auth-visual img{object-fit:cover;object-position:top;filter:saturate(.9);width:min(70%,600px);height:88%;position:absolute;bottom:0;right:-12%}.auth-visual-copy{z-index:2;color:#fff;max-width:440px;padding:55px;position:relative}.auth-visual-copy .campaign-brand{color:#fff}.auth-visual-copy p{color:#9ed8b9;letter-spacing:.12em;text-transform:uppercase;margin:28px 0 8px;font-size:.78rem;font-weight:850}.auth-visual-copy strong{letter-spacing:-.045em;font-size:clamp(2rem,4vw,4.2rem);line-height:.98;display:block}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:78px 1fr auto}.app-header{grid-column:2;padding:0 28px}.mobile-menu-button,.sidebar-backdrop{display:none}.sidebar{z-index:35;width:var(--sidebar-width);box-shadow:none;position:fixed;transform:none}.content-area{grid-column:2;padding:42px 36px 64px}.app-footer{grid-column:2;justify-content:space-between;padding:14px 36px}.content-form{padding:30px}.welcome-card,.phase-note{max-width:650px}}@media (width>=1200px){.auth-panel{padding-inline:clamp(50px,6vw,100px)}.auth-card{width:min(100%,500px)}.content-area{padding:55px 64px 80px}.page-section h1{font-size:3.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
