:root{--color-bg: #f7f9fb;--color-surface: #ffffff;--color-surface-soft: #f1f5f9;--color-border: #d9e2ec;--color-border-strong: #b7c6d8;--color-text: #102033;--color-muted: #5d6d7e;--color-faint: #8b99a8;--color-blue: #1f66d1;--color-blue-strong: #164fa8;--color-blue-soft: #e8f1ff;--color-green: #168a62;--color-green-soft: #e8f7f0;--color-amber: #b7791f;--shadow-raised: 0 18px 50px rgba(16, 32, 51, .08);--radius: 8px;--radius-small: 6px;--container: 1180px;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);line-height:1.5}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid rgba(31,102,209,.25);outline-offset:3px}.container{margin-inline:auto;max-width:var(--container);padding-inline:24px}.button{align-items:center;border-radius:var(--radius);display:inline-flex;font-size:14px;font-weight:700;justify-content:center;min-height:44px;padding:0 18px;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.48;transform:none}.button-primary{background:var(--color-blue);border:1px solid var(--color-blue);color:#fff}.button-primary:hover{background:var(--color-blue-strong);border-color:var(--color-blue-strong)}.button-secondary{background:var(--color-surface);border:1px solid rgba(31,102,209,.4);color:var(--color-blue)}.button-secondary:hover{border-color:var(--color-blue)}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.tag{background:var(--color-green-soft);border:1px solid rgba(22,138,98,.16);border-radius:var(--radius-small);color:var(--color-green);display:inline-flex;font-size:12px;font-weight:700;line-height:1;padding:6px 8px}@media(max-width:760px){.container{padding-inline:18px}}.app-frame{min-height:100vh}.app-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:grid;gap:20px;grid-template-columns:auto 1fr auto;padding:16px 28px;position:sticky;top:0;z-index:10}.app-brand{align-items:center;display:inline-flex;font-weight:850;gap:9px}.app-brand-mark{color:#0f766e;display:inline-flex;height:24px;width:24px}.app-nav{align-items:center;display:flex;gap:22px;justify-content:center}.app-nav a{color:var(--color-muted);font-size:13px;font-weight:750}.app-nav a:hover{color:var(--color-blue)}.app-account{align-items:center;background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:50%;display:inline-flex;font-size:12px;font-weight:850;height:34px;justify-content:center;width:34px}.app-main{margin-inline:auto;max-width:1280px;padding:28px 24px 72px}.app-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.journey-hero{align-items:center;display:flex;gap:24px;justify-content:space-between;padding:24px}.journey-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:14px}.journey-hero h1,.builder-main h1{font-size:34px;line-height:1.12;margin:0}.journey-hero p{color:var(--color-muted);line-height:1.6;margin:10px 0 0;max-width:760px}.journey-status{background:var(--color-green-soft);border:1px solid rgba(22,138,98,.18);border-radius:var(--radius-small);color:var(--color-green);display:inline-flex;font-size:12px;font-weight:850;padding:7px 10px}.app-link{color:var(--color-blue);font-size:13px;font-weight:800}.app-label{color:var(--color-faint);display:inline-block;font-size:12px;font-weight:850;margin-bottom:7px}.app-grid{align-items:start;display:grid;gap:18px;grid-template-columns:300px minmax(0,1fr) 360px;margin-top:18px}.checkpoint-rail,.active-checkpoint,.next-action-panel,.skill-map,.resources-panel,.context-panel,.review-panel,.builder-section{padding:20px}.panel-heading-row{align-items:center;display:flex;gap:14px;justify-content:space-between}.panel-heading-row h2,.skill-map h2,.resources-panel h2,.review-panel h2,.builder-section h2{font-size:19px;line-height:1.28;margin:0}.panel-heading-row p,.active-checkpoint p,.resource-row p,.skill-card p,.empty-state{color:var(--color-muted);font-size:14px;line-height:1.55;margin:8px 0 0}.progress-track{background:var(--color-surface-soft);border-radius:999px;height:8px;overflow:hidden}.progress-track span{background:linear-gradient(90deg,var(--color-green),var(--color-blue));display:block;height:100%}.app-progress{margin:14px 0 18px}.checkpoint-stack{display:grid;gap:10px}.checkpoint-item{align-items:start;border:1px solid var(--color-border);border-radius:var(--radius);display:grid;gap:10px;grid-template-columns:16px 1fr;padding:12px}.checkpoint-item.current{background:var(--color-blue-soft);border-color:#1f66d16b}.checkpoint-marker{border:2px solid var(--color-border-strong);border-radius:50%;height:11px;margin-top:4px;width:11px}.checkpoint-item.complete .checkpoint-marker{background:var(--color-green);border-color:var(--color-green)}.checkpoint-item.current .checkpoint-marker{background:var(--color-blue);border-color:var(--color-blue)}.checkpoint-item strong,.resource-row strong{display:block;font-size:13px}.checkpoint-item p{color:var(--color-muted);font-size:12px;line-height:1.45;margin:4px 0 0}.work-column,.context-column,.builder-work,.builder-side{display:grid;gap:18px}.compact-button{min-height:36px;padding-inline:13px}.next-action-row{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-top:8px}.action-check{align-items:center;display:flex;gap:11px;font-size:15px;font-weight:750}.action-check input{height:18px;width:18px}.skill-list,.resource-list{display:grid;gap:10px;margin-top:16px}.skill-card,.resource-row{border:1px solid var(--color-border);border-radius:var(--radius);padding:13px}.resource-row{align-items:start;display:grid;gap:10px;grid-template-columns:1fr auto}.resource-row>span{background:var(--color-surface-soft);border-radius:var(--radius-small);color:var(--color-muted);font-size:11px;font-weight:850;padding:5px 7px;text-transform:capitalize}.context-panel blockquote{border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:16px;line-height:1.55;margin:4px 0 16px;padding:0 0 16px}.timestamp{color:var(--color-faint);font-size:12px;font-weight:700}.context-list{display:grid;gap:14px;margin:0}.context-list div{display:grid;gap:4px}.context-list dt{color:var(--color-faint);font-size:12px;font-weight:850}.context-list dd{color:var(--color-text);font-size:14px;line-height:1.5;margin:0}.review-panel form,.resource-capture,.builder-fields{display:grid;gap:12px;margin-top:14px}.review-panel label,.resource-capture label,.builder-fields label,.next-action-field{color:var(--color-muted);display:grid;font-size:12px;font-weight:850;gap:7px}.review-panel input,.review-panel textarea,.resource-capture input,.resource-capture select,.resource-capture textarea,.skill-add-form input,.builder-fields input,.builder-fields textarea,.next-action-field textarea,.breakdown-row input,.breakdown-row textarea{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-small);color:var(--color-text);font-size:14px;line-height:1.45;min-height:40px;padding:10px 11px;resize:vertical;width:100%}.skill-add-form{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.timeline-title-input{font-size:13px;font-weight:850}.resource-capture{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px}.resource-capture-grid{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 130px}.resource-capture select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-muted) 50%),linear-gradient(135deg,var(--color-muted) 50%,transparent 50%);background-position:calc(100% - 16px) 17px,calc(100% - 11px) 17px;background-repeat:no-repeat;background-size:5px 5px,5px 5px}.resource-capture textarea{min-height:76px}.resource-capture .button{justify-self:start}.breakdown-row textarea{min-height:104px}.review-panel textarea,.builder-fields textarea,.next-action-field textarea{min-height:84px}.submitted-review{background:var(--color-blue-soft);border:1px solid rgba(31,102,209,.16);border-radius:var(--radius);margin-top:14px;padding:13px}.submitted-review p,.submitted-review small{color:var(--color-muted);display:block;line-height:1.5;margin:6px 0 0}.builder-main{max-width:1360px}.builder-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 340px;margin-top:18px}.skill-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.breakdown-table{display:grid;gap:9px;margin-top:16px}.breakdown-head,.breakdown-row{display:grid;gap:10px;grid-template-columns:210px minmax(0,1fr) minmax(0,1fr) 220px}.breakdown-head{color:var(--color-faint);font-size:12px;font-weight:850;padding:0 10px}.breakdown-row{align-items:stretch;background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px}.timeline-cell{align-items:center;display:grid;gap:10px;grid-template-columns:13px minmax(0,1fr)}.builder-dot{border:2px solid var(--color-green);border-radius:50%;height:10px;width:10px}.timeline-cell strong{font-size:13px}.helper-copy{color:var(--color-faint);font-size:12px;line-height:1.5;margin:8px 0 0}.builder-actions{display:grid;gap:10px;margin-top:16px}.status-note{color:var(--color-green);font-size:12px;font-weight:800;margin:0}@media(max-width:1100px){.app-grid,.builder-grid{grid-template-columns:1fr}.checkpoint-rail{order:-1}.breakdown-head{display:none}.breakdown-row{grid-template-columns:1fr}}@media(max-width:760px){.app-header{align-items:start;grid-template-columns:1fr auto;padding:14px 18px}.app-nav{grid-column:1 / -1;justify-content:start;overflow-x:auto;padding-bottom:2px}.app-account{grid-column:2;grid-row:1}.app-main{padding:18px 14px 54px}.journey-hero,.next-action-row{align-items:stretch;flex-direction:column}.journey-hero h1,.builder-main h1{font-size:28px}.panel-heading-row{align-items:start;flex-direction:column}.resource-row,.resource-capture-grid,.skill-add-form{grid-template-columns:1fr}}
