/* Actor portals extend the application's existing neutral/forest visual system. */
.portal-entry{margin:32px 0}.portal-entry>h2{font-size:clamp(23px,3vw,34px);margin:8px 0}.portal-entry>p{max-width:760px;color:#5d685b;line-height:1.6}.portal-entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:20px}.portal-entry-card{display:flex!important;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;padding:20px!important;min-height:220px;background:#fff!important;border:1px solid #dce2d5!important;border-radius:16px!important;transition:transform .15s,border-color .15s}.portal-entry-card:hover{transform:translateY(-3px);border-color:#54714c!important}.portal-entry-card.selected{border:2px solid #31562d!important;background:#f0f5e9!important}.portal-entry-card strong{font-size:17px}.portal-entry-card>span:not(.portal-icon){font-size:13px;line-height:1.55;color:#5d685b;font-weight:400}.portal-entry-card small{margin-top:auto;color:#35542d}.portal-icon{display:grid;place-items:center;width:36px;height:36px;font-size:23px;color:#31542d;background:#eff3e8;border-radius:10px}.portal-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;padding:36px;border-radius:22px;background:#203f2d;color:#fff;margin-bottom:18px}.portal-hero .eyebrow{color:#cbdc9d}.portal-hero h1{font-size:clamp(27px,3.3vw,44px);line-height:1.15;margin:13px 0}.portal-hero p{color:#dbe7d8;max-width:530px;line-height:1.6}.portal-hero .primary{background:#e4edb6;color:#263d2a;border-color:#e4edb6}.portal-hero .actions>button:not(.primary){background:transparent;color:#fff;border-color:#6a866a}.portal-journey{list-style:none;display:flex;flex-direction:column;justify-content:center;gap:0;padding:0;margin:0}.portal-journey li{display:flex;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid #52705a;font-size:15px}.portal-journey li:last-child{border-bottom:0}.portal-journey span{font-size:12px;letter-spacing:1px;color:#cbdc9d;border:1px solid #718a5f;border-radius:50%;padding:10px}.portal-limit{background:#fcf4df;border:1px solid #ead8aa;border-radius:12px;padding:15px 18px;color:#6b5422;font-size:13px;line-height:1.65;margin-bottom:22px}.portal-limit strong{display:block}.portal-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0 30px}.portal-metrics>div{border:1px solid #dde3d7;background:#fff;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:7px}.portal-metrics strong{font-size:32px;font-weight:650;color:#25452c}.portal-metrics span{font-size:14px;font-weight:600}.portal-metrics small{font-size:11px;color:#677363;line-height:1.4}.portal-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}.portal-section-head h2{margin:8px 0}.portal-section-head>.muted{font-size:12px;max-width:330px}.portal-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 30px}.portal-action{position:relative;display:block;padding:22px 20px 36px;text-decoration:none;color:#283d2b;border:1px solid #d9e0d2;background:#f6f8f1;border-radius:14px;min-height:205px}.portal-action:hover{background:#ecf2df;border-color:#7d946c}.portal-action-number{font-size:11px;letter-spacing:1px;color:#708464}.portal-action h3{font-size:17px;margin:16px 0 8px;line-height:1.35}.portal-action p{font-size:13px;line-height:1.6;color:#5d6d58;margin:0}.portal-action-arrow{position:absolute;right:18px;bottom:12px;font-size:20px}.portal-filter{display:flex;align-items:center;gap:12px;font-size:13px;margin:20px 0}.portal-filter select{max-width:270px}.portal-dossier-list{display:flex;flex-direction:column;gap:8px}.portal-dossier{display:grid!important;grid-template-columns:minmax(160px,1fr) auto minmax(100px,160px) 20px;gap:14px;align-items:center;text-align:left;padding:16px!important;background:#fafbf7!important;border:1px solid #dce3d6!important;border-radius:12px!important;width:100%;font-weight:400!important}.portal-dossier:hover,.portal-dossier.selected{border-color:#78946a!important;background:#f0f5e9!important}.portal-dossier small{display:block;color:#6e7968;margin-top:5px;font-size:11px;overflow-wrap:anywhere}.portal-updated{color:#6e7968;font-size:11px}.portal-status{display:inline-block;width:fit-content;padding:5px 10px;border-radius:20px;font-size:11px;background:#e9ede4;color:#47533d;font-weight:600;white-space:nowrap}.portal-status-submitted,.portal-status-under_review{background:#e7eef8;color:#315475}.portal-status-approved{background:#e2efdb;color:#32592e}.portal-status-changes_requested{background:#fcf0d5;color:#795a1e}.portal-status-rejected{background:#fae4dc;color:#8b3b24}.portal-empty{padding:25px 16px;text-align:center;background:#f7f8f4;border:1px dashed #d9e0d1;border-radius:10px;color:#67735e;font-size:14px;line-height:1.6}.portal-error{padding:15px;background:#fff0ed;color:#8b3023;border-radius:10px;margin:15px 0}.portal-detail{scroll-margin-top:20px}.portal-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.portal-facts dt{font-size:12px;color:#6b765f;margin-bottom:7px}.portal-facts dd{font-size:14px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.portal-documents{list-style:none;padding:0}.portal-documents li{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e5e8de}.portal-documents strong{overflow-wrap:anywhere}.portal-documents small{display:block;font-size:11px;color:#687360;margin-top:5px}.portal-history{list-style:none;padding:0;border-left:2px solid #d8e2cd;margin-left:5px}.portal-history li{padding:10px 0 10px 20px;font-size:13px}.portal-history span{display:block;color:#6e7968;font-size:11px;margin-top:5px}.portal-history p{margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}.portal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-wide{grid-column:1/-1}.portal-form label{display:flex;flex-direction:column;gap:8px;font-size:13px}.portal-form input,.portal-form select,.portal-form textarea{width:100%;box-sizing:border-box;font:inherit}.portal-form textarea{resize:vertical;min-height:90px}.portal-form .actions{margin-top:18px}.portal-form .muted{font-size:13px;line-height:1.6}.portal-form [role=alert]:empty{margin:0}.portal-entry-card:focus-visible,.portal-action:focus-visible,.portal-dossier:focus-visible{outline:3px solid #a66b17;outline-offset:3px}#actor-portal button:disabled{opacity:.55;cursor:wait}.account-login:has(.portal-entry){max-width:1160px!important}.account-login:has(.portal-entry)>.card,.account-login:has(.portal-entry)>.auth-tabs{max-width:650px;margin-left:auto;margin-right:auto}
@media(max-width:1100px){.portal-action-grid{grid-template-columns:repeat(2,1fr)}.portal-metrics{grid-template-columns:repeat(2,1fr)}.portal-dossier{grid-template-columns:minmax(130px,1fr) auto 20px}.portal-updated{display:none}}
@media(max-width:650px){.portal-hero{grid-template-columns:1fr;padding:23px;gap:12px}.portal-hero h1{font-size:30px}.portal-journey li{padding:11px 0}.portal-action-grid{gap:10px}.portal-action{padding:16px 13px 34px;min-height:220px}.portal-action h3{font-size:15px}.portal-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portal-entry-card{padding:14px!important;min-height:245px}.portal-entry-card strong{font-size:15px}.portal-metrics{gap:10px}.portal-metrics>div{padding:15px}.portal-section-head{align-items:flex-start}.portal-dossier{grid-template-columns:1fr 18px;gap:10px}.portal-dossier>.portal-status{grid-column:1;grid-row:2}.portal-dossier>span:last-child{grid-column:2;grid-row:1}.portal-form-grid,.portal-facts{grid-template-columns:1fr}.portal-documents li{align-items:flex-start;flex-direction:column}.portal-filter{align-items:flex-start;flex-direction:column}.portal-entry-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.portal-entry-card{transition:none}}
