.header{padding:16px 12px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea33;flex-shrink:0}.header h1{font-size:24px;font-weight:600;margin-bottom:8px}.header p{font-size:13px;opacity:.9;margin-bottom:12px}.progress-bar{width:100%;height:4px;background-color:#ffffff4d;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background-color:#ffffffe6;transition:width .3s ease}.question-item{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;display:flex;flex-direction:column;gap:12px}.question-icon{font-size:32px;color:#667eea;display:flex;align-items:center;justify-content:center;height:40px}.question-content{display:flex;flex-direction:column;gap:12px}.question-text{font-size:16px;font-weight:600;color:#2c3e50;line-height:1.4;margin:0}.question-desc{font-size:13px;color:#7f8c8d;line-height:1.4;margin:0}.options{display:grid;gap:10px;margin-top:8px}.options-full{grid-template-columns:1fr}.options-compact{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.option-wrapper{display:flex;flex-direction:column;gap:8px}.option{position:relative;cursor:pointer;display:block}.option input[type=radio]{display:none}.option.selected .option-box{border-color:#667eea;background-color:#f0f4ff;box-shadow:0 0 0 3px #667eea1a}.option-box{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 10px;border:2px solid #e0e6f2;border-radius:10px;background-color:#fafbfc;transition:all .3s ease;text-align:center;min-height:60px;justify-content:center}.option-box:active{transform:scale(.98)}.option-icon{font-size:24px;color:#667eea;display:flex;align-items:center;justify-content:center}.option-label{font-size:14px;font-weight:500;color:#2c3e50;word-break:break-word}.option-desc{font-size:12px;color:#95a5a6;line-height:1.3}.option-tag{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:500;color:#7f8c8d}.option-input{width:100%;padding:8px 12px;border:1px solid #bdc3c7;border-radius:6px;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s ease}.option-input:focus{border-color:#667eea}.options-multi{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.option-multi{position:relative;cursor:pointer;display:block;height:100%}.option-multi input[type=checkbox]{display:none}.option-multi.selected .option-box-multi{border-color:#667eea;border-width:3px;background-color:#667eea14;box-shadow:0 0 0 3px #667eea26}.option-multi.selected .option-box-multi:after{content:"✓";position:absolute;top:8px;right:8px;color:#fff;font-weight:700;font-size:14px;background-color:#667eea;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.option-box-multi{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;border:2px solid #e0e6f2;border-radius:10px;background-color:#fafbfc;transition:all .3s ease;text-align:center;position:relative;min-height:120px;height:100%;justify-content:center}.option-box-multi:hover{border-color:#667eea;background-color:#667eea08}.option-box-multi:active{transform:scale(.98)}.option-box-multi .option-icon{font-size:24px;color:#667eea;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.multi-part .question-part{margin-top:16px;padding-top:16px;border-top:1px solid #eee}.multi-part .question-part:first-of-type{margin-top:12px;padding-top:0;border-top:none}.part-title{font-size:15px;font-weight:600;color:#2c3e50;margin:0 0 8px}.part-desc{font-size:13px;color:#7f8c8d;margin:0 0 12px}.matrix{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.matrix-table{display:table;width:100%;border-collapse:collapse;margin-top:8px}.matrix-row{display:table-row}.matrix-row.header{background-color:#f5f7fa}.matrix-cell{display:table-cell;padding:10px 6px;border:1px solid #e0e6f2;text-align:center;vertical-align:middle}.matrix-cell.header-cell{background-color:#f5f7fa;font-weight:600;font-size:12px;color:#2c3e50;padding:8px 4px}.matrix-cell.row-header{text-align:left;background-color:#fafbfc;font-weight:500;color:#2c3e50;display:flex;align-items:center;gap:6px;font-size:13px;padding:10px 8px}.row-icon{font-size:16px;min-width:20px;text-align:center;color:#667eea}.row-label{flex:1}.matrix-cell input[type=radio]{cursor:pointer;width:20px;height:20px;accent-color:#667eea}@media (max-width: 600px){.matrix-cell.header-cell{font-size:10px;padding:6px 2px}.matrix-cell.row-header{font-size:12px}.matrix-cell input[type=radio]{width:16px;height:16px}}.knowledge-group{border-radius:10px;padding:12px;margin-bottom:12px;border:1px solid rgba(0,0,0,.06)}.group-header{margin-bottom:12px}.group-title{font-size:14px;font-weight:600;color:#2c3e50;display:flex;align-items:center;gap:8px;margin:0}.group-items{display:flex;flex-direction:column;gap:10px}.knowledge-item{display:flex;align-items:flex-start;gap:12px;padding:10px;border-radius:8px;background-color:#fff;cursor:pointer;transition:all .3s ease;border:1px solid transparent}.knowledge-item:hover{border-color:#667eea;background-color:#667eea08}.knowledge-item.selected{border-color:#667eea;border-width:2px;background-color:#667eea14;box-shadow:0 0 0 2px #667eea26}.knowledge-item input[type=checkbox]{display:none}.check-mark{width:22px;height:22px;border:2px solid #bdc3c7;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;font-weight:700;color:#fff;transition:all .2s ease}.knowledge-item.selected .check-mark{background-color:#667eea;border-color:#667eea}.item-content{flex:1;display:flex;flex-direction:column;gap:4px}.item-label{font-size:14px;font-weight:500;color:#2c3e50;display:flex;align-items:center;gap:8px}.item-desc{font-size:12px;color:#7f8c8d;line-height:1.4}.action-level{border-radius:10px;padding:12px;margin-bottom:12px;border:1px solid rgba(0,0,0,.06)}.level-header{margin-bottom:12px}.level-title{font-size:15px;font-weight:600;color:#2c3e50;margin:0 0 4px}.level-subtitle{font-size:12px;color:#7f8c8d;margin:0}.phase{margin-bottom:12px}.phase:last-child{margin-bottom:0}.phase-title{font-size:13px;font-weight:600;color:#667eea;margin:0 0 10px;display:flex;align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(102,126,234,.2)}.phase-items,.action-item-wrapper{display:flex;flex-direction:column;gap:8px}.action-item{display:flex;align-items:flex-start;gap:12px;padding:10px;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.action-item:hover{border-color:#667eea;background-color:#667eea08}.action-item.selected{border-color:#667eea;border-width:2px;background-color:#667eea14;box-shadow:0 0 0 2px #667eea26}.action-item input[type=checkbox]{display:none}.action-item .check-mark{width:22px;height:22px;border:2px solid #bdc3c7;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;font-weight:700;color:#fff;transition:all .2s ease;margin-top:2px}.action-item.selected .check-mark{background-color:#667eea;border-color:#667eea}.action-item .item-content{flex:1;display:flex;flex-direction:column;gap:4px}.action-item .item-header{display:flex;align-items:center;gap:8px}.action-item .item-label{font-size:14px;font-weight:500;color:#2c3e50}.action-item .item-desc{font-size:12px;color:#7f8c8d;line-height:1.4}.action-input{width:100%;padding:8px 12px;border:1px solid #bdc3c7;border-radius:6px;font-size:13px;font-family:inherit;outline:none;transition:border-color .2s ease;margin-left:30px}.action-input:focus{border-color:#667eea}.drag-sort-container{display:flex;flex-direction:column;gap:8px;margin-top:12px}.drag-sort-item{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:2px solid #e0e6f2;border-radius:10px;cursor:grab;transition:all .2s ease;-webkit-user-select:none;user-select:none;touch-action:none}.drag-sort-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.drag-sort-item.dragging{cursor:grabbing;box-shadow:0 8px 20px #00000026;border-color:#667eea;background:#f8f9ff}.drag-handle{font-size:18px;color:#bdc3c7;padding:4px;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.drag-handle:hover{color:#667eea}.sort-rank{width:28px;height:28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.sort-icon{font-size:24px;color:#667eea;display:flex;align-items:center;justify-content:center;width:40px;flex-shrink:0}.sort-content{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.sort-label{font-size:15px;font-weight:500;color:#2c3e50}.sort-desc{font-size:12px;color:#95a5a6;line-height:1.3}.drag-hint{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px;background:#f8f9fa;border-radius:8px;font-size:13px;color:#7f8c8d}.drag-hint svg{color:#667eea}@media (max-width: 480px){.drag-sort-item{padding:10px;gap:10px}.sort-rank{width:24px;height:24px;font-size:12px}.sort-icon{width:32px;font-size:20px}.sort-label{font-size:14px}}html,body,#root{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f7fa;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{overflow:hidden}@supports (padding: max(0px)){body{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}.container{width:100%;max-width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden}.content{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:12px}.page-container{min-height:100%;padding-bottom:80px}.questions-container{display:flex;flex-direction:column;gap:12px}.footer{display:flex;gap:10px;padding:12px;background-color:#fff;box-shadow:0 -2px 8px #0000000f;flex-shrink:0}.btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex:1}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background-color:#f0f2f5;color:#2c3e50}.btn-secondary:hover{background-color:#e4e6eb}.intro-page{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.intro-icon{font-size:64px;margin-bottom:20px}.intro-page h1{font-size:28px;color:#2c3e50;margin-bottom:10px}.intro-page>p{font-size:16px;color:#7f8c8d;margin-bottom:30px}.intro-page .page-content{background-color:#fff;border-radius:12px;padding:20px;margin-bottom:30px;max-width:400px;width:100%;box-shadow:0 2px 8px #0000000f}.time-info{font-size:14px;color:#667eea;margin-bottom:10px}.intro-page .page-content p{font-size:13px;color:#95a5a6}.complete-page{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.complete-icon{font-size:64px;margin-bottom:20px}.complete-page h1{font-size:28px;color:#2c3e50;margin-bottom:10px}.complete-page>p{font-size:14px;color:#95a5a6;margin-bottom:20px}.complete-page .page-content{background-color:#fff;border-radius:12px;padding:20px;margin-bottom:20px;max-width:400px;width:100%;box-shadow:0 2px 8px #0000000f}.thanks{font-size:16px;color:#2c3e50;font-weight:500;margin-bottom:20px}.save-status{margin-top:20px;text-align:center}.save-btn{width:100%;max-width:300px;margin-bottom:10px}.save-message{padding:10px;border-radius:4px;margin-top:10px;font-size:14px}.save-message.success{background-color:#d4edda;color:#155724}.save-message.error{background-color:#f8d7da;color:#721c24}.button-group{display:flex;gap:10px;width:100%;max-width:300px;margin-top:20px}.button-group .btn{flex:1}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
