.shell{min-height:100dvh;max-width:720px;margin:0 auto;padding:0 1rem calc(var(--nav-h) + var(--safe-bottom) + 1rem);position:relative}.shell-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0 .75rem;backdrop-filter:blur(14px);background:linear-gradient(180deg,rgba(232,237,242,.92),rgba(232,237,242,.65) 70%,transparent)}.shell-brand{font-family:var(--font-display);font-weight:800;font-size:1.55rem;letter-spacing:-.06em}.shell-top-actions{display:flex;align-items:center;gap:.75rem}.shell-user{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;color:var(--muted)}.shell-logout{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.4rem .7rem;border-radius:var(--radius-pill);background:#0b0d100f}.shell-main{padding-top:.5rem}.shell-nav{position:fixed;left:50%;bottom:calc(12px + var(--safe-bottom));transform:translate(-50%);width:min(680px,calc(100% - 1.25rem));display:grid;grid-template-columns:repeat(5,1fr);gap:.15rem;padding:.45rem;border-radius:22px;background:#0b0d10eb;color:#ffffff8c;box-shadow:0 20px 50px #0b0d1059;z-index:40}.shell-tab{display:grid;place-items:center;gap:.15rem;padding:.55rem .2rem;border-radius:16px;font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;transition:background .2s ease,color .2s ease,transform .2s var(--ease-out)}.shell-tab-icon{font-size:1rem;line-height:1}.shell-tab.is-active{background:var(--accent);color:var(--accent-ink);transform:translateY(-2px)}.page-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:.5rem 0 1.25rem}.page-head h1{font-size:clamp(1.8rem,5vw,2.4rem)}.page-head p{color:var(--muted);margin-top:.35rem;max-width:36ch}.composer{background:#ffffffb3;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:1rem;margin-bottom:1.25rem;box-shadow:var(--shadow-soft)}.composer textarea{width:100%;border:none;background:transparent;resize:none;min-height:88px;outline:none;font-size:1.05rem}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.5rem}.stack{display:grid;gap:.9rem}.post-card{background:#ffffff9e;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:1.1rem 1.15rem .9rem;transition:transform .25s var(--ease-out),border-color .2s ease}.post-card:hover{transform:translateY(-2px);border-color:var(--line-strong)}.post-meta{display:flex;justify-content:space-between;gap:.75rem;color:var(--muted);font-size:.85rem;margin-bottom:.65rem}.post-body{white-space:pre-wrap;font-size:1.05rem;line-height:1.45;letter-spacing:-.01em}.post-actions{display:flex;gap:.5rem;margin-top:.9rem;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border-radius:var(--radius-pill);background:#0b0d100d;font-size:.85rem;font-weight:600}.chip.is-on{background:var(--accent)}.panel-night{background:var(--night);color:#fff;border-radius:var(--radius-lg);padding:1.25rem;position:relative;overflow:hidden}.panel-night:before{content:"";position:absolute;inset:auto -20% -40% 40%;height:180px;background:radial-gradient(circle,rgba(214,255,63,.35),transparent 65%);pointer-events:none}.panel-night>*{position:relative}@media (min-width: 900px){.shell{max-width:780px;padding-left:1.5rem;padding-right:1.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius-pill);font-weight:700;letter-spacing:-.01em;transition:transform .25s var(--ease-out),background .2s ease,box-shadow .2s ease,opacity .2s ease;white-space:nowrap}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:not(:disabled):active{transform:translateY(1px) scale(.98)}.btn-md{min-height:44px;padding:.7rem 1.2rem}.btn-lg{min-height:54px;padding:.9rem 1.5rem;font-size:1.05rem}.btn-sm{min-height:36px;padding:.45rem .9rem;font-size:.9rem}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 30px #d6ff3f59}.btn-night{background:var(--night);color:#fff}.btn-ghost{background:transparent;border:1.5px solid var(--line-strong)}.btn-soft{background:#0b0d100f}.btn-danger{background:var(--danger);color:#fff}.field{display:grid;gap:.45rem;width:100%}.field-label{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.field-input{width:100%;border:1.5px solid var(--line);background:#ffffffb8;border-radius:var(--radius);padding:.85rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.field-input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 4px #d6ff3f59}.field-input.is-error{border-color:var(--danger)}.field-area{min-height:140px;resize:vertical}.field-hint,.field-error{font-size:.85rem}.field-hint{color:var(--muted)}.field-error{color:var(--danger)}.empty{text-align:center;padding:2.5rem 1.25rem;border:1.5px dashed var(--line-strong);border-radius:var(--radius-lg);background:#ffffff59}.empty-mark{width:48px;height:48px;margin:0 auto 1rem;border-radius:14px;background:linear-gradient(135deg,var(--accent),transparent 60%),var(--night);animation:pulse-soft 2.4s ease-in-out infinite}.empty h3{font-size:1.4rem;margin-bottom:.4rem}.empty p{color:var(--muted);margin-bottom:1.2rem}.spinner-wrap{display:grid;place-items:center;padding:2.5rem}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--line-strong);border-top-color:var(--ink);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-radius:var(--radius);background:#ff3b5c1a;color:#a01432;margin-bottom:1rem}.text-link{font-weight:700;text-decoration:underline;text-underline-offset:3px}.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:1.5rem 1rem 2rem;position:relative}.auth-brand{position:absolute;top:1.25rem;left:1.25rem;font-family:var(--font-display);font-weight:800;font-size:1.5rem;letter-spacing:-.06em}.auth-card{width:min(440px,100%);display:grid;gap:.9rem;padding:1.6rem 1.35rem 1.4rem;border-radius:var(--radius-lg);background:#ffffffb8;border:1.5px solid var(--line);box-shadow:var(--shadow-soft)}.auth-card h1{font-size:2rem}.auth-sub{color:var(--muted);margin-top:-.35rem;margin-bottom:.25rem}.auth-error,.auth-info{padding:.75rem .9rem;border-radius:var(--radius-sm);font-size:.92rem}.auth-error{background:#ff3b5c1f;color:#a01432}.auth-info{background:#d6ff3f59;color:var(--ink)}.auth-links{display:flex;justify-content:space-between;gap:1rem;font-size:.92rem;font-weight:600;color:var(--ink-soft)}.auth-back{justify-self:start;font-size:.9rem}.land{min-height:100dvh}.land-hero{position:relative;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden;color:#f4f7fa;background:var(--night)}.land-hero-media{position:absolute;inset:0;pointer-events:none}.land-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 30%,#000 20%,transparent 75%);animation:fade-in 1.2s var(--ease-out)}.land-orb{position:absolute;border-radius:50%;filter:blur(40px)}.land-orb-a{width:min(70vw,520px);height:min(70vw,520px);top:-8%;left:-10%;background:#d6ff3f47;animation:pulse-soft 5s ease-in-out infinite}.land-orb-b{width:min(55vw,420px);height:min(55vw,420px);right:-8%;bottom:10%;background:#2f6bff47;animation:pulse-soft 6.5s ease-in-out infinite reverse}.land-noise{position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.land-nav{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:1.25rem clamp(1.1rem,4vw,2.5rem)}.land-logo{font-family:var(--font-display);font-weight:800;font-size:1.4rem;letter-spacing:-.06em}.land-nav-actions{display:flex;align-items:center;gap:.85rem}.land-link{font-weight:600;opacity:.85}.land-hero-copy{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;padding:1rem clamp(1.1rem,5vw,3rem) 2rem;max-width:920px}.land-brand{font-size:clamp(4.5rem,18vw,9.5rem);line-height:.85;letter-spacing:-.08em;margin-bottom:1rem}.land-tag{font-size:clamp(1.05rem,2.6vw,1.35rem);max-width:34ch;color:#f4f7fac7;margin-bottom:1.75rem}.land-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem}.land-secondary{font-weight:600;color:#f4f7fab3;text-decoration:underline;text-underline-offset:4px}.land-ticker{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.12);overflow:hidden;padding:.9rem 0;background:#00000040}.land-ticker-track{display:flex;width:max-content;gap:2.5rem;animation:marquee 28s linear infinite;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.land-section{padding:clamp(3rem,8vw,5.5rem) clamp(1.1rem,5vw,3rem);max-width:720px}.land-section h2{font-size:clamp(2rem,5vw,3rem);margin-bottom:.85rem}.land-section p{font-size:1.15rem;color:var(--ink-soft)}.land-features{display:grid;gap:1rem;padding:0 clamp(1.1rem,5vw,3rem) 4rem;max-width:1100px}@media (min-width: 800px){.land-features{grid-template-columns:repeat(3,1fr)}}.land-features article{padding:1.4rem 1.3rem;border-radius:var(--radius-lg);background:#ffffff8c;border:1.5px solid var(--line)}.land-features span{display:inline-block;font-family:var(--font-display);font-weight:800;color:var(--signal);margin-bottom:.7rem}.land-features h3{font-size:1.35rem;margin-bottom:.45rem}.land-features p{color:var(--muted)}.land-foot{padding:2rem clamp(1.1rem,5vw,3rem) 3rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:baseline;justify-content:space-between}.land-foot p{color:var(--muted)}:root{--bg: #e8edf2;--bg-elevated: #f4f7fa;--ink: #0b0d10;--ink-soft: #3a424e;--muted: #6b7583;--line: rgba(11, 13, 16, .1);--line-strong: rgba(11, 13, 16, .22);--accent: #d6ff3f;--accent-ink: #0b0d10;--signal: #2f6bff;--danger: #ff3b5c;--ok: #1dbf73;--night: #0b0d10;--night-elevated: #161a21;--night-soft: #9aa3b2;--radius-sm: 10px;--radius: 16px;--radius-lg: 28px;--radius-pill: 999px;--font-display: "Syne", system-ui, sans-serif;--font-body: "Manrope", system-ui, sans-serif;--shadow-soft: 0 18px 50px rgba(11, 13, 16, .08);--nav-h: 72px;--safe-bottom: env(safe-area-inset-bottom, 0px);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,rgba(214,255,63,.22),transparent 55%),radial-gradient(900px 500px at 100% 0%,rgba(47,107,255,.12),transparent 50%),linear-gradient(180deg,#f7f9fb 0%,var(--bg) 40%,#dfe6ee 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased}#root{min-height:100dvh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin:0}p{margin:0}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pulse-soft{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-rise{animation:rise-in .7s var(--ease-out) both}.animate-rise-delay{animation:rise-in .8s var(--ease-out) .12s both}.animate-fade{animation:fade-in .5s var(--ease-out) both}
