*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{font-family:system-ui,-apple-system,sans-serif;background:#111827;color:#f9fafb}.app{display:flex;flex-direction:column;height:100dvh;max-width:640px;margin:0 auto}.header{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 12px) 16px 12px;font-weight:700;font-size:1.1rem;border-bottom:1px solid #1f2937}.header-actions{display:flex;gap:8px;align-items:center}.bell,.effort{font-size:.8rem;font-weight:600;padding:6px 10px;border-radius:14px;border:1px solid #374151;background:#1f2937;color:#f9fafb}.effort-xhigh{border-color:#7c3aed;background:#2e1065}.messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.bubble{max-width:85%;padding:10px 14px;border-radius:16px;line-height:1.4;white-space:pre-wrap}.bubble.user{align-self:flex-end;background:#2563eb;border-bottom-right-radius:4px}.bubble.assistant{align-self:flex-start;background:#1f2937;border-bottom-left-radius:4px}.bubble.pending{color:#9ca3af}.bubble.system{align-self:center;background:transparent;color:#9ca3af;font-size:.85rem;padding:2px 8px}.bubble.system a{color:#60a5fa}.rest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#0b1120f2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px}.rest-label{text-transform:uppercase;letter-spacing:.15em;font-size:.85rem;color:#9ca3af}.rest-clock{font-size:4.5rem;font-weight:800;font-variant-numeric:tabular-nums;color:#f9fafb}.rest-hint{max-width:22rem;color:#9ca3af;line-height:1.4}.rest-primary{margin-top:8px;padding:14px 32px;border-radius:24px;border:none;background:#2563eb;color:#fff;font-size:1.1rem;font-weight:700}.rest-controls{display:flex;gap:10px;align-items:center;margin-top:8px}.distraction-select{padding:9px 12px;border-radius:18px;border:1px solid #374151;background:#1f2937;color:#f9fafb;font-size:.95rem}.rest-skip{padding:9px 20px;border-radius:18px;border:1px solid #374151;background:transparent;color:#f9fafb;font-size:.95rem}.landing{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#9ca3af;gap:8px}.landing h1{color:#f9fafb;font-size:1.4rem}.invite-banner{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 12px;background:#1f2937;border-bottom:1px solid #374151;font-size:.8rem;color:#9ca3af}.invite-banner input{flex:1;min-width:140px;padding:6px 8px;border-radius:8px;border:1px solid #374151;background:#111827;color:#f9fafb;font-size:.8rem}.invite-banner button{padding:6px 10px;border-radius:8px;border:1px solid #374151;background:#2563eb;color:#fff;font-size:.8rem}.rest-overlay.alarm{background:#7f1d1df2;animation:alarm-pulse .9s ease-in-out infinite}@keyframes alarm-pulse{0%,to{background:#7f1d1df2}50%{background:#b91c1cf2}}.composer{display:flex;gap:8px;padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);border-top:1px solid #1f2937}.composer input{flex:1;padding:10px 14px;border-radius:20px;border:1px solid #374151;background:#1f2937;color:inherit;font-size:1rem;outline:none}.composer input:focus{border-color:#2563eb}.composer button{padding:10px 18px;border-radius:20px;border:none;background:#2563eb;color:#fff;font-size:1rem;font-weight:600}.composer button:disabled{opacity:.4}
