/* Functional surfaces reuse the approved Ocean typography, palette and controls. */
.portal{min-height:100vh;display:flex;flex-direction:column}.portal main{flex:1;width:100%}.portal footer{padding-top:0}.portal-wrap{padding-top:52px;padding-bottom:72px}.portal-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.portal h1{color:var(--blue);font-size:49px;margin:0 0 12px;line-height:1.15;letter-spacing:-2px}.portal .eyebrow{margin-bottom:15px}.portal-heading p{margin:0;color:#426da7}.portal .panel{border:1px solid var(--line);padding:32px;background:white}.portal .panel h2{font-size:28px;letter-spacing:-1px;margin-bottom:18px}.portal .panel h3{margin-bottom:18px}.portal .subtle{color:#4972a7;font-size:14px}.portal .stepper{display:grid;grid-template-columns:repeat(5,1fr);padding:0;list-style:none;margin:0 0 30px;border-bottom:1px solid var(--line)}.stepper button{padding:16px 10px 16px 0;border:0;background:none;color:#5278aa;text-align:left;cursor:pointer;width:100%;border-bottom:3px solid transparent;font-size:14px}.stepper button[aria-current=step]{border-bottom-color:var(--blue);color:var(--blue);font-weight:600}.stepper button:disabled{cursor:default;opacity:.6}.stepper span{font-size:12px;margin-right:8px}.registration-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;align-items:start}.registration-layout form{padding:0}.portal label{font-size:14px;margin-bottom:23px}.portal input,.portal select,.portal textarea{font-size:16px;padding:13px}.portal .field-row{gap:22px}.portal .actions{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);padding-top:25px;margin-top:12px}.portal .actions .button{width:auto}.portal .button.outline{color:var(--blue);border-color:var(--line);background:white}.portal .button:disabled{cursor:wait;opacity:.6;transform:none}.portal .text-button{border:0;background:none;color:var(--blue);text-decoration:underline;font-size:14px;cursor:pointer;padding:5px 0}.portal .summary-card{background:var(--pale);padding:25px}.summary-card h3{font-size:18px}.summary-card p{font-size:14px}.summary-card hr{border:0;border-top:1px solid var(--line);margin:22px 0}.quote-label{font-size:24px;letter-spacing:-.5px}.message{padding:17px 20px;border-left:3px solid var(--blue);background:var(--pale);margin:0 0 24px;font-size:15px}.message:empty{display:none}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:25px}.service-option{position:relative;border:1px solid var(--line);padding:18px!important;margin:0!important;display:flex;align-items:center;gap:12px;cursor:pointer}.service-option:has(input:checked){border-color:var(--blue);background:var(--pale)}.service-option input{width:17px;height:17px;margin:0;accent-color:var(--blue)}.service-option span{font-size:15px}.consent{display:flex;align-items:start;gap:12px;font-weight:400}.consent input{width:18px;height:18px;margin-top:4px;flex-shrink:0;accent-color:var(--blue)}.consent span{line-height:1.6}.upload-box{padding:24px;background:var(--pale);margin-bottom:24px}.upload-box input{background:white}.document-list{list-style:none;padding:0;margin:0 0 25px}.document-list li{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.document-list strong{font-size:15px;display:block;font-weight:500;overflow-wrap:anywhere}.document-list small{font-size:13px}.review-section{padding:20px 0;border-bottom:1px solid var(--line)}.review-section:first-child{padding-top:0}.review-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.review-title h3{margin:0}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;margin:22px 0 10px}.details-grid div{min-width:0}.details-grid dt{font-size:12px;color:#4972a7;margin-bottom:3px}.details-grid dd{font-size:15px;margin:0;overflow-wrap:anywhere}.portal .reference{font-family:'Manrope',sans-serif;font-size:30px;letter-spacing:2px;color:var(--blue);margin:25px 0;padding:25px;background:var(--pale);overflow-wrap:anywhere}.confirmation{max-width:740px;margin:0 auto}.confirmation .actions{justify-content:start;flex-wrap:wrap}.tracking-grid{display:grid;grid-template-columns:380px 1fr;gap:30px;align-items:start}.tracking-grid form{padding:0}.tracking-grid .button{width:100%}.tracking-grid label{margin-bottom:22px}.status{display:inline-block;padding:5px 10px;border:1px solid #b6d2f8;background:var(--pale);color:var(--deep);font-size:13px;white-space:normal}.timeline{padding:0;list-style:none}.timeline li{padding:0 0 22px 24px;border-left:1px solid var(--line);position:relative}.timeline li:before{content:'';position:absolute;left:-4px;top:6px;width:7px;height:7px;border-radius:50%;background:var(--blue)}.timeline strong{font-size:15px;font-weight:500}.timeline time,.timeline small{display:block;font-size:12px;color:#4972a7}.timeline p{font-size:14px;margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.admin-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:28px 0}.admin-metrics>div{border:1px solid var(--line);padding:18px}.admin-metrics strong{display:block;font-size:30px;font-weight:400}.admin-metrics span{font-size:13px}.admin-toolbar{display:flex;gap:16px;align-items:end;padding:0;margin-bottom:25px;flex-wrap:wrap}.admin-toolbar label{margin:0;flex:1;min-width:170px}.admin-toolbar .button{width:auto}.table-wrap{overflow-x:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}th{font-size:12px;background:var(--pale);font-weight:500}td,th{padding:16px;border-bottom:1px solid var(--line)}td a{color:var(--blue);text-decoration:underline;white-space:nowrap}.admin-detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.admin-detail .panel{margin-bottom:24px}.admin-detail form{padding:0}.admin-detail form .button{width:100%}.admin-detail textarea{min-height:100px}.portal .inline-links{display:flex;gap:20px;align-items:center;font-size:14px;flex-wrap:wrap}.empty-state{padding:35px;text-align:center;color:#4972a7}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:20px}.notification-note{font-size:14px;background:var(--pale);padding:13px 18px;margin-bottom:20px}.login-panel{max-width:610px;margin:25px auto}.login-panel .button{margin-top:15px}.portal input:invalid:not(:placeholder-shown){box-shadow:none}.portal [hidden]{display:none!important}.portal .minor{font-size:13px;color:#4972a7}.mobile-track{display:none}@media(max-width:950px){.registration-layout{grid-template-columns:minmax(0,1fr) 220px}.tracking-grid{grid-template-columns:320px 1fr}.admin-detail{grid-template-columns:1fr}.admin-metrics{grid-template-columns:repeat(3,1fr)}.admin-detail aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}}@media(max-width:700px){.portal-wrap{padding-top:32px;padding-bottom:45px}.portal h1{font-size:37px}.portal-heading{display:block}.portal-heading .inline-links{margin-top:18px}.registration-layout,.tracking-grid{grid-template-columns:1fr}.registration-layout aside{order:2}.portal .panel{padding:23px 20px}.stepper{gap:5px}.stepper button{font-size:12px;padding-right:2px}.stepper span{display:block;margin-bottom:5px}.service-options{grid-template-columns:1fr}.portal .field-row{grid-template-columns:1fr;gap:0}.portal .details-grid{grid-template-columns:1fr 1fr;gap:16px}.portal .actions{flex-wrap:wrap}.portal .actions .button{flex:1;justify-content:center;gap:20px}.portal .reference{font-size:21px;letter-spacing:1px;padding:20px 12px}.admin-metrics{grid-template-columns:repeat(2,1fr);gap:10px}.admin-metrics>div{padding:14px}.admin-detail aside{display:block}.portal .form-top{margin-bottom:20px}.document-list li{align-items:start}.mobile-track{display:block}.portal .summary-card{padding:22px}.tracking-grid .panel{min-width:0}.admin-toolbar{display:block}.admin-toolbar label{margin-bottom:14px}.portal .admin-toolbar .button{width:100%}.portal .footer-bottom{font-size:12px}.portal label{margin-bottom:20px}}
.admin-reviews{margin-top:28px}.admin-review{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.admin-review:last-child{border-bottom:0}.admin-review p{margin:7px 0;color:#426da7}.admin-review small{color:#718db4}@media(max-width:700px){.admin-review{display:block}.admin-review .inline-links{margin-top:12px}}

/* Administration workspace */
.admin-nav{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line);margin:0 0 34px;padding:0 0 14px;overflow-x:auto;scrollbar-width:thin}.admin-nav a{display:inline-flex;align-items:center;min-height:40px;color:#4972a7;text-decoration:none;font-size:14px;padding:9px 14px;white-space:nowrap;border:1px solid transparent;border-radius:2px}.admin-nav a:hover{color:var(--blue);background:#faf9f6}.admin-nav a[aria-current=page]{color:var(--blue);background:var(--pale);border-color:var(--line);font-weight:600}.admin-account{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;font-size:13px}.admin-role{padding:4px 8px;background:var(--pale);border:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.6px}.admin-metrics-six{grid-template-columns:repeat(6,1fr)}.admin-metrics-compact{grid-template-columns:repeat(3,minmax(0,180px));justify-content:start}.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:24px;margin:26px 0}.admin-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.admin-section-head h2{margin:0!important}.admin-section-head .eyebrow{margin-bottom:8px}.attention-list,.quick-actions{display:grid}.attention-list a,.quick-actions a{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;text-decoration:none;color:var(--blue);padding:15px 0;border-bottom:1px solid var(--line)}.attention-list a:last-child,.quick-actions a:last-child{border-bottom:0}.attention-list strong{font-size:24px;font-weight:400}.attention-list b{font-size:12px;font-weight:500}.quick-actions a{grid-template-columns:1fr auto}.admin-recent{margin-top:0}.admin-loading{min-height:140px}.admin-reviews,.admin-access{margin-top:24px}
@media(max-width:950px){.admin-metrics-six{grid-template-columns:repeat(3,1fr)}.admin-dashboard-grid{grid-template-columns:1fr}.admin-metrics-compact{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.admin-nav{margin-top:-8px;margin-bottom:24px}.admin-account{justify-content:flex-start;margin-top:18px}.admin-metrics-six,.admin-metrics-compact{grid-template-columns:repeat(2,1fr)}.admin-section-head{display:block}.admin-section-head .text-button{display:inline-block;margin-top:10px}.attention-list a{grid-template-columns:38px 1fr auto}}

/* Functional portal header must remain in document flow. The public homepage header intentionally overlays its hero. */
.portal > header{position:relative;top:auto;left:auto;right:auto;z-index:30;background:var(--blue);color:#fff}
.portal > header .brand,.portal > header nav a{color:#fff}
.portal > header .brandmark-yacht svg{fill:currentColor}
.portal > header .button.light{background:#fff;color:var(--blue)}

/* Admin case management */
.case-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);margin:0 0 28px;background:var(--pale)}.case-summary>div{padding:16px 18px;border-right:1px solid var(--line);min-width:0}.case-summary>div:last-child{border-right:0}.case-summary span.subtle{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.7px;margin-bottom:6px}.case-summary strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.case-workspace .panel hr,.case-controls hr{border:0;border-top:1px solid var(--line);margin:30px 0}.case-controls{position:sticky;top:22px}.case-controls form+hr{margin-top:30px}.case-controls .button{width:100%}.internal-notes{margin-top:28px;border-top:1px solid var(--line)}.internal-notes article{padding:18px 0;border-bottom:1px solid var(--line)}.internal-notes article p{white-space:pre-wrap;margin:0 0 8px}.internal-notes article small,.case-activity small{color:#718db4}.case-activity{list-style:none;padding:0;margin:0}.case-activity li{position:relative;padding:0 0 22px 20px;border-left:1px solid var(--line)}.case-activity li:before{content:'';position:absolute;left:-4px;top:6px;width:7px;height:7px;border-radius:50%;background:var(--blue)}.case-activity strong,.case-activity span,.case-activity small{display:block}.case-activity strong{font-size:13px}.case-activity span{font-size:13px;margin:4px 0;overflow-wrap:anywhere}.case-activity small{font-size:11px}.admin-toolbar label{min-width:150px}
@media(max-width:950px){.case-summary{grid-template-columns:repeat(3,1fr)}.case-summary>div:nth-child(3){border-right:0}.case-summary>div{border-bottom:1px solid var(--line)}.case-summary>div:nth-last-child(-n+2){border-bottom:0}.case-controls{position:static}}
@media(max-width:700px){.case-summary{grid-template-columns:1fr 1fr}.case-summary>div,.case-summary>div:nth-child(3){border-right:1px solid var(--line)}.case-summary>div:nth-child(even){border-right:0}.case-summary>div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.case-summary>div:last-child{border-bottom:0}.admin-toolbar label{min-width:0}}
