:root{--bg: #0f1115;--panel: #171a21;--panel-2: #1f242d;--border: #2a313d;--text: #e7ecf3;--muted: #8a93a6;--accent: #7c5cff;--accent-2: #5b8cff;--good: #34c38f;--bad: #ef476f;--warn: #ffb84d;--radius: 12px;--shadow: 0 10px 30px rgba(0, 0, 0, .35);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 600px at 20% -10%,#1d1740 0%,transparent 60%),radial-gradient(900px 500px at 110% 10%,#0f2a4a 0%,transparent 55%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{max-width:880px;margin:0 auto;padding:32px 20px 80px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:22px;letter-spacing:-.01em}.brand .logo{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:var(--shadow)}.tagline{color:var(--muted);font-size:14px}.header-side{display:flex;align-items:flex-end;flex-direction:column;gap:6px;min-width:0}.server-pill{max-width:min(52vw,280px);border:1px solid var(--border);background:#1f242db8;color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;font-family:inherit}.server-pill:hover{border-color:var(--accent-2);color:var(--text)}.cloud-sync{display:flex;align-items:center;justify-content:flex-end;gap:6px;max-width:min(70vw,420px)}.cloud-sync-pill{max-width:min(52vw,320px);border:1px solid var(--border);background:#1f242db8;color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit}button.cloud-sync-pill{cursor:pointer;display:inline-flex;align-items:center;gap:7px}button.cloud-sync-pill:hover:not(:disabled){border-color:var(--accent-2);color:var(--text)}button.cloud-sync-pill:disabled{cursor:wait;opacity:.75}.cloud-sync-synced{color:var(--good);border-color:#34c38f57;background:#34c38f1a}.cloud-sync-error,.cloud-sync-not-allowed{color:var(--warn);border-color:#ffb84d5c;background:#ffb84d1a}.cloud-sync-signout{border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;padding:4px 0}.cloud-sync-signout:hover:not(:disabled){color:var(--text)}.studio-pill{max-width:min(52vw,180px);border:1px solid rgba(52,195,143,.34);background:#34c38f1a;color:var(--good);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}.studio-pill:hover{border-color:#34c38f94;color:var(--text)}.sync-dot{width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:var(--accent-2);box-shadow:0 0 0 3px #5b8cff29}.job-status{position:relative;display:flex;justify-content:flex-end;max-width:min(70vw,360px)}.job-pill{max-width:min(70vw,360px);border:1px solid var(--border);background:#1f242db8;color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:7px}.job-pill:hover{border-color:var(--accent-2);color:var(--text)}.job-pill.running{color:var(--accent-2);border-color:#5b8cff7a;background:#5b8cff1c}.job-pill.queued:not(.running){color:var(--warn);border-color:#ffb84d5c;background:#ffb84d1a}.job-dot{width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:var(--muted)}.job-pill.running .job-dot{background:var(--accent-2);box-shadow:0 0 0 3px #5b8cff29}.job-pill.queued:not(.running) .job-dot{background:var(--warn)}.job-popover{position:absolute;top:calc(100% + 8px);right:0;width:min(420px,calc(100vw - 40px));z-index:20;display:grid;gap:12px;padding:16px;border:1px solid var(--border);border-radius:10px;background:#171a21fa;box-shadow:var(--shadow);text-align:left}.job-popover-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.job-popover-heading h2{margin:0;font-size:16px}.job-popover-heading span,.job-section-label{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.job-section{display:grid;gap:8px}.job-section p{margin:0;font-size:13px}.job-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:8px;padding:9px 10px;background:#ffffff06}.job-row.active{border-color:#5b8cff5c}.job-row.failed{border-color:#ef476f5c}.job-row div{min-width:0;display:grid;gap:3px}.job-row strong,.job-row span{overflow:hidden;text-overflow:ellipsis}.job-row strong{color:var(--text);font-size:13px;white-space:nowrap}.job-row span,.job-row em{color:var(--muted);font-size:12px;font-style:normal}.server-settings{display:grid;gap:14px;margin-bottom:16px}.server-settings h2{margin-bottom:4px}.server-settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}.server-settings-note{color:var(--muted);font-size:13px}@media (max-width: 560px){.header{align-items:flex-start;gap:12px}.header-side{align-items:flex-end}.tagline{display:none}.cloud-sync{max-width:58vw}.cloud-sync-signout{display:none}.studio-pill{max-width:58vw}.server-settings-row{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.card+.card{margin-top:16px}h1{font-size:28px;margin:0 0 8px;letter-spacing:-.02em}h2{font-size:20px;margin:0 0 12px;letter-spacing:-.01em}h3{font-size:16px;margin:0 0 10px}p,label,.label{color:var(--text)}.muted{color:var(--muted)}.field{display:block;margin-bottom:18px}.field .label{display:block;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.input,.select,.textarea{width:100%;background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff2e}.source-textarea{min-height:180px;resize:vertical;line-height:1.45}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.row{grid-template-columns:1fr}}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--border);background:var(--panel-2);color:var(--text);padding:8px 12px;border-radius:999px;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s}.chip:hover{border-color:var(--accent-2)}.chip.active{border-color:transparent;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:0;padding:12px 18px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .05s,opacity .15s}.btn:hover{opacity:.92}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn.compact{padding:8px 12px;margin-bottom:14px}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.error{background:#ef476f1a;border:1px solid rgba(239,71,111,.4);color:#ffb6c8;padding:12px 14px;border-radius:10px;margin-bottom:16px;font-size:14px}.notice{background:#45d3a21a;border:1px solid rgba(69,211,162,.35);color:#a7f3d0;padding:12px 14px;border-radius:10px;margin-bottom:16px;font-size:14px}.studio-dashboard{display:grid;gap:16px}.studio-stats .study-stat small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.studio-pipeline-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.studio-pipeline-card{display:grid;gap:7px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.studio-pipeline-card span{color:var(--muted);font-size:12px;font-weight:700}.studio-pipeline-card strong{justify-self:start}.studio-pipeline-card small{color:var(--muted);font-size:12px;line-height:1.35;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-pipeline-note{white-space:normal!important}.studio-pipeline-actions{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.studio-pipeline-actions .mini-pill{min-width:auto}.studio-pipeline-actions .mini-pill-button{font-size:12px;font-weight:700;line-height:1.2}.studio-panel{display:grid;gap:12px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.studio-panel h2,.studio-section-heading h2{margin-bottom:4px}.studio-row{display:flex;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid rgba(138,147,166,.16);font-size:13px}.studio-row span{color:var(--muted)}.studio-row strong{overflow:hidden;text-overflow:ellipsis;text-align:right;white-space:nowrap}.studio-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}.studio-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.studio-list-filter-row{margin-bottom:10px}.studio-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.studio-panel-wide{grid-column:span 2}.studio-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.studio-control-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-control-grid .field{margin-bottom:0}.studio-field-wide{grid-column:span 2}.studio-toggle{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;font-weight:650}.studio-toggle input{width:17px;height:17px;margin:0;accent-color:var(--accent)}.studio-runner-local{display:grid;gap:10px;padding-top:10px;border-top:1px solid rgba(138,147,166,.16)}.studio-runner-local .field{margin-bottom:0}.studio-runner-output{margin-top:2px}.studio-hosting-check{display:grid;gap:8px;padding-top:10px;border-top:1px solid rgba(138,147,166,.16)}.studio-hosting-check .studio-row{padding-top:6px}.studio-hosting-check .studio-row:first-child{border-top:0;padding-top:0}.studio-hosting-check p{margin:0;font-size:13px}.studio-publish-preview{display:grid;gap:10px;padding-top:10px;border-top:1px solid rgba(138,147,166,.16)}.studio-publish-preview .field{margin-bottom:0}.studio-publish-preview>.muted,.studio-job-list+.muted{margin:0}.studio-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.studio-empty span{color:var(--muted)}.studio-job-list{margin-bottom:12px}.studio-job-row{width:100%}.studio-job-row .history-row-main{flex:1 1 auto}.studio-job-row .mini-pill{white-space:nowrap}.studio-job-row.is-selected{border-color:var(--accent-2);box-shadow:0 0 0 1px #45d3a233}.studio-job-details{display:grid;gap:16px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:16px}.studio-job-details-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.studio-job-details-heading h3,.studio-job-subsection h3{margin:0 0 4px}.studio-job-details-heading p{margin:0;overflow-wrap:anywhere}.studio-job-action-row{padding-top:0}.studio-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.studio-detail-item{display:grid;gap:4px;min-width:0;padding:10px 12px;border:1px solid rgba(138,147,166,.16);border-radius:8px;background:#070c1c47}.studio-detail-item span{color:var(--muted);font-size:12px}.studio-detail-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-detail-item small{color:var(--muted);font-size:12px;line-height:1.35}.studio-detail-item-wide{grid-column:1 / -1}.studio-detail-item-wide strong{overflow-wrap:anywhere;white-space:normal}.studio-job-error{display:grid;gap:8px;border:1px solid rgba(255,184,77,.35);border-radius:8px;padding:10px 12px;background:#ffb84d17}.studio-job-error pre,.studio-command pre{margin:0;max-height:190px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font-size:12px;line-height:1.55}.studio-log-list,.studio-command-list{display:grid;gap:8px}.studio-summary-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.studio-summary-row{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid rgba(138,147,166,.16);border-radius:8px;background:#070c1c38}.studio-summary-row span{color:var(--muted);font-size:12px}.studio-summary-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.studio-log-entry{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-top:1px solid rgba(138,147,166,.16)}.studio-log-entry strong{display:block;margin-bottom:3px}.studio-log-entry small{color:var(--muted)}.studio-command{border:1px solid rgba(138,147,166,.16);border-radius:8px;padding:10px 12px;background:#070c1c47}.studio-command summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer}.studio-command summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-command summary span{flex:0 0 auto;color:var(--muted);font-size:12px}.studio-command pre{margin-top:10px}.section-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:16px;padding:6px 10px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}.timer.warn{color:var(--warn);border-color:#ffb84d66}.timer.danger{color:var(--bad);border-color:#ef476f66}.progress{height:6px;background:var(--panel-2);border-radius:999px;overflow:hidden;margin:14px 0 22px}.progress>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .2s}.choice{display:block;border:1px solid var(--border);background:var(--panel-2);border-radius:10px;padding:12px 14px;margin-bottom:10px;cursor:pointer;transition:all .12s}.choice:hover{border-color:var(--accent-2)}.choice.selected{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff2e}.choice input{margin-right:10px}.q-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px;margin-bottom:8px}.results-summary{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.score-pill{font-size:28px;font-weight:800;padding:10px 18px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.q-result{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;padding:14px 16px;margin-bottom:12px}.q-result.correct{border-color:#34c38f80}.q-result.wrong{border-color:#ef476f80}.q-result .badge{display:inline-block;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;margin-bottom:6px}.badge.correct{background:#34c38f2e;color:var(--good)}.badge.wrong{background:#ef476f2e;color:var(--bad)}.remediation-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 16px;padding:12px;border:1px solid rgba(255,184,77,.32);border-radius:10px;background:#ffb84d14}.remediation-panel-good{border-color:#34c38f52;background:#34c38f12}.remediation-main{display:grid;gap:4px;min-width:0}.remediation-main strong{font-size:18px}.remediation-main span,.remediation-main p{color:var(--muted)}.remediation-main p{margin:0;font-size:13px;line-height:1.45}.remediation-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.tf-row{display:flex;gap:10px}.tf-row .choice{flex:1;text-align:center;font-weight:600}.guided-practice-panel{display:grid;gap:10px;margin-top:16px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#ffffff06}.guided-actions{display:flex;flex-wrap:wrap;gap:10px}.guided-hint-status{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#ffffff05;color:var(--muted);font-size:14px;font-weight:600}.guided-feedback,.guided-gate-note{border-radius:8px;padding:9px 10px;font-size:14px}.guided-feedback{border:1px solid rgba(255,184,77,.24);background:#ffb84d14;color:#ffdca3}.guided-feedback.correct{border-color:#34c38f4d;background:#34c38f17;color:#a7f3d0}.guided-gate-note{border:1px solid rgba(110,231,255,.16);background:#6ee7ff0f;color:var(--muted)}.hint-ladder{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hint-ladder li{border:1px solid rgba(110,231,255,.14);border-radius:8px;background:#6ee7ff0d;padding:9px 10px}.hint-ladder strong,.hint-ladder span{display:block}.hint-ladder strong{color:var(--accent-2);font-size:12px;margin-bottom:4px}.hint-ladder span{color:var(--muted);font-size:14px;line-height:1.45}.guided-worked-solution{margin-top:0}.guided-worked-solution>strong{display:block;color:var(--good);font-size:12px;margin-bottom:8px}.guided-correct-answer{margin-top:8px;color:var(--text);font-weight:700}.guided-correct-answer span{color:var(--muted);font-weight:600}button.brand{background:transparent;border:0;padding:0;cursor:pointer;color:var(--text);display:flex;align-items:center;gap:12px;font-family:inherit;font-size:22px;font-weight:700;letter-spacing:-.01em}button.brand:hover{opacity:.9}.home-actions{display:grid;gap:12px}.home-card{text-align:left;background:var(--panel-2);border:1px solid var(--border);border-radius:12px;padding:18px 20px;cursor:pointer;color:var(--text);font:inherit;transition:border-color .15s,transform .05s}.home-card:hover:not(:disabled){border-color:var(--accent-2)}.home-card:active:not(:disabled){transform:translateY(1px)}.home-card:disabled{opacity:.55;cursor:not-allowed}.home-card.primary{background:linear-gradient(135deg,#7c5cff2e,#5b8cff1f);border-color:#7c5cff59}.home-card-title{font-size:17px;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:10px}.home-card-sub{color:var(--muted);font-size:14px}.badge-count{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--accent);color:#fff;min-width:24px;text-align:center}.home-dashboard{display:grid;gap:16px}.daily-card{display:grid;gap:18px}.daily-heading,.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.expandable-card{display:grid;gap:14px}.expandable-card.is-closed{gap:0}.expandable-heading{align-items:center}.expandable-heading-main{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;min-width:0}.expandable-toggle{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--muted);cursor:pointer;transition:border-color .15s,color .15s,transform .05s}.expandable-toggle:hover{border-color:var(--accent-2);color:var(--text)}.expandable-toggle:active{transform:translateY(1px)}.expandable-caret{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}.expandable-toggle[aria-expanded=true] .expandable-caret{transform:rotate(45deg)}.expandable-title-copy{min-width:0;display:grid;gap:4px}.expandable-title-copy h2,.expandable-title-copy h3{margin:0}.expandable-description{display:grid;gap:4px;font-size:13px;line-height:1.45}.expandable-heading-side{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;min-width:0}.expandable-content{display:grid;gap:14px;min-width:0}.daily-heading p{margin:0}.streak-pill{display:grid;min-width:92px;justify-items:center;gap:2px;padding:10px 12px;border:1px solid rgba(52,195,143,.35);border-radius:10px;background:#34c38f1a;color:var(--good);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.streak-pill span{color:var(--text);font-size:24px;line-height:1;letter-spacing:0}.study-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.study-stat{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px;min-width:0}.study-stat span{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.study-stat strong{display:block;font-size:24px;line-height:1.1}.study-stat small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.study-stat.wide{display:grid;align-content:start}.daily-actions{display:flex;flex-wrap:wrap;gap:10px}.daily-plan{display:grid;gap:8px;padding-top:4px}.daily-plan-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.daily-plan-row div{min-width:0}.daily-plan-row strong,.daily-plan-row span{display:block}.daily-plan-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.daily-plan-row span{color:var(--muted);font-size:12px;margin-top:2px}.cockpit-card{display:grid;gap:14px}.cockpit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.cockpit-panel{display:grid;align-content:start;gap:5px;min-width:0;min-height:112px;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);text-align:left;font:inherit}.cockpit-panel span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cockpit-panel strong{font-size:18px;line-height:1.2}.cockpit-panel p{margin:0;color:var(--muted);font-size:12px;line-height:1.35}.cockpit-panel-button{cursor:pointer;transition:border-color .15s,transform .05s}.cockpit-panel-button:hover:not(:disabled){border-color:var(--accent-2)}.cockpit-panel-button:active:not(:disabled){transform:translateY(1px)}.cockpit-panel-button:disabled{cursor:not-allowed;opacity:.65}.campaign-card{display:grid;gap:14px}.campaign-list{display:grid;gap:10px}.campaign-builder{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#ffffff08}.campaign-builder-fields{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(96px,.7fr));gap:10px;align-items:end}.campaign-builder .field{margin-bottom:0}.campaign-builder .label{margin-bottom:5px;font-size:11px}.campaign-builder .input,.campaign-builder .select{min-height:38px;padding:8px 10px;border-radius:8px;font-size:13px}.campaign-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.campaign-builder-actions>div{display:flex;align-items:center;justify-content:flex-end;gap:10px}.campaign-builder-actions span{color:var(--muted);font-size:12px}.campaign-toggle{display:inline-flex;align-items:center;gap:8px;min-height:34px;color:var(--text);font-size:13px;font-weight:700;-webkit-user-select:none;user-select:none}.campaign-toggle input{width:16px;height:16px;accent-color:var(--accent)}.campaign-row{display:grid;gap:12px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.campaign-row-running{border-color:#7dd3fc73}.campaign-row-danger{border-color:#f8717180}.campaign-row-head{display:flex;align-items:start;justify-content:space-between;gap:14px;min-width:0}.campaign-summary{display:grid;gap:4px;min-width:0}.campaign-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0}.campaign-title-line .objective-kicker{margin-bottom:0}.campaign-row strong,.campaign-row span,.campaign-row small,.campaign-item strong,.campaign-item span,.campaign-item small{display:block}.campaign-row strong,.campaign-item strong{overflow:hidden;color:var(--text);font-size:15px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.campaign-row span,.campaign-row small,.campaign-item span,.campaign-item small{color:var(--muted);font-size:12px;line-height:1.35}.campaign-time{color:var(--muted);font-size:12px}.campaign-status{display:inline-flex;align-items:center;min-height:20px;padding:2px 8px;border-radius:999px;color:var(--text);font-size:11px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.05em}.campaign-status-running{background:#7dd3fc24;color:#7dd3fc}.campaign-status-complete{background:#4ade8024;color:#86efac}.campaign-status-danger{background:#f8717124;color:#fca5a5}.campaign-status-paused{background:#fbbf2424;color:#fcd34d}.campaign-status-queued{background:#94a3b824;color:#cbd5e1}.campaign-meter{height:6px;width:min(100%,420px);overflow:hidden;border-radius:999px;background:#8a93a62e}.campaign-meter>div{height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .2s}.campaign-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.campaign-items{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--border)}.campaign-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,auto);gap:12px;align-items:start;min-width:0}.campaign-item>div:first-child{display:grid;gap:4px;min-width:0}.campaign-item-metrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.campaign-item-metrics span{padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:#ffffff08;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.campaign-error{color:#fca5a5!important}.mastery-bar{height:7px;width:100%;overflow:hidden;border-radius:999px;background:#8a93a62e}.mastery-bar>div{height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,var(--good),var(--accent-2));transition:width .2s}.objective-list,.track-list{display:grid;gap:10px;min-width:0}.queue-subsection{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.compact-heading h3{margin:0;font-size:16px}.objective-row{display:flex;justify-content:space-between;gap:14px;min-width:0;width:100%;text-align:left;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:14px;cursor:pointer;font:inherit;transition:border-color .15s,transform .05s}.objective-row:hover:not(:disabled){border-color:var(--accent-2)}.objective-row:active:not(:disabled){transform:translateY(1px)}.objective-row:disabled{opacity:.55;cursor:not-allowed}.objective-row-card{cursor:default}.objective-row-card:hover{border-color:var(--border)}.objective-row-card:active{transform:none}.objective-row-split{align-items:stretch;cursor:default}.objective-main-button{display:grid;align-content:start;min-width:0;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.objective-main-button:hover .objective-title{color:var(--accent-2)}.objective-main-button:disabled{cursor:not-allowed;opacity:.65}.objective-row-main{min-width:0}.objective-kicker{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.objective-title{font-weight:700;font-size:16px;margin-bottom:4px}.objective-sub{color:var(--muted);font-size:13px;line-height:1.4}.objective-row-side{display:grid;align-content:start;justify-items:end;gap:8px;min-width:0;flex:0 0 88px}.objective-action-stack{flex-basis:118px}.objective-row-side-actions{flex-basis:116px}.mini-pill{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:4px 8px;border-radius:999px;background:#7c5cff29;color:var(--text);border:1px solid rgba(124,92,255,.35);font-size:12px;font-weight:700}.mini-pill-button{cursor:pointer;font:inherit}.mini-pill-button:hover:not(:disabled){border-color:var(--accent-2)}.mini-pill-button:disabled{cursor:not-allowed;opacity:.6}.due-pill{background:#ffb84d2e;border-color:#ffb84d61;color:var(--warn)}.cram-pill{background:#46b8e826;border-color:#46b8e85c;color:var(--accent-2)}.lab-pill{background:#34c38f24;border-color:#34c38f57;color:var(--good)}.template-pill{background:#ffffff0f;border-color:#8a93a647;color:var(--muted)}.mastery-label{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.track-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,180px);align-items:center;gap:16px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:13px 14px}.track-row-button{width:100%;color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:border-color .15s,transform .05s}.track-row-button:hover:not(:disabled){border-color:var(--accent-2)}.track-row-button:active:not(:disabled){transform:translateY(1px)}.track-row-button:disabled{opacity:.65;cursor:not-allowed}.track-row-main{min-width:0}.track-row-title{font-weight:700;margin-bottom:3px}.track-row-sub{color:var(--muted);font-size:13px}.track-progress{display:grid;gap:7px}.track-progress span{justify-self:end;color:var(--muted);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}@media (max-width: 720px){.study-stats,.studio-pipeline-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-grid{grid-template-columns:1fr}.studio-panel-wide{grid-column:auto}.studio-control-grid,.studio-control-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-field-wide{grid-column:1 / -1}.studio-detail-grid,.studio-summary-list,.cockpit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-builder-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.campaign-builder-fields .field:first-child{grid-column:1 / -1}}@media (max-width: 560px){.daily-heading,.section-heading,.objective-row,.track-row{display:grid}.section-heading>.mini-pill{justify-self:start}.studio-detail-grid,.studio-control-grid,.studio-control-grid.compact,.studio-pipeline-strip,.studio-summary-list{grid-template-columns:1fr}.studio-actions{display:grid;grid-template-columns:1fr}.studio-actions .btn{width:100%}.studio-job-details-heading,.studio-command summary{display:grid}.studio-job-row{display:grid;align-items:start}.studio-job-row .history-row-main{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);width:100%}.studio-job-row .mini-pill{justify-self:start}.studio-job-row .history-row-title{flex-basis:100%;grid-column:1 / -1;min-width:0;width:min(100%,30ch);max-width:min(100%,30ch);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word}.studio-job-row .history-row-meta{display:grid;gap:4px;justify-content:start;justify-items:start;width:100%}.expandable-heading-main{grid-template-columns:32px minmax(0,1fr)}.expandable-heading-side{justify-content:flex-start}.streak-pill{justify-self:start}.objective-row-side{justify-items:start;grid-auto-flow:row;align-items:center;flex:none;width:100%}.track-row{grid-template-columns:1fr}.track-progress span{justify-self:start}.daily-plan-row{display:grid}.daily-plan-row .mini-pill{justify-self:start}.campaign-row-head,.campaign-item{grid-template-columns:1fr;display:grid}.campaign-builder-fields{grid-template-columns:1fr}.campaign-builder-actions,.campaign-builder-actions>div{display:grid;justify-content:stretch}.campaign-actions,.campaign-item-metrics{justify-content:flex-start}.campaign-row .mini-pill-button{justify-self:start}.cockpit-grid{grid-template-columns:1fr}}.track-detail,.objective-detail,.objective-detail-hero,.objective-detail-panel{display:grid;gap:16px}.objective-detail-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.objective-detail-head h2{margin:0 0 8px}.objective-detail-head p{margin:0;color:var(--muted);line-height:1.5}.objective-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.objective-detail-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.objective-detail-progress span{display:block;margin-bottom:6px;color:var(--muted);font-size:13px;font-weight:700}.objective-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.objective-stat-tile{display:grid;gap:4px;min-height:92px;align-content:center;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.objective-stat-tile span,.objective-stat-tile small{color:var(--muted);font-size:12px}.objective-stat-tile span{font-weight:700;text-transform:uppercase;letter-spacing:.06em}.objective-stat-tile strong{font-size:22px}.objective-focus-list{display:grid;gap:8px}.objective-focus-item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;border-top:1px solid var(--border)}.objective-focus-item strong{font-size:13px}.objective-focus-item span{color:var(--muted);font-size:14px;line-height:1.45}.concept-coverage-list{display:grid;gap:8px}.concept-coverage-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.concept-coverage-main{display:grid;gap:3px;min-width:0}.concept-coverage-main strong{font-size:14px}.concept-coverage-main span{color:var(--muted);font-size:12px;line-height:1.4}.concept-coverage-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.concept-coverage-ready .concept-coverage-main strong{color:var(--good)}.concept-coverage-missing .concept-coverage-main strong{color:var(--warn)}.track-hero,.module-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,200px);gap:18px;align-items:end}.track-hero p,.module-heading p{margin:0;line-height:1.45}.track-hero-progress,.module-progress{display:grid;gap:8px;align-content:end}.track-hero-progress span,.module-progress span{justify-self:end;color:var(--muted);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.track-stats{margin:18px 0}.readiness-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,220px);gap:16px;align-items:center;padding:12px 0 16px;border-top:1px solid var(--border)}.readiness-main span,.readiness-progress span{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.readiness-main strong{display:block;font-size:18px}.readiness-main p{margin:4px 0 0}.readiness-progress{display:grid;gap:8px}.readiness-progress span{justify-self:end;margin-bottom:0}.module-section{display:grid;gap:16px}.gap-card{display:grid;gap:14px}.module-bank{margin-top:6px!important;font-size:13px}.content-studio{display:grid;gap:14px}.content-studio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.content-studio-panel{display:grid;gap:8px;align-content:start;min-height:100px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px}.content-studio-panel>span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.content-studio-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.template-chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.template-chip{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;border:1px solid rgba(124,92,255,.35);background:#7c5cff24;color:var(--text);padding:4px 8px;font-size:12px;font-weight:700}.template-chip.subtle{border-color:#8a93a640;background:#8a93a614;color:var(--muted)}.template-vet-chip{border-color:#58a6ff57;background:#58a6ff1f;color:#9cc9ff}.template-vet-approved{border-color:#34c38f57;background:#34c38f1f;color:var(--good)}.template-vet-needs_fix{border-color:#ffb84d61;background:#ffb84d24;color:var(--warn)}.template-vet-archived{border-color:#8a93a62e;background:#0f111552;color:var(--muted)}.template-pilot-list{display:grid;gap:8px}.template-pilot-row{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:11px 12px}.template-pilot-row div:first-child{min-width:0}.template-pilot-row div:first-child strong,.template-pilot-row div:first-child span{display:block}.template-pilot-row div:first-child strong{font-size:14px}.template-pilot-row div:first-child span{color:var(--muted);font-size:12px;margin-top:2px}.template-authoring-panel{display:grid;gap:10px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:12px}.template-authoring-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;align-items:end}.template-authoring-controls .field{margin:0}.template-authoring-controls p{margin:0;font-size:13px;line-height:1.45}.template-authoring-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.template-authoring-actions span{font-size:13px}.template-review-list{display:grid;gap:10px;padding-top:4px}.template-review-row{display:grid;gap:12px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px}.template-review-main{display:grid;gap:8px;min-width:0}.template-review-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.template-review-heading strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.template-review-main p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.template-vet-summary{display:grid;gap:4px;border-left:3px solid rgba(88,166,255,.55);background:#58a6ff14;border-radius:0 8px 8px 0;padding:9px 10px}.template-vet-summary strong{font-size:12px;text-transform:uppercase;color:var(--text)}.template-vet-summary span,.template-vet-summary em{color:var(--muted);font-size:13px;line-height:1.45}.template-vet-findings{display:grid;gap:6px}.template-vet-finding{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start}.template-vet-finding span{border-radius:999px;background:#ffb84d24;color:var(--warn);padding:3px 7px;font-size:11px;font-weight:800;text-transform:uppercase}.template-vet-finding p{margin:0}.template-status{flex-shrink:0;border-radius:999px;border:1px solid rgba(138,147,166,.28);background:#8a93a614;color:var(--muted);padding:3px 8px;font-size:12px;font-weight:700}.template-status-approved{border-color:#34c38f57;background:#34c38f1f;color:var(--good)}.template-status-needs_fix{border-color:#ffb84d61;background:#ffb84d24;color:var(--warn)}.template-status-archived{border-color:#8a93a62e;background:#0f111552;color:var(--muted)}.template-filter-row{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;max-width:420px}.template-filter{display:inline-flex;align-items:center;gap:6px;min-height:30px;border-radius:999px;border:1px solid var(--border);background:#8a93a614;color:var(--muted);padding:5px 9px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.template-filter span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;min-height:20px;border-radius:999px;background:#ffffff0f;color:var(--text);font-variant-numeric:tabular-nums}.template-filter.active{border-color:#7c5cff8f;background:#7c5cff2e;color:var(--text)}.template-review-actions{display:flex;flex-wrap:wrap;gap:7px}.empty-template-state{display:grid;gap:3px;border:1px dashed var(--border);border-radius:10px;padding:13px;background:#0f11152e}.empty-template-state strong{font-size:14px}.empty-template-state span{color:var(--muted);font-size:13px}.template-editor{display:grid;gap:2px;border-top:1px solid var(--border);padding-top:12px}.template-editor .field{margin-bottom:10px}.template-textarea{min-height:92px;resize:vertical;line-height:1.45}.template-textarea.short{min-height:70px}.template-hints{margin:0;font-size:13px;line-height:1.4}@media (max-width: 560px){.track-hero,.module-heading,.readiness-panel{grid-template-columns:1fr}.content-studio-grid,.template-pilot-row{grid-template-columns:1fr;display:grid}.template-review-heading{display:grid}.template-review-heading strong{white-space:normal}.template-filter-row{justify-content:flex-start}.template-authoring-controls{grid-template-columns:1fr}.track-hero-progress span,.module-progress span,.readiness-progress span{justify-self:start}}.history-list{display:grid;gap:8px}.history-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer;color:var(--text);font:inherit;text-align:left;transition:border-color .15s}.history-row:hover{border-color:var(--accent-2)}.history-row-main{display:flex;align-items:center;gap:10px;min-width:0}.history-row-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:380px}.history-row-meta{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:13px}.history-score{font-weight:700;font-variant-numeric:tabular-nums}.badge-review{background:#ffb84d2e;color:var(--warn)}.badge-cram{background:#46b8e829;color:var(--accent-2)}.badge-exam{background:#ed5f7429;color:var(--bad)}.badge-lab{background:#34c38f29;color:var(--good)}.save-banner{font-size:13px;padding:8px 12px;border-radius:8px;margin-bottom:12px;background:var(--panel-2);border:1px solid var(--border)}.save-banner.subtle{color:var(--good);border-color:#34c38f4d}.checkbox-row{display:flex;align-items:flex-start;gap:12px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin:8px 0 18px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-row input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--accent);cursor:pointer}.checkbox-row .checkbox-title{display:block;font-weight:600;font-size:14px}.checkbox-row .checkbox-sub{display:block;color:var(--muted);font-size:13px;margin-top:2px}.flag-btn{background:transparent;border:1px solid var(--border);color:var(--muted);padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.flag-btn:hover{color:var(--warn);border-color:#ffb84d80}.flag-btn:disabled{opacity:.5;cursor:wait}.flag-btn.active{color:var(--warn);border-color:#ffb84d80;background:#ffb84d1a}.q-result.is-flagged{opacity:.65;border-style:dashed}.badge-flag-inline{color:var(--warn);font-weight:600}.source-ref-block{display:grid;gap:8px;margin-top:8px}.source-ref-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.source-ref-label{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.source-ref-pill{display:inline-flex;align-items:center;gap:5px;max-width:min(100%,360px);color:var(--accent-2);background:#6ee7ff1a;border:1px solid rgba(110,231,255,.24);border-radius:999px;font-size:12px;font-weight:700;line-height:1;padding:4px 8px;text-decoration:none}.source-ref-pill strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px;font-weight:600}.source-ref-link:hover{border-color:#6ee7ff73;background:#6ee7ff29}.source-evidence{border:1px solid rgba(110,231,255,.14);border-radius:10px;background:#6ee7ff0f;padding:8px 10px}.source-evidence summary{cursor:pointer;color:var(--accent-2);font-size:12px;font-weight:700}.source-evidence blockquote{margin:8px 0 0;padding-left:10px;border-left:2px solid rgba(110,231,255,.35)}.source-evidence blockquote strong,.source-evidence blockquote em,.source-evidence blockquote span{display:block}.source-evidence blockquote strong{color:var(--text);font-size:12px;margin-bottom:4px}.source-evidence blockquote em{color:var(--accent-2);font-size:12px;font-style:normal;margin-bottom:4px}.source-evidence blockquote span{color:var(--muted);font-size:13px;line-height:1.45}.concept-resource-block{display:grid;gap:8px;margin-top:10px}.concept-resource-block.compact{margin-top:0}.concept-resource-heading{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.concept-resource-list{display:flex;flex-wrap:wrap;gap:8px}.concept-resource-link{display:inline-grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;max-width:min(100%,420px);border:1px solid rgba(52,195,143,.22);border-radius:10px;background:#34c38f12;color:var(--text);padding:7px 9px;text-decoration:none}.concept-resource-link:hover{border-color:#34c38f6b;background:#34c38f1f}.concept-resource-role{border-radius:999px;background:#34c38f24;color:var(--good);font-size:11px;font-weight:800;line-height:1;padding:4px 7px;white-space:nowrap}.concept-resource-main{display:grid;gap:2px;min-width:0}.concept-resource-main strong,.concept-resource-main em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.concept-resource-main strong{color:var(--text);font-size:13px}.concept-resource-main em{color:var(--muted);font-size:12px;font-style:normal}.worked-solution{margin-top:8px;border:1px solid rgba(52,195,143,.18);border-radius:10px;background:#34c38f0f;padding:8px 10px}.worked-solution summary{cursor:pointer;color:var(--good);font-size:12px;font-weight:700}.worked-solution div{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.45;white-space:pre-wrap}.question-review-tools{margin-top:10px;border:1px solid var(--border);border-radius:10px;background:#0f111547}.question-review-tools summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;cursor:pointer;padding:9px 10px;color:var(--muted);font-size:13px;font-weight:700}.question-review-body{display:grid;gap:12px;padding:0 10px 10px}.quality-pill,.quality-tag-count{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:3px 8px;font-size:12px;line-height:1}.quality-pill{color:var(--text);background:#8a93a624;border:1px solid rgba(138,147,166,.28)}.quality-vetted,.quality-excellent{color:var(--good);background:#34c38f1f;border-color:#34c38f52}.quality-needs_fix{color:var(--warn);background:#ffb84d1f;border-color:#ffb84d52}.quality-tag-count{color:var(--accent-2);background:#6ee7ff14}.review-control-block{display:grid;gap:7px}.review-control-label{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.review-chip-row{display:flex;flex-wrap:wrap;gap:7px}.review-chip{border:1px solid var(--border);background:var(--panel-2);color:var(--text);border-radius:999px;padding:5px 9px;font:inherit;font-size:12px;cursor:pointer}.review-chip.active{border-color:#7c5cff9e;background:#7c5cff2e}.quality-notes{min-height:72px}.compact-error,.compact-banner{margin-bottom:0}.auto-vet-summary{display:grid;gap:6px;border:1px solid var(--border);border-radius:8px;background:#ffffff08;padding:10px;color:var(--muted);font-size:13px;line-height:1.4}.auto-vet-summary div{display:flex;justify-content:space-between;gap:12px;color:var(--text)}.auto-vet-summary p{margin:0}.auto-vet-summary ul{margin:0;padding-left:18px}.question-edit-panel{display:grid;gap:12px;border-top:1px solid var(--border);padding-top:12px}.choice-editor-list{display:grid;gap:8px}.source-library{display:grid;gap:16px}.source-form{margin-top:20px}.source-target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.compact-check{margin:0}.source-list{display:grid;gap:10px}.source-row{display:flex;justify-content:space-between;gap:14px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:14px}.source-row-main{min-width:0}.source-row-kicker{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.source-title{display:inline-block;color:var(--text);font-weight:700;text-decoration:none;margin-bottom:5px}.source-title:hover{color:var(--accent-2)}.source-description,.source-notes{color:var(--muted);font-size:13px;line-height:1.4;margin-bottom:6px}.source-url{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.source-fetch-status{display:inline-block;margin-top:8px;color:var(--warn);font-size:12px;font-weight:700}.source-fetch-status.ready{color:var(--good)}.source-fetch-status.bad{color:var(--bad)}.source-actions{display:flex;align-items:flex-start;gap:8px;flex-shrink:0}.source-chip-list{display:grid;gap:8px}.source-chip{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:10px 12px;cursor:pointer;font:inherit}.source-chip:hover{border-color:var(--accent-2)}.source-chip.active{border-color:#7c5cffb3;box-shadow:0 0 0 3px #7c5cff29}.source-chip span{font-weight:700;min-width:0}.source-chip small{color:var(--muted);flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums}.source-notes{margin-top:8px;padding-left:10px;border-left:2px solid rgba(138,147,166,.25)}.source-detail{display:grid;gap:16px}.source-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:18px;margin-top:16px}.source-detail-main{min-width:0}.source-detail-main p{margin:8px 0 0;line-height:1.45}.source-detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}.source-detail-actions .muted{font-size:13px}.source-detail-stats{display:grid;gap:10px}.source-detail-stats>div{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:11px 12px}.source-detail-stats span{display:block;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.source-detail-stats strong{display:block;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.source-preview{margin-top:18px}.source-preview pre{max-height:280px;overflow:auto;white-space:pre-wrap;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;color:var(--text);font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:12px}.source-section-list{display:grid;gap:8px}.source-section-item{border:1px solid var(--border);border-radius:8px;background:#ffffff08;padding:9px 11px}.source-section-item summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;color:var(--text);font-size:13px;font-weight:700}.source-section-item summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-section-item summary small,.source-section-item p{color:var(--muted);font-size:12px}.source-section-item p{margin:9px 0 0;line-height:1.5}.cited-question-list{display:grid;gap:10px}.question-row-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.question-meta{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.doc-importer{display:grid;gap:16px}.doc-candidate-list{display:grid;gap:8px}.doc-candidate-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:11px 12px;cursor:pointer}.doc-candidate-row input{margin-top:3px;accent-color:var(--accent)}.doc-candidate-row strong,.doc-candidate-row span span,.doc-candidate-row small{display:block}.doc-candidate-row strong{margin-bottom:3px}.doc-candidate-row span span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.doc-candidate-row small{color:var(--accent-2);font-size:12px;margin-top:5px}@media (max-width: 720px){.source-target-grid,.source-detail-grid{grid-template-columns:1fr}.objective-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.source-row{display:grid}.source-row .flag-btn{justify-self:start}.source-actions{flex-wrap:wrap}.question-row-header{display:grid}.objective-row-side-actions,.objective-action-stack{flex-basis:auto}.objective-detail-head,.objective-detail-progress,.remediation-panel{grid-template-columns:1fr}.objective-detail-actions,.remediation-actions{justify-content:flex-start}.objective-stat-grid,.objective-focus-item,.concept-coverage-row{grid-template-columns:1fr}.objective-focus-item{gap:4px}.concept-coverage-meta{justify-content:flex-start}}
