:root{--pink: #f0288c;--cyan: #00eef5;--lime: #d4ff1e;--green: #24e88e;--violet: #9b7bff;--orange: #ff9a3c;--font-display: "Baloo 2", "Plus Jakarta Sans", system-ui, sans-serif;--font-ui: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--r-xs: 8px;--r-sm: 12px;--r-md: 16px;--r-lg: 22px;--r-xl: 28px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--sidebar-w: 264px;--topbar-h: 68px;color-scheme:dark}:root,:root[data-theme=dark]{--bg: #0a1c3a;--bg-deep: #071630;--surface: #0f2547;--surface-2: #142e57;--surface-3: #1a3866;--line: rgba(160, 190, 255, .1);--line-strong: rgba(160, 190, 255, .18);--text: #eef3ff;--text-2: #a9b8d8;--text-3: #7486ab;--pink-ink: #ff5eaa;--cyan-ink: #3df4f9;--lime-ink: #dcff4a;--green-ink: #4ff0a6;--danger: #ff5d73;--warn: #ffc23d;--focus: #3df4f9;--shadow-1: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 8px 24px -12px rgba(0, 0, 0, .5);--shadow-2: 0 24px 60px -20px rgba(0, 0, 0, .6);--overlay: rgba(4, 12, 28, .66);--on-accent: #071630;color-scheme:dark}:root[data-theme=light]{--bg: #f3f5fb;--bg-deep: #e9edf7;--surface: #ffffff;--surface-2: #f4f6fc;--surface-3: #e9eef9;--line: rgba(11, 31, 63, .08);--line-strong: rgba(11, 31, 63, .16);--text: #0b1f3f;--text-2: #43547a;--text-3: #74829f;--pink-ink: #d1166f;--cyan-ink: #00879a;--lime-ink: #5d7500;--green-ink: #0a8f55;--danger: #d92d48;--warn: #b77700;--focus: #00879a;--shadow-1: 0 1px 2px rgba(11, 31, 63, .05), 0 8px 24px -14px rgba(11, 31, 63, .18);--shadow-2: 0 24px 60px -20px rgba(11, 31, 63, .3);--overlay: rgba(11, 31, 63, .4);--on-accent: #0b1f3f;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:color-mix(in srgb,var(--pink) 45%,transparent)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em}.display{font-family:var(--font-display);font-weight:800;letter-spacing:-.015em;line-height:1.02}.h1{font-family:var(--font-display);font-weight:800;font-size:clamp(30px,4vw,44px);line-height:1.02;letter-spacing:-.02em}.h2{font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1.1}.h3{font-size:16px;font-weight:700}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:13px}.tiny{font-size:12px}.mono{font-variant-numeric:tabular-nums}.ink-pink{color:var(--pink-ink)}.ink-cyan{color:var(--cyan-ink)}.ink-lime{color:var(--lime-ink)}.ink-green{color:var(--green-ink)}html.no-motion *,html.no-motion *:before,html.no-motion *:after{transition:none!important;animation:none!important}@media (prefers-reduced-motion: reduce){html:not(.force-motion) *,html:not(.force-motion) *:before,html:not(.force-motion) *:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100%}.main{min-width:0;display:flex;flex-direction:column}.page{width:100%;max-width:1240px;margin:0 auto;padding:8px 40px 96px}.page-narrow{max-width:880px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:28px 0 26px;flex-wrap:wrap}.page-head .lead{margin-top:8px;color:var(--text-2);max-width:560px}.page-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sidebar{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:6px;padding:20px 14px 14px;background:var(--bg-deep);border-right:1px solid var(--line);overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:4px 10px 18px}.brand-word{font-family:var(--font-display);font-weight:800;font-size:26px;color:var(--pink);letter-spacing:-.02em;line-height:1;transform:translateY(2px)}.nav-section{padding:14px 12px 6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.nav-link{position:relative;display:flex;align-items:center;gap:12px;height:42px;padding:0 12px;border-radius:12px;color:var(--text-2);font-weight:600;font-size:14.5px;transition:color .2s,background .2s}.nav-link:hover{color:var(--text);background:color-mix(in srgb,var(--surface-2) 60%,transparent)}.nav-link.active{color:var(--text)}.nav-link svg{flex:none;width:19px;height:19px;stroke-width:2;position:relative;z-index:1}.nav-link span{position:relative;z-index:1}.nav-link .nav-pill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.nav-link .nav-dot{position:absolute;left:-14px;top:11px;bottom:11px;width:4px;border-radius:0 4px 4px 0}.nav-link .count{margin-left:auto;font-size:12px;font-weight:700;color:var(--text-3);position:relative;z-index:1}.sidebar-foot{margin-top:auto;padding-top:14px;display:flex;flex-direction:column;gap:6px}.me-card{display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;transition:background .2s}.me-card:hover{background:var(--surface)}.me-card .who{min-width:0;flex:1}.me-card .who b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.me-card .who small{color:var(--text-3);font-size:12px}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 40px;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .25s}.topbar.scrolled{border-bottom-color:var(--line)}.search-trigger{flex:1;max-width:460px;height:42px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text-3);font-size:14px;text-align:left;transition:border-color .2s,background .2s}.search-trigger:hover{border-color:var(--line-strong);color:var(--text-2)}.search-trigger kbd{margin-left:auto}kbd{font-family:var(--font-ui);font-size:11px;font-weight:700;padding:3px 7px;border-radius:6px;background:var(--surface-2);border:1px solid var(--line);color:var(--text-3)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.mobile-brand,.mobile-tabs{display:none}@media (max-width: 1080px){:root{--sidebar-w: 84px}.sidebar .nav-link span,.sidebar .nav-section,.sidebar .brand-word,.sidebar .me-card .who,.sidebar .nav-link .count{display:none}.sidebar .nav-link{justify-content:center;padding:0}.sidebar .brand{justify-content:center;padding:4px 0 18px}.sidebar .me-card{justify-content:center}.page{padding:8px 28px 96px}.topbar{padding:0 28px}}@media (max-width: 760px){.shell{grid-template-columns:1fr}.sidebar{display:none}.page{padding:4px 16px calc(110px + env(safe-area-inset-bottom))}.topbar{padding:0 16px;height:60px}.search-trigger{height:40px;width:40px;flex:none;padding:0;justify-content:center;border-radius:12px}.search-trigger .label,.search-trigger kbd{display:none}.mobile-brand{display:flex;align-items:center;gap:8px;margin-right:auto}.mobile-brand .brand-word{font-size:22px}.topbar-right{margin-left:0}.page-head{padding:18px 0}.mobile-tabs{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;position:fixed;z-index:40;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));height:66px;padding:0 6px;border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line-strong);box-shadow:var(--shadow-2)}.mobile-tab{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0;color:var(--text-3);font-size:10.5px;font-weight:700;background:none;border:0}.mobile-tab.active{color:var(--text)}.mobile-tab svg{width:21px;height:21px}.mobile-tab .tab-glow{position:absolute;top:2px;width:34px;height:4px;border-radius:4px}.mobile-add{justify-self:center;width:50px;height:50px;border-radius:17px;border:0;display:grid;place-items:center;background:var(--pink);color:#fff;box-shadow:0 10px 24px -8px color-mix(in srgb,var(--pink) 80%,transparent)}}.drawer{position:fixed;inset:auto 0 0 0;z-index:70;max-height:86dvh;overflow-y:auto;background:var(--surface);border-radius:28px 28px 0 0;padding:10px 16px calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--line-strong)}.drawer-grip{width:44px;height:5px;border-radius:5px;background:var(--line-strong);margin:4px auto 14px}.drawer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.drawer-tile{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:14px;border-radius:18px;background:var(--surface-2);font-weight:700;font-size:13.5px}.drawer-tile svg{width:22px;height:22px}.btn{--btn-bg: var(--surface-2);--btn-fg: var(--text);--btn-line: var(--line);display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);border:1px solid var(--btn-line);font-weight:700;font-size:14px;white-space:nowrap;transition:transform .18s var(--ease-out),background .2s,border-color .2s,box-shadow .25s,opacity .2s;-webkit-user-select:none;user-select:none}.btn:hover{border-color:var(--line-strong)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;pointer-events:none}.btn svg{width:18px;height:18px;flex:none}.btn-primary{--btn-bg: var(--pink);--btn-fg: #fff;--btn-line: transparent;box-shadow:0 10px 26px -12px color-mix(in srgb,var(--pink) 90%,transparent)}.btn-primary:hover{box-shadow:0 14px 30px -10px color-mix(in srgb,var(--pink) 100%,transparent);border-color:transparent;filter:brightness(1.06)}.btn-cyan{--btn-bg: var(--cyan);--btn-fg: var(--on-accent);--btn-line: transparent}.btn-lime{--btn-bg: var(--lime);--btn-fg: #0b1f3f;--btn-line: transparent}.btn-green{--btn-bg: var(--green);--btn-fg: #071630;--btn-line: transparent}.btn-ghost{--btn-bg: transparent;--btn-line: transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-danger{--btn-bg: color-mix(in srgb, var(--danger) 14%, transparent);--btn-fg: var(--danger);--btn-line: transparent}.btn-sm{height:34px;padding:0 13px;font-size:13px}.btn-sm svg{width:16px;height:16px}.btn-lg{height:52px;padding:0 24px;font-size:15.5px}.btn-block{width:100%}.icon-btn{width:40px;height:40px;padding:0;border-radius:12px}.icon-btn.btn-sm{width:34px;height:34px;border-radius:10px}.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.card-pad{padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head .h3{display:flex;align-items:center;gap:9px}.card-head .h3 svg{width:18px;height:18px}.hover-lift{transition:transform .3s var(--ease-out),border-color .25s,box-shadow .3s}.hover-lift:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:var(--shadow-2)}.grid{display:grid;gap:18px}.grid>*{min-width:0}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-auto{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media (max-width: 980px){.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 680px){.cols-2,.cols-3{grid-template-columns:1fr}.grid{gap:12px}.card-pad{padding:18px}}.row{display:flex;align-items:center;gap:10px}.row-wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:10px}.spacer{flex:1}.divider{height:1px;background:var(--line);margin:16px 0;border:0}.badge{--b: var(--text-3);display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;color:var(--b);background:color-mix(in srgb,var(--b) 14%,transparent)}.badge svg{width:13px;height:13px}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.badge.pink{--b: var(--pink-ink)}.badge.cyan{--b: var(--cyan-ink)}.badge.lime{--b: var(--lime-ink)}.badge.green{--b: var(--green-ink)}.badge.danger{--b: var(--danger)}.badge.warn{--b: var(--warn)}.badge.violet{--b: var(--violet)}.badge.solid-lime{background:var(--lime);color:#0b1f3f}.avatar{position:relative;flex:none;display:grid;place-items:center;border-radius:50%;font-weight:800;font-family:var(--font-display);color:#071630;overflow:hidden;-webkit-user-select:none;user-select:none}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-stack{display:flex}.avatar-stack .avatar{box-shadow:0 0 0 3px var(--surface)}.avatar-stack .avatar+.avatar{margin-left:-8px}.field{display:flex;flex-direction:column;gap:7px}.field>label,.label{font-size:13px;font-weight:700;color:var(--text-2)}.hint{font-size:12.5px;color:var(--text-3)}.input,.textarea,.select{width:100%;min-height:46px;padding:11px 14px;border-radius:14px;border:1px solid var(--line-strong);background:var(--bg-deep);color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}:root[data-theme=light] .input,:root[data-theme=light] .textarea,:root[data-theme=light] .select{background:var(--surface)}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.input:focus,.textarea:focus,.select:focus{border-color:var(--cyan-ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--cyan) 18%,transparent)}.textarea{resize:vertical;min-height:96px;line-height:1.55}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%237486ab' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}.input-wrap{position:relative}.input-wrap .input{padding-right:46px}.input-wrap .input-icon{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.input-error{border-color:var(--danger)!important}.form-error{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);font-size:14px;font-weight:600}.form-error svg{flex:none;width:18px;height:18px;margin-top:1px}.form-ok{display:flex;gap:10px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green-ink);font-size:14px;font-weight:600}.seg{display:inline-flex;padding:4px;gap:2px;border-radius:999px;background:var(--surface);border:1px solid var(--line);position:relative;overflow-x:auto;max-width:100%;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{position:relative;height:34px;padding:0 14px;border-radius:999px;border:0;background:none;font-size:13.5px;font-weight:700;color:var(--text-3);display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.seg button svg{width:15px;height:15px;position:relative;z-index:1}.seg button span{position:relative;z-index:1}.seg button.on{color:var(--text)}.seg .seg-pill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--surface-3)}.check{flex:none;width:24px;height:24px;border-radius:8px;border:2px solid var(--line-strong);display:grid;place-items:center;background:transparent;padding:0;transition:border-color .2s,background .25s var(--ease-out),transform .2s var(--ease-spring)}.check:hover{border-color:var(--green-ink)}.check:active{transform:scale(.88)}.check.on{background:var(--green);border-color:var(--green)}.check svg{width:15px;height:15px;color:#071630;stroke-width:3.4}.progress{height:8px;border-radius:8px;background:var(--surface-3);overflow:hidden;position:relative}.progress>div{height:100%;border-radius:8px;background:linear-gradient(90deg,var(--cyan),var(--green) 55%,var(--lime))}.progress.thin{height:5px}.skel{border-radius:12px;background:linear-gradient(100deg,var(--surface-2) 30%,var(--surface-3) 50%,var(--surface-2) 70%);background-size:300% 100%;animation:skel 1.4s ease-in-out infinite}@keyframes skel{0%{background-position:100% 0}to{background-position:-100% 0}}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:40px 20px;color:var(--text-2)}.empty .empty-art{width:84px;height:84px;margin-bottom:6px}.empty b{color:var(--text);font-size:16px}.empty p{margin:0;max-width:380px;font-size:14px}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:12px;padding:11px 10px;margin:0 -10px;border-radius:14px;transition:background .18s;min-width:0}.list-row:hover{background:var(--surface-2)}.list-row .grow{min-width:0;flex:1}.list-row .title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.list-row .meta{font-size:12.5px;color:var(--text-3)}.chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:13px;font-weight:600;color:var(--text-2);transition:all .2s}.chip:hover{color:var(--text);border-color:var(--line-strong)}.chip.on{background:var(--text);color:var(--bg);border-color:var(--text)}.chip svg{width:14px;height:14px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}.modal{width:100%;max-width:560px;max-height:calc(100dvh - 40px);overflow-y:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-2)}.modal-lg{max-width:760px}.modal-head{display:flex;align-items:flex-start;gap:12px;padding:24px 24px 6px}.modal-head .h2{flex:1}.modal-body{padding:14px 24px 8px;display:flex;flex-direction:column;gap:16px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px 24px;flex-wrap:wrap}@media (max-width: 640px){.overlay{align-items:end;padding:0}.modal{max-width:none;border-radius:26px 26px 0 0;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom)}.modal-foot .btn{flex:1}}.toasts{position:fixed;z-index:120;right:22px;bottom:22px;display:flex;flex-direction:column;gap:10px;align-items:flex-end;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;min-height:50px;padding:10px 12px 10px 16px;border-radius:16px;background:var(--text);color:var(--bg);font-weight:600;font-size:14px;box-shadow:var(--shadow-2);max-width:min(420px,calc(100vw - 32px))}.toast .t-ico{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;flex:none}.toast .t-ico svg{width:16px;height:16px}.toast button{background:none;border:0;font-weight:800;color:var(--pink);padding:6px 8px}@media (max-width: 760px){.toasts{left:16px;right:16px;bottom:calc(92px + env(safe-area-inset-bottom));align-items:stretch}}.popover{position:absolute;z-index:60;min-width:220px;padding:6px;border-radius:16px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-2)}.menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:0;background:none;text-align:left;font-weight:600;font-size:14px;color:var(--text)}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2);outline:none}.menu-item svg{width:17px;height:17px;color:var(--text-2);flex:none}.menu-item small{display:block;color:var(--text-3);font-weight:500;font-size:12px}.menu-item.danger{color:var(--danger)}.menu-item.danger svg{color:var(--danger)}.blob{position:absolute;border-radius:50%;filter:blur(0);pointer-events:none}.hero{position:relative;overflow:hidden;isolation:isolate;border-radius:var(--r-xl);padding:30px;background:var(--surface);border:1px solid var(--line)}.hero-deco{position:absolute;z-index:-1;pointer-events:none}.wave-line{position:absolute;pointer-events:none;fill:none;stroke-width:1.5}.connector{display:inline-block;width:46px;height:14px}.prose{font-size:15.5px;line-height:1.7;color:var(--text);word-wrap:break-word}.prose:focus{outline:none}.prose>:first-child{margin-top:0}.prose h1,.prose h2{font-family:var(--font-display);font-size:26px;margin:1.3em 0 .4em;line-height:1.15}.prose h3{font-size:18px;margin:1.2em 0 .4em}.prose p{margin:0 0 .8em}.prose ul,.prose ol{padding-left:1.4em;margin:0 0 .9em}.prose li{margin:.2em 0}.prose a{color:var(--cyan-ink);text-decoration:underline;text-underline-offset:3px}.prose blockquote{margin:0 0 1em;padding:4px 0 4px 16px;border-left:3px solid var(--pink);color:var(--text-2)}.prose code{font-size:.9em;padding:2px 6px;border-radius:6px;background:var(--surface-3)}.prose table{border-collapse:collapse;width:100%;margin:0 0 1em;font-size:14px}.prose th,.prose td{border:1px solid var(--line-strong);padding:8px 10px;text-align:left;vertical-align:top}.prose th{background:var(--surface-2)}.prose hr{border:0;height:1px;background:var(--line-strong);margin:1.4em 0}.prose[contenteditable=true]:empty:before{content:attr(data-placeholder);color:var(--text-3)}.editor-toolbar{position:sticky;top:calc(var(--topbar-h) + 8px);z-index:10;display:flex;flex-wrap:wrap;gap:2px;padding:5px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);width:fit-content;max-width:100%}.editor-toolbar button{width:34px;height:34px;border-radius:9px;border:0;background:none;display:grid;place-items:center;color:var(--text-2)}.editor-toolbar button:hover{background:var(--surface-3);color:var(--text)}.editor-toolbar button svg{width:17px;height:17px}.editor-toolbar .sep{width:1px;background:var(--line-strong);margin:6px 4px}.save-state{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--text-3)}.save-state .s-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3)}.save-state.saved .s-dot{background:var(--green)}.save-state.saving .s-dot,.save-state.pending .s-dot{background:var(--warn)}.save-state.error{color:var(--danger)}.save-state.error .s-dot{background:var(--danger)}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:30px 20px;border-radius:20px;border:2px dashed var(--line-strong);color:var(--text-2);cursor:pointer;transition:border-color .2s,background .2s}.dropzone:hover,.dropzone.over{border-color:var(--cyan-ink);background:color-mix(in srgb,var(--cyan) 6%,transparent)}.dropzone svg{width:30px;height:30px;color:var(--cyan-ink)}.upload-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface-2)}.ftile{flex:none;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-weight:800;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.ftile svg{width:21px;height:21px}.span-2{grid-column:span 2}@media (max-width: 980px){.span-2{grid-column:auto}}@media (max-width: 760px){.hide-mobile{display:none!important}}.show-mobile{display:none!important}@media (max-width: 760px){.show-mobile{display:initial!important}}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.scroll-x{overflow-x:auto;scrollbar-width:thin}@media (max-width: 680px){.hero{padding:22px}.hero .hero-deco{opacity:.35;transform:scale(.7);transform-origin:top right}}
