.color-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:12px;gap:12px;margin-top:12px;padding:8px 0}.color-option{width:36px;height:36px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .2s ease;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.1)}.color-option:hover{transform:scale(1.05);border-color:rgba(0,0,0,.1);box-shadow:0 2px 6px rgba(0,0,0,.15)}.color-option-selected{border-color:#0078d4!important;border-width:3px;transform:scale(1.05);box-shadow:0 0 0 2px rgba(0,120,212,.2),0 2px 6px rgba(0,0,0,.15)}.color-option-selected:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;font-weight:700;font-size:16px;text-shadow:0 0 3px rgba(0,0,0,.7);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.spec-tree-loader-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}.spec-tree-loader{background-color:var(--surface-card);padding:2rem;border-radius:.75rem;box-shadow:0 4px 20px rgba(0,0,0,.15);display:flex;flex-direction:column;align-items:center;gap:1rem;min-width:12.5rem;text-align:center}.spec-tree-loader i{color:var(--primary-color)}.spec-tree-loader p{margin:0;color:var(--text-color);font-size:.875rem;font-weight:500}.spec-tree-container{display:flex;flex-direction:column;height:100%;width:100%;background-color:var(--surface-a);border-radius:.5rem;box-shadow:0 2px 12px rgba(0,0,0,.08);overflow:hidden}.spec-tree-header{padding:.75rem 1rem;background-color:var(--surface-b);border-bottom:1px solid var(--surface-border);display:flex;align-items:center;font-weight:600;font-size:1.1rem;color:var(--text-color);min-height:2.75rem}.spec-tree-header-icon{margin-right:.625rem;font-size:1rem;color:var(--primary-color)}.spec-tree-header-text{font-weight:600}.spec-tree-menu{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:.5rem 0 3.5rem}.spec-tree-footer{position:absolute;bottom:0;width:100%;left:0;right:0;padding:.5rem 0;border-top:1px solid var(--surface-border);background-color:var(--surface-b);z-index:10}.spec-tree-create-item{display:flex;align-items:center;padding:.5rem 1rem;cursor:pointer;transition:all .2s ease;color:var(--text-color);background-color:transparent;border:none;width:100%;text-align:left;font-size:.8125rem;font-weight:500}.spec-tree-create-item:hover{background-color:var(--surface-hover);color:var(--primary-color)}.spec-tree-create-item:active{background-color:var(--surface-active)}.spec-tree-create-icon{font-size:.875rem;color:var(--text-color-secondary);transition:color .2s ease;width:1rem;text-align:center;margin-right:.875rem}.spec-tree-create-item:hover .spec-tree-create-icon{color:var(--primary-color)}.spec-tree-create-item-active{background-color:var(--primary-color)!important}.spec-tree-create-item-active,.spec-tree-create-item-active .spec-tree-create-icon{color:var(--primary-color-text)!important}.spec-tree-create-text{flex:1 1;font-weight:500}.spec-tree-create-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:1000;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .3s ease;opacity:1;visibility:visible}.spec-tree-create-overlay-closing{animation:fadeOut .3s ease;opacity:0;visibility:hidden}.spec-tree-create-menu{background-color:var(--surface-a);border-radius:.75rem .75rem 0 0;width:100%;max-width:36.25rem;max-height:80vh;overflow:hidden;animation:slideUp .3s ease;box-shadow:0 -4px 20px rgba(0,0,0,.15);transform:translateY(0);transition:transform .3s ease,opacity .3s ease}.spec-tree-create-menu-closing{animation:slideDown .3s ease;transform:translateY(100%)}.spec-tree-create-header{padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--surface-border);display:flex;align-items:center;justify-content:space-between;background-color:var(--surface-b)}.spec-tree-create-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-color)}.spec-tree-create-close{background:none;border:none;color:var(--text-color-secondary);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem}.spec-tree-create-close:hover{background-color:var(--surface-hover);color:var(--text-color)}.spec-tree-create-options{padding:1rem 1.5rem 1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(15.625rem,1fr));grid-gap:.75rem;gap:.75rem;max-height:60vh;overflow-y:auto}.spec-tree-create-option{padding:1rem;background-color:var(--surface-card);border:1px solid var(--surface-border);border-radius:.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.75rem;text-align:left;font-size:.875rem;font-weight:500;color:var(--text-color)}.spec-tree-create-option:hover{background-color:var(--surface-hover);border-color:var(--primary-color);transform:translateY(-.125rem);box-shadow:0 4px 12px rgba(0,0,0,.1)}.spec-tree-create-option:active{transform:translateY(0);box-shadow:0 2px 6px rgba(0,0,0,.1)}.spec-tree-create-option i{font-size:1.125rem;color:var(--primary-color);width:1.25rem;text-align:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.spec-tree-parent-item{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-color-dark) 100%)!important;border-radius:.5rem;margin:.5rem .75rem;padding:1rem 1.25rem!important;box-shadow:0 2px 8px rgba(0,0,0,.1);border:1px solid var(--primary-color)}.spec-tree-parent-item:hover{background:linear-gradient(135deg,var(--primary-color-dark) 0,var(--primary-color) 100%)!important;box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.spec-tree-parent-icon{font-size:1.25rem!important;width:1.375rem!important}.spec-tree-parent-icon,.spec-tree-parent-text{color:var(--surface-a)!important;text-shadow:0 1px 2px rgba(0,0,0,.2)}.spec-tree-parent-text{font-size:1rem!important;font-weight:700!important;letter-spacing:.01875rem}.spec-tree-parent-item:hover .spec-tree-parent-icon,.spec-tree-parent-item:hover .spec-tree-parent-text{color:var(--surface-a)!important}.spec-tree-menu::-webkit-scrollbar{width:.375rem}.spec-tree-menu::-webkit-scrollbar-track{background:transparent}.spec-tree-menu::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:.1875rem}.spec-tree-menu::-webkit-scrollbar-thumb:hover{background:var(--text-color-secondary)}.spec-tree-menuitem{cursor:pointer;transition:all .2s ease}.spec-tree-menuitem:hover{background-color:var(--surface-hover)}.spec-tree-menuitem-active{background-color:color-mix(in srgb,var(--primary-color) 15%,transparent)!important;border-left:.1875rem solid var(--primary-color)}.spec-tree-menuitem-active .spec-tree-menuitem-text{color:var(--primary-color)!important;font-weight:600!important}.spec-tree-menuitem-active .spec-tree-menuitem-icon,.spec-tree-menuitem-active .spec-tree-submenu-icon{color:var(--primary-color)!important}.spec-tree-menuitem-content{padding:.625rem 1rem;display:flex;align-items:center;min-height:2.5rem;justify-content:space-between}.spec-tree-menuitem-text{font-size:1rem;font-weight:500;color:var(--text-color);transition:color .2s ease;flex:1 1;margin-left:.75rem}.spec-tree-menuitem-actions{display:flex;align-items:center;gap:.5rem}.spec-tree-context-icon{font-size:.75rem;color:var(--text-color-secondary);transition:all .2s ease;cursor:pointer;padding:.375rem;border-radius:50%;opacity:0;transform:scale(.8);width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background-color:transparent}.spec-tree-menuitem:hover .spec-tree-context-icon{opacity:1;transform:scale(1)}.spec-tree-menuitem-active .spec-tree-context-icon{opacity:1;transform:scale(1);color:var(--primary-color)}.spec-tree-context-icon:hover{color:var(--primary-color);background-color:rgba(0,0,0,.05);box-shadow:0 2px 4px rgba(0,0,0,.1)}.spec-tree-menuitem-active .spec-tree-context-icon:hover{color:var(--surface-a);background-color:rgba(255,255,255,.2);box-shadow:0 2px 4px rgba(0,0,0,.2)}.spec-tree-menuitem-icon{font-size:1rem;color:var(--text-color-secondary);transition:color .2s ease;width:1.125rem;text-align:center}.spec-tree-submenu-icon{font-size:.75rem;color:var(--text-color-secondary);transition:all .2s ease;cursor:pointer;padding:.375rem;border-radius:50%;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background-color:transparent}.spec-tree-submenu-icon:hover{color:var(--primary-color);background-color:rgba(0,0,0,.05);box-shadow:0 2px 4px rgba(0,0,0,.1)}.spec-tree-separator{height:1px;background-color:var(--surface-border);margin:.125rem 1rem;border:none}.spec-tree-children{background-color:var(--surface-b)}.spec-tree-menuitem.spec-tree-child{padding-left:1.5rem!important;margin-left:1rem!important;background-color:var(--surface-b)!important}.spec-tree-menuitem.spec-tree-child .spec-tree-menuitem-content{padding-left:.5rem!important}.spec-tree-menuitem.spec-tree-child .spec-tree-menuitem-icon{color:var(--text-color-secondary)!important;font-size:.875rem!important}.spec-tree-menuitem.spec-tree-child .spec-tree-menuitem-text{color:var(--text-color)!important}.spec-tree-menuitem.spec-tree-child.spec-tree-menuitem-active .spec-tree-menuitem-text{color:var(--primary-color)!important;font-weight:600!important}.spec-tree-menu .p-submenu-list{background-color:var(--surface-a)!important;border:1px solid var(--surface-border)!important;border-radius:.375rem!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;padding:.25rem 0!important}.spec-tree-menu .p-submenu-list .p-menuitem{border-bottom:none!important;margin:0!important}.spec-tree-menu .p-submenu-list .p-menuitem-link{padding:.5rem 1rem!important;font-size:.75rem!important;min-height:2rem!important}.spec-tree-menu .p-submenu-list .p-menuitem-icon{margin-right:.5rem!important;font-size:.875rem!important;width:1rem!important}.spec-tree-menu .p-submenu-icon{font-size:.75rem!important;color:var(--text-color-secondary)!important;transition:transform .2s ease!important}.spec-tree-menu .p-menuitem.p-menuitem-active .p-submenu-icon{color:var(--surface-a)!important;transform:rotate(90deg)!important}.spec-tree-menu .p-menuitem-link:focus{outline:.125rem solid var(--primary-color)!important;outline-offset:.125rem!important}@media (max-width:768px){.spec-tree-header{padding:.625rem .75rem;font-size:.9rem;min-height:2.5rem}.spec-tree-menu .p-menuitem-link{padding:.5rem .75rem!important;min-height:36px!important}.spec-tree-menu .p-menuitem-icon{margin-right:.5rem!important;font-size:.875rem!important}.spec-tree-menu .p-menuitem-text{font-size:.75rem!important}}.spec-tree-item-active .p-menuitem-link{background-color:var(--primary-color)!important}.spec-tree-item-active .p-menuitem-link,.spec-tree-item-active .p-menuitem-link .p-menuitem-text{color:var(--surface-a)!important;font-weight:600!important}.spec-tree-item-active .p-menuitem-link .p-menuitem-icon,.spec-tree-item-active .p-menuitem-link .p-submenu-icon{color:var(--surface-a)!important}.spec-tree-menuitem-icon{transition:all .2s ease;position:relative}.spec-tree-menuitem-icon:hover{transform:scale(1.1)}.spec-tree-menuitem-icon.filled-folder{font-family:primeicons!important;position:relative;font-size:1rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.spec-tree-menuitem-icon.filled-folder:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:currentColor;opacity:.8;z-index:-1;border-radius:.125rem}.spec-tree-menuitem-icon.filled-folder.solid{background-color:currentColor;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.spec-tree-menuitem-icon.filled-folder:hover{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transform:scale(1.15)}.spec-tree-menuitem-icon.filled-folder:hover:before{opacity:1}.spec-tree-menuitem-icon.filled-folder.simple{font-weight:700;text-shadow:none;-webkit-text-stroke:.03125rem currentColor}.spec-tree-menuitem-icon.filled-folder.clean{background-color:currentColor;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:900;text-shadow:none}.spec-tree-menuitem-icon.filled-folder.reliable{font-weight:700;text-shadow:.0625rem .0625rem 0 currentColor,-1px -1px 0 currentColor,.0625rem -.0625rem 0 currentColor,-.0625rem .0625rem 0 currentColor,0 .0625rem 0 currentColor,.0625rem 0 0 currentColor,0 -.0625rem 0 currentColor,-.0625rem 0 0 currentColor}.spec-tree-lucide-folder{transition:all .2s ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.spec-tree-lucide-folder:hover{transform:scale(1.1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.spec-tree-menuitem-active .spec-tree-lucide-folder{color:var(--primary-color)!important}