:root{--bg: #0a0a0f;--bg-elev-1: #11161c;--bg-elev-2: #050507;--bg-elev-3: #1a2028;--accent: #00f0ff;--accent-15: #00f0ff15;--accent-22: #00f0ff22;--accent-33: #00f0ff33;--accent-44: #00f0ff44;--accent-66: #00f0ff66;--accent-dark: #0099aa;--text: #f5f5f7;--text-dim: #888;--text-faint: #555;--border: #00f0ff22;--border-soft: #1a2028;--danger: #ff3860;--warning: #ffaa00;--success: #00f0ff;--safe-top: env(safe-area-inset-top);--safe-bottom: env(safe-area-inset-bottom);--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, monospace}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100vw;overflow:hidden;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom)}.app-main{flex:1;overflow:hidden;display:flex;flex-direction:column}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}input,textarea{font:inherit;color:var(--text);background:var(--bg-elev-1);border:1px solid var(--accent-33);border-radius:8px;padding:10px 12px;outline:none}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-22)}.tile{background:linear-gradient(180deg,var(--bg-elev-1) 0%,#0d1218 100%);border:1px solid var(--accent-33);border-radius:14px;padding:16px;cursor:pointer;transition:border-color .15s,transform .1s,box-shadow .2s;position:relative;overflow:hidden}.tile:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-44),transparent);opacity:.6}.tile:active{transform:scale(.98)}.tile:hover{border-color:var(--accent-66);box-shadow:0 0 24px var(--accent-22)}.tile-icon{width:40px;height:40px;border-radius:10px;background:var(--accent-15);border:1px solid var(--accent-44);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:20px}.tile-coming-soon{background:#0c0f13;border:1px dashed #2a3038;border-radius:12px;padding:12px;opacity:.55;cursor:pointer;transition:opacity .2s,border-color .2s}.tile-coming-soon:hover{opacity:.8;border-color:var(--accent-33)}.help-q{color:var(--text-dim);font-size:11px;width:20px;height:20px;border-radius:50%;border:1px solid #2a3038;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);transition:border-color .15s,color .15s}.help-q:hover{border-color:var(--accent);color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050507e0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--bg-elev-1);border:1px solid var(--accent-33);border-radius:16px;padding:24px;max-width:440px;width:100%;box-shadow:0 8px 40px #00f0ff26;position:relative;overflow:hidden}.modal:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent)}.modal h2{margin:0 0 12px;color:var(--accent);font-size:18px;font-weight:500;letter-spacing:.4px}.modal p{margin:0 0 10px;color:var(--text);font-size:14px;line-height:1.6}.btn-primary{background:var(--accent);color:var(--bg-elev-2);font-weight:500;padding:12px 18px;border-radius:10px;font-size:14px;letter-spacing:.2px;transition:background .15s,transform .1s}.btn-primary:hover{background:#33f3ff}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--bg-elev-1);color:var(--text);border:1px solid var(--accent-33);padding:12px 18px;border-radius:10px;font-size:14px;transition:border-color .15s}.btn-secondary:hover{border-color:var(--accent)}@keyframes pulse-accent{0%,to{box-shadow:0 0 6px var(--accent)}50%{box-shadow:0 0 12px var(--accent)}}.pulse{animation:pulse-accent 2s ease-in-out infinite}.scrollable-y{overflow-y:auto;-webkit-overflow-scrolling:touch}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:pulse-accent 2s ease-in-out infinite}.mono{font-family:var(--font-mono)}.kbd{font-family:var(--font-mono);font-size:11px;padding:2px 6px;background:var(--bg-elev-3);border:1px solid var(--border-soft);border-radius:4px;color:var(--text-dim)}
