/* New components only, styled to match alioca.com WP (palette #151B24 ink, #575E69 slate, #E2DDD5 rule, #F9F5EC/#FCFAF4 paper). */
.alioca-sent,.alioca-errors{border:1px solid #E2DDD5;background:#FCFAF4;color:#151B24;padding:16px 20px;border-radius:4px;margin:0 0 16px}
.alioca-errors .error{color:#9B2C1F;font-size:14px}
/* Hello page template (legal + login): generous vertical rhythm like /contact */
main.site-main{padding-top:96px;padding-bottom:110px}
main.site-main .page-header .entry-title{margin:0 0 24px;padding-left:0!important;padding-right:0!important}
@media(max-width:767px){main.site-main{padding:60px 20px!important}main.site-main .page-header,main.site-main .page-content{padding-left:0;padding-right:0}}
/* Login */
.alioca-login-page{max-width:520px}
.alioca-login-page>p{color:#575E69;margin:0 0 8px}
.alioca-login-form{display:grid;gap:22px;margin-top:28px}
.alioca-login-form label{display:block;font:500 14px/22px Inter,sans-serif;color:#151B24}
.alioca-login-form label input{display:block;margin-top:8px;width:100%;box-sizing:border-box;border:1px solid #E2DDD5;background:#FCFAF4;color:#151B24;padding:12px 14px;border-radius:8px;font:400 15px/22px Inter,sans-serif}
.alioca-login-form label input:focus{outline:none;border-color:#151B24}
/* Primary button = WP homepage primary (.elementor-button: #151B24, white, 50px radius; hover #373C43) */
.alioca-login-form button.alioca-btn-primary{justify-self:start;background:#151B24;color:#fff;border:0;border-radius:50px;padding:12px 28px;font:500 14px/22px Inter,sans-serif;cursor:pointer;transition:background .2s}
.alioca-login-form button.alioca-btn-primary:hover,.alioca-login-form button.alioca-btn-primary:focus{background:#373C43;color:#fff;border:0;outline:none}
.alioca-login-form button.alioca-btn-primary:focus-visible{outline:2px solid #151B24;outline-offset:2px}
.alioca-login-form button.alioca-btn-primary:disabled{opacity:.55;cursor:not-allowed}
.alioca-showcase-empty{opacity:.85}
/* Header: keep desktop menu on one line (Login replaced Insights; avoids sub-pixel wrap) */
@media (min-width:1025px){ul.hfe-nav-menu{flex-wrap:nowrap!important}ul.hfe-nav-menu>li{white-space:nowrap}}
/* ---- Auth + admin (WP palette) ---- */
.alioca-login-form textarea{display:block;margin-top:8px;width:100%;box-sizing:border-box;border:1px solid #E2DDD5;background:#FCFAF4;color:#151B24;padding:12px 14px;border-radius:8px;font:400 15px/22px Inter,sans-serif}
.alioca-login-form label small{color:#575E69;font-weight:400}
.alioca-login-form label.alioca-check{display:flex;align-items:center;gap:10px;font-weight:500}
.alioca-check input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:#151B24}
.alioca-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.alioca-link{color:#151B24;font:500 14px/22px Inter,sans-serif;text-decoration:underline;text-underline-offset:3px}
.alioca-link:hover{color:#373C43}
a.alioca-btn-primary{display:inline-block;background:#151B24;color:#fff;border-radius:50px;padding:12px 28px;font:500 14px/22px Inter,sans-serif;text-decoration:none}
a.alioca-btn-primary:hover{background:#373C43;color:#fff}
.alioca-btn-secondary{background:transparent;color:#151B24;border:1px solid #151B24;border-radius:50px;padding:8px 20px;font:500 14px/22px Inter,sans-serif;cursor:pointer}
.alioca-btn-secondary:hover{background:#151B24;color:#fff}
.alioca-flash{border:1px solid #E2DDD5;background:#FCFAF4;color:#151B24;padding:12px 16px;border-radius:8px;margin:0 0 20px}
.alioca-admin .page-content,.alioca-admin{max-width:1140px}
.alioca-admin-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-bottom:1px solid #E2DDD5;padding-bottom:16px;margin-bottom:32px}
.alioca-admin-bar nav{display:flex;gap:24px}
.alioca-admin-bar nav a{color:#575E69;font:500 14px/22px Inter,sans-serif;text-decoration:none;padding-bottom:4px;border-bottom:2px solid transparent}
.alioca-admin-bar nav a.is-active,.alioca-admin-bar nav a:hover{color:#151B24;border-bottom-color:#151B24}
.alioca-admin-bar form{display:flex;align-items:center;gap:12px}
.alioca-who{color:#575E69;font-size:13px}
.alioca-sub{color:#575E69;margin:0 0 28px}
.alioca-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:48px}
@media(max-width:900px){.alioca-cards{grid-template-columns:1fr}}
.alioca-card{background:#FCFAF4;border:1px solid #E2DDD5;border-radius:12px;padding:24px}
.alioca-card h2{margin:4px 0 16px;font-size:22px}
.alioca-eyebrow{font:600 11px/16px Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#575E69;margin:0}
.alioca-card dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 12px;font-size:14px}
.alioca-card dt{color:#575E69}.alioca-card dd{margin:0;color:#151B24;word-break:break-word}
.alioca-badge{display:inline-block;padding:2px 10px;border-radius:50px;font:600 12px/18px Inter,sans-serif;background:#F1ECE2;color:#575E69}
.alioca-badge--ok{background:#151B24;color:#fff}
.alioca-badge--warn{background:#F4F0E7;color:#151B24;border:1px solid #E2DDD5}
.alioca-h2{font-size:22px;margin:0 0 16px}
.alioca-table-wrap{overflow-x:auto}
.alioca-table{width:100%;border-collapse:collapse;font-size:14px}
.alioca-table th{text-align:left;font:600 12px/18px Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#575E69;border-bottom:1px solid #E2DDD5;padding:10px 12px}
.alioca-table td{border-bottom:1px solid #E2DDD5;padding:12px;color:#151B24}
.alioca-head-row{display:flex;justify-content:space-between;align-items:center;gap:16px}
.alioca-project-form{max-width:640px}
.alioca-fieldset{border:1px solid #E2DDD5;border-radius:12px;padding:20px 24px;display:grid;gap:18px;background:#FCFAF4;margin:0}
.alioca-fieldset legend{font:600 14px/22px Inter,sans-serif;padding:0 6px;color:#151B24}
.alioca-hint{color:#575E69;font-size:13px;margin:-8px 0 0}
