:root{--primary:#6366f1;--primary-hover:#4f46e5;--primary-gradient:linear-gradient(135deg, #6366f1 0%, #a855f7 100%);--accent:#818cf8;--bg-dark:#0f172a;--bg-card:#1e293bb3;--glass-border:#ffffff1a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border:#ffffff1a;--radius:12px;--accent-bg:#6366f11a;--accent-border:#6366f133}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0}html,body{background:var(--bg-dark);height:100%;color:var(--text-primary);font-family:Inter,-apple-system,sans-serif;overflow:hidden}#root{height:100%}.app-container{width:100vw;height:100vh;display:flex}.login-page{background:radial-gradient(circle,#171923 0%,#0f172a 100%);justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:2rem;display:flex}.sidebar{border-right:1px solid var(--border);z-index:100;background:#0b1120;flex-direction:column;width:260px;padding:2rem 1rem;display:flex}.nav-container{flex-direction:column;gap:.25rem;display:flex}.nav-link{color:var(--text-secondary);border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover{color:#fff;background:#ffffff0d}.nav-link.active{background:var(--primary);color:#fff}.main-content{flex-direction:column;flex:1;align-items:center;padding:2.5rem;display:flex;overflow-y:auto}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:20px;width:100%;max-width:800px;padding:2.5rem;box-shadow:0 20px 40px -15px #00000080}.glass{-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);background:#ffffff08}.icon-box{background:var(--primary-gradient);justify-content:center;align-items:center;display:flex;box-shadow:0 8px 20px #6366f14d}h1{margin-bottom:.5rem;font-size:2.25rem;font-weight:700}.subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:1rem}.form-group{margin-bottom:1.5rem}label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}input,textarea{border:1px solid var(--border);border-radius:var(--radius);color:#fff;background:#0003;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--primary);outline:none}.btn{background:var(--primary);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;display:inline-flex}.btn:hover{background:var(--primary-hover)}.btn-secondary{border:1px solid var(--border);background:0 0}.file-upload{border:1px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;padding:2rem}.file-upload:hover{border-color:var(--primary);background:#ffffff05}.template-card{border:1px solid var(--border);cursor:pointer;background:#ffffff08;border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.template-card:hover{border-color:var(--primary)}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.success-message,.error-message{border-radius:var(--radius);margin-bottom:1.5rem;padding:1rem;font-size:.875rem}.success-message{color:#4ade80;background:#22c55e1a;border:1px solid #22c55e33}.error-message{color:#f87171;background:#ef44441a;border:1px solid #ef444433}.mobile-header{display:none}.sidebar-logo{flex-direction:row;align-items:center;gap:1rem;margin-bottom:2rem;padding:0 1rem;display:flex}.sidebar-footer{flex-direction:column;gap:1rem;margin-top:auto;display:flex}@media (width<=768px){.app-container{flex-direction:column}.mobile-header{border-bottom:1px solid var(--border);z-index:101;background:#0b1120;justify-content:space-between;align-items:center;width:100%;padding:.75rem 1.25rem;display:flex;position:fixed;top:0;left:0}.mobile-logo-box{align-items:center;display:flex}.sidebar{border-right:none;border-top:1px solid var(--border);z-index:100;background:#0b1120;flex-direction:column;width:100%;height:auto;padding:.5rem;position:fixed;top:auto;bottom:0}.nav-container{flex-direction:row;justify-content:space-around;width:100%}.nav-link{white-space:nowrap;flex-direction:column;gap:4px;padding:.4rem;font-size:.6rem}.nav-link span{font-size:.6rem}.sidebar-logo,.sidebar-footer{display:none!important}.main-content{padding:80px 1rem 100px}.card{padding:1.5rem}h1{font-size:1.5rem}.subtitle{margin-bottom:1.5rem;font-size:.9rem}}
