.review-page{background:var(--surface-canvas)}
.review-main{padding:56px 24px 96px}
.review-intro{max-width:960px;margin:0 auto 40px;text-align:center}
.review-back{display:inline-block;margin-bottom:28px;color:var(--text-muted);font-size:var(--text-body-sm)}
.review-intro h1{font-family:var(--font-serif-display);font-weight:var(--weight-semibold);font-size:clamp(38px,4.2vw,60px);line-height:1.06;letter-spacing:-.02em;margin:0 0 24px;text-wrap:balance}
.review-intro>p{max-width:60ch;margin:0 auto;font-size:var(--text-body-lg);line-height:1.6;color:var(--text-body)}
.review-paper{max-width:960px;margin:auto;padding:40px 48px;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:12px}
.review-guidance,.review-hint{font-size:var(--text-body-sm);color:var(--text-muted);line-height:1.5}
.review-guidance{margin:0 0 32px}
.review-page fieldset{min-width:0;margin:0 0 36px;padding:0 0 36px;border:0;border-bottom:1px solid var(--border-hairline)}
.review-page legend{width:100%;padding:0 0 24px;font:var(--weight-semibold) 28px/1.2 var(--font-serif-display);color:var(--text-heading)}
.review-page legend>span{display:inline-block;margin-right:12px;color:var(--gold-700);font:var(--weight-medium) 13px/1 var(--font-sans-ui);vertical-align:middle}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.review-wide{grid-column:1/-1}
.review-page label{display:block;min-width:0;font-size:var(--text-body-sm);color:var(--text-heading);font-weight:var(--weight-medium)}
.review-page label>span{font-weight:var(--weight-regular);color:var(--text-muted)}
.review-page input:not([type=checkbox]),.review-page select,.review-page textarea{display:block;width:100%;min-width:0;box-sizing:border-box;margin:8px 0 0;padding:11px 12px;min-height:48px;font:16px/1.5 var(--font-sans-ui);color:var(--text-heading);background:var(--white);border:1px solid var(--border-strong);border-radius:4px}
.review-page input:disabled{background:var(--surface-canvas);color:var(--text-muted)}
.review-page textarea{resize:vertical}
.review-hint{margin:8px 0 0}
.review-page .review-check{display:flex;align-items:flex-start;gap:10px;min-height:44px;box-sizing:border-box;padding:10px 0;line-height:1.5;font-weight:var(--weight-regular);margin:12px 0 0;cursor:pointer}
.review-check input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--navy-900)}
.review-page .review-agreement{margin:0 0 28px}
.review-file{padding:20px;border:1px dashed var(--border-strong);border-radius:4px}
.review-file input{border:0!important;padding:8px 0!important;overflow-wrap:anywhere}
.review-file input::file-selector-button{padding:8px 12px;margin-right:12px;border:1px solid var(--border-strong);border-radius:3px;background:var(--surface-canvas);color:var(--text-heading);font:inherit;cursor:pointer}
.review-error{color:#9f3027;font-size:var(--text-body-sm);margin:8px 0 0}
.review-error:empty{display:none}
.review-submit{display:inline-flex;gap:24px;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:1px solid var(--navy-900);border-radius:var(--radius-sm);background:var(--navy-900);color:var(--white);font:var(--weight-semibold) var(--text-body-sm)/1.4 var(--font-sans-ui);cursor:pointer}
.review-submit span{color:var(--gold-400)}
.review-submit:hover{background:var(--navy-700)}
.review-submit:disabled{opacity:.6;cursor:not-allowed}
.review-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.review-summary .review-actions{gap:14px}
.review-secondary{background:transparent;color:var(--navy-900)}
.review-secondary:hover{background:var(--surface-canvas)}
.review-main :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--gold-700);outline-offset:4px}
.review-summary h2{font:var(--weight-semibold) 36px/1.15 var(--font-serif-display);margin:0 0 16px}
.review-summary>p{color:var(--text-body)}
.review-summary dl{margin:28px 0}
.review-summary dl>div{display:grid;grid-template-columns:1fr 2fr;gap:24px;padding:14px 0;border-bottom:1px solid var(--border-hairline)}
.review-summary dt{font-weight:var(--weight-medium)}
.review-summary dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.review-page [hidden]{display:none!important}
@media(max-width:640px){.review-main{padding:32px 16px 64px}.review-intro{margin-bottom:28px}.review-paper{padding:24px 20px}.review-grid{grid-template-columns:1fr;gap:20px}.review-page legend{font-size:25px}.review-submit{width:100%}.review-summary dl>div{grid-template-columns:1fr;gap:6px}.review-file{padding:14px}.review-intro>p{font-size:16px}}
