@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Merriweather:wght@300;400;700&display=swap");*{margin:0;padding:0;box-sizing:border-box}body{background:#ffffff;color:#242424;font-family:Inter,sans-serif}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:100;height:72px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e6e6e6;display:flex;justify-content:space-between;align-items:center;padding:0 60px}.logo{font-size:28px;font-weight:700;letter-spacing:-1px;color:#242424}.create-btn,.logo{text-decoration:none}.create-btn{background:#1a8917;color:white;padding:10px 20px;border-radius:999px;font-size:14px;transition:.2s}.create-btn:hover{background:#156f13}.hero{border-bottom:1px solid #f0f0f0;padding:100px 20px 80px;text-align:center}.hero h1{font-size:78px;font-family:Merriweather,serif;font-weight:300;margin-bottom:20px;letter-spacing:-2px}.hero p{color:#6b6b6b;font-size:22px}.feed-container{max-width:760px;margin:auto;padding:60px 20px}.post-card{text-decoration:none;color:inherit;display:block;padding:40px 0;border-bottom:1px solid #f0f0f0;transition:.2s}.post-card:hover{transform:translateX(6px)}.post-title{font-size:34px;font-family:Merriweather,serif;font-weight:700;line-height:1.25;margin-bottom:16px}.post-preview{font-size:19px;color:#6b6b6b;line-height:1.8}.meta{margin-top:22px;color:#8a8a8a;font-size:14px}.empty{text-align:center;padding:120px 20px}.empty h2{font-size:36px;margin-bottom:16px}.empty p{color:#6b6b6b;margin-bottom:30px}.empty a{background:#1a8917;color:white;text-decoration:none;padding:14px 24px;border-radius:999px}@media (max-width:768px){.navbar{padding:0 20px}.hero h1{font-size:48px}.hero p{font-size:18px}.post-title{font-size:28px}.post-preview{font-size:18px}}.login-wrapper{position:relative;min-height:100vh;display:flex;justify-content:center;align-items:center;background:#0f172a;overflow:hidden;font-family:Inter,sans-serif;padding:20px}.glow-bubble{position:absolute;border-radius:50%;filter:blur(100px);opacity:.15;z-index:1;pointer-events:none;animation:floatAmbient 12s ease-in-out infinite alternate}.glow-bubble-1{width:400px;height:400px;background:linear-gradient(135deg,#06b6d4,#3b82f6);top:-10%;left:-5%}.glow-bubble-2{width:500px;height:500px;background:linear-gradient(135deg,#a855f7,#ec4899);bottom:-10%;right:-5%;animation-delay:-6s}@keyframes floatAmbient{0%{transform:translate(0) scale(1)}to{transform:translate(30px,30px) scale(1.1)}}.login-card{position:relative;z-index:10;width:100%;max-width:440px;background:rgba(30,41,59,.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:48px 40px;box-shadow:0 25px 50px -12px rgba(0,0,0,.5);animation:cardFadeIn .6s cubic-bezier(.16,1,.3,1)}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:36px}.login-logo{display:inline-block;font-size:26px;font-weight:700;color:#f8fafc;text-decoration:none;letter-spacing:-1px;margin-bottom:16px;transition:opacity .2s}.login-logo:hover{opacity:.85}.login-title{font-family:Merriweather,serif;font-size:28px;font-weight:400;color:#f8fafc;margin-bottom:8px;letter-spacing:-.5px}.login-subtitle{font-size:14px;color:#94a3b8;line-height:1.5}.login-form{gap:24px}.input-group,.login-form{display:flex;flex-direction:column}.input-group{gap:8px}.input-group label{font-size:13px;font-weight:500;color:#94a3b8;letter-spacing:.5px;text-transform:uppercase}.login-input{width:100%;background:rgba(15,23,42,.6);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 18px;font-size:15px;color:#f8fafc;outline:none;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1)}.login-input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px rgba(59,130,246,.15);background:rgba(15,23,42,.8)}.login-input::placeholder{color:#475569}.login-submit-btn{width:100%;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#ffffff;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px rgba(37,99,235,.2);transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center}.login-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px rgba(37,99,235,.35);background:linear-gradient(135deg,#2563eb,#3b82f6)}.login-submit-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 8px rgba(37,99,235,.2)}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{display:inline-block;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.login-error{display:flex;align-items:flex-start;gap:12px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:12px;padding:12px 16px;color:#fca5a5;font-size:14px;line-height:1.4;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.login-footer{text-align:center;margin-top:32px}.login-back-link{font-size:13px;color:#64748b;text-decoration:none;transition:color .2s}.login-back-link:hover{color:#94a3b8}.logout-btn{background:none;border:1px solid #fee2e2;color:#dc2626;cursor:pointer;font-size:13px;font-weight:500;padding:8px 18px;border-radius:999px;transition:all .2s cubic-bezier(.4,0,.2,1)}.logout-btn:hover{background:#fef2f2;border-color:#fca5a5}.login-link{color:#6b6b6b;text-decoration:none;font-size:13px;font-weight:500;padding:8px 18px;border-radius:999px;border:1px solid #e6e6e6;transition:all .2s cubic-bezier(.4,0,.2,1)}.login-link:hover{color:#242424;background:#f9f9f9;border-color:#ccc}.editor-workspace,.medium-render{font-family:Merriweather,serif;font-size:21px;line-height:1.9;color:#242424;font-weight:300}.editor-workspace{outline:none;min-height:60vh;position:relative}.editor-workspace p,.medium-render p{margin-bottom:24px;letter-spacing:-.003em}.editor-workspace h2,.medium-render h2{font-size:34px;font-weight:700;line-height:1.25;color:#242424;margin-top:44px;margin-bottom:16px;font-family:Merriweather,serif;letter-spacing:-.015em}.editor-workspace h3,.medium-render h3{font-size:26px;font-weight:600;line-height:1.3;color:#242424;margin-top:36px;margin-bottom:12px;font-family:Merriweather,serif;letter-spacing:-.012em}.editor-workspace blockquote,.medium-render blockquote{font-style:italic;font-size:24px;line-height:1.6;color:#6b6b6b;border-left:3px solid #242424;padding-left:24px;margin:36px 0;font-weight:300}.editor-workspace ol,.editor-workspace ul,.medium-render ol,.medium-render ul{margin:24px 0 24px 32px;line-height:1.8}.editor-workspace li,.medium-render li{margin-bottom:12px}.editor-workspace pre,.medium-render pre{background:#f9f9f9;border:1px solid #e6e6e6;padding:20px;border-radius:8px;font-family:Courier New,Courier,monospace;font-size:16px;line-height:1.6;overflow-x:auto;margin:32px 0;color:#242424}.editor-workspace code,.medium-render code{font-family:Courier New,Courier,monospace;background:#f2f2f2;padding:3px 6px;border-radius:4px;font-size:85%}.editor-workspace pre code,.medium-render pre code{background:transparent;padding:0;border-radius:0;font-size:inherit}.editor-workspace a,.medium-render a{color:#1a8917;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.editor-workspace hr,.medium-render hr{border:none;border-top:1px dashed #cccccc;margin:48px 0;height:0}.editor-workspace [data-placeholder]:empty:before,.editor-workspace p:empty:before{content:attr(data-placeholder);color:#b3b3b3;pointer-events:none;display:block}.editor-toolbar{position:absolute;background:#1e293b;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:4px;display:flex;gap:4px;box-shadow:0 10px 25px -5px rgba(0,0,0,.3),0 8px 10px -6px rgba(0,0,0,.3);z-index:1000;pointer-events:auto;align-items:center;transform:translate(-50%,-100%) translateY(-10px);animation:toolbarFadeIn .15s cubic-bezier(.16,1,.3,1);will-change:transform,opacity}.editor-toolbar:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);border-color:#1e293b transparent;border-style:solid;border-width:6px 6px 0;display:block;width:0}@keyframes toolbarFadeIn{0%{opacity:0;transform:translate(-50%,-100%) translateY(0)}to{opacity:1;transform:translate(-50%,-100%) translateY(-10px)}}.editor-toolbar-btn{background:transparent;border:none;outline:none;color:#cbd5e1;width:36px;height:36px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;transition:all .15s ease}.editor-toolbar-btn:hover{background:rgba(255,255,255,.1);color:#ffffff}.editor-toolbar-btn.active{color:#10b981;background:rgba(255,255,255,.08)}.editor-toolbar-divider{width:1px;height:20px;background:rgba(255,255,255,.15);margin:0 4px}.gutter-container{position:absolute;left:-52px;width:40px;height:40px;z-index:500;transition:top .2s cubic-bezier(.16,1,.3,1);will-change:top}.gutter-container,.gutter-insert-btn{display:flex;align-items:center;justify-content:center}.gutter-insert-btn{width:32px;height:32px;border-radius:50%;border:1px solid #b3b3b3;color:#6b6b6b;cursor:pointer;background:#ffffff;transition:all .2s cubic-bezier(.16,1,.3,1);font-size:18px;box-shadow:0 2px 5px rgba(0,0,0,.05)}.gutter-insert-btn.open,.gutter-insert-btn:hover{border-color:#242424;color:#242424}.gutter-insert-btn.open{transform:rotate(45deg)}.gutter-menu{position:absolute;left:44px;display:flex;gap:8px;background:#ffffff;border:1px solid #e6e6e6;border-radius:999px;padding:4px 8px;box-shadow:0 4px 12px rgba(0,0,0,.08);animation:menuSlideIn .2s cubic-bezier(.16,1,.3,1);white-space:nowrap}@keyframes menuSlideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.gutter-menu-btn{width:28px;height:28px;border-radius:50%;border:1px solid #e6e6e6;background:#f9f9f9;color:#6b6b6b;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:all .15s ease}.gutter-menu-btn:hover{border-color:#242424;background:#ffffff;color:#242424;transform:scale(1.1)}