body,code{color:#000}.blog-container{max-width:800px;margin:0 auto;padding:20px;font-family:"Arial",sans-serif;background:#eee;min-height:100vh}.blog-content{background:#eee;padding:30px;margin:20px 0;border-left:4px solid teal}.blog-item{margin-bottom:40px}.blog-header{margin-bottom:20px}.blog-title{font-size:24px;line-height:1.2;color:#333;font-weight:700;margin-bottom:8px}.blog-author-section{margin-top:5px;text-align:right}.blog-author{font-size:14px;color:#666;margin-bottom:8px}.blog-author-line{width:100%;height:1px;background-color:#ddd;margin-top:5px}.blog-text{font-size:18px;line-height:1.6;color:#333;text-align:justify;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.blog-image{display:block;margin-top:20px;margin-bottom:20px;max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}@media (max-width:600px){.blog-container{padding:10px}.blog-text{font-size:16px}}.component{position:relative;width:50%;margin-left:auto;margin-right:auto}@media screen and (max-width:1100px){.component{width:90%}}.loader-container{display:flex;justify-content:center;align-items:center;height:100%}.loader{border:4px solid rgba(0,0,0,.1);border-top-color:#3498db;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite}body{margin:0;padding:0;display:flex;flex-direction:column;min-height:100%}.app-container{flex:1 1;display:flex;flex-direction:column;min-height:100vh;position:relative;background-color:#eee;overflow:auto;-ms-overflow-style:none;scrollbar-width:none}.app-container::-webkit-scrollbar{display:none}.app-container1{display:flex;height:100vh;width:100%;margin:0;overflow:hidden;-ms-overflow-style:none;scrollbar-width:none}.app-container1::-webkit-scrollbar{display:none}.sidebar{width:250px;background:#252526;display:flex;flex-direction:column;border-right:1px solid #333;padding:0}.main-area{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.editor-page{position:fixed;top:0;left:0}.editor-container,.editor-page{height:100vh;width:100vw;overflow:hidden}.editor-container{display:flex;background-color:#eee;font-family:"Poppins",sans-serif}.problem-panel{width:40%;flex-direction:column;color:#333;background-color:#eee;border-right:1px solid #ddd;height:100vh;overflow-y:auto;overflow-x:hidden;padding:15px 15px 50px;box-sizing:border-box}.problem-header{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.problem-header h2{font-size:18px;margin-bottom:20px;color:teal;text-align:left;font-weight:700}.problem-panel h3,.problem-panel h4,.problem-panel h5{text-align:left;padding:10px;margin:10px 0;color:teal}.problem-panel div[dangerouslySetInnerHTML],.problem-panel pre,.problem-panel ul{text-align:left;padding:10px;margin:0}.timer{text-align:right;color:#ff0}.tabs{display:flex;grid-gap:10px;gap:10px;margin-bottom:20px;margin-left:10px}.h2{font-weight:700}.tabs button{background-color:#333;color:#fff;border:none;padding:8px 12px;cursor:pointer;border-radius:5px;font-size:14px}.tabs button.active{background-color:teal;color:#fff}h3,h4,h5,h6{font-size:15px;margin-bottom:10px;color:teal}ul{list-style-type:disc;margin-left:20px}li{margin-bottom:5px;color:#333}.language-selector select{background-color:teal;color:#fff;border:1px solid #555;padding:5px;font-size:14px}.code-panel{width:60%;padding:15px;background-color:#eee;display:flex;flex-direction:column;height:100vh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.action-buttons-top{display:flex;grid-gap:10px;gap:10px}.run-button,.submit-button{padding:8px 14px;background-color:teal;border:none;color:#fff;cursor:pointer;border-radius:5px;font-weight:700;font-size:14px;transition:background-color .3s ease}.run-button:hover,.submit-button:hover{background-color:#066}.test-case-toggle-container{display:flex;justify-content:flex-start;margin-top:10px}.test-case-toggle{padding:8px 16px;background-color:#333;border:none;color:#fff;cursor:pointer;border-radius:5px;font-weight:700;font-size:14px;width:auto}.test-case-toggle:hover{background-color:#555}.test-cases{margin-top:20px}.test-case{padding:10px;background-color:#333;color:#fff;margin-bottom:10px;border-radius:5px;font-size:14px}.run-individual-button{margin-top:10px;padding:8px 16px;background-color:teal;border:none;color:#fff;cursor:pointer;border-radius:5px;font-size:14px}.run-individual-button:hover{background-color:#066}.problem-panel h5{text-align:left;padding:2px 10px;margin:5px 0;color:teal;font-size:17px}.problem-panel h5+div,.problem-panel h5+pre,.problem-panel h5+ul{text-align:left;padding:2px 10px;margin-bottom:10px}.problem-panel div[dangerouslySetInnerHTML]{padding:5px 10px!important}.problem-panel>div[style*=display]{text-align:left;padding:0}.explorer{display:flex;flex-direction:column;flex:1 1}.sidebar{background:#fff;border:2.5px solid #bbb;box-sizing:border-box}.file-tree{flex:1 1;overflow-y:auto;padding:0;margin:0;list-style:none;border-top:2px solid #bbb;scrollbar-width:thin;scrollbar-color:silver #f0f0f0;-ms-overflow-style:auto}.file-tree::-webkit-scrollbar{width:8px}.file-tree::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.file-tree::-webkit-scrollbar-thumb{background:silver;border-radius:4px;border:1px solid #f0f0f0}.file-tree::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.file-tree li{cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;position:relative;color:#000}.file-tree li.active{color:#000;background-color:#e3f2fd;border:1px solid #1976d2;border-radius:4px;font-weight:500}.file-tree li:hover{border:1px solid #ddd;color:#000}.explorer-header{padding:10px;font-size:12px;letter-spacing:1px;color:#bdbdbd;display:flex;justify-content:flex-end;align-items:center}.item-rename{position:absolute;right:24px;display:none;cursor:pointer;font-size:10px;color:#666;transition:color .2s ease}.item-rename:hover{color:teal}.item-delete{position:absolute;right:6px;display:none;cursor:pointer}.file-tree li:hover .item-delete,.file-tree li:hover .item-rename{display:inline}.file-tree li.dragging{opacity:.5;background-color:#f0f0f0;border:2px dashed teal}.file-tree li.drag-over{background-color:#e6f7ff;border:2px solid teal;border-radius:4px}.file-tree li.drag-over:before{content:"📁";margin-right:4px;color:teal}.file-tree li.drag-over .item-delete,.file-tree li.drag-over .item-rename,.file-tree li.dragging .item-delete,.file-tree li.dragging .item-rename{display:none}.explorer-header button{margin-left:6px}.file,.file-label,.file-tree,.folder,.folder-label,.sidebar{color:#111!important}.import-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.import-modal{background:#fff;border-radius:8px;padding:24px;box-shadow:0 4px 20px rgba(0,0,0,.3);max-width:400px;width:90%}.import-modal h3{margin:0 0 20px;color:#333;font-size:18px;text-align:center}.import-options{margin-bottom:24px}.import-option{display:flex;align-items:center;padding:12px;margin-bottom:8px;border-radius:6px;background-color:#f8f9fa;border:1px solid #e9ecef}.import-icon{font-size:20px;margin-right:12px}.import-text{color:#333;font-size:14px}.import-buttons{display:flex;grid-gap:12px;gap:12px;justify-content:center}.import-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.files-btn{background-color:#007bff;color:#fff}.files-btn:hover{background-color:#0056b3}.folder-btn{background-color:#28a745;color:#fff}.folder-btn:hover{background-color:#1e7e34}.cancel-btn{background-color:#6c757d;color:#fff}.cancel-btn:hover{background-color:#545b62}.explorer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#666}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top-color:teal;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.explorer-loading p{margin:0;font-size:14px;color:#666}.tabs-bar{height:30px;display:flex;background:#fff;border:2.5px solid #bbb;border-left:none;overflow-x:auto;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}.tabs-bar::-webkit-scrollbar{display:none}.tab{padding:0 12px;display:flex;align-items:center;cursor:pointer;color:#333;border-right:1px solid #eee;font-size:12px;-webkit-user-select:none;user-select:none}.tab.active{background:#bbb;color:#111}.output-panel{height:150px;background:#fff;border:2.5px solid #bbb;border-left:none;display:flex;flex-direction:column;box-sizing:border-box}.output-header{height:24px;background:#fff;color:#333;font-size:12px;display:flex;align-items:center;padding-left:8px;border-bottom:1px solid #eee}.output-content{flex:1 1;overflow-y:auto;padding:8px;color:#222;white-space:pre-wrap;font-family:monospace}.lld-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:32px;gap:32px;padding:20px}.lld-card{cursor:pointer;background:#f5f5f5;border-radius:4px;padding:16px;transition:box-shadow .2s}.lld-card:hover{box-shadow:0 2px 6px rgba(0,0,0,.2)}.lld-thumb{height:150px;background:#e6eaf0;border-radius:4px;margin-bottom:12px}.lld-title{font-size:18px;color:#0a0a0a;margin:0 0 8px}.lld-description{font-size:14px;color:#666;margin:0 0 12px;line-height:1.4}.lld-meta{font-size:12px;color:#555}.lld-read-time{background:#e0e0e0;padding:2px 8px;border-radius:12px;font-size:11px}.lld-detail-container{padding:24px;max-width:90%;margin:auto;display:flex;flex-direction:column;position:relative}.lld-header-row .lld-stepper{margin:0 0 0 auto;flex:none;justify-content:flex-end;min-width:0;max-width:none;width:auto}.lld-form-block{flex:1 1;display:flex;flex-direction:column}.lld-form-block textarea{flex:1 1;width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;font-family:monospace;resize:vertical}.lld-design-container{flex:1 1;align-items:stretch;min-height:0}.lld-design-container,.lld-left{display:flex;grid-gap:20px;gap:20px}.lld-left{flex:0 0 40%;flex-direction:column;height:100%}.lld-schema-block{flex:1 1;display:flex;flex-direction:column;height:480px;min-height:380px;overflow-y:auto;padding-right:6px;max-width:1100px;margin:0 auto}.lld-schema-block textarea{flex:1 1;width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;font-family:monospace;resize:vertical}.lld-schema-block .lld-block-title{position:-webkit-sticky;position:sticky;top:0;background:#e6e6e6;z-index:1;padding-top:4px;padding-bottom:4px}.lld-detail-container h2{text-align:center;margin-top:0;margin-bottom:16px}.lld-detail-container h4{text-align:left;margin:4px 0}.lld-form-block,.lld-schema-block{position:relative}.lld-block-title{display:block;position:static;margin-bottom:6px;font-weight:700;color:teal;font-size:14px}.lld-form-block textarea,.lld-schema-block textarea{padding-top:12px}.lld-stepper{margin:0 auto 60px;grid-gap:0;gap:0;padding:0;background:none;border-radius:0;box-shadow:none;max-width:900px;min-width:320px;width:100%}.lld-stepper,.lld-stepper-step{display:flex;align-items:center;justify-content:center}.lld-stepper-step{position:relative;min-width:90px;min-height:38px;margin:0 2px;padding:0 16px;border-radius:8px;background:#fff;color:teal;flex-direction:column;font-family:"Inter","Segoe UI",Arial,sans-serif;font-size:.98rem;font-weight:600;box-shadow:0 2px 8px rgba(0,128,128,.07);transition:all .18s ease;z-index:1;letter-spacing:.1px;opacity:1;outline:none;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid teal}.lld-stepper-step.active{background:teal;color:#fff;font-weight:700;box-shadow:0 2px 8px rgba(0,128,128,.1);opacity:1;border:2px solid teal}.lld-stepper-step.completed{background:#fff;color:teal;opacity:.8;border:2px solid teal}.lld-stepper-step:focus{outline:2px solid teal;outline-offset:2px;opacity:1}.lld-stepper-step:hover{background:teal;color:#fff;opacity:1}.lld-stepper-label{font-size:.95rem;font-weight:600;margin:0;letter-spacing:.05px;text-align:center;line-height:1.2;width:100%;display:block}.lld-stepper-arrow{display:flex;align-items:center;justify-content:center;color:teal;font-size:18px;font-weight:700;margin:0 2px;z-index:2;width:18px;height:18px}.lld-step-nav{justify-content:center;margin-top:12px}.lld-step-btn{background:teal;color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(0,128,128,.08);transition:background .2s,box-shadow .2s,transform .1s;display:flex;align-items:center;grid-gap:10px;gap:10px}.lld-step-btn:disabled{background:#ccc;color:#888;cursor:not-allowed;box-shadow:none}.lld-step-btn:hover:not(:disabled){background:#066;transform:translateY(-2px) scale(1.03)}@media (max-width:900px){.lld-stepper{width:98vw;padding:0;font-size:12px;min-width:0}.lld-stepper-step{font-size:12px;min-width:48px;min-height:28px;padding:0 6px;border-radius:6px}.lld-stepper-label{font-size:.78rem}.lld-stepper-arrow{width:12px;height:12px;font-size:10px}}@media (max-width:900px){.lld-step-nav{right:8px;bottom:8px;grid-gap:12px;gap:12px}.lld-problem-title{font-size:1.05rem}}@media (max-width:900px){.lld-schema-block{max-width:98vw;height:auto;min-height:0;padding-right:0}}@media (max-width:900px){.lld-header-row{flex-direction:column;align-items:stretch;grid-gap:10px;gap:10px;margin-bottom:min(10vw,40px)}.lld-header-row .lld-problem-title{margin-bottom:0;margin-right:0;font-size:1.05rem;min-width:0}.lld-header-row .lld-stepper{margin:0;width:100%;min-width:0}}.lld-document-toggle{position:fixed;bottom:20px;right:20px;z-index:9999;background:teal;color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:24px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(0,128,128,.3);transition:all .3s ease;display:flex;align-items:center;justify-content:center;pointer-events:auto}.lld-document-toggle:hover{background:#066;transform:scale(1.1);box-shadow:0 6px 16px rgba(0,128,128,.4)}.lld-document-toggle.active{background:#066;transform:translateX(-400px)}.lld-document-slide-panel{position:fixed;top:0;right:-400px;width:400px;height:100vh;background:#fff;box-shadow:-4px 0 20px rgba(0,0,0,.15);z-index:999;transition:right .3s ease;display:flex;flex-direction:column}.lld-document-slide-panel.open{right:0}.lld-document-slide-content{flex:1 1;display:flex;flex-direction:column;height:100%}.lld-document-slide-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;background:#f8f9fa;flex-shrink:0}.lld-document-slide-header h2{margin:0;color:teal;font-size:1.3rem;font-weight:700}.lld-document-slide-body{flex:1 1;overflow-y:auto;padding:20px}.lld-document-section{margin-bottom:32px}.lld-document-section h3{color:teal;font-size:1.2rem;font-weight:600;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e0e0e0}.lld-document-section h4{color:#333;font-size:1rem;font-weight:600;margin:16px 0 8px}.lld-document-list{margin:0;padding-left:20px}.lld-document-list li{margin-bottom:8px;line-height:1.5;color:#333}.lld-document-empty{color:#888;font-style:italic;margin:8px 0}.lld-document-diagram{background:#f8f9fa;padding:16px;border-radius:8px;border-left:4px solid teal}.lld-document-classes ul{list-style:none;padding:0;margin:12px 0}.lld-document-classes li{background:#fff;padding:12px;margin-bottom:8px;border-radius:6px}.lld-document-class-details{margin:8px 0;padding-left:16px}.lld-document-class-details span{font-weight:600;color:teal}.lld-document-detail-label{font-weight:600;color:teal;display:block;margin-bottom:4px;font-size:13px}.lld-document-detail-list{list-style:none;padding-left:16px;margin:4px 0}.lld-document-detail-list li{font-size:12px;color:#555;margin:2px 0;padding:2px 0;position:relative}.lld-document-detail-list li:before{content:"•";color:teal;font-weight:700;position:absolute;left:-12px}.lld-document-patterns{display:flex;flex-direction:column;grid-gap:12px;gap:12px}.lld-document-pattern{background:#fff;padding:16px;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.08);border:1px solid #e2e8f0;transition:all .2s ease}.lld-document-pattern:hover{box-shadow:0 2px 6px rgba(0,0,0,.12);transform:translateY(-1px)}.lld-document-pattern h4{color:teal;font-size:16px;font-weight:600;margin:0 0 12px;text-align:left;letter-spacing:-.01em}.lld-document-pattern-requirement{background:#f0f8f0;border-left:4px solid teal;padding:12px;border-radius:6px;font-size:14px;line-height:1.5;color:#495057;font-weight:500}.lld-document-table{width:100%;border-collapse:collapse;margin-top:6px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08);border:1px solid #e2e8f0}.lld-document-table td,.lld-document-table th{padding:6px 10px;text-align:left;border-bottom:1px solid #f0f0f0}.lld-document-table th{background:teal;color:#fff;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;padding:8px 10px}.lld-document-table td{font-size:12px;color:#333;font-weight:500;padding:8px 10px}.lld-document-table tr:last-child td{border-bottom:none}.lld-document-table tr:hover{background:#f8f9fa}.lld-document-table tr:hover td{color:teal}@media (max-width:768px){.lld-document-slide-panel{width:320px;right:-320px}.lld-document-toggle.active{transform:translateX(-320px)}.lld-document-slide-header{padding:16px 20px}.lld-document-slide-body{padding:16px}.lld-document-toggle{bottom:10px;right:10px;width:45px;height:45px;font-size:16px}}.lld-drawing-container{scrollbar-width:thin;scrollbar-color:silver #f0f0f0}.lld-drawing-container::-webkit-scrollbar{width:12px;height:12px}.lld-drawing-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:6px}.lld-drawing-container::-webkit-scrollbar-thumb{background:silver;border-radius:6px;border:2px solid #f0f0f0}.lld-drawing-container::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.lld-drawing-container::-webkit-scrollbar-corner{background:#f0f0f0}.connection-point{position:absolute;width:12px;height:12px;background:teal;border:2px solid #fff;border-radius:50%;cursor:crosshair;transform:translate(-50%,-50%);z-index:20;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.2);pointer-events:auto}.connection-point:hover{background:#066;transform:translate(-50%,-50%) scale(1.2);box-shadow:0 3px 8px rgba(0,0,0,.3)}.connection-point:active{transform:translate(-50%,-50%) scale(.9)}.connection-line{stroke:teal;stroke-width:2;stroke-dasharray:5,5;fill:none;pointer-events:none;z-index:1000}.connection-line-permanent{stroke:teal;stroke-width:2;fill:none;pointer-events:auto;z-index:1}.class-box:hover .connection-point{opacity:1;visibility:visible}.class-box:not(:hover) .connection-point{opacity:0;visibility:hidden}.design-pattern-selector{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px rgba(0,0,0,.08);border:1px solid #e9ecef}.pattern-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.design-pattern-selector h3{margin:0;color:teal;font-size:20px;font-weight:700;letter-spacing:-.02em}.add-pattern-btn{background:teal;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,128,128,.2)}.add-pattern-btn:hover:not(:disabled){background:#066;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,128,128,.3)}.add-pattern-btn:disabled{background:#b8b8b8;cursor:not-allowed;box-shadow:none;transform:none}.add-pattern-form{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px rgba(0,0,0,.05)}.form-row{display:flex;grid-gap:20px;gap:20px;margin-bottom:20px}.pattern-field,.requirement-field{flex:1 1}.pattern-field label,.requirement-field label{display:block;margin-bottom:10px;font-weight:600;color:#495057;font-size:14px;letter-spacing:-.01em}.pattern-input{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;transition:all .2s ease}.pattern-input:focus{outline:none;border-color:teal;box-shadow:0 0 0 3px rgba(0,128,128,.15)}.pattern-description{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px}.pattern-description:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.requirement-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:all .2s ease;line-height:1.5}.requirement-input:focus{outline:none;border-color:teal;box-shadow:0 0 0 3px rgba(0,128,128,.15)}.form-actions{display:flex;grid-gap:8px;gap:8px;margin-top:12px}.btn-add,.btn-cancel,.btn-update{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.1)}.btn-add{background:teal;color:#fff}.btn-add:hover:not(:disabled){background:#066;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.btn-add:disabled{background:#b8b8b8;cursor:not-allowed;box-shadow:none;transform:none}.btn-update{background:#28a745;color:#fff}.btn-update:hover{background:#1e7e34;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.btn-cancel{background:#6c757d;color:#fff}.btn-cancel:hover{background:#545b62;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.patterns-list{max-height:none;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none}.patterns-list::-webkit-scrollbar{display:none}.empty-message{text-align:center;color:#6c757d;font-style:italic;padding:32px 20px;background:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6}.pattern-item{background:#fff;border:1px solid #e9ecef;border-radius:10px;padding:16px;margin-bottom:12px;cursor:move;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.05)}.pattern-item:hover{border-color:teal;border-top:2px solid teal;box-shadow:0 4px 8px rgba(0,0,0,.1);transform:translateY(-1px)}.pattern-item.dragging{opacity:.5;transform:rotate(5deg)}.pattern-item.drag-over{border-color:#007bff;background:#f8f9fa}.pattern-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pattern-info{display:flex;flex-direction:column;grid-gap:4px;gap:4px}.pattern-name{font-weight:700;color:#2c3e50;font-size:16px;letter-spacing:-.01em}.pattern-actions{display:flex;grid-gap:4px;gap:4px}.pattern-edit-btn,.pattern-remove-btn{opacity:0;font-size:1rem;background:none;border:none;transition:opacity .18s,background .15s;padding:1px 4px;border-radius:8px;font-size:1.1rem;font-family:inherit}.pattern-item:hover .pattern-edit-btn,.pattern-item:hover .pattern-remove-btn{opacity:1}.pattern-edit-btn{color:#1976d2;border:none;background:none;box-shadow:none}.pattern-edit-btn:hover{background:#e3f2fd}.pattern-remove-btn{color:#d32f2f;border:none;background:none;box-shadow:none}.pattern-remove-btn:hover{background:#ffeaea}.pattern-requirement{font-size:14px;color:#495057;line-height:1.5;margin-top:12px;padding:12px;background:#f0f8f0;border-radius:6px;border-left:4px solid teal;font-weight:500}@media (max-width:768px){.pattern-header-section{flex-direction:column;align-items:flex-start;grid-gap:12px;gap:12px}.form-row{flex-direction:column;grid-gap:16px;gap:16px}.pattern-header,.pattern-select-group{flex-direction:column;grid-gap:8px;gap:8px}.pattern-header{align-items:flex-start}.pattern-actions{align-self:flex-end}}.lld-step-content .app-container1{display:flex;height:100%;width:100%;overflow:hidden;-ms-overflow-style:none;scrollbar-width:none}.lld-step-content .app-container1::-webkit-scrollbar{display:none}.lld-step-content .sidebar{width:250px;background:#fff;display:flex;flex-direction:column;border:2.5px solid #bbb;padding:0;box-sizing:border-box}.lld-step-content .main-area{flex:1 1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.lld-step-content{height:100vh;width:100%;overflow:hidden}.class-diagram-container{height:100vh!important;width:100%!important;padding:0!important;margin:0!important}.feature-list-header{padding:9.5px 16px!important;min-height:40px!important}.feature-list-header .MuiTypography-h6{font-size:1.1rem!important;line-height:1.2!important;margin:0!important;padding:0!important}.class-diagram-container{padding:20px;height:100vh;display:flex;flex-direction:column}.class-diagram-header{margin-bottom:20px;text-align:center}.class-diagram-header h2{margin:0 0 10px;color:#333;font-size:24px}.class-diagram-header p{margin:0;color:#666;font-size:16px}.class-box{cursor:pointer;-webkit-user-select:none;user-select:none}.class-box.selected{stroke:#3b82f6;stroke-width:2}.connection-line{cursor:pointer}.connection-line.selected{stroke:#3b82f6;stroke-width:2}.resize-handle{cursor:pointer;fill:#3b82f6;stroke:#fff;stroke-width:1}.add-button{cursor:pointer;transition:fill .2s}.add-button:hover{fill:#45a049}.add-button-text{cursor:pointer;-webkit-user-select:none;user-select:none}.text-input{font-family:inherit;font-size:inherit;border:none;outline:none;background:transparent;text-align:center;width:100%;height:100%}.toolbar-button{transition:all .2s}.toolbar-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.grid-pattern{opacity:.3}@media (max-width:768px){.class-diagram-container{padding:10px}.class-diagram-header h2{font-size:20px}.class-diagram-header p{font-size:14px}}.hld-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:32px;gap:32px;padding:20px}.hld-card{cursor:pointer;background:#f5f5f5;border-radius:4px;padding:16px;transition:box-shadow .2s}.hld-card:hover{box-shadow:0 2px 6px rgba(0,0,0,.2)}.hld-thumb{height:150px;background:#e6eaf0;border-radius:4px;margin-bottom:12px}.hld-title{font-size:18px;color:#0a0a0a;margin:0 0 8px}.hld-description{font-size:14px;color:#666;margin:0 0 12px;line-height:1.4}.hld-meta{font-size:12px;color:#555}.hld-read-time{background:#e0e0e0;padding:2px 8px;border-radius:12px;font-size:11px}.hld-detail-container{padding:24px;max-width:90%;margin:auto;display:flex;flex-direction:column;position:relative}.lld-header-row{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;grid-gap:0;gap:0;margin-bottom:min(6vw,60px);width:100%}.lld-header-row .lld-problem-title{margin-bottom:0;margin-right:0;flex-shrink:0;min-width:220px}.lld-header-row .lld-problem-title,.lld-problem-title{font-size:1.22rem;font-weight:650;color:#222;letter-spacing:.01em;opacity:.92;text-align:left}.lld-problem-title{margin-bottom:8px;margin-left:2px}.lld-step-content{min-height:180px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;margin-bottom:32px}.lld-step-nav{display:flex;grid-gap:24px;gap:24px;justify-content:flex-end;position:fixed;right:40px;bottom:32px;z-index:100;background:none;box-shadow:none;padding:0}.lld-solve-btn{background:teal;color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(0,128,128,.08);transition:background .2s,box-shadow .2s,transform .1s;display:flex;align-items:center;grid-gap:10px;gap:10px}.lld-solve-btn:disabled{background:#ccc;color:#888;cursor:not-allowed;box-shadow:none}.lld-solve-btn:hover:not(:disabled){background:#066;transform:translateY(-2px) scale(1.03)}@media (max-width:900px){.lld-header-row{flex-direction:column;align-items:stretch;grid-gap:10px;gap:10px;margin-bottom:min(10vw,40px)}.lld-header-row .lld-problem-title{margin-bottom:0;margin-right:0;font-size:1.05rem;min-width:0}.lld-header-row .lld-stepper{margin:0;width:100%;min-width:0}.lld-step-nav{right:8px;bottom:8px;grid-gap:12px;gap:12px}.lld-problem-title{font-size:1.05rem}}.hld-solve-btn{padding:10px 20px;background:teal;border:none;color:#fff;border-radius:4px;cursor:pointer;margin-top:20px;width:100%}.hld-form-block{flex:1 1;display:flex;flex-direction:column;min-height:0}.hld-form-block textarea{flex:1 1;width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;font-family:monospace;resize:vertical;min-height:0}.hld-design-container{flex:1 1;align-items:stretch;min-height:0}.hld-design-container,.hld-left{display:flex;grid-gap:20px;gap:20px}.hld-left,.hld-right{flex:0 0 50%;flex-direction:column;height:100%}.hld-right{display:flex;grid-gap:20px;gap:20px}.hld-left .hld-form-block,.hld-right .hld-form-block{min-height:0;overflow:hidden}.hld-block-title{display:block;margin-bottom:6px;font-weight:700;color:teal;font-size:14px}.hld-detail-container h2{text-align:left;margin-top:0;margin-bottom:24px}.api-table{width:100%;border-collapse:collapse;font-size:14px}.api-table th{background:#e6e6e6;color:#333;text-align:left;padding:6px 10px;font-weight:700;border-bottom:1px solid #ccc}.api-table td{padding:6px 10px;border-bottom:1px solid #ddd;vertical-align:top}.api-table input,.api-table select{width:100%;padding:4px 6px;border:1px solid #bbb;border-radius:3px;font-size:13px}.api-table select{background:#fff;height:30px}.api-row-extra td{background:#fafafa}.api-add-btn{margin-top:8px;padding:8px 18px 8px 14px;background:#fff;color:teal;border:2px solid teal;border-radius:8px;cursor:pointer;align-self:flex-start;font-size:16px;font-weight:600;box-shadow:0 2px 8px rgba(0,128,128,.07);display:flex;align-items:center;grid-gap:8px;gap:8px;transition:all .18s ease}.api-add-btn:hover{background:teal;color:#fff}.hld-drawing-container{scrollbar-width:thin;scrollbar-color:silver #f0f0f0}.hld-drawing-container::-webkit-scrollbar{width:12px;height:12px}.hld-drawing-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:6px}.hld-drawing-container::-webkit-scrollbar-thumb{background:silver;border-radius:6px;border:2px solid #f0f0f0}.hld-drawing-container::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.hld-drawing-container::-webkit-scrollbar-corner{background:#f0f0f0}.hld-step-content{height:100vh;width:100%;overflow:hidden}.hld-drawing-container{height:100vh!important;width:100%!important;overflow:hidden!important}.feature-split-container{display:flex;grid-gap:32px;gap:32px;width:100%;height:480px;min-height:380px;max-width:1100px;margin:0 auto}.feature-input-panel,.feature-list-panel{flex:1 1;background:#fafbfc;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.04);padding:28px 24px 24px;display:flex;flex-direction:column;min-width:0;height:100%}.feature-list-title{font-size:1.08rem;font-weight:700;color:teal;margin-bottom:18px}.feature-list{list-style:decimal inside;margin:0;flex:1 1;overflow-y:auto;padding:0 10px 0 0;scrollbar-width:thin;scrollbar-color:silver #fafbfc}.feature-list::-webkit-scrollbar{width:1px;background:#fafbfc}.feature-list::-webkit-scrollbar-thumb{background:silver;border-radius:4px}.feature-list-empty{color:#888;font-style:italic;margin-top:12px}.feature-list-item{display:flex;align-items:flex-start;justify-content:flex-start;padding:10px 0;border-bottom:1px solid #f0f0f0;font-size:1.08rem;grid-gap:8px;gap:8px}.feature-list-item span:first-child{flex:0 0 auto;min-width:0;word-break:break-word}.feature-list-item span:nth-child(2){flex:1 1 auto;min-width:0;word-break:break-word}.feature-list-item>div{display:flex;grid-gap:0;gap:0;margin-right:0}.feature-list-item:last-child{border-bottom:none}.feature-list-item .feature-edit-btn,.feature-list-item .feature-remove-btn{opacity:0;font-size:1rem;background:none;border:none;transition:opacity .18s,background .15s;padding:1px 4px}.feature-list-item:hover .feature-edit-btn,.feature-list-item:hover .feature-remove-btn{opacity:1}.feature-edit-btn{color:#1976d2;border:none;background:none;box-shadow:none}.feature-edit-btn:hover{background:#e3f2fd}.feature-remove-btn{color:#d32f2f;border:none;background:none;box-shadow:none}.feature-remove-btn:hover{background:#ffeaea}.feature-input-panel{align-items:stretch;justify-content:flex-start}.feature-input-textarea{width:100%;min-height:120px;font-size:1.08rem;padding:14px 12px;border-radius:8px;border:1.5px solid #d0d7de;resize:vertical;margin-bottom:18px;font-family:inherit;background:#fff;box-sizing:border-box;outline:none;transition:border .2s}.feature-input-textarea:focus{border:1.5px solid teal}.feature-add-btn{background:teal;color:#fff;border:none;border-radius:8px;padding:8px 0;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(0,128,128,.08);transition:background .2s,box-shadow .2s,transform .1s;width:100%;margin-top:8px;font-family:inherit;display:flex;align-items:center;justify-content:center;grid-gap:8px;gap:8px}.feature-add-btn:disabled{background:#ccc;color:#888;cursor:not-allowed;box-shadow:none}.feature-add-btn:hover:not(:disabled){background:#066;transform:translateY(-2px) scale(1.03)}.feature-edit-btn,.feature-remove-btn{border-radius:8px;font-size:1.1rem;font-family:inherit}@media (max-width:900px){.feature-split-container{flex-direction:column;grid-gap:18px;gap:18px;height:auto;min-height:0;max-width:100vw}.feature-input-panel,.feature-list-panel{padding:18px 8vw;min-width:0;height:auto}.feature-input-textarea{min-height:80px;font-size:1rem}.feature-add-btn{font-size:1rem;padding:12px 0}}.fade-in{animation:fadeIn .5s cubic-bezier(.39,.575,.565,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}.loading-fade{opacity:.6;transition:opacity .3s ease}.loading-fade.loaded{opacity:1}.pagination-container{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:8px;text-align:center}.pagination-info{margin-bottom:15px;color:#666;font-size:14px}.pagination-controls{display:flex;justify-content:center;align-items:center;grid-gap:10px;gap:10px;flex-wrap:wrap}.pagination-btn{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#333;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:teal;color:#fff;border-color:teal}.pagination-btn:disabled{background:#f5f5f5;color:#999;cursor:not-allowed;border-color:#ddd}.pagination-pages{display:flex;grid-gap:5px;gap:5px}.pagination-page{padding:8px 12px;border:1px solid #ddd;background:#fff;color:#333;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease;min-width:40px}.pagination-page:hover{background:#f0f0f0;border-color:teal}.pagination-page.active{background:teal;color:#fff;border-color:teal}@media (max-width:768px){.pagination-controls{flex-direction:column;grid-gap:15px;gap:15px}.pagination-pages{order:2}.pagination-btn{order:1}}.hld-document-toggle{position:fixed;bottom:20px;right:20px;z-index:9999;background:teal;color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:24px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(0,128,128,.3);transition:all .3s ease;display:flex;align-items:center;justify-content:center;pointer-events:auto}.hld-document-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.2)}.hld-document-toggle.active{background:#066!important}.hld-document-slide-panel{position:fixed;top:0;right:-400px;width:400px;height:100vh;background:#fff;box-shadow:-2px 0 10px rgba(0,0,0,.1);transition:right .3s ease;z-index:9998;overflow:hidden}.hld-document-slide-panel.open{right:0}.hld-document-slide-content{height:100%;display:flex;flex-direction:column}.hld-document-slide-header{background:teal;color:#fff;padding:20px;border-bottom:1px solid #066}.hld-document-slide-header h2{margin:0;font-size:18px;font-weight:600}.hld-document-slide-body{flex:1 1;overflow-y:auto;padding:20px}.hld-document-section{margin-bottom:30px}.hld-document-section h3{color:teal;font-size:16px;font-weight:600;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #e0f2f1}.hld-document-list{margin:0;padding-left:20px}.hld-document-list li{margin-bottom:8px;line-height:1.5;color:#333}.hld-document-empty{color:#999;font-style:italic;margin:10px 0}.hld-document-apis{display:flex;flex-direction:column;grid-gap:12px;gap:12px}.hld-document-api{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:12px;margin-bottom:15px}.hld-document-api-structure{display:flex;flex-direction:column;grid-gap:12px;gap:12px}.api-field{display:flex;align-items:center;grid-gap:12px;gap:12px}.api-field strong{color:#666;letter-spacing:.5px;min-width:80px}.api-field strong,.api-method{font-size:12px;text-transform:uppercase}.api-method{padding:4px 8px;border-radius:4px;font-weight:600;min-width:50px;text-align:center}.api-method.get{background:#e8f5e8;color:#2e7d32}.api-method.post{background:#fff3e0;color:#f57c00}.api-method.put{background:#e3f2fd;color:#1976d2}.api-method.delete{background:#ffebee;color:#d32f2f}.api-path{font-family:monospace;font-size:14px;color:#333;background:#f5f5f5;padding:2px 6px;border-radius:3px}.api-field-content{font-size:14px;color:#333;background:#fff;padding:4px 8px;border:1px solid #ddd;border-radius:3px;min-height:20px;flex:1 1}.api-field-content:empty:before{content:attr(data-placeholder);color:#999;font-style:italic}.hld-document-api-description{color:#666;font-size:14px;line-height:1.4}.hld-document-diagram{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:20px;text-align:center;color:#666}@media (max-width:768px){.hld-document-slide-panel{width:100%;right:-100%}.hld-document-slide-body,.hld-document-slide-header{padding:15px}.hld-document-slide-header h2{font-size:16px}}
/*# sourceMappingURL=main.d2ffed41.chunk.css.map */