:root{--bg:#f7f8f5;--surface:#ffffff;--surface-muted:#eef3ef;--ink:#17191c;--muted:#626a73;--line:#d7ddd6;--teal:#0f766e;--blue:#315c9b;--amber:#9a5b00;--red:#a23b3b;--radius:8px}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0}.app-frame{min-height:100vh}.topbar{align-items:center;background:rgba(247,248,245,.96);border-bottom:1px solid var(--line);display:flex;gap:24px;justify-content:space-between;min-height:64px;padding:0 28px;position:-webkit-sticky;position:sticky;top:0;z-index:5}.brand-mark{color:var(--ink);font-size:15px;font-weight:760;letter-spacing:0;white-space:nowrap}.topnav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.nav-link{align-items:center;border:1px solid transparent;border-radius:8px;color:var(--muted);display:inline-flex;font-size:13px;gap:7px;min-height:36px;padding:0 10px}.nav-link:hover{background:var(--surface);border-color:var(--line);color:var(--ink)}.main-shell{margin:0 auto;max-width:1180px;padding:28px}.page-head{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:24px}.page-kicker{color:var(--teal);font-size:12px;font-weight:760;letter-spacing:0;margin:0 0 8px}.page-title{font-size:28px;letter-spacing:0;line-height:1.18;margin:0}.page-subtitle{color:var(--muted);font-size:14px;line-height:1.6;margin:10px 0 0;max-width:680px}.actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.button{align-items:center;background:var(--ink);border:1px solid var(--ink);border-radius:8px;color:#fff;display:inline-flex;font-size:13px;font-weight:680;gap:8px;min-height:38px;padding:0 13px}.button.secondary{background:var(--surface);color:var(--ink)}.button.ghost{background:transparent;border-color:var(--line);color:var(--ink)}.button:disabled,button:disabled{cursor:default;opacity:.45}.grid{display:grid;grid-gap:16px;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.surface-title{font-size:16px;font-weight:760;margin:0 0 10px}.surface-heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.surface-heading .surface-title{margin:0}.surface-copy{color:var(--muted);font-size:13px;line-height:1.55;margin:0}.metric{display:flex;flex-direction:column;gap:6px}.metric-value{font-size:30px;font-weight:780;line-height:1}.metric-label{color:var(--muted);font-size:13px}.status-row{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.status-line{align-items:center;display:flex;gap:10px;justify-content:space-between}.badge{align-items:center;border:1px solid var(--line);border-radius:999px;display:inline-flex;font-size:12px;font-weight:680;min-height:26px;padding:0 9px;white-space:nowrap}.badge.neutral{background:#f1f2ef;color:#47505a}.badge.working{background:#e6f1ff;color:var(--blue)}.badge.ready{background:#eef6ef;color:#387342}.badge.done,.badge.locked{background:#e8f5f2;color:var(--teal)}.badge.warning{background:#fff5df;color:var(--amber)}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;min-width:760px;width:100%}.data-table td,.data-table th{border-bottom:1px solid var(--line);font-size:13px;padding:12px 10px;text-align:left;vertical-align:middle}.data-table th{color:var(--muted);font-size:12px;font-weight:720}.form-grid{display:grid;grid-gap:14px;gap:14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--ink);font-size:13px;font-weight:680}.field input,.field select,.field textarea{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:40px;padding:9px 11px;width:100%}.field textarea{min-height:108px;resize:vertical}.form-message{border-radius:8px;font-size:13px;line-height:1.45;margin:0;padding:10px 12px}.form-message.error{background:#fff0f0;color:var(--red)}.form-message.success{background:#ecf8f2;color:var(--teal)}.form-message.warning{background:#fff5df;color:var(--amber)}.copy-box{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;padding:12px}.copy-box span{color:var(--muted);font-size:12px;font-weight:720}.copy-box-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.copy-box code{color:var(--ink);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.copy-message{color:var(--teal);font-size:12px;margin:0}.inline-panel{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;margin-top:14px;padding:14px}.inline-panel h3{font-size:15px;margin:0}.section-stack{display:grid;grid-gap:18px;gap:18px}.resume-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.resume-section h2{font-size:17px;margin:0 0 14px}.section-title-row{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.section-title-row>h2{margin:0}.hint{color:var(--muted);font-size:12px;line-height:1.5;margin:-6px 0 14px}.repeat-group{display:grid;grid-gap:12px;gap:12px}.repeat-group+.repeat-group{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.repeat-stack{display:grid;grid-gap:16px;gap:16px}.education-stack{margin-top:14px}.education-stack .repeat-item{display:grid;grid-gap:14px;gap:14px}.repeat-item{border-top:1px solid var(--line);padding-top:16px}.repeat-item:first-child{border-top:0;padding-top:0}.repeat-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.repeat-title{font-size:14px;font-weight:760;margin:0}.timeline{border-left:2px solid var(--line);display:grid;grid-gap:18px;gap:18px;margin-left:8px;padding-left:18px}.timeline-item{position:relative}.timeline-item:before{background:var(--teal);border:3px solid var(--bg);border-radius:999px;content:"";height:10px;left:-24px;position:absolute;top:4px;width:10px}.timeline-item strong{display:block;font-size:14px;margin-bottom:4px}.timeline-item span{color:var(--muted);display:block;font-size:13px;line-height:1.45}.preview-list{display:grid;grid-gap:12px;gap:12px}.preview-list dt{color:var(--muted);font-size:12px;font-weight:720}.preview-list dd{font-size:14px;line-height:1.55;margin:4px 0 0}.preview-block{display:block}.preview-block+.preview-block{margin-top:10px}@media (max-width:760px){.page-head,.topbar{align-items:stretch;flex-direction:column}.topbar{padding:14px 18px}.actions,.topnav{justify-content:flex-start}.repeat-header,.section-title-row{align-items:stretch;flex-direction:column}.main-shell{padding:22px 16px}.form-grid.two,.grid.three,.grid.two{grid-template-columns:1fr}}