body{background:#f3f6f7}.portal-header{background:white;max-width:none}.portal-header nav{margin-left:auto}.portal{max-width:1180px;margin:48px auto;padding:0 24px}.portal h1{font-size:42px;letter-spacing:-1.5px;line-height:1.15}.portal h2{font-size:26px;letter-spacing:-.6px}.portal h3{margin:0 0 12px}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:28px;margin-bottom:22px}.login{max-width:460px;margin:60px auto}.login form,.panel form{padding:0;background:transparent}.portal-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.request-list{display:grid;gap:10px}.request-card{display:block;width:100%;text-align:left;padding:18px;border:1px solid var(--border);border-radius:9px;background:white;color:var(--ink);cursor:pointer}.request-card:hover{border-color:#6f9b3c}.request-card strong,.request-card span{display:block}.request-card span{font-size:14px;color:var(--muted);margin-top:4px}.badge{display:inline-block;padding:5px 12px;border-radius:20px;background:#dff5c6;color:#345b18;font-size:14px;font-weight:600;margin:12px 0}.timeline{list-style:none;padding:0;margin:25px 0 0}.timeline li{padding:18px 0 18px 20px;border-left:2px solid #c2d2c4}.timeline p{margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.timeline time,.muted{font-size:14px;color:var(--muted)}.internal{background:#f3f6f7;padding:10px;border-radius:5px}.portal input:not([type=checkbox]),.portal select,.portal textarea{font-weight:400;min-height:48px}.portal select{appearance:auto}.portal label{font-size:14px}.portal [hidden]{display:none!important}.portal-message{color:#a82b25;white-space:pre-wrap}.portal .success{color:#315b13}.portal-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.secondary{background:white;border:1px solid var(--border)}.tracking-link{display:block;overflow-wrap:anywhere;word-break:break-all;font-size:14px;text-decoration:underline;margin-top:15px}.portal-details{white-space:pre-wrap;overflow-wrap:anywhere}.portal .button:disabled{opacity:.55}.portal .form-protection{margin:18px 0}footer{background:white}@media(max-width:760px){.portal{margin:30px auto;padding:0 16px}.portal-grid{grid-template-columns:1fr}.panel{padding:20px}.portal h1{font-size:34px}.portal-header nav{display:flex;font-size:13px;gap:14px}.portal-header .brand{font-size:18px}.login{margin:30px auto}}

.media-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}.media-section .button{margin:8px 10px 8px 0}.media-section input[type=file]{padding:12px;width:100%;font-size:14px}.media-section form{margin-bottom:16px}

.reply-form{margin-top:24px;padding-top:20px!important;border-top:1px solid var(--border)}.customer-message{background:#edf6e6;border-left-color:#76a84b!important;border-radius:0 8px 8px 0;padding-right:14px!important}.request-card .reply-badge{color:#355d1d;font-weight:700}

.quote-section{padding:22px;margin:22px 0;border:1px solid #a6c786;border-radius:10px;background:#f6fbf1}.quote-total{font-size:30px;font-weight:800;margin:14px 0}.quote-warning{padding:12px;background:#fff4cd;border-radius:6px}.quote-section form{margin-top:20px}.quote-section details{margin-top:20px}.quote-section summary{cursor:pointer;font-weight:600}.quote-section .button{margin:8px 10px 8px 0}

.portal-header nav{align-items:center;flex-wrap:wrap}.portal-header [hidden]{display:none!important}.menu-logout{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.menu-logout:hover{color:#48771b}.menu-logout:focus-visible{outline:2px solid #6f9b3c;outline-offset:5px;border-radius:2px}@media(max-width:760px){.portal-header{flex-wrap:wrap}.portal-header nav{justify-content:flex-end}}

.settings-grid{display:grid;gap:22px;grid-template-columns:1fr 1fr}.settings-grid>.panel{margin:0}.settings-wide{grid-column:1/-1}.admin-account{padding:18px 0;border-top:1px solid var(--border)}.admin-account summary{font-size:16px}.settings-grid input[type=checkbox]{width:auto;display:inline-block}.settings-grid .consent{align-items:center}.settings-grid form{margin-top:18px}.settings-grid .button{margin:0 8px 8px 0}@media(max-width:760px){.settings-grid{grid-template-columns:1fr}}

.portal-header [aria-current=page]{color:#48771b;text-decoration:underline;text-underline-offset:5px}
