:root{--bg:#0f0f11;--surface:#1a1a1e;--surface-2:#252529;--text:#f5f5f7;--text-2:#a1a1a6;--accent:#34c759;--accent-glow:#34c75959;--danger:#ff453a;--radius:18px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex}.screen{flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:24px;animation:.35s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border-radius:var(--radius);width:100%;max-width:360px;padding:32px;box-shadow:0 20px 60px #00000059}.logo{border-radius:20px;width:72px;height:72px;margin-bottom:20px}h1{letter-spacing:-.02em;margin:0 0 6px;font-size:1.6rem;font-weight:700}.subtitle{color:var(--text-2);margin-bottom:28px;font-size:.95rem}input[type=email],input[type=password]{border:1px solid var(--surface-2);background:var(--bg);width:100%;color:var(--text);border-radius:12px;outline:none;margin-bottom:12px;padding:14px 16px;font-size:1rem;transition:border-color .2s}input[type=email]:focus,input[type=password]:focus{border-color:var(--accent)}button{cursor:pointer;border:none;border-radius:12px;padding:14px 20px;font-size:1rem;font-weight:600;transition:transform .1s,opacity .2s}button:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#000;width:100%}.btn-secondary{background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.hint{color:var(--text-2);text-align:center;margin-top:16px;font-size:.85rem}.error{color:var(--danger);min-height:1.3em;margin-top:10px;font-size:.9rem}.app-shell{flex-direction:column;min-height:100%;display:flex}.top-bar{padding:16px 20px;padding-top:env(safe-area-inset-top,16px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--surface-2);z-index:10;background:#0f0f11d9;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.top-bar h1{margin:0;font-size:1.15rem}.mic-section{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.mic-button{background:linear-gradient(145deg,#2a2a2e,#1e1e22);border-radius:50%;justify-content:center;align-items:center;width:140px;height:140px;padding:0;transition:transform .15s,box-shadow .2s;display:flex;position:relative;box-shadow:0 10px 40px #00000073,inset 0 1px #ffffff0f}.mic-button svg{width:52px;height:52px;color:var(--text);transition:color .2s}.mic-button:hover{transform:scale(1.03)}.mic-button.listening{box-shadow:0 0 0 12px var(--accent-glow), 0 10px 40px #00000073;background:linear-gradient(145deg,#2e5a3a,#23462e)}.mic-button.listening svg{color:var(--accent)}.mic-button.listening:after{content:"";border:2px solid var(--accent);opacity:.35;border-radius:50%;animation:1.6s ease-out infinite pulse;position:absolute;inset:-18px}@keyframes pulse{0%{opacity:.5;transform:scale(.9)}to{opacity:0;transform:scale(1.25)}}.mic-hint{color:var(--text-2);text-align:center;margin-top:24px;font-size:.95rem}.ai-status{min-height:1.4em;color:var(--accent);text-align:center;margin-top:12px;font-size:.95rem}.reminders-section{border-top:1px solid var(--surface-2);padding:20px}.section-title{color:var(--text-2);margin:0 0 14px;font-size:1rem;font-weight:600}.reminder-list{flex-direction:column;gap:10px;display:flex}.reminder-item{background:var(--surface);border-radius:14px;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.reminder-info{flex:1;min-width:0}.reminder-text{text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:.95rem;overflow:hidden}.reminder-meta{color:var(--text-2);font-size:.8rem}.status{text-transform:uppercase;border-radius:99px;padding:4px 10px;font-size:.75rem;font-weight:600}.status-pending{color:#fc0;background:#ffcc0026}.status-sent{color:var(--accent);background:#34c75926}.status-failed{color:var(--danger);background:#ff453a26}.empty-state{text-align:center;color:var(--text-2);padding:24px 0;font-size:.9rem}.telegram-onboarding{background:var(--surface);border-radius:var(--radius);margin:auto 16px 16px;padding:20px}.telegram-onboarding h3{margin:0 0 8px;font-size:1rem}.telegram-onboarding p{color:var(--text-2);margin:0 0 14px;font-size:.9rem;line-height:1.5}.hidden{display:none!important}
