:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#1a1a1a;background-color:#fdfcf9;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}.app{min-height:100vh;background:#fdfcf9;color:#1a1a1a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-header{padding:20px 64px;max-width:1440px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #E5E2DC;background:#fdfcf9}.app-header h1{margin:0;font-size:24px;font-weight:700;color:#1a1a1a}.app-header p{margin:0;font-size:14px;color:#777}.app-main{max-width:1440px;margin:0 auto;padding:24px;display:grid;gap:24px;grid-template-columns:400px 1fr}@media(max-width:1024px){.app-main{grid-template-columns:1fr}.app-header{padding:20px 24px;flex-direction:column;align-items:flex-start;gap:8px}.panel{width:100%}}.panel{background:#fdfcf9;border:1px solid #E5E2DC;padding:24px;min-height:300px}.panel-title{margin:0 0 16px;font-size:18px;font-weight:600;color:#1a1a1a}.question-form{display:flex;flex-direction:column;gap:.75rem}.action-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.provider-row{display:flex;align-items:center;gap:8px;padding:0;background:transparent;border-radius:0}.provider-label{font-size:14px;color:#777}.provider-select{padding:6px 10px;border-radius:0;border:1px solid #E5E2DC;background:transparent;font-size:14px;color:#1a1a1a;cursor:pointer;font-family:inherit}.provider-select:hover,.provider-select:focus{outline:none;border-color:#1a1a1a}.question-input{display:flex;flex-direction:column;gap:8px}.question-input label{font-weight:600;font-size:14px;color:#1a1a1a}.question-form textarea{resize:vertical;padding:12px;border-radius:0;border:1px solid #E5E2DC;font-size:14px;font-family:inherit;background:#fdfcf9;color:#1a1a1a;min-height:120px}.question-form textarea::placeholder{color:#999}.submit-button{align-self:flex-start;padding:10px 20px;border-radius:0;border:none;background:#1a1a1a;color:#fff;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit}.submit-button:hover{opacity:.9}.question-form button:disabled{opacity:.6;cursor:not-allowed}.error{margin-top:16px;color:#dc2626;background:#fef2f2;border:1px solid #FECACA;padding:12px 16px;border-radius:0;font-size:14px}.placeholder{padding:16px;color:#999;background:#fdfcf9;border-radius:0;border:1px dashed #E5E2DC;font-size:14px}.overview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.overview-card{display:flex;flex-direction:column;gap:6px;padding:12px;background:#fff;border:1px solid #E2E8F0}.overview-label{font-size:12px;color:#64748b}.overview-value{font-size:16px;color:#0f172a}.overview-value.success{color:#15803d}.overview-value.danger{color:#b91c1c}.tree-node{margin-left:.5rem}.tree-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:0}.tree-row.completed{background:#e6f7ef}.tree-row.selected{background:#e7efff}.toggle{width:20px;height:20px;border-radius:0;border:1px solid #E5E2DC;background:#f5f2ed;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#1a1a1a;padding:0}.toggle-placeholder{display:inline-block;width:20px;height:20px}.title{background:none;border:none;text-align:left;font-size:14px;font-weight:500;cursor:pointer;color:#1a1a1a;padding:0;flex:1}.tree-row.completed .title{text-decoration:line-through;color:#6b7280}.difficulty-tag{padding:4px 8px;border-radius:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#fff7ed;color:#9a3412}.quest-tag{padding:3px 8px;font-size:11px;font-weight:700;text-transform:uppercase}.quest-main{color:#1d4ed8;background:#dbeafe}.quest-side{color:#15803d;background:#dcfce7}.quest-boss{color:#b91c1c;background:#fee2e2}.difficulty-simple{background:#ecfdf3;color:#0f7a3d}.difficulty-medium{background:#fff7ed;color:#9a3412}.difficulty-hard{background:#fef2f2;color:#991b1b}.split-button{margin-left:0;padding:6px 12px;border-radius:0;border:1px solid #E5E2DC;background:#fdfcf9;font-size:13px;font-weight:500;cursor:pointer;color:#1a1a1a;font-family:inherit}.split-button:disabled{cursor:not-allowed;opacity:.6}.stuck-button{padding:6px 12px;border-radius:0;border:1px solid #FDE68A;background:#fef3c7;font-size:13px;font-weight:600;cursor:pointer;color:#92400e;font-family:inherit}.stuck-button:disabled{cursor:not-allowed;opacity:.6}.complete-button{padding:6px 12px;border-radius:0;border:1px solid #B7E4C7;background:#ecfdf3;font-size:13px;font-weight:500;color:#0f7a3d;cursor:pointer;font-family:inherit}.tree-row.completed .complete-button{background:#d1fae5;color:#065f46}.task-line{display:flex;gap:8px;margin-left:32px;padding:8px 0;color:#4b5563;font-size:13px}.task-label{font-weight:600;color:#374151}.task-text{flex:1}.keyword{position:relative;padding:0 2px;margin:0 1px;border-bottom:1px dashed #F59E0B;color:#b45309;cursor:help}.keyword:after{content:attr(data-tip);position:absolute;left:0;bottom:130%;min-width:180px;max-width:260px;padding:8px 10px;border-radius:0;background:#1a1a1a;color:#fff;font-size:12px;line-height:1.3;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;z-index:10;white-space:normal}.keyword:hover:after{opacity:1;transform:translateY(0)}.split-status{margin:8px 0 8px 32px;color:#999;font-size:13px}.tree-children{margin-left:24px;border-left:1px solid #E5E2DC;padding-left:12px}@media(max-width:768px){.overview-cards{grid-template-columns:1fr}}
