:root{--color-text: var(--brand-deep-gray);--color-bg: #ffffff;--color-card-bg: #ffffff;--color-border: #e5e7eb;--brand-primary-blue: #18264E;--brand-primary-coral: #F15F5E;--brand-soft-blue: #6B7BA8;--brand-light-coral: #FFA69E;--brand-muted-gray: #d8d9df;--brand-accent-teal: #4CAFB6;--brand-success: #10b981;--brand-deep-gray: #111827;--brand-medium-gray: #4b5563;--brand-light-gray: #9ca3af;--brand-off-white: #f3f4f6;--brand-white: #ffffff;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme: dark){:root{--color-text: #f5f5f5;--color-bg: #1c1c1e;--color-card-bg: #2c2c2e;--color-border: #3a3a3c}}a{font-weight:500;color:var(--color-text);text-decoration:underline}a:hover{opacity:.8}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:transparent;cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--brand-light-coral)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:var(--brand-deep-gray);background-color:#fff}a:hover{opacity:.8}button{background-color:#f9f9f9}}.button-primary{background-color:var(--brand-primary-blue);color:#fff}.button-primary:hover{background-color:#0f1a3a}.button-danger{background-color:#ef4444;color:#fff}.button-danger:hover{background-color:#dc2626}.button-link{background:none;border:none;color:var(--color-text);padding:0;font-weight:600;cursor:pointer}.button-toggle{padding:.5rem 1rem;font-size:.875rem;border-radius:9999px;border:1px solid #ccc;background-color:#fff;color:var(--brand-primary-blue);font-weight:500;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}.button-toggle.active{background-color:var(--brand-primary-blue);color:#fff;border-color:var(--brand-primary-blue)}@keyframes reactionPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes reactionCountIncrement{0%{transform:scale(1);color:inherit}50%{transform:scale(1.3);color:#1976d2}to{transform:scale(1);color:inherit}}@keyframes emojiPickerSlideIn{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes replyPreviewSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseButton{0%{box-shadow:0 0 #1976d266}70%{box-shadow:0 0 0 6px #1976d200}to{box-shadow:0 0 #1976d200}}@keyframes heartBeat{0%{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}.reaction-button{transition:all .2s cubic-bezier(.4,0,.2,1)}.reaction-button:hover{animation:reactionPop .3s ease-in-out}.emoji-picker-container{animation:emojiPickerSlideIn .25s ease-out}.reply-preview{animation:replyPreviewSlide .2s ease-out}.pulse-on-click{animation:pulseButton .6s ease-out}.heart-liked{animation:heartBeat .8s ease-in-out}.app-container{display:flex;flex-direction:column;min-height:100vh;max-width:800px;margin:0 auto;padding:0 1rem;box-sizing:border-box}@media (min-width: 1024px){.app-container{padding:0 2rem}}.page-content{padding:1.5rem 0}.post-content-html p{margin:.5em 0;line-height:1.6}.post-content-html strong,.post-content-html b{font-weight:600}.post-content-html em,.post-content-html i{font-style:italic}.post-content-html ul,.post-content-html ol{padding-left:1.5rem;margin:.5em 0}.post-content-html li{margin-bottom:.25em}.post-content-html a{color:var(--brand-primary-coral);text-decoration:underline}.post-content-html a:hover{color:var(--brand-light-coral)}.post-content-html blockquote{border-left:3px solid #e5e7eb;margin-left:0;margin-right:0;padding-left:1rem;color:#6b7280;font-style:italic}.post-content-html h1,.post-content-html h2,.post-content-html h3{font-weight:600;line-height:1.3;margin-top:1em;margin-bottom:.5em}.post-content-html h1{font-size:1.5rem}.post-content-html h2{font-size:1.25rem}.post-content-html h3{font-size:1.125rem}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #fbbf24b3}50%{transform:scale(1.005);box-shadow:0 0 20px 10px #fbbf244d}to{transform:scale(1);box-shadow:0 0 #fbbf2400}}
