@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap";:root{--aiq-purple: #5e17eb;--aiq-purple-dim: rgba(94, 23, 235, .25);--aiq-purple-light: #c4a0fb;--aiq-red: #ff3131;--bg-base: #020617;--bg-surface: #0f172a;--bg-card: #1e293b;--bg-hover: #1e293b;--border: #1e293b;--text-primary: #f1f5f9;--text-muted: #94a3b8;--text-faint: #475569}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-surface);color:var(--text-primary);height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,Georgia,serif;font-weight:600}#root{height:100vh}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}.sidebar{width:280px;min-width:0;background:var(--bg-base);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:width .25s ease}.sidebar.collapsed{width:68px}.sidebar-logo{padding:14px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.sidebar.collapsed .sidebar-logo{padding:14px 8px;justify-content:center}.logo-btn{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.logo-clip{overflow:hidden;flex-shrink:0;line-height:0;transition:width .25s ease}.logo-img{height:26px;display:block}.logo-subtitle{font-size:11px;font-weight:700;color:var(--text-muted);white-space:nowrap;letter-spacing:1.5px;text-transform:uppercase}.toggle-btn{padding:8px;border-radius:8px;color:var(--text-muted);transition:background .15s,color .15s;flex-shrink:0}.toggle-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-section{padding:12px 8px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.nav-section-label{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-faint);padding:8px 8px 4px}.nav-btn{width:100%;display:flex;align-items:center;gap:12px;padding:10px 8px;border-radius:10px;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s;color:var(--text-muted);text-align:left}.nav-btn:hover{background:#5e17eb0f;color:var(--text-primary);border-color:#5e17eb26}.nav-btn.active-home,.nav-btn.active-app{background:#5e17eb1f;color:var(--aiq-purple-light);border-color:#5e17eb66}.nav-icon{flex-shrink:0;display:block}.nav-label{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden}.nav-desc{font-size:11px;opacity:.75;white-space:nowrap;overflow:hidden}.user-footer{padding:12px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--aiq-purple);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.user-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--text-faint);text-transform:capitalize}.badge-admin{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--aiq-purple-dim);color:var(--aiq-purple-light);border:1px solid rgba(94,23,235,.35)}.logout-btn{color:var(--text-faint);font-size:18px;padding:4px 8px;transition:color .15s;margin-left:auto}.logout-btn:hover{color:var(--aiq-red)}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.main-header{background:var(--bg-surface);border-bottom:1px solid var(--border);padding:16px 24px;display:flex;align-items:center;gap:16px}.main-header h1{font-size:22px;font-weight:700}.main-header p{font-size:13px;color:var(--text-muted);margin-top:2px}.frame-area{flex:1;overflow:hidden}.frame-area iframe{width:100%;height:100%;border:0}.screen-center{position:fixed;inset:0;background:var(--bg-base);display:flex;align-items:center;justify-content:center}.card{background:var(--bg-card);border-radius:16px;padding:40px 32px;width:100%;max-width:360px;text-align:center;border:1px solid var(--border)}.card-icon{margin-bottom:12px;color:var(--aiq-purple)}.card h1{font-size:22px;font-weight:700;margin-bottom:8px}.card p{font-size:14px;color:var(--text-muted)}.card .sub{font-size:12px;color:var(--text-faint);margin-top:12px}.signin-btn{margin-top:20px;padding:10px 28px;border-radius:8px;background:var(--aiq-purple);color:#fff;font-size:14px;font-weight:600;transition:opacity .15s}.signin-btn:hover{opacity:.85}.spinner{color:var(--text-faint);font-size:14px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
