/* Phase 3 provider self-service. Scoped to provider routes; approved parent/admin baselines remain unchanged. */
/* Hidden provider elements must stay hidden even when component classes define display:grid/flex. */
.provider-shell [hidden],.provider-auth-page [hidden],.provider-claim-main [hidden],[data-provider-portal] [hidden]{display:none!important}
.provider-shell,.provider-auth-page{min-height:100vh;background:#f4f7f5;color:#102039}.provider-shell{display:grid;grid-template-columns:270px minmax(0,1fr)}
.provider-sidebar{position:sticky;top:0;height:100vh;background:#173e33;color:#fff;display:flex;flex-direction:column;padding:22px 16px;z-index:30}.provider-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.provider-brand strong{display:block;font-size:1rem}.provider-brand small{display:block;color:rgba(255,255,255,.68);font-size:.76rem;margin-top:2px}.provider-brand--light{color:#102039}.provider-brand--light small{color:#62706b}.provider-nav{display:grid;gap:4px;margin-top:28px}.provider-nav__label{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.48);padding:16px 12px 6px}.provider-nav__link{display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 12px;border-radius:10px;color:rgba(255,255,255,.8);text-decoration:none;font-weight:700;font-size:.88rem}.provider-nav__link:hover,.provider-nav__link.is-active{background:rgba(255,255,255,.1);color:#fff}.provider-sidebar__footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:16px}.provider-account{width:100%;display:flex;align-items:center;gap:10px;padding:9px;border:0;background:transparent;color:#fff;text-align:left;border-radius:10px;cursor:pointer}.provider-account:hover{background:rgba(255,255,255,.08)}.provider-account__avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f2c94c;color:#102039;font-weight:900}.provider-account strong,.provider-account small{display:block;max-width:165px;overflow:hidden;text-overflow:ellipsis}.provider-account small{color:rgba(255,255,255,.62);margin-top:2px}
.provider-main{min-width:0}.provider-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid #dce5e1;backdrop-filter:blur(12px)}.provider-header__inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 30px}.provider-header__title{display:flex;align-items:center;gap:12px}.provider-header__title h1{font-size:1.18rem;margin:0}.provider-header__title p{margin:3px 0 0;color:#68746f;font-size:.82rem}.provider-header__actions{display:flex;align-items:center;gap:10px}.provider-switcher{min-width:180px;border:1px solid #ccd8d3;background:#fff;border-radius:999px;padding:9px 34px 9px 13px;font-weight:700;color:#173e33}.provider-status-pill{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;background:#e8f4ee;color:#1f6b50;font-weight:800;font-size:.78rem}.provider-menu-button{display:none}.provider-content{padding:28px 30px 54px;max-width:1440px;margin:0 auto}.provider-welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px;border-radius:18px;background:linear-gradient(135deg,#fff,#edf6f1);border:1px solid #d8e7df;box-shadow:0 8px 28px rgba(16,32,57,.06);margin-bottom:20px}.provider-welcome h2{font-size:1.45rem;margin:3px 0 8px}.provider-welcome p:last-child{margin:0;color:#5f6c67;max-width:720px}.provider-welcome__actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.provider-loading{display:flex;align-items:center;gap:10px;padding:28px;color:#66736e}.provider-page-error,.provider-auth-error{padding:12px 14px;border:1px solid #e6b5b5;background:#fff0f0;color:#8e2929;border-radius:10px;margin:12px 0}.provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.provider-stat{background:#fff;border:1px solid #dfe7e3;border-radius:15px;padding:18px;box-shadow:0 5px 18px rgba(16,32,57,.04)}.provider-stat span{display:block;color:#68746f;font-size:.78rem;font-weight:800}.provider-stat strong{display:block;font-size:1.8rem;margin:8px 0 4px;color:#173e33}.provider-stat small{color:#66736e}.provider-panel{background:#fff;border:1px solid #dfe7e3;border-radius:15px;overflow:hidden;margin-top:18px}.provider-panel__head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 19px;border-bottom:1px solid #e6ece9}.provider-panel__head h3{margin:0;font-size:1rem}.provider-panel__body{padding:18px}.provider-progress{height:10px;background:#e6ece9;border-radius:999px;overflow:hidden}.provider-progress span{display:block;height:100%;background:#2f8a66;border-radius:inherit}.provider-alert{display:flex;align-items:flex-start;gap:12px;border-radius:12px;padding:14px;background:#fff8df;border:1px solid #efd98c;color:#6f5816}.provider-alert.is-success{background:#eaf7f0;border-color:#b9dec9;color:#225f47}.provider-record-list{display:grid;gap:10px}.provider-record{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(160px,.7fr) auto;gap:18px;align-items:center;padding:16px;border:1px solid #e1e8e4;border-radius:12px;background:#fff}.provider-record h3{margin:0 0 5px;font-size:1rem}.provider-record p{margin:0;color:#69756f;font-size:.85rem}.provider-record__meta{display:grid;gap:3px;color:#5f6c67;font-size:.8rem}.provider-record__actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.provider-empty{text-align:center;padding:42px 20px;color:#63706a}.provider-empty .icon{width:34px;height:34px;color:#2f8a66}.provider-empty h3{color:#102039;margin:12px 0 6px}.provider-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:900;background:#fff2c8;color:#765d12}.provider-badge.is-green{background:#e4f5ec;color:#1f6b50}.provider-badge.is-red{background:#ffe8e8;color:#942f2f}.provider-form{display:grid;gap:18px}.provider-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.provider-field{display:grid;gap:6px}.provider-field.is-wide{grid-column:1/-1}.provider-field label,.provider-field>span{font-weight:800;font-size:.78rem;color:#34463f}.provider-field input,.provider-field select,.provider-field textarea{width:100%;border:1px solid #cbd7d2;border-radius:10px;padding:11px 12px;background:#fff;color:#102039;font:inherit}.provider-field textarea{min-height:112px;resize:vertical}.provider-field small{color:#6a7671}.provider-check{display:flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700}.provider-form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}.provider-inline-places{display:flex;align-items:center;gap:6px}.provider-inline-places input{width:76px;border:1px solid #cbd7d2;border-radius:8px;padding:7px}.provider-code{display:block;word-break:break-all;background:#f3f6f4;border:1px solid #dce5e1;border-radius:9px;padding:10px;font-size:.76rem}.provider-editor{position:fixed;top:0;right:0;z-index:80;width:min(620px,100%);height:100vh;background:#fff;box-shadow:-18px 0 50px rgba(16,32,57,.2);transform:translateX(105%);transition:transform .22s ease;display:flex;flex-direction:column}.provider-editor.is-open{transform:none}.provider-editor__head{display:flex;align-items:flex-start;justify-content:space-between;padding:21px 22px;border-bottom:1px solid #e0e7e3}.provider-editor__head h2{margin:3px 0 0}.provider-editor__form{overflow:auto;padding:20px 22px;display:flex;flex-direction:column;gap:18px}.provider-editor__actions{position:sticky;bottom:-20px;background:#fff;border-top:1px solid #e0e7e3;margin:8px -22px -20px;padding:14px 22px;display:flex;justify-content:flex-end;gap:9px}.provider-menu-overlay{position:fixed;inset:0;background:rgba(9,25,20,.5);z-index:55;opacity:0;pointer-events:none;transition:opacity .2s}.provider-menu-overlay.is-open{opacity:1;pointer-events:auto}.provider-mobile-menu{display:none}.provider-auth-page{background:linear-gradient(135deg,#f0f7f3 0,#fff 54%,#fff8df 100%)}.provider-auth-header{max-width:1180px;margin:0 auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between}.provider-auth-main{max-width:1100px;margin:0 auto;min-height:calc(100vh - 94px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:70px;align-items:center;padding:42px 30px 80px}.provider-auth-intro h1{font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.04;margin:8px 0 18px;max-width:720px}.provider-auth-intro>p:last-of-type{font-size:1.03rem;line-height:1.7;color:#5d6a65;max-width:650px}.provider-auth-benefits{display:grid;gap:10px;margin-top:26px}.provider-auth-benefits span{display:flex;align-items:center;gap:9px;font-weight:800;color:#264c3f}.provider-auth-benefits .icon{color:#2f8a66}.provider-auth-card,.provider-claim-card{background:#fff;border:1px solid #dce6e1;border-radius:20px;box-shadow:0 22px 60px rgba(20,62,51,.13);padding:25px}.provider-auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#edf3f0;padding:4px;border-radius:11px;margin-bottom:20px}.provider-auth-tabs button{border:0;background:transparent;border-radius:8px;padding:10px;font-weight:900;color:#65716c;cursor:pointer}.provider-auth-tabs button.is-active{background:#fff;color:#173e33;box-shadow:0 2px 8px rgba(16,32,57,.08)}.provider-auth-form{display:grid;gap:15px}.provider-auth-form label{display:grid;gap:6px;font-size:.8rem;font-weight:900;color:#34463f}.provider-auth-form input{border:1px solid #cbd7d2;border-radius:10px;padding:12px;font:inherit}.provider-auth-form small{font-weight:500;color:#6a7671}.provider-inline-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.provider-auth-submit{width:100%;justify-content:center;margin-top:4px}.provider-auth-notice{background:#eef7f2;border:1px solid #c9e5d6;color:#285f49;border-radius:10px;padding:11px 13px;margin-bottom:13px}.provider-claim-main{display:grid;place-items:center;min-height:calc(100vh - 90px);padding:30px}.provider-claim-card{width:min(620px,100%);text-align:center;padding:36px}.provider-claim-card h1{font-size:1.8rem;margin:8px 0 10px}.provider-claim-card>p{color:#68746f}.provider-claim-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#e5f4ec;color:#267052;margin:0 auto 18px}.provider-claim-icon .icon{width:32px;height:32px}.provider-claim-details{display:grid;gap:7px;text-align:left;background:#f4f7f5;border-radius:12px;padding:15px;margin:18px 0}.provider-claim-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
@media(max-width:1040px){.provider-shell{grid-template-columns:230px minmax(0,1fr)}.provider-content{padding-inline:22px}.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-auth-main{gap:35px}.provider-record{grid-template-columns:minmax(0,1fr) auto}.provider-record__meta{grid-column:1/2}.provider-record__actions{grid-row:1/3;grid-column:2}}
@media(max-width:760px){.provider-shell{display:block}.provider-sidebar{display:none}.provider-menu-button{display:inline-flex}.provider-header__inner{padding:10px 15px;min-height:68px}.provider-header__title p{display:none}.provider-header__actions{max-width:47%}.provider-switcher{min-width:0;width:100%;font-size:.75rem}.provider-status-pill{display:none}.provider-content{padding:18px 14px 38px}.provider-welcome{padding:19px;display:block}.provider-welcome__actions{justify-content:flex-start;margin-top:15px}.provider-mobile-menu{display:block;position:fixed;z-index:70;inset:0 auto 0 0;width:min(320px,88vw);background:#173e33;color:#fff;padding:18px;transform:translateX(-105%);transition:transform .2s}.provider-mobile-menu.is-open{transform:none}.provider-mobile-menu__head{display:flex;align-items:center;justify-content:space-between}.provider-grid{grid-template-columns:1fr 1fr}.provider-record{display:block}.provider-record__meta{margin:10px 0}.provider-record__actions{justify-content:flex-start;margin-top:12px}.provider-form-grid{grid-template-columns:1fr}.provider-field.is-wide{grid-column:auto}.provider-auth-header{padding:18px}.provider-auth-main{display:block;padding:28px 18px 55px}.provider-auth-intro{margin-bottom:28px}.provider-auth-intro h1{font-size:2.2rem}.provider-auth-card{padding:19px}.provider-claim-card{padding:25px 18px}}
@media(max-width:420px){.provider-grid{grid-template-columns:1fr}.provider-header__title h1{font-size:1rem}.provider-header__actions{max-width:44%}.provider-welcome h2{font-size:1.25rem}}


/* Development-only one-click provider and administrator workflow simulations. */
.provider-development-login{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:15px;border:1px dashed #aabbb4;border-radius:10px;background:#f5f8f7}.provider-development-login strong,.provider-development-login p{display:block;margin:0}.provider-development-login p{margin-top:3px;color:#62706b;font-size:.78rem;line-height:1.45}.provider-development-login .soft-button{flex:0 0 auto;white-space:nowrap}@media(max-width:620px){.provider-development-login{display:grid}.provider-development-login .soft-button{width:100%;justify-content:center}}
