/* Shared SPG visual language: public pages, workspace and application forms. */
:root{--navy:#183c48;--blue:#176b68;--line:#dce7e5;--muted:#526b72;color:#203b43;background:#f4f7f6;line-height:1.6}
body{background:#f4f7f6}
h1,h2,h3{color:#203b43;text-wrap:balance}
h1{letter-spacing:-.035em}p{max-width:75ch}
button,.button-link,input,select{min-height:44px}
button,.button-link{border-radius:11px;transition:background .15s,border-color .15s}
button:hover{background:#eaf4f1;border-color:#afceca}
button.primary:hover,.marketing .button-link.primary:hover{background:#125653}
input,select,textarea{border-color:#b9ccc8;border-radius:10px;padding:.8rem .9rem}
input::placeholder,textarea::placeholder{color:#6c7f84}
label{color:#304e56;line-height:1.5}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #24867f;outline-offset:3px}
input[type=checkbox]{min-height:auto;accent-color:var(--blue)}
.card,.recruit-inbox,.recruit-detail{border-radius:18px;border-color:var(--line);box-shadow:0 5px 20px #23483b05}
.content>.card{margin-bottom:1.5rem}
.content>form.card,.content>section.card:has(>h2),.content>section.card:has(>label),.content>section.card:has(>#setup-heading){padding:1.75rem}
.content>section.card>p{margin-left:1.25rem;margin-right:1.25rem}
.content>section.card:has(>h2)>p,.content>section.card:has(>label)>p{margin-left:0;margin-right:0}
.content>form.card{max-width:850px}
.content>form.card>label{margin-bottom:1.5rem}
.content>form.card>button[type=submit]{margin-top:.5rem}
.content ol{padding-left:1.4rem}.content ol li{padding:.5rem .25rem}.content ol li p{margin:.25rem 0;color:var(--muted);font-size:.9rem}
details{border:1px solid var(--line);border-radius:12px;padding:1rem 1.15rem;margin:1rem 0;background:#fafcfb}
summary{cursor:pointer;font-weight:650;color:#294e55}details[open]>summary{margin-bottom:1rem}
.badge{border-radius:20px;background:#e7f2ee;color:#236255;padding:.3rem .75rem;font-weight:600}
.hint,.banner{background:#edf5f3;color:#365e60;border:1px solid #dceae5;border-radius:12px;line-height:1.65}
.error{color:#a02038}.error:empty{display:none}
.shell{grid-template-columns:246px minmax(0,1fr)}
.sidebar{background:#fff;color:#203b43;border-right:1px solid var(--line);padding:1.6rem 1rem;gap:1.6rem}
.sidebar .brand{padding:.5rem .75rem}.sidebar label{color:var(--muted);font-size:.8rem}
.sidebar select{background:#f4f8f6;color:#203b43;border-color:#d4e3dc}
.sidebar nav{gap:.4rem}.sidebar nav button{color:#46636a;font-weight:550;border-radius:11px;padding:.85rem 1rem}
.sidebar nav button:hover{background:#f0f6f3}
.sidebar nav button[aria-current=page]{background:#e4f1ec;color:#145e53;font-weight:750;box-shadow:inset 3px 0 #218476}
.sidebar-footer{border-top:1px solid var(--line);padding:1.2rem .5rem 0;color:#60787c;font-size:.78rem}
.topbar{background:#ffffffd9;padding:1.1rem 2rem}.topbar>span{font-weight:700}.topbar .identity{font-size:.85rem}
.content{padding:2rem;max-width:1320px}.page-heading{margin-bottom:1.6rem}.page-heading p{line-height:1.7}
.toolbar{background:#fafcfb;gap:1.25rem;flex-wrap:wrap}.toolbar label{margin:0;flex:1;min-width:180px}.toolbar input{max-width:420px}
th{background:#f2f7f4;color:#49666b;font-size:.8rem}td{line-height:1.55}tbody tr:hover{background:#f8fbf9}
td.actions button{min-height:40px}table a{color:#176b68;overflow-wrap:anywhere}
.empty{padding:4rem 2rem;background:linear-gradient(160deg,#fff,#f2f8f4)}.empty h2{font-size:1.4rem}
.recruit-metrics{gap:1rem}.recruit-metrics button{border-radius:16px;padding:1.3rem;border-color:var(--line)}
.recruit-metrics button[aria-pressed=true]{background:#eaf5ef;border-color:#5eaa95}.recruit-metrics strong{color:#216c5a}
.recruit-tools{padding:1.25rem;gap:.9rem}.recruit-count{background:#f5f9f7}
.candidate-row[aria-pressed=true]{background:#edf7f1;box-shadow:inset 3px 0 #218476}
.candidate-avatar{border-radius:50%;background:#e5f1ea;color:#246253}
.recruit-detail{padding:1.7rem}.candidate-section,.candidate-facts{margin-top:1.5rem;padding-top:1.5rem}
.candidate-actions{gap:.7rem}.candidate-actions button{padding:.65rem .9rem}
dialog{border-radius:20px;padding:2rem;box-shadow:0 24px 90px #193b4430}dialog::backdrop{background:#183c4866}
.dialog-actions{flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1.2rem;gap:.75rem}
#notice{background:#214f48;border-radius:14px}
.auth{background:#f6f8f4}.auth-intro{background:linear-gradient(155deg,#e4f1e9,#f7f3e8);color:#203b43;padding:3.5rem}
.auth-intro h1{font-size:clamp(2.2rem,4vw,3.3rem)}.auth-intro p,.auth-intro small,.auth-home{color:#49676b}
.auth-form{background:#fff;padding:2.4rem;border-radius:24px;border:1px solid var(--line);box-shadow:0 14px 55px #254e4010;max-width:480px}
.apply-page{max-width:780px;padding:28px}.apply-page .card{padding:2rem;border-radius:20px}.apply-page>h1{margin-top:1rem}.apply-page button{padding:1rem}
.marketing{background:#fffdf9}.site-header{border-color:#e1e8df;height:96px}.site-header .nav-login{background:#edf5ef;border-color:#d4e4d8;color:#235b4f}
.marketing-hero{padding-top:3.8rem;padding-bottom:4rem;gap:3.5rem}.hero-copy h1{font-size:clamp(2.6rem,4.6vw,4.3rem)}
.hero-details span{border-color:#8fbdac;color:#526d67}.hero-lead{color:#526b72}.login-panel{background:#fff;border-color:#dce7dc;border-radius:24px;box-shadow:0 12px 40px #244d3210}
.industry-section{background:#f4f4e9}.industry-grid h3{font-size:1.25rem}.workplace-image img{border-radius:20px}
.feature-grid article{border-radius:18px;background:#fff;padding:2rem;border-color:#dce7df}.feature-number{color:#52786a}.feature-tag{color:#2d6b59}
.working-section{background:#e7f1eb;color:#203b43}.working-title .eyebrow{color:#216c5a}.working-title p,.working-steps p{color:#48665e}.working-steps article>span{border-color:#aacbb9;color:#216c5a;background:#fff}
.social-section{background:#edf5f0}.channel-grid article{border-radius:16px}
.price-card{border-radius:20px;background:#fff}.price-card.featured{background:#f0f8f2;border-color:#31876c}.price-card.featured .package-label{color:#216c5a}.package-features li::before{color:#31876c}.pricing-draft{background:#e7f1e9;color:#216c5a}.price-card details{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:1rem 0 0}
.pilot-section{background:#fbf7ee}.site-footer{background:#fffdf9}
@media(min-width:1000px){.sidebar{position:sticky;top:0;height:100vh;overflow:auto}.content>form.card{padding:2rem}}
@media(max-width:900px){.shell{grid-template-columns:210px minmax(0,1fr)}.content{padding:1.5rem}.topbar{padding:1rem 1.5rem}.auth-form{padding:1.75rem}}
@media(max-width:680px){.shell{display:block}.sidebar{padding:1rem;border-bottom:1px solid var(--line);gap:1rem}.sidebar nav{gap:.4rem}.sidebar nav button{min-height:44px}.topbar{flex-wrap:wrap;padding:1rem}.topbar .identity{flex-wrap:wrap}.content{padding:1.25rem 1rem}.content>form.card,.content>section.card:has(>h2),.content>section.card:has(>label){padding:1.2rem}.content>section.card:has(table){overflow-x:auto}.auth-intro{padding:1.5rem}.auth-main{padding:1.5rem 1rem}.auth-form{padding:1.5rem}.apply-page{margin:0;padding:1.1rem}.apply-page .card{padding:1.25rem}.dialog-actions button{flex:1 1 140px}dialog{padding:1.25rem}.marketing-hero{gap:2rem;padding-top:2.5rem}.recruit-detail{padding:1.2rem}.recruit-metrics{gap:.65rem}.recruit-metrics button{padding:1rem}.site-header{height:auto;min-height:88px}.login-panel{padding:1.5rem}.button-link{white-space:normal}.candidate-actions button{min-height:44px}}
@media(prefers-reduced-motion:reduce){button,.button-link{transition:none}}

.registration-page{max-width:900px}.registration-page fieldset{border:0;border-bottom:1px solid var(--line);padding:0 0 1.5rem;margin:0 0 2rem;min-width:0}.registration-page legend{font-size:1.2rem;font-weight:700;padding:0 0 1rem}.registration-page .form-grid label{margin:.5rem 0}.registration-page a{color:var(--blue)}.registration-page [hidden]{display:none!important}.registration-page #reference{overflow-wrap:anywhere}

.registration-facts{display:grid;grid-template-columns:130px minmax(0,1fr);gap:.65rem 1rem}.registration-facts dt{font-weight:650;color:var(--muted)}.registration-facts dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:480px){.registration-facts{grid-template-columns:1fr;gap:.2rem}.registration-facts dd{margin-bottom:.8rem}}
/* SPG Connect wordmark: preserve proportions and small-screen legibility. */
.site-header .spg-home img{width:200px;height:auto}.site-footer .spg-home img{width:160px;height:auto}.brand img{width:174px;height:auto}.auth .brand,.sidebar .brand{background:transparent;padding:0;border-radius:0}.apply-page>img,.apply-page>a>img,.legal-page>a>img{width:190px;height:auto;max-width:100%}@media(max-width:760px){.site-header .spg-home img{width:164px}}

.support-step,.support-case{padding:1.25rem 0;border-bottom:1px solid var(--line)}.support-step:last-child,.support-case:last-child{border-bottom:0}.support-step p{margin:.4rem 0 .75rem}.support-case textarea{min-height:100px}#support-answer{margin-top:1.5rem}#support-answer:empty{display:none}.support-case small{overflow-wrap:anywhere}
