.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);padding:20px}.login-container{background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:48px 40px;width:100%;max-width:420px;box-shadow:0 32px 64px #0006}.logo{text-align:center;margin-bottom:40px}.logo-icon{font-size:48px;display:block;margin-bottom:16px}.logo h1{font-family:JetBrains Mono,Fira Code,monospace;font-size:32px;font-weight:700;color:#fff;margin:0;letter-spacing:2px}.logo .subtitle{color:#fff9;font-size:14px;margin-top:8px}.login-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#fffc;font-size:14px;font-weight:500}.form-group input{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:14px 18px;font-size:16px;color:#fff;transition:all .2s ease}.form-group input::placeholder{color:#ffffff4d}.form-group input:focus{outline:none;border-color:#7c3aed;background:#7c3aed1a;box-shadow:0 0 0 4px #7c3aed26}.btn-primary{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:12px;padding:16px 24px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #7c3aed66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:10px;font-size:14px;text-align:center}.loading-spinner{color:#ffffffb3;text-align:center;padding:40px;font-size:16px}.setup-card{text-align:center}.setup-card h2{color:#fff;font-size:22px;margin-bottom:16px}.setup-card p{color:#fff9;font-size:15px;line-height:1.6;margin-bottom:24px}.setup-success .credentials-card{text-align:left}.credentials-card h2{color:#fff;font-size:20px;margin-bottom:16px;text-align:center}.credentials-card .warning{background:#fbbf2426;border:1px solid rgba(251,191,36,.3);color:#fcd34d;padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:24px;text-align:center}.credential-row{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#ffffff0d;border-radius:10px;margin-bottom:12px}.credential-row label{color:#ffffffb3;font-size:14px}.credential-row code{font-family:JetBrains Mono,Fira Code,monospace;color:#10b981;font-size:15px;background:#10b9811a;padding:6px 12px;border-radius:6px}.credential-row code.password{color:#f59e0b;background:#f59e0b1a;word-break:break-all;max-width:200px}.credentials-card .btn-primary{width:100%;margin-top:20px}.ai-toggle{display:flex;flex-direction:column;gap:8px}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer}.toggle-input{position:relative;width:50px;height:26px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ccc;border-radius:13px;outline:none;transition:background .3s}.toggle-input:checked{background:#4caf50}.toggle-slider{position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .3s;transform:translate(2px)}.toggle-input:checked+.toggle-slider{transform:translate(28px)}.toggle-description{font-size:14px;color:var(--tg-theme-hint-color, #999)}.summary-editor{display:flex;flex-direction:column;gap:8px}.template-textarea{width:100%;padding:12px;border:1px solid var(--tg-theme-hint-color, #ccc);border-radius:4px;font-family:inherit;font-size:14px;resize:vertical;min-height:120px}.editor-hint{font-size:12px;color:var(--tg-theme-hint-color, #999)}.permissions-matrix{overflow-x:auto}.matrix-table{width:100%;border-collapse:collapse;font-size:14px}.matrix-table th,.matrix-table td{padding:8px;border:1px solid var(--tg-theme-hint-color, #ccc);text-align:left}.matrix-table th{background:var(--tg-theme-secondary-bg-color, #f0f0f0);font-weight:700}.matrix-table td input[type=checkbox]{cursor:pointer}.empty-state{text-align:center;padding:20px;color:var(--tg-theme-hint-color, #999)}.payment-demo{text-align:center}.payment-button{padding:12px 24px;background:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff);border:none;border-radius:8px;font-size:16px;cursor:pointer;margin-top:12px}.payment-button:hover{opacity:.9}.admin-panel{max-width:100%}.admin-panel h1{margin-bottom:24px;font-size:24px}.section{margin-bottom:32px;padding:16px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:8px}.section h2{margin-bottom:16px;font-size:18px}.loading{text-align:center;padding:40px}.change-password-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.change-password-content{background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:32px;width:100%;max-width:400px;box-shadow:0 24px 48px #0006}.change-password-content h2{color:#fff;font-size:22px;margin:0 0 24px;text-align:center}.change-password-content form{display:flex;flex-direction:column;gap:20px}.change-password-content .form-group{display:flex;flex-direction:column;gap:8px}.change-password-content .form-group label{color:#fffc;font-size:14px;font-weight:500}.change-password-content .form-group input{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:12px 16px;font-size:15px;color:#fff;transition:all .2s ease}.change-password-content .form-group input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.change-password-content .error-message{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:10px 14px;border-radius:8px;font-size:14px}.button-group{display:flex;gap:12px;margin-top:8px}.btn-secondary{flex:1;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:12px 20px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#ffffff26}.change-password-content .btn-primary{flex:1;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:10px;padding:12px 20px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.change-password-content .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #7c3aed59}.change-password-content .btn-primary:disabled{opacity:.6;cursor:not-allowed}.success-message{text-align:center;padding:40px 20px}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:#10b98126;border:2px solid #10b981;border-radius:50%;font-size:28px;color:#10b981;margin-bottom:16px}.success-message p{color:#fff;font-size:18px;margin:0}.App{min-height:100vh;background:linear-gradient(180deg,#0f0c29,#1a1a2e)}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);color:#fff;gap:20px}.spinner{width:48px;height:48px;border:3px solid rgba(124,58,237,.2);border-top-color:#7c3aed;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-loading p{color:#ffffffb3;font-size:16px}.app-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-brand{display:flex;align-items:center;gap:10px}.brand-icon{font-size:24px}.brand-name{font-family:JetBrains Mono,Fira Code,monospace;font-size:20px;font-weight:700;color:#fff;letter-spacing:1px}.header-user{display:flex;align-items:center;gap:12px}.username{color:#ffffffb3;font-size:14px;padding-right:8px;border-right:1px solid rgba(255,255,255,.15)}.btn-icon{background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 12px;font-size:16px;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#ffffff1f;transform:translateY(-1px)}.btn-logout:hover{background:#ef444426;border-color:#ef44444d}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000)}#root{min-height:100vh}
