*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f5f5f7;--surface: #ffffff;--border: #e5e5e7;--text: #1d1d1f;--text-secondary: #6e6e73;--primary: #0071e3;--primary-hover: #0060c0;--danger: #e53e3e;--success: #22c55e;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);--shadow-lg: 0 4px 16px rgba(0,0,0,.1);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Helvetica, Arial, sans-serif}[data-theme=dark]{--bg: #1a1a1c;--surface: #2c2c2e;--border: #3a3a3c;--text: #f5f5f7;--text-secondary: #98989d;--primary: #0a84ff;--primary-hover: #409cff;--danger: #ff453a;--success: #30d158;--shadow: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow-lg: 0 4px 16px rgba(0,0,0,.4)}body{font-family:var(--font);background:var(--bg);background-image:linear-gradient(135deg,rgba(0,113,227,.03) 0%,transparent 50%,rgba(168,85,247,.03) 100%);background-attachment:fixed;color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}[data-theme=dark] body{background-image:linear-gradient(135deg,rgba(10,132,255,.04) 0%,transparent 50%,rgba(168,85,247,.04) 100%)}.header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-left{display:flex;align-items:center;gap:24px}.header-logo{font-size:20px;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-.5px}.header-logo-sub{font-size:13px;font-weight:400;color:var(--text-secondary);margin-left:4px}.header-nav{display:flex;gap:4px}.header-nav a{padding:6px 14px;border-radius:8px;text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;transition:background .15s,color .15s}.header-nav a:hover,.header-nav a.active{background:var(--bg);color:var(--text)}.header-right{display:flex;align-items:center;gap:12px}.header-user{font-size:14px;color:var(--text-secondary);font-weight:500}.theme-toggle{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:4px 8px;font-size:16px;line-height:1;transition:background .15s}.theme-toggle:hover{background:var(--bg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:500;font-family:var(--font);cursor:pointer;transition:background .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg);color:var(--text)}.launcher-container{max-width:800px;margin:0 auto;padding:48px 24px}.launcher-title{font-size:28px;font-weight:700;letter-spacing:-.5px;margin-bottom:32px}.launcher-empty{color:var(--text-secondary);font-size:15px}.launcher-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.launcher-tile{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .15s,transform .15s;font-family:var(--font);text-align:center}.launcher-tile:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.launcher-tile-icon{font-size:40px;line-height:1}.launcher-tile-name{font-size:16px;font-weight:600;color:var(--text)}.launcher-tile-desc{font-size:13px;color:var(--text-secondary);line-height:1.4}.account-page{max-width:600px;margin:0 auto;padding:48px 24px}.account-page h1{font-size:28px;font-weight:700;letter-spacing:-.5px;margin-bottom:32px}.account-section{background:var(--surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);margin-bottom:24px}.account-section h2{font-size:18px;font-weight:600;margin-bottom:16px}.account-section form{display:flex;flex-direction:column;gap:14px}.account-section label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:500;color:var(--text-secondary)}.account-section input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font);outline:none;background:var(--surface);color:var(--text)}.account-section input:focus{border-color:var(--primary)}.account-section input:disabled{opacity:.6}.account-section .btn-primary{align-self:flex-start;margin-top:4px}.auth-error{background:rgba(229,62,62,.1);color:var(--danger);padding:10px 12px;border-radius:var(--radius-sm);font-size:14px}.auth-success{background:rgba(34,197,94,.1);color:var(--success);padding:10px 12px;border-radius:var(--radius-sm);font-size:14px}.app-switcher-wrapper{position:relative}.app-switcher-btn{display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:4px 8px;color:var(--text-secondary);transition:background .15s,color .15s}.app-switcher-btn:hover{background:var(--bg);color:var(--text)}.app-switcher-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:200;min-width:200px;padding:12px}.app-switcher-title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.app-switcher-list{display:flex;flex-direction:column;gap:2px}.app-switcher-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text);text-decoration:none;transition:background .15s}.app-switcher-item:hover{background:var(--bg)}.app-switcher-item.app-switcher-current{color:var(--primary);font-weight:600}.app-switcher-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:var(--bg);color:var(--text-secondary);flex-shrink:0}.app-switcher-divider{height:1px;background:var(--border);margin:4px 0}.app-switcher-current .app-switcher-icon{background:rgba(0,113,227,.1);color:var(--primary)}[data-theme=dark] .app-switcher-current .app-switcher-icon{background:rgba(10,132,255,.15)}.page-loading{display:flex;align-items:center;justify-content:center;min-height:200px;font-size:15px;color:var(--text-secondary)}@media (max-width: 600px){.launcher-grid{grid-template-columns:1fr}}
