.brief-portal{padding-block:var(--space-48) var(--space-80);scroll-margin-top:var(--space-24)}
.brief-toolbar{display:flex;justify-content:space-between;gap:var(--space-24);align-items:center;margin-bottom:var(--space-32)}
.brief-toolbar>p:first-child{font-weight:550;font-size:var(--font-size-17)}
#brief-save-status{font-size:var(--font-size-13);color:var(--muted);line-height:1.6}
.brief-nav{margin-bottom:var(--space-64)}
.brief-nav ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-16);list-style:none;padding:0;margin:0}
.brief-nav button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:var(--space-12);width:100%;padding:var(--space-16) 0;border-top:2px solid var(--rule);font-size:var(--font-size-15);line-height:1.45;min-height:96px;color:var(--muted)}
.brief-nav button[aria-current=step]{border-color:var(--ink);color:var(--ink);font-weight:550}
.brief-step-number{font-size:var(--font-size-13);font-variant-numeric:tabular-nums}
.brief-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--column-space);align-items:start}
.brief-step-intro h2{font-size:var(--type-section);line-height:1.08;margin:var(--space-24) 0;max-width:550px;text-wrap:balance}
.brief-step-intro>p:not(.eyebrow):not(.brief-reassurance){font-size:var(--font-size-18);line-height:1.65;color:var(--muted);max-width:470px}
.brief-step-intro .brief-reassurance{line-height:1.65;color:var(--muted);font-size:var(--font-size-15);margin-top:var(--space-28);max-width:390px}
.brief-step-content{min-width:0}
.brief-field+.brief-field{margin-top:var(--space-28)}
.brief-field label{display:block;font-size:var(--font-size-16);font-weight:550;line-height:1.5;margin-bottom:var(--space-10)}
.brief-field label span{font-weight:400;color:var(--muted);font-size:var(--font-size-14)}
.brief-hint{font-size:var(--font-size-14);line-height:1.6;color:var(--muted);margin:0 0 var(--space-12)}
.brief-field :is(input,textarea,select){display:block;width:100%;min-height:54px;border:1px solid var(--muted);background:var(--paper);color:var(--ink);border-radius:var(--radius-control);font:400 var(--font-size-16)/1.5 var(--sans);padding:var(--space-12) var(--space-16)}
.brief-field textarea{resize:vertical;min-height:112px}
.brief-field :is(input,textarea,select):focus-visible{outline:var(--focus-width) solid var(--bronze);outline-offset:var(--space-4)}
.brief-field [aria-invalid=true]{border:2px solid var(--bronze)}
.brief-field-error{font-size:var(--font-size-14);line-height:1.5;margin-top:var(--space-8);color:var(--ink)}
.brief-repeater{border-top:1px solid var(--rule);margin-top:var(--space-40);padding-top:var(--space-32)}
.brief-repeater h3{font:550 var(--font-size-22)/1.4 var(--sans);letter-spacing:-.02em;margin-bottom:var(--space-12)}
.brief-row{min-width:0;margin:var(--space-28) 0;padding:var(--space-24);border:1px solid var(--rule);background:var(--pale);border-radius:var(--radius-control)}
.brief-row legend{font-size:var(--font-size-15);font-weight:550;padding-inline:var(--space-8);margin-left:calc(-1 * var(--space-8))}
.brief-row .brief-field+.brief-field{margin-top:var(--space-20)}
.brief-row-remove{margin-top:var(--space-24)}
.brief-portal button.text-link{padding:0;font-size:var(--font-size-15);text-align:left}
.brief-row-status{font-size:var(--font-size-14);line-height:1.6;color:var(--muted);margin-top:var(--space-12)}
.brief-actions{width:calc((100% - var(--column-space))/2);margin:var(--space-40) 0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-24)}
.brief-actions .button:only-child{margin-left:auto}
.brief-actions .button{margin-left:auto}
.brief-send-status{width:calc((100% - var(--column-space))/2);margin:var(--space-12) 0 0 auto;font-size:var(--font-size-14);color:var(--muted);line-height:1.6;min-height:24px}
.brief-actions .button:disabled{background:var(--action-hover);color:var(--paper);cursor:wait}
.brief-nav button:disabled{cursor:wait}
.brief-error-summary{background:var(--pale);border-left:3px solid var(--bronze);padding:var(--space-20);margin:0 0 var(--space-32);font-size:var(--font-size-16);line-height:1.6}
.brief-error-summary a{text-decoration:underline;text-underline-offset:3px}
.brief-error-summary ul{margin-top:var(--space-8);padding-left:var(--space-20)}
.brief-review{margin-top:var(--space-40);border-top:1px solid var(--rule)}
.brief-review details{border-bottom:1px solid var(--rule);padding:var(--space-24) 0}
.brief-review summary{cursor:pointer;min-height:44px;font-size:var(--font-size-18);font-weight:550;line-height:1.5}
.brief-review dl{margin:var(--space-16) 0 var(--space-24);overflow-wrap:anywhere}
.brief-review dt{font-size:var(--font-size-14);font-weight:550;margin-top:var(--space-20)}
.brief-review dd{font-size:var(--font-size-16);color:var(--muted);line-height:1.65;white-space:pre-wrap;margin:var(--space-8) 0 0}
.brief-review-empty{font-size:var(--font-size-15);color:var(--muted);margin-bottom:var(--space-20)}
.brief-privacy{font-size:var(--font-size-13);line-height:1.65;color:var(--muted);margin-top:var(--space-28)}
.brief-privacy a{text-decoration:underline;text-underline-offset:3px}
.brief-draft-controls{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-32);border-top:1px solid var(--rule);margin-top:var(--space-48);padding-top:var(--space-28)}
.brief-draft-controls>button{flex:none;white-space:nowrap}
.brief-draft-controls p{max-width:560px;color:var(--muted);font-size:var(--font-size-13);line-height:1.65}
.brief-clear-confirm{padding:var(--space-24);background:var(--pale);margin-top:var(--space-24)}
.brief-clear-confirm p{margin-bottom:var(--space-16);font-size:var(--font-size-17)}
.brief-clear-confirm button+button{margin-left:var(--space-28)}
.brief-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.brief-receipt{max-width:680px;margin-inline:auto;padding-block:var(--space-48)}
.brief-receipt h2{font-size:var(--type-section);line-height:1.1;margin:var(--space-24) 0}
.brief-receipt p:not(.eyebrow){font-size:var(--font-size-17);line-height:1.65;color:var(--muted);margin-bottom:var(--space-24);overflow-wrap:anywhere}
.brief-local-notice{background:var(--pale);padding:var(--space-20)}
.brief-portal [hidden]{display:none!important}
@media(max-width:1100px){.brief-nav ol{gap:var(--space-12)}.brief-nav button{font-size:var(--font-size-14)}.brief-step-intro>p:not(.eyebrow):not(.brief-reassurance){font-size:var(--font-size-17)}}
@media(max-width:800px){.brief-step{grid-template-columns:1fr;gap:var(--space-32)}.brief-step-intro>p:not(.eyebrow):not(.brief-reassurance){max-width:600px}.brief-step-intro .brief-reassurance{max-width:600px;margin-top:var(--space-16)}.brief-actions,.brief-send-status{width:100%}.brief-nav{margin-bottom:var(--space-40)}.brief-toolbar{align-items:flex-start;flex-direction:column;gap:var(--space-8)}.brief-row{padding:var(--space-24)}}
@media(max-width:600px){.brief-portal{padding-block:var(--space-32) var(--space-56)}.brief-nav ol{display:flex;flex-wrap:wrap;gap:var(--space-8)}.brief-nav li{flex:1 1 calc((100% - 2 * var(--space-8))/3)}.brief-nav button{flex-direction:row;align-items:flex-start;min-height:64px;gap:var(--space-8);padding-block:var(--space-12);font-size:var(--font-size-12)}.brief-step-intro h2{font-size:var(--font-size-40)}.brief-row{padding:var(--space-16)}.brief-actions{gap:var(--space-16);flex-wrap:wrap}.brief-actions [data-brief-submit]{width:100%;margin-top:var(--space-8)}.brief-draft-controls{flex-direction:column;gap:var(--space-16)}.brief-clear-confirm button{display:block}.brief-clear-confirm button+button{margin:var(--space-16) 0 0}}
@media(forced-colors:active){.brief-field :is(input,textarea,select),.brief-row{border-color:ButtonText}.brief-nav button[aria-current=step]{border-color:Highlight}.brief-actions .button:disabled{color:GrayText}}
