*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f0f0f0;height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;overflow:hidden}.container{flex-direction:column;height:100vh;padding:10px;display:flex}h1{text-align:center;color:#2c3e50;margin-bottom:10px;font-size:24px}.main-content{flex:1;align-items:flex-start;gap:15px;min-height:0;display:flex}.controls-panel{flex-direction:column;flex:0 0 350px;gap:15px;max-height:100%;display:flex;overflow-y:auto}.controls{background-color:#fff;border-radius:8px;flex-direction:column;gap:12px;padding:15px;display:flex;box-shadow:0 2px 4px #0000001a}.control-group{flex-direction:column;gap:8px;font-size:14px;display:flex}.control-group label{min-width:auto;margin:0;font-weight:500}.control-group input[type=range]{flex:1;min-width:100px}.control-group span{text-align:center;color:#3498db;min-width:30px;font-weight:700}.control-group.horizontal{flex-direction:row;align-items:center}.control-group.horizontal label{min-width:120px}button{color:#fff;cursor:pointer;background-color:#3498db;border:none;border-radius:5px;width:100%;padding:12px 20px;font-size:14px;transition:background-color .3s}button:hover{background-color:#2980b9}button:active{background-color:#21618c}button:disabled{cursor:default;background-color:#bdc3c7}button.secondary{background-color:#7f8c8d}button.secondary:hover{background-color:#6c7a7b}.toolbar{gap:8px;display:flex}.toolbar button{padding:8px 10px}.brick-count{color:#555;text-align:center;font-size:13px}.project-message{color:#555;font-size:13px}.project-message.error{color:#e74c3c}label{cursor:pointer;align-items:center;gap:8px;padding:5px 0;font-size:14px;display:flex}input[type=checkbox]{cursor:pointer}.display-options summary,.tools-menu summary{cursor:pointer;padding:5px 0;font-size:14px;font-weight:500}.display-options[open] summary,.tools-menu[open] summary{margin-bottom:4px}.tool{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:5px;flex-direction:column;gap:6px;padding:10px;display:flex}.tool+.tool{margin-top:8px}.tool-name{font-size:14px;font-weight:600}.tool-field{justify-content:space-between;padding:0}.tool-field input{width:100px}.tool button{padding:8px 12px}.tool-error{color:#e74c3c;font-size:13px}.canvas-container{flex:1;justify-content:center;align-items:center;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.status-bar{font-variant-numeric:tabular-nums;color:#34495e;pointer-events:none;background-color:#ffffffd9;border-radius:4px;padding:3px 8px;font-size:12px;position:absolute;bottom:8px;left:8px}#bezierCanvas{cursor:crosshair;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-moz-user-drag:none;-webkit-touch-callout:none;background-color:#fff;border:2px solid #34495e;border-radius:8px;width:100%;max-width:100%;height:100%;max-height:100%;display:block;box-shadow:0 4px 8px #0000001a}.info{background-color:#fff;border-radius:8px;padding:15px;box-shadow:0 2px 4px #0000001a}.info p{color:#666;margin-bottom:8px;font-size:13px;line-height:1.4}input[type=color]{cursor:pointer;background:0 0;border:1px solid #ccc;border-radius:4px;width:60px;height:28px;padding:2px}.curve-list-container{margin-bottom:8px}.curve-list-header{color:#2c3e50;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:14px;font-weight:600;display:flex}.add-curve-btn{background-color:#27ae60;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:18px;font-weight:700;display:flex}.add-curve-btn:hover{background-color:#219a52}.curve-list{flex-direction:column;gap:4px;max-height:200px;display:flex;overflow-y:auto}.curve-item{background-color:#f8f9fa;border-radius:4px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;transition:background-color .15s;display:flex}.curve-item:hover{background-color:#e9ecef}.curve-item.selected{background-color:#e3f2fd}.curve-select-btn,.curve-delete-btn{border-radius:3px;flex-shrink:0;width:auto;padding:2px 8px;font-size:11px}.curve-select-btn{background-color:#3498db}.curve-select-btn:hover{background-color:#2980b9}.curve-delete-btn{background-color:#e74c3c}.curve-delete-btn:hover{background-color:#c0392b}.ai-disclaimer{color:#696969}
