:root{color:#172033;background:#eef2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{display:grid;grid-template-columns:minmax(360px,420px) minmax(0,1fr);gap:14px;min-height:100vh;padding:14px}.qa-region,.viewer-region{min-width:0}.question-panel,.viewer-shell{display:flex;flex-direction:column;height:calc(100vh - 28px);border:1px solid #d7dee8;border-radius:8px;background:#f8fafc;overflow:hidden}.panel-header,.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid #e0e7ef}.eyebrow{margin:0 0 4px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase}h1,h2{margin:0;color:#0f172a;letter-spacing:0}h1{font-size:22px}h2{font-size:20px}.icon-button{display:inline-grid;width:38px;height:38px;place-items:center;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#22304a}.question-form{display:grid;gap:10px;padding:16px 18px 12px}.question-form textarea{width:100%;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;padding:12px;color:#0f172a;background:#fff;line-height:1.5}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:0;border-radius:8px;background:#2563eb;color:#fff;font-weight:700}.spin-icon{animation:spin .9s linear infinite}.suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 14px}.suggestions button{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;padding:7px 10px;font-size:13px}.answer-section{flex:1;overflow:auto;padding:14px 18px 18px;border-top:1px solid #e6edf5}.question-echo{margin:0 0 10px;color:#475569;font-size:13px}.answer-card,.empty-answer,.validation-warning,.answer-error{border:1px solid #dbe3ee;border-radius:8px;background:#fff}.answer-card{padding:14px}.answer-card p{margin:0 0 10px;line-height:1.55}.answer-card p:last-child{margin-bottom:0}.empty-answer{padding:18px;color:#64748b}.validation-warning,.safety-note,.answer-error{display:flex;align-items:flex-start;gap:8px;color:#92400e;background:#fffbeb}.validation-warning{margin:14px 18px 0;padding:10px;font-size:13px}.safety-note{margin-top:12px;border-radius:8px;padding:10px;font-size:13px}.answer-error{margin-bottom:12px;padding:10px;font-size:13px}.muscle-chip-list{display:grid;gap:8px;margin-top:12px}.muscle-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #dbe3ee;border-left-width:5px;border-radius:8px;background:#fff;padding:10px}.muscle-chip strong,.muscle-chip span{display:block}.muscle-chip strong{color:#111827;font-size:14px}.muscle-chip span{margin-top:2px;color:#64748b;font-size:12px}.muscle-chip button{display:inline-grid;width:32px;height:32px;place-items:center;border:1px solid #d5dde8;border-radius:8px;background:#f8fafc;color:#334155}.role-primary{border-left-color:#f97316}.role-secondary{border-left-color:#eab308}.role-stabilizer{border-left-color:#38bdf8}.role-related{border-left-color:#a78bfa}.canvas-frame{position:relative;flex:1;min-height:0}.viewer-selection-card{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:236px;max-width:min(360px,calc(100% - 32px));border:1px solid rgba(226,232,240,.2);border-left:5px solid #a78bfa;border-radius:8px;background:#0f172adb;color:#f8fafc;padding:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 18px 40px #0000003d}.viewer-selection-card p,.viewer-selection-card strong,.viewer-selection-card span{display:block}.viewer-selection-card p{margin:0 0 3px;color:#cbd5e1;font-size:12px}.viewer-selection-card strong{color:#fff;font-size:16px}.viewer-selection-card span{margin-top:2px;color:#cbd5e1;font-size:12px}.viewer-selection-card.role-primary{border-left-color:#f97316}.viewer-selection-card.role-secondary{border-left-color:#eab308}.viewer-selection-card.role-stabilizer{border-left-color:#38bdf8}.viewer-selection-card.role-related{border-left-color:#a78bfa}.selection-actions{display:flex;align-items:center;gap:8px}.selection-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid rgba(226,232,240,.25);border-radius:8px;background:#f8fafc1a;color:#f8fafc;padding:0 10px}.selection-actions button:last-child{width:34px;padding:0}.hidden-muscle-dock{position:absolute;left:16px;bottom:16px;width:min(320px,calc(100% - 32px));max-height:min(280px,calc(100% - 48px));border:1px solid rgba(226,232,240,.2);border-radius:8px;background:#0f172ae0;color:#f8fafc;padding:12px;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 18px 40px #0000003d}.hidden-dock-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.hidden-dock-header p,.hidden-dock-header strong{display:block}.hidden-dock-header p{margin:0 0 2px;color:#cbd5e1;font-size:12px}.hidden-dock-header strong{color:#fff;font-size:14px}.hidden-dock-header button{min-height:32px;border:1px solid rgba(226,232,240,.25);border-radius:8px;background:#f8fafc1a;color:#f8fafc;padding:0 10px;white-space:nowrap}.hidden-muscle-list{display:flex;flex-wrap:wrap;gap:8px;max-height:198px;overflow:auto;padding-right:2px}.hidden-muscle-list button{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:1px solid rgba(226,232,240,.2);border-radius:8px;background:#f8fafc14;color:#f8fafc;padding:0 9px}.viewer-footer{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #1f2937;background:#111827;color:#cbd5e1;font-size:12px}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.question-panel,.viewer-shell{height:auto;min-height:520px}.canvas-frame{min-height:520px}}@keyframes spin{to{transform:rotate(360deg)}}
