:root { --accent:#136f63; --accent-2:#b45309; --ink:#202b33; --muted:#65717d; --soft:#f5f7f8; font-family:'Segoe UI',Arial,sans-serif; }
body { font-size:14px; }
[hidden] { display:none!important; }
.app { grid-template-columns:208px minmax(420px,1fr) minmax(390px,.88fr); }
.sidebar { padding:22px 16px; gap:20px; background:#fff; color:var(--ink); position:sticky; top:0; height:100vh; overflow:auto; min-height:0; border-right:1px solid var(--line); }
.brand { border-bottom:1px solid var(--line); gap:10px; padding-bottom:22px; }
.brand strong { font-size:19px; }
.brand span { color:var(--muted); font-size:11px; }
.brand .mobile-signout { display:none; margin-left:auto; padding:8px; }.mobile-signout svg { width:16px; height:16px; }
.mark { background:#136f63; border-radius:8px; flex-shrink:0; width:36px; height:36px; font-size:14px; }
.account-card { padding:0; border:0; border-radius:0; background:transparent; }
.account-card strong { font-size:13px; }
.account-card span { font-size:11px; overflow-wrap:anywhere; }
.nav { gap:5px; }
.nav button { color:#5b6670; font-size:13px; font-weight:600; min-height:42px; border:0; padding:10px; border-radius:6px; }
.nav button.active,.nav button:hover { color:#136f63; background:#eaf4f1; }
.nav button span { color:#7e8c91; font-size:11px; }
.nav .nav-label { display:flex; gap:9px; align-items:center; color:inherit; font-size:13px; }
.nav svg { width:17px; height:17px; }
.plan { padding:14px 10px; border:1px solid var(--line); background:#f7faf9; border-radius:6px; }
.plan strong { font-size:13px; }
.plan .small { color:var(--muted); font-size:11px; }
.meter { height:4px; background:#e0e8e5; }.meter > span { background:#136f63; }
.upgrade { display:none; }
.main { padding:26px; background:#fff; }
.topbar { display:block; padding:0 0 20px; border:0; border-bottom:1px solid var(--line); margin-bottom:22px; box-shadow:none; border-radius:0; background:transparent; }
.topbar h1 { font-size:26px; font-weight:700; margin-bottom:5px; }
.lede { font-size:13px; line-height:1.6; color:var(--muted); }
.topbar .toolbar { display:flex; justify-content:flex-start; flex-wrap:wrap; margin-top:14px; gap:8px; }
.topbar .toolbar button { width:auto; }
button.primary,button.secondary,button.ghost,.upgrade button { min-height:38px; padding:9px 12px; border-radius:6px; font-size:12px; font-weight:600; }
button.primary { background:#136f63; color:#fff; }
button.secondary { background:#eaf4f1; color:#136f63; border-color:#c6ded7; }
button.ghost { background:white; color:#53616c; border:1px solid var(--line); }
button:disabled { opacity:.55; cursor:wait; }
.panel.section { border:0; border-radius:0; box-shadow:none; background:none; padding:0 0 24px; margin:0 0 24px; border-bottom:1px solid var(--line); }
h2 { font-size:15px; margin:0 0 16px; line-height:1.4; } h3 { font-size:14px; }
.grid { gap:16px; grid-template-columns:repeat(12,minmax(0,1fr)); align-items:start; }
.grid > * { min-width:0; } label { font-size:12px; line-height:1.4; font-weight:600; gap:7px; overflow-wrap:anywhere; }
input,select,textarea { width:100%; min-width:0; max-width:100%; font-size:13px; font-weight:400; min-height:40px; padding:10px; border:1px solid #d6dfe4; border-radius:5px; background:#fff; }
textarea { min-height:94px; line-height:1.6; resize:vertical; }
.span-3 { grid-column:span 6; }.span-4 { grid-column:span 6; }.span-8 { grid-column:span 12; }
.item-card { padding:16px; border-radius:6px; box-shadow:none; background:#fafbfc; }
.item-card .grid > label { grid-column:span 6; }.item-card .grid > .span-12 { grid-column:span 12; }
.icon-button { width:32px; height:32px; min-width:32px; font-size:20px; border-radius:5px; }
.notice { background:#f4f8f7; border:0; border-left:3px solid #b7d8cd; padding:11px 13px; font-size:12px; line-height:1.6; margin-top:14px; border-radius:0; }
.template-guide { display:none; }.preview-pane { padding:26px 22px; background:#e9eef0; min-width:0; }
.preview-actions { margin-bottom:18px; }.paper { width:100%; padding:38px; min-height:680px; box-shadow:0 3px 16px #273a4712; }
.paper h1 { font-size:26px; }.paper h2 { font-size:14px; }.paper p,.paper li { font-size:13px; line-height:1.65; }
.preview-pane.fullscreen .paper { width:min(850px,100%); margin:auto; min-height:1100px; }
.scoreboard { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.score { border-radius:5px; padding:14px; }.score strong { font-size:22px; }
.auth-screen { background:#f1f6f4; }.auth-card { border-radius:8px; max-width:440px; padding:34px; box-shadow:0 12px 48px #172e2510; }.auth-card h1 { font-size:26px; }.auth-card .small { color:var(--muted); }
.guided-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }.guided-heading h2 { margin:0; }
.step-track { display:flex; gap:5px; margin:14px 0; }.step-track span { height:4px; flex:1; background:#e4ebe8; }.step-track span.done { background:#136f63; }
.step-controls { display:flex; justify-content:space-between; gap:10px; margin-top:18px; }
.step-caption,.subtle { color:var(--muted); font-size:12px; line-height:1.6; }
.job-card,.resume-card,.application-card { padding:16px; border:1px solid var(--line); border-radius:6px; box-shadow:none; margin:12px 0; background:white; }
.job-card h3,.application-card h3 { margin:0 0 6px; }.job-card p,.application-card p { font-size:12px; line-height:1.5; }
.job-card .job-meta { display:flex; gap:8px; flex-wrap:wrap; color:var(--muted); }.job-card .job-snippet { max-height:64px; overflow:hidden; }
.job-card header { display:flex; gap:10px; align-items:flex-start; }.job-card header input { width:16px; height:16px; min-height:0; margin-top:3px; }
.inline-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:12px; }
.board-links a { display:inline-block; color:#136f63; margin:10px 14px 8px 0; font-weight:600; }
.status-pill { display:inline-block; background:#eef5f2; color:#136f63; padding:4px 7px; border-radius:4px; font-size:11px; }
.empty-state { padding:32px 0; text-align:center; color:var(--muted); border-bottom:1px solid var(--line); }
.letter-editor { min-height:400px; font-size:14px; }.plan-options { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.plan-option { border:1px solid var(--line); border-radius:6px; padding:20px; }.plan-option.featured { border-color:#136f63; }.plan-option ul { padding-left:18px; line-height:2; font-size:12px; }.plan-option h3 { margin-top:0; }.plan-option .price { font-size:24px; font-weight:700; }
.toast { position:fixed; bottom:22px; left:50%; transform:translateX(-50%); z-index:3000; background:#263d35; color:#fff; padding:13px 20px; border-radius:6px; max-width:min(90vw,600px); box-shadow:0 5px 20px #0002; font-size:13px; }
.save-indicator { position:fixed; right:18px; bottom:calc(18px + env(safe-area-inset-bottom,0px)); z-index:20000; max-width:calc(100vw - 36px); padding:10px 14px; border:1px solid #a4c9bc; border-radius:6px; background:#f3fbf7; color:#175b48; box-shadow:0 2px 10px #0002; font-size:13px; line-height:1.4; overflow-wrap:anywhere; pointer-events:none; }
.save-indicator[data-status="saving"] { background:#f3f7fb; border-color:#c3ceda; color:#34495e; }
.save-indicator[data-status="pending"] { background:#fff8e8; border-color:#d8bc6a; color:#6d5116; }
.app.wide-workspace { grid-template-columns:208px minmax(0,1fr); }.app.wide-workspace > .preview-pane { display:none; }.wide-workspace .main { max-width:1100px; width:100%; margin:auto; }.wide-workspace .topbar { width:100%; }
@media(min-width:1600px) { .app { grid-template-columns:208px minmax(520px,1fr) minmax(480px,.9fr); }.main { padding:32px 38px; }.span-3 { grid-column:span 3; }.span-4 { grid-column:span 4; }.span-8 { grid-column:span 8; } }
@media(max-width:1100px) { .app { grid-template-columns:180px minmax(0,1fr); }.app.wide-workspace { grid-template-columns:180px minmax(0,1fr); }.preview-pane { grid-column:2; }.sidebar { grid-row:1 / span 2; }.main { padding:24px; }.paper { max-width:700px; margin:auto; }.topbar h1 { font-size:24px; } }
@media(max-width:650px) { .app,.app.wide-workspace { display:block; }.sidebar { position:static; height:auto; padding:14px 16px; gap:12px; }.brand { border:0; padding:0; }.account-card,.sidebar .plan { display:none; }.nav { display:flex; gap:4px; overflow:auto; }.nav button { width:auto; flex-shrink:0; padding:9px; white-space:nowrap; }.nav button > span:not(.nav-label) { display:none; }.nav svg { display:none; }.main { padding:22px 16px; }.grid { gap:14px; }.grid > label,.grid > div { grid-column:span 12; }.item-card .grid > label { grid-column:span 12; }.paper { padding:28px 22px; min-height:500px; }.preview-pane { padding:20px 14px; }.plan-options { grid-template-columns:1fr; }.auth-card { padding:26px; margin:16px; }.topbar h1 { font-size:24px; } }
@media print { .toast,.save-indicator { display:none!important; }.paper { padding:0.6in; }.preview-pane { display:block!important; } }
@media(max-width:650px) { .brand .mobile-signout { display:inline-flex; }.brand { width:100%; } }
#resetPasswordPanel { display: grid; gap: 12px; margin-top: 16px; }
#resetPasswordPanel label { display: grid; gap: 6px; }
#recoveryStatus { font-size: 14px; line-height: 1.5; }
@media screen { .main,.preview-pane { padding-bottom:92px; } }

/* A quieter editor and a document-first design collection. */
:root { --line:#dfe5e8; --ink:#24313a; }
.main { background:#fff; }.sidebar { background:#fafcfc; }
.topbar h1 { font-size:25px; font-weight:650; }.topbar { margin-bottom:26px; }
.panel.section h2 { color:#30434c; font-weight:650; }
input:focus,select:focus,textarea:focus { outline:2px solid #9ac9c0; outline-offset:2px; border-color:#277d70; }
.preview-pane { background:#edf0f2; }
.preview-actions { display:flex; align-items:center; justify-content:flex-end; }
.template-selection { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0 4px; }
.template-selection strong { display:block; font-size:14px; margin-top:3px; }
.template-selection button { display:inline-flex; align-items:center; gap:8px; flex-shrink:0; }
.template-selection svg { width:16px; height:16px; }
.template-dialog { width:min(1000px,calc(100% - 32px)); max-height:calc(100dvh - 40px); padding:0; border:1px solid #dce4e7; border-radius:8px; color:#24313a; box-shadow:0 24px 80px #172c3533; }
.template-dialog::backdrop { background:#172c3566; }
.template-dialog > header { padding:24px 26px 18px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.template-dialog h2 { font-size:23px; margin:5px 0 0; }
.template-dialog button svg { width:17px; height:17px; }
.template-filters { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:16px; padding:0 26px 20px; border-bottom:1px solid #e4e9eb; }
.template-gallery { margin:0; border:0; padding:24px 26px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; background:#f5f7f8; }
.template-option { position:relative; display:flex; flex-direction:column; gap:8px; cursor:pointer; min-width:0; font-weight:400; border:1px solid #dfe5e8; padding:10px; border-radius:6px; background:#fff; }
.template-option:has(input:checked) { border-color:#247c70; outline:2px solid #247c70; outline-offset:1px; }
.template-option:focus-within { outline:3px solid #84bdb3; outline-offset:2px; }
.template-option input { position:absolute; top:16px; right:16px; width:17px; height:17px; min-height:0; padding:0; z-index:1; accent-color:#136f63; }
.template-option > strong { font-size:13px; line-height:1.35; margin-top:4px; }
.template-profession { font-size:11px; line-height:1.45; color:#65717d; min-height:32px; }
.template-sheet { display:block; aspect-ratio:0.75; overflow:hidden; background:#fff; color:#3c464c; padding:18px 12px; border-bottom:1px solid #e6eaec; font-size:5px; line-height:1.6; }
.mini-head { display:block; border-bottom:1px solid var(--sample-accent); padding-bottom:8px; text-align:center; }
.mini-head b { display:block; font-size:10px; color:var(--sample-accent); }.mini-head small { font-size:5px; }
.mini-head > span { display:block; height:2px; width:80%; margin:5px auto 0; background:#d8dfe2; }
.mini-layout { display:block; }.mini-main,.mini-side { display:block; min-width:0; }
.mini-main > b,.mini-side > b { display:block; color:var(--sample-accent); margin:8px 0 4px; font-size:5px; }
.mini-main > strong { display:block; font-size:5px; margin-top:5px; }
.template-sheet i { display:block; height:2px; margin:4px 0; background:#d8dfe2; width:100%; }.template-sheet i:nth-of-type(3n) { width:73%; }
.mini-side { display:none; }.mini-modern .mini-head { text-align:left; padding:8px; background:#eaf5f2; border:0; }
.mini-executive .mini-head { text-align:left; }.mini-executive .mini-head b { font-size:13px; font-weight:400; }
.mini-compact { padding:12px; }.mini-compact .mini-main > b { margin-top:5px; }.mini-compact i { margin:3px 0; }
.mini-tech .mini-main > b { border-left:2px solid var(--sample-accent); padding-left:4px; }.mini-tech .mini-head { text-align:left; }
.mini-healthcare .mini-head { border-top:3px solid var(--sample-accent); padding-top:7px; }.mini-healthcare .mini-main > b { background:#eaf4f6; padding:3px; }
.mini-logistics { border-top:4px solid #ad8c28; }.mini-logistics .mini-head { text-align:left; }.mini-logistics .mini-main > b { background:#f4f0df; padding:3px; }
.mini-finance .mini-head b { text-transform:uppercase; font-size:9px; }.mini-finance .mini-main > b { border-bottom:1px solid #a6b4bf; }
.mini-academic .mini-head { text-align:left; }.mini-academic .mini-main > b { border-bottom:1px solid #a6b4bf; font-size:6px; }
.mini-graduate .mini-head { text-align:left; border:0; }.mini-graduate .mini-head b { font-size:12px; }.mini-graduate .mini-main { border-left:2px solid #dce7f4; padding-left:8px; }
.mini-creative .mini-head { text-align:left; }.mini-creative .mini-layout { display:grid; grid-template-columns:34% minmax(0,1fr); gap:9px; }.mini-creative .mini-side { display:block; background:#f7eff1; padding:4px; }
.mini-federal .mini-head { text-align:left; }.mini-federal .mini-main > b { background:#e9edef; padding:2px; }.mini-federal i { margin:3px 0; }
.template-dialog > footer { position:sticky; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 26px; border-top:1px solid #e1e7e9; background:#fff; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.paper[class*="template-"] { padding:42px; border:1px solid #dce2e6; background:#fff; color:#26313a; font-family:Arial,Helvetica,sans-serif; line-height:1.5; }
.paper[class*="template-"] .resume-head { text-align:center; padding:0 0 18px; margin:0; border:0; border-bottom:1px solid var(--resume-accent,#33434a); }
.paper .resume-head h2 { font-size:29px; font-weight:700; line-height:1.2; color:var(--resume-accent,#26313a); margin:0 0 10px; overflow-wrap:anywhere; }
.paper .resume-head p { text-align:inherit; margin:0 0 10px; font-size:12px; }
.paper .contact { display:block; font-size:11px; line-height:1.8; color:#44545e; overflow-wrap:anywhere; }
.paper .contact > span { margin-right:6px; }
.paper[class*="template-"] .resume-section { border:0; margin:22px 0 0; padding:0; }
.paper .resume-section h3 { border:0; padding:0; margin:0 0 10px; font-family:inherit; font-size:12px; font-weight:700; text-transform:uppercase; color:var(--resume-accent,#26313a); line-height:1.4; }
.paper .resume-section p,.paper .resume-section li { font-size:12px; line-height:1.65; text-align:left; margin:0 0 7px; }
.paper .resume-section ul { padding-left:17px; margin:8px 0 0; }.paper .resume-section li { padding-left:2px; }
.paper .entry { margin-bottom:17px; break-inside:avoid; }.paper .entry:last-child { margin-bottom:0; }
.paper .entry-head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 18px; font-size:12px; font-weight:700; line-height:1.5; }
.paper .entry-head > span { overflow-wrap:anywhere; }.paper .entry-head > span:last-child { text-align:right; max-width:160px; }
.paper .entry-meta { font-size:11px; color:#5c6870; margin-top:4px; }
.paper.template-modern .resume-head { text-align:left; background:#eef7f4; border:0; padding:20px; margin-bottom:4px; }
.paper.template-modern .resume-section h3 { border-left:3px solid var(--resume-accent); padding-left:9px; }
.paper.template-executive { font-family:Georgia,'Times New Roman',serif; }
.paper.template-executive .resume-head { text-align:left; }.paper.template-executive .resume-head h2 { font-size:34px; font-weight:400; }
.paper.template-executive .resume-section h3 { text-transform:none; font-size:17px; font-weight:400; }
.paper.template-compact { padding:32px 38px; }.paper.template-compact .resume-head { text-align:left; padding-bottom:12px; }
.paper.template-compact .resume-section { margin-top:15px; }.paper.template-compact .resume-section p,.paper.template-compact .resume-section li { font-size:11px; line-height:1.45; margin-bottom:4px; }.paper.template-compact .entry { margin-bottom:12px; }
.paper.template-tech .resume-head { text-align:left; }.paper.template-tech .resume-section h3 { font-family:Consolas,'Courier New',monospace; border-left:3px solid var(--resume-accent); padding-left:9px; }
.paper.template-healthcare .resume-head { padding-top:16px; border-top:4px solid var(--resume-accent); }.paper.template-healthcare .resume-section h3 { padding:6px 9px; background:#edf6f7; text-transform:none; }
.paper.template-logistics { border-top:5px solid #ad8c28; }.paper.template-logistics .resume-head { text-align:left; }.paper.template-logistics .resume-section h3 { color:#34434a; background:#f5f1e4; padding:6px 9px; }
.paper.template-finance { font-family:Georgia,'Times New Roman',serif; }.paper.template-finance .resume-head h2 { text-transform:uppercase; font-size:26px; }.paper.template-finance .resume-section h3 { border-bottom:1px solid #bec9d0; padding-bottom:5px; }
.paper.template-academic { font-family:'Times New Roman',Georgia,serif; }.paper.template-academic .resume-head { text-align:left; }.paper.template-academic .resume-section h3 { font-size:15px; text-transform:none; border-bottom:1px solid #bdc6cb; padding-bottom:5px; }
.paper.template-graduate .resume-head { text-align:left; border-bottom:0; }.paper.template-graduate .resume-head h2 { font-size:33px; }.paper.template-graduate .resume-section { border-left:2px solid #dce7f4; padding-left:14px; }
.paper.template-creative .resume-head { text-align:left; }.resume-columns { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr); gap:24px; margin-top:22px; }.resume-sidebar { padding:16px; background:#f7eff1; }.paper .resume-columns .resume-section:first-child { margin-top:0; }.paper .resume-sidebar .entry-head { display:block; }.paper .resume-sidebar .entry-head > span { display:block; text-align:left; max-width:none; }.paper .resume-sidebar .resume-section p { font-size:11px; }
.paper.template-federal .resume-head { text-align:left; }.paper.template-federal .resume-section h3 { padding:5px 8px; background:#edf0f2; }.paper.template-federal .resume-section { margin-top:17px; }
@media(max-width:700px) { .template-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:18px; }.template-dialog > header,.template-dialog > footer { padding:18px; }.template-dialog h2 { font-size:20px; }.template-filters { grid-template-columns:1fr; padding:0 18px 18px; }.template-selection { align-items:flex-start; }.template-selection button { max-width:175px; }.paper[class*="template-"] { padding:27px; }.paper .entry-head { grid-template-columns:1fr; gap:3px; }.paper .entry-head > span:last-child { text-align:left; max-width:none; }.resume-columns { gap:14px; }.resume-sidebar { padding:10px; } }
@media print { .template-dialog,.template-selection { display:none!important; }.paper[class*="template-"] { border:0; padding:0; box-shadow:none; print-color-adjust:exact; -webkit-print-color-adjust:exact; }.paper .entry-head { grid-template-columns:minmax(0,1fr) auto; }.paper .entry-head > span:last-child { text-align:right; }.paper .resume-head { break-after:avoid; }.paper .resume-section h3 { break-after:avoid; } }
