@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--color-primary: #64ffda;--color-secondary: #bb86fc;--color-accent: #03dac6;--color-background: #000;--color-surface: #1a1a2e;--color-surface-variant: #16213e;--color-surface-dark: #0f0f23;--color-text: #ffffff;--color-text-secondary: rgba(255, 255, 255, .8);--color-text-muted: rgba(255, 255, 255, .6);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem;--spacing-xxl: 6rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3rem;--font-size-6xl: 4rem;--font-size-7xl: 5rem;--font-size-8xl: 6rem;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: 1rem;--border-radius-xl: 1.5rem;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(100, 255, 218, .3);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden}body{font-family:Orbitron,monospace;background:#000;color:#fff;line-height:1.6;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}body.admin-mode{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;overflow-x:auto}#root{width:100%;height:100%;min-height:100vh}@keyframes sparkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes cosmic-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.3}}@keyframes border-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}@keyframes float{0%,to{transform:translateY(0) rotate(0);opacity:0}25%{opacity:1}50%{transform:translateY(-20px) rotate(180deg);opacity:1}75%{opacity:1}}@keyframes twinkle{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes cosmic-drift{0%{transform:translate(0) translateY(0)}33%{transform:translate(30px) translateY(-15px)}66%{transform:translate(-20px) translateY(10px)}to{transform:translate(0) translateY(0)}}@keyframes cosmic-glow{0%,to{text-shadow:0 0 30px rgba(255,255,255,.8),0 0 60px rgba(100,255,218,.6),0 0 90px rgba(100,255,218,.4),0 0 120px rgba(100,255,218,.2);filter:brightness(1) contrast(1)}50%{text-shadow:0 0 40px rgb(255,255,255),0 0 80px rgba(100,255,218,.8),0 0 120px rgba(100,255,218,.6),0 0 160px rgba(100,255,218,.3);filter:brightness(1.1) contrast(1.1)}}@keyframes cosmic-glow-subtle{0%,to{text-shadow:0 0 10px rgba(255,255,255,.6),0 0 20px rgba(100,255,218,.4);opacity:.8}50%{text-shadow:0 0 15px rgba(255,255,255,.8),0 0 30px rgba(100,255,218,.5);opacity:.9}}.animate-sparkle{animation:sparkle 3s infinite ease-in-out}.animate-pulse{animation:pulse 2s infinite ease-in-out}.animate-float{animation:float 6s infinite ease-in-out}.animate-twinkle{animation:twinkle 4s infinite ease-in-out}.animate-drift{animation:cosmic-drift 20s infinite ease-in-out}.cosmic-container{position:relative;width:100vw;height:100vh;min-height:100vh;background:#000;overflow:hidden;display:flex;align-items:center;justify-content:center}.stars{position:absolute;top:0;left:0;width:100%;height:100%;z-index:15;overflow:hidden;pointer-events:none}.star{position:absolute;background:#fff;border-radius:50%;transition:all .3s ease;opacity:.8;pointer-events:auto}.star.interactive{width:2px;height:2px;cursor:pointer;z-index:20;opacity:.6;box-shadow:none;background:#fff;position:relative;display:flex;align-items:center;justify-content:center}.star.interactive:not(.has-planet){animation:twinkle 4s infinite ease-in-out}.star.interactive:not(.has-planet):hover{transform:scale(3);box-shadow:0 0 20px #64ffdacc;background:#64ffda;animation:none;z-index:25;opacity:1}.star.interactive.has-planet{background:transparent;opacity:1}.star.interactive.has-planet:hover{z-index:25}.star.interactive.has-planet:hover .star-planet-image{transform:translate(-50%,-50%) scale(1.2);filter:brightness(1.1) drop-shadow(0 0 15px rgba(100,255,218,.6))}.star.interactive:active .star-planet-image{transform:translate(-50%,-50%) scale(1.1)}.star.background{width:1px;height:1px;opacity:.4;animation:twinkle 4s infinite ease-in-out;cursor:default;pointer-events:none}.star.background:hover{opacity:.8;transform:scale(1.2)}.particle{position:absolute;width:1px;height:1px;background:var(--color-primary);border-radius:50%;animation:float 6s infinite ease-in-out;opacity:.6}.star-tooltip{position:absolute;background:#000000e6;color:#fff;padding:.5rem .8rem;border-radius:6px;font-size:.8rem;font-family:Segoe UI,sans-serif;pointer-events:auto;z-index:1000;opacity:0;transform:translateY(-10px);transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(100,255,218,.3);box-shadow:0 4px 12px #00000080;max-width:250px;cursor:pointer}.star-tooltip.visible{opacity:1;transform:translateY(0)}.star-tooltip:hover{background:#000000f2;border-color:#64ffda80;box-shadow:0 6px 16px #0009}.star-tooltip .tooltip-title{color:#64ffda;font-weight:600;margin-bottom:.3rem;font-size:.9rem}.star-tooltip .tooltip-description{color:#ccc;line-height:1.3;margin-bottom:.3rem}.star-tooltip .tooltip-type{color:#888;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.star-tooltip:after{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);border:4px solid transparent;border-bottom-color:#000000e6}.star-planet-image{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;transition:all .3s ease;object-fit:cover;pointer-events:auto;z-index:21;box-shadow:0 0 8px #00000080;animation:planetRotate 20s linear infinite;cursor:pointer}@keyframes planetRotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.cosmic-content{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-align:center;pointer-events:none}.cosmic-name{position:fixed;top:30px;left:30px;z-index:25;pointer-events:none}.cosmic-name h1{font-family:Orbitron,Courier New,monospace;font-size:clamp(1.2rem,3vw,2rem);font-weight:600;letter-spacing:.1em;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.6),0 0 20px rgba(100,255,218,.4);animation:cosmic-glow-subtle 8s ease-in-out infinite;margin:0;white-space:nowrap;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;opacity:.8}@media (max-width: 768px){.cosmic-name h1{font-size:clamp(1rem,4vw,1.5rem);letter-spacing:.08em;top:20px;left:20px}}@media (max-width: 480px){.cosmic-name h1{font-size:clamp(.9rem,3.5vw,1.2rem);letter-spacing:.05em;top:15px;left:15px}}.project-preview{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-xl);width:100%}@media (min-width: 768px){.project-preview{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}}@media (min-width: 1024px){.project-preview{grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl)}}@media (min-width: 1280px){.project-preview{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}.project-card{background:#ffffff0d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base);position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent)}.project-card:hover{transform:translateY(-8px);background:#ffffff1a;border-color:#64ffda4d;box-shadow:0 20px 40px #0000004d}.project-card h3{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-weight:300;font-size:var(--font-size-xl)}@media (min-width: 1024px){.project-card h3{font-size:var(--font-size-2xl)}}.project-card p{color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--spacing-md);font-size:var(--font-size-base)}@media (min-width: 1024px){.project-card p{font-size:var(--font-size-lg)}}.project-card .project-link{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(45deg,var(--color-primary),var(--color-text));color:var(--color-background);text-decoration:none;border-radius:var(--border-radius-full);font-weight:500;transition:all var(--transition-base);font-size:var(--font-size-sm)}@media (min-width: 1024px){.project-card .project-link{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}}.project-card .project-link:hover{transform:scale(1.05);box-shadow:0 5px 20px #64ffda80}.tech-stack{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);justify-content:center}@media (min-width: 1024px){.tech-stack{gap:var(--spacing-sm)}}.tech-tag{background:#64ffda33;color:var(--color-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:300;border:1px solid rgba(100,255,218,.3);transition:all var(--transition-fast)}@media (min-width: 1024px){.tech-tag{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md)}}.tech-tag:hover{background:#64ffda4d;transform:translateY(-1px)}.glow{position:relative}.glow:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(100,255,218,.1) 0%,transparent 70%);border-radius:inherit;z-index:-1;opacity:0;transition:opacity var(--transition-base)}.glow:hover:after{opacity:1}.admin-container{position:absolute;inset:0;min-height:100vh;width:100vw;max-width:none;background:#1a1a1a;color:#fff;padding:2rem;margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;box-sizing:border-box;overflow-x:auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:1rem;border-bottom:1px solid #333}.admin-header h1{color:#64ffda;font-size:2.5rem;font-weight:300}.admin-header .back-link{color:#fff;text-decoration:none;padding:.5rem 1rem;border:1px solid #64ffda;border-radius:5px;transition:all .3s ease}.admin-header .back-link:hover{background:#64ffda;color:#000}.admin-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:1px solid #333}.admin-tabs .tab-button{background:transparent;border:none;color:#ccc;padding:1rem 1.5rem;cursor:pointer;font-size:1rem;border-bottom:2px solid transparent;transition:all .2s ease}.admin-tabs .tab-button:hover{color:#fff;background:#ffffff0d}.admin-tabs .tab-button.active{color:#64ffda;border-bottom-color:#64ffda;background:#64ffda1a}.admin-content{display:block;width:100%;max-width:none}.constellations-tab{grid-column:1/-1;max-width:800px}.constellations-tab .create-constellation{background:#222;padding:2rem;border-radius:10px;border:1px solid #333;margin-bottom:2rem}.constellations-tab .create-constellation h3{color:#64ffda;margin-bottom:1.5rem;font-weight:300}.constellations-tab .create-constellation .constellation-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.constellations-tab .create-constellation .constellation-form .form-row .form-group{margin-bottom:0}.constellations-tab .create-constellation .constellation-form .form-group{margin-bottom:1.5rem}.constellations-tab .create-constellation .constellation-form .form-group label{display:block;margin-bottom:.5rem;color:#ccc;font-weight:500}.constellations-tab .create-constellation .constellation-form .form-group input{width:100%;padding:.75rem;background:#333;border:1px solid #555;border-radius:5px;color:#fff;font-size:1rem;box-sizing:border-box}.constellations-tab .create-constellation .constellation-form .form-group input:focus{outline:none;border-color:#64ffda;box-shadow:0 0 0 2px #64ffda33}.constellations-tab .create-constellation .constellation-form .form-group input::placeholder{color:#888}.constellations-tab .create-constellation .constellation-form .btn-create-constellation{background:#17a2b8;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;font-size:1rem;transition:all .3s ease}.constellations-tab .create-constellation .constellation-form .btn-create-constellation:hover{background:#138496}.admin-form{background:#222;padding:2rem;border-radius:10px;border:1px solid #333}.admin-form h2{color:#64ffda;margin-bottom:1.5rem;font-weight:300}.admin-form .form-group{margin-bottom:1.5rem}.admin-form .form-group label{display:block;margin-bottom:.5rem;color:#ccc;font-weight:500}.admin-form .form-group input,.admin-form .form-group select,.admin-form .form-group textarea{width:100%;padding:.75rem;background:#333;border:1px solid #555;border-radius:5px;color:#fff;font-size:1rem}.admin-form .form-group input:focus,.admin-form .form-group select:focus,.admin-form .form-group textarea:focus{outline:none;border-color:#64ffda;box-shadow:0 0 0 2px #64ffda33}.admin-form .form-group input::placeholder,.admin-form .form-group select::placeholder,.admin-form .form-group textarea::placeholder{color:#888}.admin-form .form-group.checkbox{display:flex;align-items:center}.admin-form .form-group.checkbox label{margin-bottom:0;margin-left:.5rem;cursor:pointer}.admin-form .form-group.checkbox input[type=checkbox]{width:auto;margin-right:.5rem}.admin-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.admin-form .form-row .form-group{margin-bottom:0}.admin-form .image-upload-section .file-input{margin-bottom:.5rem}.admin-form .image-upload-section .upload-status{color:#64ffda;font-size:.9rem;margin-left:.5rem}.admin-form .image-upload-section .image-preview{display:flex;align-items:center;gap:1rem;margin-top:.5rem;padding:.5rem;background:#ffffff0d;border-radius:5px}.admin-form .image-upload-section .image-preview img{border-radius:50%;object-fit:cover;border:2px solid #64ffda}.admin-form .image-upload-section .image-preview .remove-image{background:#dc3545;color:#fff;border:none;padding:.3rem .6rem;border-radius:3px;cursor:pointer;font-size:.8rem}.admin-form .image-upload-section .image-preview .remove-image:hover{background:#c82333}.admin-form .form-actions{display:flex;gap:1rem}.admin-form .form-actions button{padding:.75rem 1.5rem;border:none;border-radius:5px;cursor:pointer;font-size:1rem;transition:all .3s ease}.admin-form .form-actions button.btn-primary{background:#64ffda;color:#000}.admin-form .form-actions button.btn-primary:hover{background:#4fd1c7}.admin-form .form-actions button.btn-secondary{background:#555;color:#fff}.admin-form .form-actions button.btn-secondary:hover{background:#666}.admin-list h2{color:#64ffda;margin-bottom:1.5rem;font-weight:300}.constellation-groups{display:flex;flex-direction:column;gap:1.5rem;width:100%}.constellation-group{background:#ffffff05;border:1px solid #333;border-radius:8px;overflow:hidden}.constellation-group .constellation-header{background:#ffffff0d;padding:1rem;cursor:pointer;border-bottom:1px solid #333;transition:background .2s ease}.constellation-group .constellation-header:hover{background:#ffffff14}.constellation-group .constellation-header .constellation-title{display:flex;align-items:center;gap:.5rem}.constellation-group .constellation-header .constellation-title .expand-icon{color:#64ffda;font-size:.8rem;transition:transform .2s ease}.constellation-group .constellation-header .constellation-title .expand-icon.collapsed{transform:rotate(-90deg)}.constellation-group .constellation-header .constellation-title h3{color:#fff;margin:0;font-size:1.1rem;font-weight:500}.constellation-group .constellation-header .constellation-title h3:has-text("⚠️"){color:#ffc107}.constellation-group .projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;padding:1rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.project-item{background:#222;padding:1rem;border-radius:8px;border:1px solid #333;height:fit-content}.project-item h3{color:#64ffda;margin-bottom:.3rem;font-weight:500;font-size:1rem;line-height:1.2}.project-item .project-slug{color:#888;font-family:monospace;font-size:.8rem;margin-bottom:.3rem}.project-item .project-description{color:#ccc;margin-bottom:.6rem;line-height:1.3;font-size:.85rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-item .project-links{display:flex;gap:.5rem;margin-bottom:.6rem}.project-item .project-links a{color:#64ffda;text-decoration:none;font-size:.8rem;padding:.2rem .4rem;border:1px solid #64ffda;border-radius:3px;transition:all .2s ease}.project-item .project-links a:hover{background:#64ffda;color:#000}.project-item .project-meta{display:flex;gap:.4rem;margin-bottom:.6rem;flex-wrap:wrap}.project-item .project-meta span{padding:.25rem .5rem;border-radius:3px;font-size:.8rem;font-weight:500}.project-item .project-meta span.status.active{background:#28a745;color:#fff}.project-item .project-meta span.status.draft{background:#ffc107;color:#000}.project-item .project-meta span.status.archived{background:#6c757d;color:#fff}.project-item .project-meta span.type{background:#17a2b8;color:#fff}.project-item .project-meta span.featured{background:#fd7e14;color:#fff}.project-item .project-meta span.planet-image{background:#8e44ad;color:#fff}.project-item .planet-preview{display:flex;align-items:center;gap:.5rem;margin:.5rem 0;padding:.4rem;background:#8e44ad1a;border:1px solid rgba(142,68,173,.3);border-radius:4px}.project-item .planet-preview img{border-radius:50%;object-fit:cover;border:1px solid #8e44ad}.project-item .planet-preview .planet-info{color:#ccc;font-size:.75rem;font-family:monospace}.project-item .project-actions{display:flex;gap:.4rem}.project-item .project-actions button{padding:.3rem .6rem;border:none;border-radius:3px;cursor:pointer;font-size:.8rem;transition:all .3s ease}.project-item .project-actions button.btn-edit{background:#007bff;color:#fff}.project-item .project-actions button.btn-edit:hover{background:#0056b3}.project-item .project-actions button.btn-delete{background:#dc3545;color:#fff}.project-item .project-actions button.btn-delete:hover{background:#c82333}.login-container{min-height:100vh;width:100vw;background:#000;display:flex;align-items:center;justify-content:center;font-family:Orbitron,monospace}.login-box{background:#ffffff0d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:3rem;max-width:400px;width:90%;text-align:center;box-shadow:0 0 30px #64ffda33}.login-box h2{color:#64ffda;margin-bottom:2rem;font-weight:300;font-size:1.8rem;text-shadow:0 0 20px rgba(100,255,218,.5)}.login-box .form-group{margin-bottom:1.5rem;text-align:left}.login-box .form-group label{display:block;margin-bottom:.5rem;color:#fff;font-weight:300}.login-box .form-group input{width:100%;padding:1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:1rem;font-family:Orbitron,monospace;transition:all .3s ease;box-sizing:border-box}.login-box .form-group input:focus{outline:none;border-color:#64ffda;box-shadow:0 0 20px #64ffda4d;background:#ffffff26}.login-box .form-group input::placeholder{color:#ffffff80}.login-box .error-message{color:#ff6b6b;margin-bottom:1rem;padding:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:5px;font-size:.9rem}.login-box .btn-login{width:100%;padding:1rem;background:linear-gradient(45deg,#64ffda,#fff);color:#000;border:none;border-radius:10px;font-size:1rem;font-weight:700;font-family:Orbitron,monospace;cursor:pointer;transition:all .3s ease;margin-bottom:1.5rem}.login-box .btn-login:hover{transform:translateY(-2px);box-shadow:0 10px 30px #64ffda66}.login-box .btn-login:active{transform:translateY(0)}.login-box .login-footer .back-link{color:#ffffffb3;text-decoration:none;font-size:.9rem;transition:color .3s ease}.login-box .login-footer .back-link:hover{color:#64ffda}.admin-constellations{background:#ffffff05;border:1px solid #333;border-radius:10px;padding:2rem;margin-bottom:2rem}.admin-constellations h2{color:#64ffda;margin-bottom:1.5rem}.admin-constellations h3{color:#fff;margin-bottom:1rem;font-size:1.2rem}.admin-constellations .migration-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #333}.admin-constellations .migration-section p{color:#ccc;margin-bottom:1rem}.admin-constellations .migration-section .migration-buttons{display:flex;gap:1rem;margin-bottom:1rem}.admin-constellations .migration-section .btn-migration{background:#28a745;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:5px;cursor:pointer;font-size:1rem;transition:all .3s ease}.admin-constellations .migration-section .btn-migration:hover:not(:disabled){background:#218838}.admin-constellations .migration-section .btn-migration:disabled{background:#6c757d;cursor:not-allowed}.admin-constellations .migration-section .migration-status{margin-top:1rem;padding:.8rem;border-radius:5px;font-weight:500}.admin-constellations .migration-section .migration-status.success{background:#28a74533;border:1px solid #28a745;color:#28a745}.admin-constellations .migration-section .migration-status.error{background:#dc354533;border:1px solid #dc3545;color:#dc3545}.admin-constellations .create-constellation{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #333}.admin-constellations .create-constellation .constellation-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.admin-constellations .create-constellation .constellation-form .form-group label{color:#ccc;font-size:.9rem;margin-bottom:.3rem;display:block}.admin-constellations .create-constellation .constellation-form .form-group input{width:100%;background:#333;color:#fff;border:1px solid #555;border-radius:4px;padding:.5rem;font-size:.9rem;box-sizing:border-box}.admin-constellations .create-constellation .constellation-form .form-group input:focus{outline:none;border-color:#64ffda}.admin-constellations .create-constellation .constellation-form .btn-create-constellation{background:#17a2b8;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.admin-constellations .create-constellation .constellation-form .btn-create-constellation:hover{background:#138496}.admin-constellations .constellation-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem}.admin-constellations .constellation-list .constellation-item{background:#ffffff0d;border:1px solid #444;border-radius:6px;padding:.8rem;display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.admin-constellations .constellation-list .constellation-item .constellation-info{flex:1}.admin-constellations .constellation-list .constellation-item .constellation-info strong{color:#64ffda;display:block;margin-bottom:.3rem;font-size:.9rem}.admin-constellations .constellation-list .constellation-item .constellation-info p{color:#ccc;font-size:.8rem;margin:0;line-height:1.3}.admin-constellations .constellation-list .constellation-item .btn-delete-constellation{background:#dc3545;color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.admin-constellations .constellation-list .constellation-item .btn-delete-constellation:hover{background:#c82333;transform:scale(1.1)}.admin-constellations .constellation-list .constellation-item .btn-delete-constellation:active{transform:scale(.95)}.constellation-assign{margin:.4rem 0;display:flex;align-items:center;gap:.4rem}.constellation-assign label{color:#ccc;font-size:.8rem;min-width:70px}.constellation-assign select{background:#333;color:#fff;border:1px solid #555;border-radius:3px;padding:.25rem .4rem;font-size:.75rem;cursor:pointer;flex:1}.constellation-assign select:focus{outline:none;border-color:#64ffda}.project-meta .constellation{background:#6f42c1;color:#fff}.projects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;width:100%}.projects-header h2{color:#64ffda;margin:0;font-weight:300}.projects-header .btn-add-project{background:#28a745;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.projects-header .btn-add-project:hover{background:#218838;transform:translateY(-1px)}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background:#1a1a1a;border:1px solid #333;border-radius:10px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #000000b3}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #333}.modal-header h2{color:#64ffda;margin:0;font-weight:300}.modal-header .modal-close{background:none;border:none;color:#ccc;font-size:1.5rem;cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-header .modal-close:hover{background:#ffffff1a;color:#fff}.modal-form{padding:2rem}.modal-form .form-group{margin-bottom:1.5rem}.modal-form .form-group label{display:block;margin-bottom:.5rem;color:#ccc;font-weight:500}.modal-form .form-group input,.modal-form .form-group select,.modal-form .form-group textarea{width:100%;padding:.75rem;background:#333;border:1px solid #555;border-radius:5px;color:#fff;font-size:1rem;box-sizing:border-box}.modal-form .form-group input:focus,.modal-form .form-group select:focus,.modal-form .form-group textarea:focus{outline:none;border-color:#64ffda;box-shadow:0 0 0 2px #64ffda33}.modal-form .form-group input::placeholder,.modal-form .form-group select::placeholder,.modal-form .form-group textarea::placeholder{color:#888}.modal-form .form-group textarea{resize:vertical;min-height:80px}.modal-form .form-group.checkbox{display:flex;align-items:center}.modal-form .form-group.checkbox label{margin-bottom:0;margin-left:.5rem;cursor:pointer}.modal-form .form-group.checkbox input[type=checkbox]{width:auto;margin-right:.5rem}.modal-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.modal-form .form-row .form-group{margin-bottom:0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.modal-actions button{padding:.75rem 1.5rem;border:none;border-radius:5px;cursor:pointer;font-size:1rem;transition:all .3s ease}.modal-actions button.btn-primary{background:#64ffda;color:#000}.modal-actions button.btn-primary:hover{background:#4fd1c7}.modal-actions button.btn-secondary{background:#555;color:#fff}.modal-actions button.btn-secondary:hover{background:#666}.constellations-tab p{color:#ccc;margin-bottom:2rem;font-style:italic}.constellation-management{margin-top:2rem}.constellation-management h3{color:#64ffda;margin-bottom:1.5rem;font-weight:300}.constellation-management h4{color:#fff;margin-bottom:1rem;font-size:1.1rem}.no-constellations{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;padding:2rem;text-align:center}.no-constellations p{color:#ffc107;margin:0;font-size:1rem}.constellation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.constellation-card{background:#ffffff0d;border:1px solid #444;border-radius:10px;padding:1.5rem;transition:all .3s ease}.constellation-card:hover{border-color:#64ffda;box-shadow:0 5px 20px #64ffda1a}.constellation-card .constellation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.constellation-card .constellation-header .constellation-info{flex:1}.constellation-card .constellation-header .constellation-info h4{color:#64ffda;margin:0 0 .5rem;font-size:1.2rem;font-weight:500}.constellation-card .constellation-header .constellation-info .constellation-description{color:#ccc;margin:0 0 .5rem;font-size:.9rem;line-height:1.4}.constellation-card .constellation-header .constellation-info .project-count{color:#888;font-size:.8rem;background:#ffffff1a;padding:.2rem .5rem;border-radius:12px;display:inline-block}.constellation-card .constellation-header .btn-delete-constellation{background:#dc3545;color:#fff;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.constellation-card .constellation-header .btn-delete-constellation:hover{background:#c82333;transform:scale(1.1)}.constellation-card .assigned-projects{margin-bottom:1rem}.constellation-card .assigned-projects h5{color:#fff;margin:0 0 .5rem;font-size:.9rem;font-weight:500}.constellation-card .assigned-projects .project-tags{display:flex;flex-wrap:wrap;gap:.4rem}.constellation-card .assigned-projects .project-tags .project-tag{background:#17a2b8;color:#fff;padding:.3rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500;cursor:default;transition:all .2s ease}.constellation-card .assigned-projects .project-tags .project-tag:hover{background:#138496;transform:translateY(-1px)}.constellation-card .constellation-actions .assign-project-select{width:100%;background:#333;color:#fff;border:1px solid #555;border-radius:5px;padding:.5rem;font-size:.9rem;cursor:pointer}.constellation-card .constellation-actions .assign-project-select:focus{outline:none;border-color:#64ffda}.constellation-card .constellation-actions .assign-project-select option{background:#333;color:#fff}.unassigned-projects{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:10px;padding:1.5rem;margin-top:2rem}.unassigned-projects h4{color:#ff6b6b;margin-bottom:1rem;font-size:1.1rem}.unassigned-projects .project-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.unassigned-projects .project-tags .project-tag.unassigned{background:#ff6b6b;color:#fff;padding:.3rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500;cursor:default;transition:all .2s ease}.unassigned-projects .project-tags .project-tag.unassigned:hover{background:#e55a5a;transform:translateY(-1px)}.unassigned-projects .help-text{color:#ccc;font-size:.85rem;font-style:italic;margin:0}.embedded-container{min-height:100vh;width:100vw;background:#1a1a1a;color:#fff;display:flex;flex-direction:column}.embedded-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#222;border-bottom:1px solid #333;flex-shrink:0}@media (max-width: 768px){.embedded-header{flex-direction:column;gap:1rem;padding:1rem}}.embedded-info{flex:1}.embedded-info h1{color:#64ffda;font-size:1.8rem;margin-bottom:.5rem;font-weight:300}.embedded-info p{color:#ccc;margin-bottom:.5rem;font-size:1rem}.embedded-info .embedded-category{display:inline-block;padding:.25rem .75rem;background:#007bff;color:#fff;border-radius:15px;font-size:.8rem;font-weight:500;text-transform:capitalize}.embedded-controls{display:flex;gap:1rem;align-items:center}@media (max-width: 768px){.embedded-controls{width:100%;justify-content:center}}.back-button,.fullscreen-button{padding:.75rem 1.5rem;border:none;border-radius:5px;text-decoration:none;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.back-button{background:#555;color:#fff}.back-button:hover{background:#666}.fullscreen-button{background:#64ffda;color:#000}.fullscreen-button:hover{background:#4fd1c7}.embedded-project{flex:1;display:flex;position:relative;background:#fff}.project-iframe{width:100%;height:100%;min-height:calc(100vh - 120px);border:none;background:#fff}.embedded-loading,.embedded-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center}.embedded-loading h2,.embedded-error h2{color:#64ffda;margin-bottom:1rem;font-weight:300}.embedded-loading p,.embedded-error p{color:#ccc;margin-bottom:2rem}@media (max-width: 768px){.cosmic-content{padding:var(--spacing-sm)}.cosmic-content .cosmic-header h1{font-size:var(--font-size-4xl)}.cosmic-content .cosmic-header .subtitle{font-size:var(--font-size-lg);padding:var(--spacing-sm)}.cosmic-content .cosmic-nav{flex-direction:column;align-items:center;gap:var(--spacing-sm)}.cosmic-content .cosmic-nav a{width:100%;max-width:200px;text-align:center}.project-preview{grid-template-columns:1fr;gap:var(--spacing-md)}.project-card{padding:var(--spacing-md)}}.loading{display:flex;align-items:center;justify-content:center;height:100vh}.loading h1{font-size:var(--font-size-3xl);color:var(--color-primary);animation:pulse 2s infinite ease-in-out}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.w-full{width:100%}.h-full{height:100%}.flex{display:flex}.grid{display:grid}.hidden{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}
