@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Sora:wght@700;800&display=swap");:root{--bg:#fff;--bg-secondary:#f5f5f7;--surface:#fff;--text:#1d1d1f;--text-secondary:#86868b;--border:rgba(0,0,0,.08);--accent:#0071e3;--accent-light:#e8f1fc;--error:#ff3b30;--success:#34c759;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.06);--shadow-float:0 12px 32px rgba(0,0,0,.12);--transition:all 0.2s cubic-bezier(0.25,0.1,0.25,1);--font-apple:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Inter",Roboto,sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body,html{font-family:var(--font-apple);background-color:var(--bg);color:var(--text);line-height:1.4;-webkit-font-smoothing:antialiased;min-height:100vh;overscroll-behavior-y:none}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.02em}.container{max-width:1024px;margin:0 auto;padding:0 1rem}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--accent);color:#fff;font-weight:500;font-size:.95rem;padding:.8rem 1.2rem;border-radius:var(--radius-full);border:none;cursor:pointer;transition:var(--transition)}.btn-primary:active{transform:scale(.96);opacity:.9}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--bg-secondary);color:var(--text);font-weight:500;font-size:.95rem;padding:.8rem 1.2rem;border-radius:var(--radius-full);border:none;cursor:pointer;transition:var(--transition)}.btn-secondary:active{transform:scale(.96);background:#e5e5ea}.btn-danger{background:var(--error);color:#fff}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;box-shadow:var(--shadow-sm)}.input-minimal{width:100%;padding:.8rem 1rem;background:var(--bg-secondary);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-apple);font-size:1rem;color:var(--text);transition:var(--transition)}.input-minimal:focus{outline:none;border-color:var(--accent);background:var(--surface)}::-webkit-scrollbar{width:0;background:transparent}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-enter{animation:slideUpFade .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,#e8e8ed 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.4;cursor:not-allowed;transform:none}.toast{position:fixed;top:16px;left:50%;transform:translateX(-50%) translateY(-100px);background:var(--text);color:var(--bg);padding:.6rem 1.2rem;border-radius:var(--radius-full);font-size:.85rem;font-weight:500;z-index:9999;transition:transform .3s cubic-bezier(.16,1,.3,1);pointer-events:none;max-width:90vw;text-align:center}.toast.show{transform:translateX(-50%) translateY(0)}.offline-banner,.toast.error{background:var(--error)}.offline-banner{position:fixed;top:0;left:0;right:0;color:#fff;text-align:center;padding:6px;font-size:.75rem;font-weight:600;z-index:9999}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:#fff}