:root{--bg: #0c0912;--bg-2: #120d1c;--surface: rgba(255, 255, 255, .045);--surface-2: rgba(255, 255, 255, .07);--surface-solid: #19131f;--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--lilac: #c77dff;--rose: #ff8fab;--peach: #ffb38a;--grad: linear-gradient(120deg, #c77dff 0%, #ff8fab 55%, #ffb38a 100%);--grad-soft: linear-gradient(120deg, rgba(199,125,255,.18), rgba(255,143,171,.18));--glow: 0 0 60px rgba(199, 125, 255, .25);--text: #f6f1fa;--text-muted: #b3a7c2;--text-dim: #7d7390;--green: #6ee7b7;--amber: #fcd34d;--red: #fb7185;--radius: 18px;--radius-sm: 12px;--radius-lg: 26px;--shadow: 0 24px 60px -20px rgba(0, 0, 0, .6);--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(700px circle at 12% -5%,rgba(199,125,255,.22),transparent 55%),radial-gradient(620px circle at 95% 8%,rgba(255,143,171,.16),transparent 50%),radial-gradient(800px circle at 70% 110%,rgba(255,179,138,.1),transparent 55%);pointer-events:none;z-index:0}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.1}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}::selection{background:#c77dff59}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#c77dff40;border-radius:20px}::-webkit-scrollbar-track{background:transparent}.gradient-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:999px;border:1px solid transparent;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease,background .2s ease;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--grad);color:#1a0f1f;box-shadow:0 10px 30px -10px #ff8fab99}.btn-primary:hover:not(:disabled){box-shadow:0 16px 40px -10px #ff8fabcc;transform:translateY(-1px)}.btn-ghost{background:var(--surface-2);border-color:var(--border);color:var(--text)}.btn-ghost:hover:not(:disabled){background:var(--surface);border-color:var(--border-strong)}.btn-sm{padding:8px 16px;font-size:13px}.input,.textarea,.select{width:100%;background:#00000040;border:1px solid var(--border);border-radius:var(--radius-sm);padding:13px 16px;color:var(--text);transition:border .2s ease,box-shadow .2s ease;outline:none}.input::placeholder,.textarea::placeholder{color:var(--text-dim)}.input:focus,.textarea:focus,.select:focus{border-color:var(--lilac);box-shadow:0 0 0 3px #c77dff2e}.textarea{resize:vertical;min-height:96px;line-height:1.55}.label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:8px;letter-spacing:.01em}.field{margin-bottom:20px}.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted)}.chip{padding:9px 16px;border-radius:999px;cursor:pointer;font-size:14px;font-weight:500;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);transition:all .15s ease}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip.active{background:var(--grad-soft);border-color:var(--lilac);color:var(--text)}.divider{height:1px;background:var(--border);border:none;margin:24px 0}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.fade-up{animation:fadeUp .5s cubic-bezier(.2,.8,.2,1) both}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff1f,#ffffff0a);background-size:800px 100%;animation:shimmer 1.4s infinite linear;border-radius:8px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:18px;height:18px;border:2px solid rgba(26,15,31,.3);border-top-color:#1a0f1f;border-radius:50%;animation:spin .7s linear infinite}.app-shell{position:relative;z-index:1;min-height:100%}.auth-grid{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}.login-hero{padding:56px 64px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--border);background:linear-gradient(160deg,rgba(199,125,255,.06),transparent 60%)}@media (max-width: 900px){.auth-grid{grid-template-columns:1fr}.login-hero{display:none}}.layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{padding:22px 16px;border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;background:linear-gradient(180deg,rgba(199,125,255,.05),transparent 40%)}.main{padding:40px 48px;max-width:1100px;width:100%}.navitem{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;color:var(--text-muted);font-weight:500;transition:all .15s ease;cursor:pointer}.navitem:hover{background:var(--surface);color:var(--text)}.navitem.active{background:var(--grad-soft);color:var(--text);border:1px solid var(--border-strong)}.page-head{margin-bottom:30px}.page-head h1{font-size:34px;margin-bottom:6px}.page-head p{color:var(--text-muted)}@media (max-width: 820px){.layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto;flex-direction:row;align-items:center;gap:12px;overflow-x:auto}.sidebar>div:first-child{padding:0 8px 0 0}.sidebar nav{flex-direction:row}.sidebar .card{display:none}.main{padding:24px}}.grid-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px}.post-card{padding:22px;display:flex;flex-direction:column;gap:12px}.post-card .plat{display:flex;align-items:center;justify-content:space-between}.post-card .hook{font-family:var(--font-display);font-size:17px;line-height:1.3}.post-card .body{font-size:14px;color:var(--text-muted);white-space:pre-wrap;line-height:1.55;max-height:220px;overflow:auto}.post-card .tags{font-size:13px;color:var(--lilac)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
