.resume-builder { --rb-bg: var(--bg); --rb-surface: var(--surface); --rb-line: var(--border); color:var(--text); font-size:14px; }
.main:has(.resume-builder) { max-width:none; padding:0; margin:0; }.rb-library { padding:24px; max-width:1500px; margin:auto; }.rb-library h1 { font-size:21px; margin:0 0 30px; }.rb-actions,.rb-list { border:1px solid var(--rb-line); border-radius:18px; background:var(--rb-surface); overflow:hidden; }.rb-actions > button { display:flex; width:100%; align-items:center; gap:16px; padding:17px 20px; border:0; border-bottom:1px solid var(--rb-line); background:transparent; color:var(--text); text-align:left; cursor:pointer; }.rb-actions > button:last-child { border:0; }.rb-actions > button:hover,.rb-list-row:hover { background:color-mix(in srgb,var(--text) 4%,transparent); }.rb-actions > button > span:nth-child(2) { flex:1; }.rb-action-icon,.rb-doc-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; background:var(--bg); flex:0 0 40px; }.rb-action-icon .tracker-icon,.rb-doc-icon .tracker-icon { width:21px; height:21px; }.rb-actions strong,.rb-list strong { display:block; font-size:16px; font-weight:600; }.rb-actions small,.rb-list small { display:block; color:var(--text-muted); line-height:1.6; margin-top:3px; }.rb-library-subtitle { font-size:14px; color:var(--text-muted); margin:28px 4px 12px; font-weight:500; }.rb-library-subtitle span { margin-left:7px; opacity:.7; }.rb-list-row { display:flex; align-items:center; padding:12px 18px; gap:16px; border-bottom:1px solid var(--rb-line); }.rb-list-row:last-child { border:0; }.rb-list-open { flex:1; min-width:0; display:flex; gap:16px; align-items:center; border:0; background:none; color:inherit; text-align:left; cursor:pointer; }.rb-doc-icon { color:#05b88d; background:color-mix(in srgb,#05b88d 12%,transparent); border:1px solid color-mix(in srgb,#05b88d 30%,transparent); }.rb-grade { padding:4px 8px; background:color-mix(in srgb,#e6a300 16%,transparent); color:#b47c00; border-radius:7px; white-space:nowrap; }.rb-grade[data-score=good] { background:color-mix(in srgb,#00b58a 15%,transparent); color:#00a47d; }.rb-list-state { color:var(--text-muted); font-size:13px; }.rb-empty { padding:24px; color:var(--text-muted); }
.rb-editor { height:calc(100dvh - 65px); display:flex; flex-direction:column; overflow:hidden; }.rb-title { display:flex; gap:12px; align-items:center; padding:14px 20px; border-bottom:1px solid var(--rb-line); }.rb-title input { width:100%; font-size:20px; font-weight:600; }.rb-meta { display:flex; flex-wrap:wrap; gap:16px; align-items:center; padding:10px 20px; border-bottom:1px solid var(--rb-line); min-height:62px; font-size:13px; }.rb-meta select { margin-left:auto; background:var(--rb-surface); border:1px solid var(--rb-line); border-radius:10px; padding:9px 14px; color:inherit; }.rb-meta .rb-role { min-width:110px; max-width:220px; color:var(--text); border:0; background:transparent; padding:6px; }.rb-tabs,.rb-side-tabs { display:flex; background:color-mix(in srgb,var(--text) 4%,transparent); border-radius:12px; padding:4px; gap:4px; }.rb-tabs button,.rb-side-tabs button { border:0; background:transparent; color:var(--text-muted); padding:8px 12px; border-radius:9px; display:flex; gap:7px; align-items:center; cursor:pointer; }.rb-tabs .active,.rb-side-tabs .active { color:var(--text); background:color-mix(in srgb,var(--text) 6%,transparent); }.rb-saved { color:#00ad83; }.rb-source { color:var(--text-muted); }.rb-workspace { flex:1; display:grid; grid-template-columns:minmax(0,1fr) 360px; min-height:0; }.rb-document-scroll { overflow:auto; min-width:0; padding:36px 24px 18px; }.rb-document { max-width:960px; margin:0 auto; background:var(--rb-surface); border:1px solid var(--rb-line); border-radius:18px; padding:55px 60px; min-height:900px; }.rb-edit { width:100%; border:1px solid transparent; background:transparent; color:inherit; padding:3px 4px; border-radius:5px; font:inherit; resize:none; box-sizing:border-box; }.rb-edit:hover { border-color:var(--rb-line); }.rb-edit:focus { outline:1px solid var(--accent); background:var(--bg); }.rb-person > [data-rb-field="header.name"] { font-size:44px; font-weight:700; line-height:1.2; }.rb-person > [data-rb-field=role] { font-size:23px; font-weight:500; margin-top:8px; }.rb-contacts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 22px; margin:26px 0 22px; color:var(--text-muted); }.rb-person { border-bottom:1px solid var(--rb-line); padding-bottom:10px; }.rb-section { margin-top:36px; scroll-margin:24px; }.rb-section h2 { display:flex; align-items:center; gap:8px; letter-spacing:2px; text-transform:uppercase; font-size:14px; font-weight:650; padding-bottom:13px; border-bottom:1px solid var(--rb-line); margin-bottom:18px; }.rb-section h2 > .tracker-icon { margin-left:-25px; color:var(--text-muted); }.rb-section h2 .rb-icon { margin-left:auto; color:#c69a10; }.rb-section textarea { font-size:17px; line-height:1.7; overflow:hidden; min-height:44px; }.rb-sidebar { overflow:auto; border-left:1px solid var(--rb-line); padding:18px; }.rb-structure { padding:2px 0 18px; }.rb-structure h3,.rb-side-heading { color:var(--text-muted); font-size:14px; font-weight:500; }.rb-structure > div { display:flex; align-items:center; gap:6px; margin:8px 0; }.rb-structure-label { flex:1; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; font:inherit; }.rb-icon { border:0; width:32px; height:32px; flex:0 0 32px; display:inline-grid; place-items:center; background:transparent; color:var(--text-muted); cursor:pointer; border-radius:8px; }.rb-icon:hover { background:color-mix(in srgb,var(--text) 8%,transparent); color:var(--text); }.rb-icon:disabled { opacity:.25; cursor:default; }.rb-panel { padding:16px; border:1px solid var(--rb-line); border-radius:14px; margin:14px 0; background:var(--rb-surface); }.rb-panel h3,.rb-panel h4 { font-size:14px; margin:0 0 12px; }.rb-panel p { color:var(--text-muted); font-size:14px; line-height:1.7; margin:10px 0; }.rb-panel strong { line-height:1.6; }.rb-score { display:flex; justify-content:space-between; gap:10px; border:1px solid var(--rb-line); border-radius:12px; padding:16px; margin:18px 0; color:var(--text-muted); }.rb-score strong { color:var(--text); font-size:24px; }.rb-meter { display:grid; grid-template-columns:1fr auto; gap:5px; font-size:12px; margin-top:13px; }.rb-meter progress { grid-column:1/-1; width:100%; height:5px; accent-color:var(--text); }.rb-note { color:var(--text-muted); font-size:12px!important; line-height:1.6; }.rb-side-title { display:flex; align-items:center; justify-content:space-between; gap:8px; }.rb-side-title h3 { font-size:14px; color:var(--text-muted); }.rb-side-title h3 span { margin-left:6px; }.rb-text-button { display:inline-flex; align-items:center; gap:6px; background:none; border:0; color:var(--text); font:inherit; cursor:pointer; padding:8px 0; }.rb-text-button .tracker-icon { width:16px; }.rb-diff { max-height:240px; overflow:auto; background:var(--bg); padding:12px; border-radius:10px; line-height:1.6; white-space:pre-wrap; font-size:14px; }.rb-diff del { display:block; color:#dd6571; font-size:12px; margin-bottom:10px; }.rb-diff ins { display:block; text-decoration:none; font-weight:500; }.rb-recommend-actions { display:flex; gap:10px; margin-top:15px; }.rb-recommend-actions button { flex:1; }.rb-toolbar { position:sticky; bottom:0; z-index:4; display:flex; align-items:center; gap:8px; max-width:960px; margin:0 auto; border:1px solid var(--rb-line); background:var(--rb-surface); border-radius:36px; padding:9px; box-shadow:0 8px 28px #0002; }.rb-toolbar-spacer { flex:1; }.rb-toolbar .rb-icon { background:color-mix(in srgb,var(--text) 5%,transparent); border-radius:50%; width:40px; height:40px; }.rb-download { border-radius:24px; }.rb-download-anchor { position:relative; }.rb-download-menu { position:absolute; bottom:calc(100% + 12px); left:0; width:270px; border-radius:14px; border:1px solid var(--rb-line); background:var(--rb-surface); padding:8px; box-shadow:0 8px 28px #0003; }.rb-download-menu button { display:flex; align-items:center; gap:10px; width:100%; padding:12px; border:0; border-radius:8px; background:none; color:inherit; text-align:left; cursor:pointer; }.rb-download-menu button:hover { background:var(--bg); }.rb-error { color:#d63d63; padding:10px 20px; font-size:14px; white-space:pre-wrap; }.rb-error[hidden] { display:none; }.rb-legend { min-height:500px; line-height:1.7; }.rb-pre { white-space:pre-wrap; }.rb-spinner { display:inline-block; width:20px; height:20px; border:2px solid var(--rb-line); border-top-color:var(--text-muted); border-radius:50%; animation:rb-spin 1s linear infinite; }.rb-job h3 { display:flex; gap:10px; align-items:center; }.rb-job ol { padding-left:22px; line-height:2.3; color:var(--text-muted); font-size:13px; }.rb-upload-status { min-height:260px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; color:var(--text-muted); }.rb-skeleton > div,.rb-skeleton p { background:color-mix(in srgb,var(--text) 8%,transparent); border-radius:7px; height:20px; margin-bottom:16px; animation:rb-pulse 1.5s ease-in-out infinite; }.rb-skeleton > div:first-child { width:45%; height:45px; }.rb-skeleton > div:nth-child(2) { width:35%; }.rb-skeleton h3 { font-size:14px; margin:40px 0 18px; letter-spacing:2px; text-transform:uppercase; }.rb-skeleton p:nth-child(odd) { width:80%; }@keyframes rb-spin { to { transform:rotate(360deg); } }@keyframes rb-pulse { 50% { opacity:.45; } }
@media(max-width:1000px){.rb-workspace { grid-template-columns:minmax(0,1fr) 310px; }.rb-document { padding:35px 28px; }.rb-person > [data-rb-field="header.name"] { font-size:32px; }.rb-contacts { grid-template-columns:repeat(2,minmax(0,1fr)); }.rb-meta { gap:8px; }.rb-source { display:none; }}
@media(max-width:720px){.rb-library { padding:18px 12px; }.rb-workspace { display:block; overflow:auto; }.rb-document-scroll,.rb-sidebar { overflow:visible; }.rb-document-scroll { padding:16px 12px; }.rb-sidebar { border-left:0; border-top:1px solid var(--rb-line); }.rb-document { padding:30px 22px; min-height:600px; }.rb-title { padding:12px; }.rb-title input { font-size:16px; }.rb-person > [data-rb-field="header.name"] { font-size:30px; }.rb-section textarea { font-size:15px; }.rb-contacts { grid-template-columns:1fr; margin-top:18px; }.rb-list-row { flex-wrap:wrap; gap:10px; padding:14px 12px; }.rb-list-open { flex-basis:90%; }.rb-actions > button { padding:16px 12px; }.rb-toolbar { bottom:8px; }.rb-meta .rb-role { max-width:130px; }.rb-meta select { margin-left:0; }.rb-recommend-actions { flex-wrap:wrap; }}
@media(prefers-reduced-motion:reduce){.rb-spinner,.rb-skeleton * { animation:none!important; }}
@media(min-width:1100px){.rb-workspace { grid-template-columns:minmax(0,1fr) 395px; }.rb-section textarea { font-size:18px; }}
.rb-download { background:var(--text); color:var(--bg); padding:10px 18px; }
.rb-panel progress::-webkit-progress-bar { background:var(--border); border-radius:6px; }.rb-panel progress::-webkit-progress-value { background:var(--text); border-radius:6px; }
.rb-meta select[data-rb-field=level] { margin-left:0; max-width:105px; }.rb-meta select[data-rb-field=language] { margin-left:auto; }
.rb-grade[data-score=low] { color:#e49c16; }.rb-structure .rb-icon { width:28px; flex-basis:28px; }.rb-structure .tracker-icon { width:18px; height:18px; }
