/* Visual system shared by the three tools. No workflow or control changes. */
:root{--paper:#f1efea;--ink:#24251f;--muted:#62665c;--line:#dedfd5;--accent:#ad432e;--accent-hover:#913623;--surface:#fffdf9;--card-radius:24px;--field-radius:14px;--job-surface:#e5e9e0;--application-surface:#f3e2d8;--cv-surface:#eae1cd}
.app-layout .site-header{padding:26px 24px 22px;min-height:96px;border-bottom:1px solid #dedfd580}
.top-navigation{gap:6px}.top-navigation button{padding:10px 14px;border:1px solid transparent;border-radius:999px;font-size:13px;color:#62665c;transition:background .15s,color .15s}.top-navigation button:hover{background:#e8e6de;color:var(--ink)}.top-navigation button.current{color:var(--ink);background:var(--surface);border-color:#d8d9ce;box-shadow:0 2px 4px #24251f05}.top-navigation button.current:after{display:none}.top-navigation [data-nav]:before{font:10px 'JetBrains Mono',monospace;color:#a0523b;margin-right:7px}.top-navigation .nav-divider{margin:0 7px;background:#d3d5ca}.top-navigation #delete-session{padding-right:0}
.app-layout .main-inner{padding-top:36px}.app-layout .intro{margin:0}.app-layout :is(.eyebrow,.feedback-kicker){font:10px/1.5 'JetBrains Mono',monospace;letter-spacing:.1em;color:var(--accent)}
.app-layout .intro h1{font:400 clamp(42px,4.6vw,60px)/1.04 'Instrument Serif',serif;letter-spacing:-.6px;margin:16px 0 0}.app-layout .intro h1 em{color:var(--accent)}
.app-layout .intro>p{font-size:15px;line-height:1.65;color:#5e6359;margin:0;max-width:430px}
.app-layout:is(.view-writer,.view-documents) .intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0 48px;align-items:end}.app-layout:is(.view-writer,.view-documents) .intro .eyebrow{grid-column:1/-1}.app-layout:is(.view-writer,.view-documents) .intro>p{margin-bottom:3px;align-self:end}
.app-layout .writer-layout,.app-layout .workspace.material-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;margin-top:36px;align-items:start}
.writer-main,.material-flow{gap:20px}.writer-card,.material-flow .compact-document,.material-rail{border-radius:var(--card-radius);border:1px solid #24251f05;padding:24px;box-shadow:none}.writer-card,.material-rail{background:var(--surface)}.writer-job,.material-flow .compact-document[data-kind=job]{background:var(--job-surface)}.writer-materials,.material-flow .compact-document[data-kind=cv]{background:var(--cv-surface)}.material-flow .compact-document[data-kind=application]{background:var(--application-surface)}
.writer-aside,.material-rail{top:24px}.material-rail-heading{margin:0 0 18px}.material-rail-heading>p{color:#62665c}.writer-section-header{margin-bottom:20px}.writer-section-header h2,.material-section-copy h2{font:400 32px/1.12 'Instrument Serif',serif;letter-spacing:-.2px;margin:12px 0}.writer-section-header p{color:#5e6359;font-size:13px;line-height:1.6}.material-section-copy h2{margin:0}.material-section-intro{grid-template-columns:minmax(0,1fr) 74px;gap:16px}.material-flow .document-illustration{width:74px;height:90px}.material-flow .illustration-sheet{transform:rotate(-3deg) scale(.8)}.material-flow .cv .illustration-sheet{transform:rotate(3deg) scale(.8)}
.writer-main .document-title h3,.material-flow .document-title h3{font:500 13px 'Hanken Grotesk',sans-serif;gap:7px}.material-flow .document-title h3>.icon,.writer-main .document-title h3>.icon{width:16px;height:18px}.material-section-number{height:24px;width:24px;font-size:9px;color:#686c60;border-color:#24251f25}.document-requirement,.material-flow .document-requirement{font-size:10px;color:#656b5e}
.writer-main .input-switch,.material-flow .input-switch{padding:3px;gap:0;border:1px solid #ffffff80;margin-bottom:10px;width:fit-content;background:#ffffff90}.writer-main .input-switch button,.material-flow .input-switch button{font-size:12px;line-height:18px;padding:7px 12px;color:#555e50}.writer-main .input-switch button[aria-pressed=true],.material-flow .input-switch button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 4px #24251f0b}
.writer-main .text-pane textarea,.material-flow .text-pane textarea{border:1px solid #bdc3b6;border-radius:var(--field-radius);background:#ffffffed;color:var(--ink);font:14px/1.65 'Hanken Grotesk',sans-serif;padding:16px}.writer-main .text-pane textarea::placeholder,.material-flow .text-pane textarea::placeholder{color:#65705e}.writer-job .text-pane textarea{min-height:180px}.writer-main .compact-text-count,.material-flow .compact-text-count{font:10px/1.5 'JetBrains Mono',monospace;color:#65705e;margin-top:8px}
.writer-main .compact-upload,.material-flow .compact-upload{border:1.5px dashed #aeb7a4;border-radius:var(--field-radius);background:#ffffffed}.material-flow .compact-upload{min-height:88px;padding:16px}.compact-upload .file-type{background:#eaf0e7;color:#4f7554}.compact-upload .file-description b{font-weight:500}.material-flow .document-input{gap:0}.writer-apps .input-switch button{padding:7px 9px}
.material-rail .material-nav-item,#writer-status .material-nav-item{display:grid;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:12px;border:1px solid #e1e3d9;border-radius:14px;background:#ffffff80;min-height:65px}.material-rail .material-nav-item:hover,#writer-status .material-nav-item:hover{background:#f2f4ed;border-color:#bcc5b3}.material-rail .material-nav-item.is-current{background:#f2f4ed;border-color:#bcc5b3;box-shadow:none}.material-rail .material-nav-copy b,#writer-status .material-nav-copy b{font-size:13px;color:var(--ink);font-weight:500}.material-nav-copy small{font-size:11px;color:#707666}.material-nav-number{color:#7b8472}.material-status-mark{width:18px;height:18px}.writer-overview #writer-status{margin-top:18px}.writer-overview .button{margin-top:20px}
.app-layout .button{min-height:44px;border-radius:999px;font:500 14px 'Hanken Grotesk',sans-serif;padding:12px 22px;background:var(--accent);color:white;box-shadow:none}.app-layout .button:hover{background:var(--accent-hover)}.app-layout .button.secondary{background:transparent;border:1px solid #cdd0c3;color:#454d3d}.app-layout .button.secondary:hover{background:#eef0e7}.app-layout .button:disabled{background:#d5d7cd;color:#636b59;opacity:1;cursor:not-allowed}.app-layout .text-button{color:#5d6653}.writer-instruction-heading .button{padding:8px 14px;min-height:36px;font-size:12px}.writer-instruction-heading strong{font-size:14px;font-weight:500}
.app-layout :is(.panel,.review-fix,.review-strengths,.feedback-card){border-radius:var(--card-radius)}.app-layout .panel{border-color:var(--line);box-shadow:none}.review-tabs{gap:8px;border-bottom:1px solid var(--line)}.review-tabs button{border-radius:999px;padding:10px 22px;font-size:14px}.review-tabs button.selected{background:var(--ink);color:#fff}.review-strengths{background:var(--job-surface)}.rewrite-pair>div,.feedback-suggestion{border-radius:var(--field-radius)}.rewrite-pair>div+div,.feedback-suggestion{background:#f3e9db}.feedback-card p,.feedback-summary>p,.feedback-caveat{color:#62665c}.app-layout .notice{border-radius:14px}.app-layout .notice.success{background:#edf2e7;border-color:#cbd8bf;color:#415e36}
.view-hub .intro{margin-bottom:32px}.hub-grid{gap:24px}.hub-card{padding:30px;border-radius:var(--card-radius);min-height:480px;border:1px solid #24251f04}.hub-card h2{font-size:44px;line-height:1.05}.hub-card>p{font-size:15px;line-height:1.6;color:#5e6359}.hub-card-label{font-size:14px}.hub-card-foot{padding-top:16px}.hub-card-foot>span{font-size:11px}.hub-writer{background:var(--cv-surface)}.hub-documents{background:var(--application-surface)}.hub-interview{background:var(--job-surface)}
@media(min-width:761px){.hub-grid>.hub-interview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:48px;row-gap:12px;min-height:350px}.hub-interview .hub-card-label{grid-column:1;grid-row:1}.hub-interview h2{grid-column:1;grid-row:2;margin-top:14px}.hub-interview>p{grid-column:1;grid-row:3}.hub-interview .conversation-preview{grid-column:2;grid-row:1/5;margin:8px 6px;min-height:250px;transform:rotate(-1deg)}.hub-interview .hub-card-foot{grid-column:1;grid-row:4}}
.app-layout .footer{border-top:1px solid var(--line);margin-top:48px;padding-top:20px;color:#6c7264}.app-layout .footer .text-button{color:#62695a}
@media(max-width:1000px){.site-header{flex-wrap:wrap}.top-navigation{gap:2px}.top-navigation button{padding:9px 11px}.app-layout .writer-layout,.app-layout .workspace.material-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.writer-card,.material-flow .compact-document,.material-rail{padding:20px}.writer-apps{gap:8px}.writer-apps .document-block{padding:10px}.writer-apps .document-title h3{font-size:12px}}
@media(max-width:900px){.app-layout .writer-layout{grid-template-columns:minmax(0,1fr)}.writer-aside{position:static}.writer-aside #writer-status{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.app-layout .site-header{padding:20px 20px 16px;gap:18px}.top-navigation{justify-content:flex-start;flex-wrap:wrap;gap:4px;margin-top:0}.top-navigation button{font-size:12px;padding:9px 11px}.top-navigation [data-nav]:before{font-size:9px;margin-right:5px}.top-navigation #delete-session{padding:9px 11px}.app-layout .main-inner{padding:26px 20px 40px}.app-layout:is(.view-writer,.view-documents) .intro{display:block}.app-layout .intro h1{font-size:44px;margin:14px 0 16px}.app-layout .intro>p{font-size:14px;max-width:520px}.app-layout .writer-layout{margin-top:26px}.app-layout .workspace.material-workspace{grid-template-columns:minmax(0,1fr);gap:20px}.material-page .material-rail{padding:12px;border:1px solid #dce0d2;border-radius:18px;background:#f8f9f3f5}.material-rail-heading{margin:0 0 10px}.material-rail .material-nav-item{grid-template-columns:minmax(0,1fr) 18px;min-height:52px;padding:11px}.material-nav-copy small{display:none}.writer-overview .material-nav-copy small{display:block}.material-rail .material-nav-number{display:none}.writer-section-header h2,.material-section-copy h2{font-size:29px}.hub-card{padding:26px;min-height:450px}.hub-card h2{font-size:38px}.hub-card-label{font-size:13px}.hub-card-foot{gap:12px;flex-wrap:wrap}.hub-grid{gap:18px}.app-layout .footer{gap:16px;flex-wrap:wrap}.writer-main .input-switch button,.material-flow .input-switch button{min-height:34px}.writer-card,.material-flow .compact-document{border-radius:22px}}
@media(max-width:600px){.writer-apps{gap:12px}.writer-apps .document-block{padding:14px}.writer-apps .document-title h3{font-size:13px}.hub-grid{grid-template-columns:minmax(0,1fr)}.hub-card-foot>span{font-size:10px}.top-navigation .nav-divider{display:none}.top-navigation button{padding:8px 9px}.app-layout .intro h1{font-size:42px}}
@media(max-width:450px){.writer-aside #writer-status{grid-template-columns:minmax(0,1fr)}.app-layout .site-brand .kf-logo{max-width:210px}.app-layout .main-inner{padding-left:16px;padding-right:16px}.writer-card,.material-flow .compact-document{padding:18px}.writer-section-header h2,.material-section-copy h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.top-navigation button{transition:none}}
@media(max-width:900px){.writer-aside #writer-status{display:grid;grid-auto-flow:column;grid-auto-columns:170px;grid-template-columns:none;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#c9cfbf transparent}.writer-aside #writer-status .material-nav-item{scroll-snap-align:start;grid-template-columns:minmax(0,1fr) 18px;min-height:56px}.writer-aside #writer-status .material-nav-number{display:none}.writer-aside #writer-status .material-nav-copy small{display:block}.writer-aside .writer-overview{padding:18px}.writer-aside .writer-overview>p{font-size:12px;margin-bottom:0}.writer-aside .writer-overview .button{margin-top:12px}.writer-aside .writer-card:first-child{padding:16px 18px}}
.writer-aside>.writer-card{min-width:0}#writer-status{min-width:0;max-width:100%}

/* One visual definition for numbered sections in writing, feedback and interview. */
.app-layout .section-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;min-width:28px;height:28px;box-sizing:border-box;padding:0;border:1px solid #aeb5a6;border-radius:50%;background:transparent;color:#515b46;font:400 10px/1 'JetBrains Mono',monospace;font-variant-numeric:tabular-nums;letter-spacing:0;text-align:center}
.app-layout h3.numbered-section-label{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:30px;margin:0;padding:0;min-width:0;color:var(--ink);font:500 13px/1.4 'Hanken Grotesk',sans-serif;letter-spacing:0}
.app-layout h3.numbered-section-label>.section-number{margin:0}
.app-layout h3.numbered-section-label>.icon{display:block;width:16px;height:18px;flex:0 0 16px;margin:0}
.app-layout h3.numbered-section-label>.section-label-text{margin:0;padding:0;font:inherit;color:inherit;letter-spacing:inherit}

.app-layout .feedback-section-heading{align-items:center;gap:12px}
.app-layout .review-fix .section-number{margin-top:2px}
