/* Civic-tech entry page for the Health Complaint Cell */
.public-shell{min-width:320px;background:#063d30;color:#fff}.public-main{min-height:100vh}.public-page{--forest:#0b4d3b;--emerald:#087a59;--mint:#8fd9bd;--lime:#d9e8a8;position:relative;isolation:isolate;min-height:100vh;overflow:hidden;background:radial-gradient(circle at 68% 42%,rgba(35,157,118,.22),transparent 30%),linear-gradient(145deg,#073d31 0%,#0a503d 52%,#063a2f 100%)}.public-page:before{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,black,transparent 85%)}.public-page:after{content:"";position:absolute;z-index:-1;width:620px;height:620px;border:1px solid rgba(143,217,189,.11);border-radius:50%;right:-230px;top:140px;box-shadow:0 0 0 82px rgba(143,217,189,.025),0 0 0 164px rgba(143,217,189,.018)}.public-orb{position:absolute;z-index:-1;border-radius:999px;filter:blur(2px);pointer-events:none}.public-orb-one{width:240px;height:240px;background:rgba(217,232,168,.07);left:-120px;top:43%}.public-orb-two{width:300px;height:300px;background:rgba(85,205,176,.05);right:27%;bottom:-210px}
.public-header{width:min(1240px,calc(100% - 64px));margin:0 auto;min-height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12)}.public-brand{display:flex;align-items:center;gap:14px;color:#fff}.public-brand:hover{text-decoration:none}.kp-mark{width:52px;height:58px;display:grid;place-items:center;color:var(--lime);border-right:1px solid rgba(255,255,255,.18);padding-right:13px}.kp-mark svg{width:42px;height:42px}.brand-copy{display:flex;flex-direction:column;line-height:1.2}.brand-copy strong{font-size:15px;letter-spacing:.01em}.brand-copy small{margin-top:5px;color:#b9d5ca;font-size:11px;letter-spacing:.045em;text-transform:uppercase}.public-header-meta{display:flex;align-items:center;gap:16px;color:#bdd4cb;font-size:12px;letter-spacing:.04em}.system-live{display:flex;align-items:center;gap:8px;color:#e2eee8}.system-live i{width:7px;height:7px;border-radius:50%;background:#9be9c7;box-shadow:0 0 0 5px rgba(155,233,199,.09)}.header-rule{height:16px;width:1px;background:rgba(255,255,255,.2)}
.public-hero{width:min(1240px,calc(100% - 64px));margin:0 auto;padding:74px 0 62px;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:clamp(52px,8vw,118px);align-items:center}.hero-story{max-width:730px}.vision-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 11px 7px 8px;border:1px solid rgba(170,229,207,.28);border-radius:999px;background:rgba(2,42,31,.28);color:#bfe6d8;font-size:11px;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.vision-pill b{padding-left:8px;border-left:1px solid rgba(255,255,255,.2);color:var(--lime);font-size:12px}.vision-pill-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(143,217,189,.13)}.vision-pill-icon svg{width:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hero-story h1{max-width:700px;margin:27px 0 23px;font-size:clamp(44px,5vw,70px);font-weight:730;letter-spacing:-.052em;line-height:1.02;color:#fff}.hero-story h1 span{color:#a7ddc8}.hero-lead{max-width:650px;margin:0;color:#c4d9d0;font-size:17px;line-height:1.72}.listening-signal{display:flex;align-items:center;gap:15px;margin-top:30px}.signal-art{height:46px;width:46px;display:flex;justify-content:center;align-items:center;gap:3px;border-radius:50%;background:rgba(235,243,222,.11);border:1px solid rgba(235,243,222,.13)}.signal-art span{display:block;width:2px;border-radius:4px;background:var(--lime);animation:signal 1.6s ease-in-out infinite}.signal-art span:nth-child(1),.signal-art span:nth-child(5){height:8px}.signal-art span:nth-child(2),.signal-art span:nth-child(4){height:17px;animation-delay:.16s}.signal-art span:nth-child(3){height:25px;animation-delay:.32s}.listening-signal div:last-child{display:flex;flex-direction:column}.listening-signal small{color:#91afa3;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.listening-signal strong{margin-top:2px;color:#f5f5e8;font-size:15px}
.complaint-journey{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr;align-items:center;margin-top:42px;padding-top:27px;border-top:1px solid rgba(255,255,255,.12)}.journey-item{display:flex;align-items:flex-start;gap:11px}.journey-number{flex:0 0 auto;color:var(--lime);font-size:10px;font-weight:800;letter-spacing:.08em;padding-top:3px}.journey-item div{display:flex;flex-direction:column}.journey-item strong{font-size:13px;color:#fff}.journey-item small{margin-top:3px;color:#91afa3;font-size:10px;line-height:1.4}.journey-line{height:1px;background:linear-gradient(90deg,rgba(143,217,189,.15),rgba(143,217,189,.62));margin:0 8px}
.login-panel{position:relative;color:#10251d;background:rgba(250,251,246,.98);border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:34px 36px 27px;box-shadow:0 32px 70px rgba(0,25,18,.35),0 2px 0 rgba(255,255,255,.6) inset}.login-panel:after{content:"";position:absolute;inset:9px;border:1px solid rgba(7,80,60,.06);border-radius:14px;pointer-events:none}.login-panel-topline{position:absolute;left:36px;right:36px;top:0;height:3px;background:linear-gradient(90deg,var(--emerald),var(--mint),transparent);border-radius:0 0 4px 4px}.login-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#e8f3ed;color:var(--forest);border:1px solid #d6e8df}.login-icon svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.login-heading{margin:18px 0 23px}.login-heading>span{color:#73827c;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.login-heading h2{margin:5px 0 6px;font-size:28px;letter-spacing:-.035em}.login-heading p{margin:0;color:#6f7e77;font-size:13px;line-height:1.55}.login-form{position:relative;z-index:1;display:flex;flex-direction:column}.login-form>label,.password-label label{margin:0 0 7px;color:#33463e;font-size:12px;font-weight:750}.password-label{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.password-label span{margin-bottom:7px;color:#8a9892;font-size:10px}.input-frame{height:48px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cfdbd5;border-radius:9px;padding:0 13px;transition:border-color .2s,box-shadow .2s}.input-frame:focus-within{border-color:#278469;box-shadow:0 0 0 3px rgba(39,132,105,.12)}.input-frame svg{flex:0 0 18px;width:18px;fill:none;stroke:#70827a;stroke-width:1.5;stroke-linecap:round}.input-frame input{height:100%;padding:0;border:0;outline:0;border-radius:0;background:transparent;color:#173229;font-size:13px}.input-frame input::placeholder{color:#a5aea9}.login-button{position:relative;z-index:1;height:50px;margin-top:22px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(100deg,#096047,#087a59);box-shadow:0 8px 18px rgba(8,92,68,.18);font-size:13px;letter-spacing:.01em;transition:transform .2s,box-shadow .2s}.login-button:hover{transform:translateY(-1px);box-shadow:0 11px 23px rgba(8,92,68,.25)}.login-button:focus-visible{outline:3px solid rgba(8,122,89,.25);outline-offset:2px}.login-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.security-note{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin-top:20px;padding-top:17px;border-top:1px solid #e2e7e3;color:#849089;font-size:9px;letter-spacing:.02em}.security-note svg{flex:0 0 16px;width:16px;fill:none;stroke:#5e7b6e;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.login-alert{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin:-8px 0 18px;font-size:12px}.login-alert svg{width:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.vision-strip{width:min(1240px,calc(100% - 64px));margin:0 auto;display:grid;grid-template-columns:auto 1px 1fr;align-items:center;gap:34px;padding:27px 30px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:linear-gradient(100deg,rgba(1,39,29,.38),rgba(9,94,70,.21));box-shadow:0 12px 36px rgba(0,33,23,.12)}.vision-intro{display:flex;align-items:center;gap:17px;min-width:290px}.vision-year{font-size:34px;font-weight:300;letter-spacing:-.07em;color:#9fddc7}.vision-year span{font-weight:750;color:var(--lime)}.vision-intro div{display:flex;flex-direction:column}.vision-intro small{color:#87a99c;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.vision-intro strong{margin-top:3px;color:#f5f7ef;font-size:14px}.vision-divider{height:42px;width:1px;background:rgba(255,255,255,.13)}.vision-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.vision-principles>div{display:flex;align-items:center;gap:12px}.vision-principles svg{flex:0 0 30px;width:30px;height:30px;padding:6px;border-radius:9px;background:rgba(143,217,189,.09);fill:none;stroke:#a8d9c7;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.vision-principles span{display:flex;flex-direction:column}.vision-principles strong{color:#e9f0eb;font-size:11px}.vision-principles small{margin-top:2px;color:#83a296;font-size:9px}.public-footer{width:min(1240px,calc(100% - 64px));margin:0 auto;padding:26px 0 28px;display:flex;justify-content:space-between;color:#77988c;font-size:10px}.public-footer p{margin:0}.public-footer p:last-child{display:flex;align-items:center;gap:7px}.public-footer p:last-child span{width:5px;height:5px;border-radius:50%;background:#6cc9aa}
@keyframes signal{0%,100%{transform:scaleY(.65);opacity:.65}50%{transform:scaleY(1);opacity:1}}
@media(max-width:1050px){.public-hero{grid-template-columns:minmax(0,1fr) 390px;gap:48px}.hero-story h1{font-size:51px}.complaint-journey{grid-template-columns:1fr;gap:14px}.journey-line{display:none}.vision-strip{grid-template-columns:1fr}.vision-divider{display:none}.vision-principles{padding-top:21px;border-top:1px solid rgba(255,255,255,.1)}}
@media(max-width:800px){.public-header,.public-hero,.vision-strip,.public-footer{width:min(calc(100% - 36px),620px)}.public-header{min-height:86px}.public-header-meta{display:none}.kp-mark{height:48px}.brand-copy strong{font-size:13px}.brand-copy small{font-size:9px}.public-hero{padding:50px 0 38px;grid-template-columns:1fr;gap:42px}.hero-story h1{font-size:clamp(39px,11.5vw,56px)}.hero-lead{font-size:15px}.complaint-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.journey-item{gap:7px}.journey-item small{display:none}.login-panel{width:100%;max-width:500px;justify-self:center}.vision-strip{padding:23px}.vision-principles{grid-template-columns:1fr;gap:18px}.public-footer{gap:16px;flex-direction:column;text-align:center;align-items:center}.public-page:after{opacity:.6}}
@media(max-width:480px){.public-header,.public-hero,.vision-strip,.public-footer{width:calc(100% - 28px)}.public-hero{padding-top:38px}.vision-pill{font-size:9px}.hero-story h1{margin-top:22px}.hero-lead{line-height:1.62}.login-panel{padding:29px 23px 24px;border-radius:16px}.login-panel-topline{left:24px;right:24px}.complaint-journey{grid-template-columns:1fr;gap:13px}.journey-item small{display:block}.vision-intro{min-width:0}.vision-year{font-size:29px}.public-footer{padding-bottom:24px}}
@media(prefers-reduced-motion:reduce){.signal-art span{animation:none}.login-button{transition:none}}
