.installer-ref-page{min-height:100vh;background-color:var(--color-background)}.installer-ref-header{border-bottom:1px solid var(--color-border);background-color:var(--color-card);padding:1.5rem 0}.installer-ref-header-container{max-width:80rem;margin:0 auto;padding:0 1rem}.installer-ref-header-back{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.installer-ref-header-back a{color:var(--color-primary);text-decoration:none;font-size:.875rem;display:flex;align-items:center;gap:.5rem;transition:opacity .2s}.installer-ref-header-back a:hover{opacity:.8}.installer-ref-header-title{font-size:1.875rem;font-weight:700;margin-bottom:.25rem}.installer-ref-header-subtitle{font-size:.9375rem;color:var(--color-muted-foreground);margin:0}.installer-ref-main{max-width:80rem;margin:0 auto;padding:2rem 1rem}.installer-ref-admin-controls{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.installer-ref-admin-controls button{min-height:40px;padding:.5rem 1rem;font-size:.875rem;display:flex;align-items:center;gap:.5rem;border-radius:.375rem;cursor:pointer;transition:all .2s}.installer-ref-categories{display:flex;flex-direction:column;gap:3rem}.installer-ref-category{display:flex;flex-direction:column;gap:1.5rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1),opacity .2s}.installer-ref-category-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.installer-ref-category-title-wrapper{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.installer-ref-grip-handle{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--color-muted-foreground);transition:color .2s}.installer-ref-grip-handle:active{cursor:grabbing}.installer-ref-grip-handle:hover{color:var(--color-foreground)}.installer-ref-category-title{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-foreground)}.installer-ref-category-actions{display:flex;gap:.5rem;flex-shrink:0}.installer-ref-category-actions button{min-height:36px;padding:.375rem .75rem;font-size:.8125rem;display:flex;align-items:center;gap:.375rem;border-radius:.375rem;cursor:pointer;transition:all .2s}.installer-ref-items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}@media(max-width:640px){.installer-ref-items-grid{grid-template-columns:1fr}}.installer-ref-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--color-border);border-radius:.5rem;background-color:var(--color-card);overflow:hidden;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,border-color .2s,background-color .2s;box-shadow:0 1px 2px #0000000d}.installer-ref-card:hover{box-shadow:0 4px 6px #0000001a;border-color:var(--color-primary)}.installer-ref-card-header{padding:1rem;border-bottom:1px solid var(--color-border);display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.installer-ref-card-content{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.installer-ref-card-title-wrapper{display:flex;align-items:flex-start;gap:.5rem}.installer-ref-card-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-top:.125rem}.installer-ref-card-title{font-size:.9375rem;font-weight:600;margin:0;color:var(--color-foreground);word-break:break-word}.installer-ref-card-description{font-size:.8125rem;color:var(--color-muted-foreground);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.installer-ref-card-footer{padding:.75rem 1rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.installer-ref-card-link{display:flex;align-items:center;gap:.375rem;color:var(--color-primary);text-decoration:none;font-size:.8125rem;transition:opacity .2s}.installer-ref-card-link:hover{opacity:.8}.installer-ref-card-delete-btn{flex-shrink:0;width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-destructive);transition:opacity .2s}.installer-ref-card-delete-btn:hover{opacity:.8}.installer-ref-empty-state{text-align:center;padding:3rem 1rem;color:var(--color-muted-foreground);font-size:.9375rem}.installer-ref-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:99;padding:1rem}.installer-ref-modal-content{width:fit-content;max-width:800px;min-width:16rem;background-color:var(--color-background);border-radius:.5rem;box-shadow:0 10px 25px #0003;max-height:90vh;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.installer-ref-modal-header{display:flex;flex-direction:column;gap:.5rem}.installer-ref-modal-title{font-size:1.25rem;font-weight:700;margin:0;color:var(--color-foreground)}.installer-ref-modal-description{font-size:.875rem;color:var(--color-muted-foreground);margin:0}.installer-ref-form{display:flex;flex-direction:column;gap:1.5rem}.installer-ref-form-group{display:flex;flex-direction:column;gap:.5rem}.installer-ref-form-label{font-size:.875rem;font-weight:600;color:var(--color-foreground)}.installer-ref-form-input,.installer-ref-form-select,.installer-ref-form-textarea{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.375rem;background-color:var(--color-background);color:var(--color-foreground);font-family:inherit;transition:all .2s;box-sizing:border-box}.installer-ref-form-input:focus,.installer-ref-form-select:focus,.installer-ref-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.1)}.installer-ref-form-input::placeholder,.installer-ref-form-select::placeholder{color:var(--color-muted-foreground)}.installer-ref-form-textarea{resize:vertical;min-height:80px}.installer-ref-modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem}@media(max-width:480px){.installer-ref-modal-footer{flex-direction:column-reverse}}.installer-ref-modal-footer button{min-height:40px;padding:.5rem 1rem;font-size:.875rem;border-radius:.375rem;cursor:pointer;transition:all .2s}.installer-ref-dragging{opacity:.5;transform:scale(.95);box-shadow:0 8px 16px #0003}.installer-ref-category.drop-active,.installer-ref-items-grid.drop-active{background-color:#3b82f60d;border-radius:.5rem;padding:1rem;margin:-1rem;border:2px dashed var(--color-primary);transition:all .15s ease-in-out}.installer-ref-card.drop-active{background-color:#3b82f61a;border:2px solid var(--color-primary);box-shadow:0 0 0 3px #3b82f61a;transition:all .15s ease-in-out}.installer-ref-category.drop-active .installer-ref-category-title,.installer-ref-card.drop-active .installer-ref-card-title{color:var(--color-primary)}.installer-ref-access-denied{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem 1rem}.installer-ref-access-denied-content{text-align:center;max-width:28rem}.installer-ref-access-denied-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--color-foreground)}.installer-ref-access-denied-message{font-size:.9375rem;color:var(--color-muted-foreground);margin-bottom:1.5rem}.installer-ref-access-denied-link{color:var(--color-primary);text-decoration:none;transition:opacity .2s}.installer-ref-access-denied-link:hover{opacity:.8}.installer-ref-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem 1rem;color:var(--color-muted-foreground)}.installer-ref-drag-overlay{position:fixed;pointer-events:none;z-index:2000;transform:scale(1.02);filter:drop-shadow(0 12px 24px rgba(0,0,0,.25));opacity:.98;border-radius:.5rem;overflow:hidden;animation:dragOverlayFadeIn .2s cubic-bezier(.34,1.56,.64,1) forwards}.installer-ref-category-overlay{background-color:var(--color-background);border:2px solid var(--color-primary);padding:1.5rem 1rem;min-width:400px;max-width:600px}.installer-ref-category-overlay .installer-ref-category-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.installer-ref-category-overlay .installer-ref-category-title-wrapper{display:flex;align-items:center;gap:.75rem;flex:1}.installer-ref-category-overlay .installer-ref-category-title{font-size:1.5rem;font-weight:700;color:var(--color-foreground);margin:0}.installer-ref-category-overlay .installer-ref-grip-handle{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-muted-foreground)}.installer-ref-card-overlay{background-color:var(--color-card);border:1px solid var(--color-border);display:flex;flex-direction:column;height:100%;width:320px;overflow:hidden}.installer-ref-card-overlay .installer-ref-card-header{padding:1rem;border-bottom:1px solid var(--color-border);display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.installer-ref-card-overlay .installer-ref-card-title-wrapper{display:flex;align-items:flex-start;gap:.5rem;flex:1}.installer-ref-card-overlay .installer-ref-card-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-top:.125rem}.installer-ref-card-overlay .installer-ref-card-title{font-size:.9375rem;font-weight:600;margin:0;color:var(--color-foreground);word-break:break-word}.installer-ref-card-overlay .installer-ref-card-content{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.installer-ref-card-overlay .installer-ref-card-description{font-size:.8125rem;color:var(--color-muted-foreground);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.installer-ref-card-overlay .installer-ref-card-footer{padding:.75rem 1rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-top:1px solid var(--color-border)}.installer-ref-card-overlay .installer-ref-card-link{display:flex;align-items:center;gap:.375rem;color:var(--color-primary);text-decoration:none;font-size:.8125rem;transition:opacity .2s}.installer-ref-card-overlay .installer-ref-card-link:hover{opacity:.8}@keyframes dragOverlayFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:.98;transform:scale(1.02)}}@keyframes dragOverlayFadeOut{0%{opacity:.98;transform:scale(1.02)}to{opacity:0;transform:scale(.98)}}.installer-ref-drag-overlay{animation:dragOverlayFadeIn .2s cubic-bezier(.34,1.56,.64,1) forwards}.installer-ref-drag-overlay.fade-out{animation:dragOverlayFadeOut .15s cubic-bezier(.4,0,1,1) forwards}.installer-ref-modal-content,[data-installer-ref-modal]{width:auto;max-width:32rem;min-width:20rem}
