/* sizu knowledge base brand layer (served by nginx, outside Docmost). Fonts and palette from the portfolio, in dark. */
@import url('https://fonts.googleapis.com/css2?family=Urbanist:wght@600;700;800;900&family=Instrument+Sans:wght@400;500;600&family=JetBrains+Mono:wght@500&display=swap');
:root, [data-mantine-color-scheme="dark"] {
  --k-bg:#121110; --k-bg-2:#191817; --k-bg-3:#211F1D; --k-line:#2E2B28;
  --k-text:#EEE8E2; --k-muted:#A59E97; --k-faint:#6F6862;
  --k-red:#F0464E; --k-red-2:#D3181F; --k-blush:#F9B6B1; --k-green:#4FBF84;
  --mantine-font-family: 'Instrument Sans', system-ui, sans-serif;
  --mantine-font-family-headings: 'Urbanist', system-ui, sans-serif;
  --mantine-font-family-monospace: 'JetBrains Mono', ui-monospace, monospace;
}
[data-mantine-color-scheme="dark"] {
  --mantine-color-body: var(--k-bg);
  --mantine-color-text: var(--k-text);
  --mantine-color-dimmed: var(--k-muted);
  --mantine-color-placeholder: var(--k-faint);
  --mantine-color-dark-9:#0B0A0A; --mantine-color-dark-8:#0F0E0D; --mantine-color-dark-7:var(--k-bg);
  --mantine-color-dark-6:var(--k-bg-2); --mantine-color-dark-5:var(--k-bg-3); --mantine-color-dark-4:var(--k-line);
  --mantine-color-dark-3:#56504A; --mantine-color-dark-2:var(--k-muted); --mantine-color-dark-1:#D9D2CB; --mantine-color-dark-0:var(--k-text);
  --mantine-color-default:var(--k-bg-2); --mantine-color-default-hover:var(--k-bg-3); --mantine-color-default-border:var(--k-line);
  --mantine-primary-color-filled:var(--k-red); --mantine-primary-color-filled-hover:var(--k-red-2);
  --mantine-primary-color-light:rgba(240,70,78,.13); --mantine-primary-color-light-hover:rgba(240,70,78,.2); --mantine-primary-color-light-color:var(--k-blush);
  --mantine-color-anchor:var(--k-blush);
}
body { font-family:'Instrument Sans', system-ui, sans-serif; }
h1,h2,h3,h4,.mantine-Title-root { font-family:'Urbanist', system-ui, sans-serif; letter-spacing:-0.02em; }
::selection { background:rgba(249,182,177,.35); color:#fff; }
.ProseMirror { font-family:'Instrument Sans', system-ui, sans-serif; line-height:1.68; font-size:16px; }
.ProseMirror h1,.ProseMirror h2,.ProseMirror h3,.ProseMirror h4 { font-family:'Urbanist', system-ui, sans-serif; font-weight:800; letter-spacing:-0.025em; }
.ProseMirror h1 { font-weight:900; }
.ProseMirror a { color:var(--k-blush); text-decoration-color:rgba(249,182,177,.35); }
.ProseMirror blockquote { border-left:2px solid var(--k-red); background:var(--k-bg-2); border-radius:4px 10px 10px 4px; padding:.4em .9em; color:var(--k-muted); }
.ProseMirror code { font-family:'JetBrains Mono', monospace; background:var(--k-bg-3); color:var(--k-blush); border-radius:5px; padding:.1em .35em; font-size:.9em; }
.ProseMirror table td,.ProseMirror table th { border-color:var(--k-line) !important; }
.ProseMirror table th { background:var(--k-bg-2); font-weight:600; }
.mantine-Button-root,.mantine-Input-input,.mantine-Paper-root,.mantine-Menu-dropdown,.mantine-Modal-content,.mantine-Popover-dropdown { border-radius:12px; }
.mantine-AppShell-navbar,.mantine-AppShell-header,.mantine-AppShell-aside { border-color:var(--k-line) !important; background:#0F0E0D; }
:focus-visible { outline:2px solid var(--k-blush) !important; outline-offset:2px; }

/* ---------- wordmark ---------- */
.sizu-wm { font-family:'Urbanist',sans-serif; font-weight:900; letter-spacing:-0.045em; color:var(--k-text); display:inline-flex; align-items:baseline; gap:2px; }
.sizu-wm i { width:.32em; height:.32em; border-radius:50%; background:var(--k-red); display:inline-block; transform:translateY(-.55em); }
.sizu-wm small { font-family:'Instrument Sans',sans-serif; font-weight:500; letter-spacing:0; color:var(--k-muted); font-size:.42em; margin-left:.5em; transform:translateY(-.15em); }

/* ---------- landing / sign-in ---------- */
html.sizu-auth body { background:
  radial-gradient(900px 600px at 18% 20%, rgba(240,70,78,.16), transparent 60%),
  radial-gradient(700px 500px at 30% 90%, rgba(249,182,177,.08), transparent 60%), var(--k-bg); }
html.sizu-auth [class*="_logo_"] { display:none !important; }
.sizu-hero { display:none; }
html.sizu-auth .sizu-hero { display:flex; position:fixed; inset:0 auto 0 0; width:54vw; padding:56px 64px; flex-direction:column; justify-content:space-between; border-right:1px solid var(--k-line); z-index:1; }
.sizu-hero .wm { font-size:34px; }
.sizu-hero h2 { max-width:11ch; font-family:'Urbanist',sans-serif; font-weight:900; font-size:clamp(44px,5.2vw,82px); line-height:.95; letter-spacing:-0.045em; margin:0 0 20px; color:var(--k-text); }
.sizu-hero h2 em { font-style:normal; color:var(--k-red); }
.sizu-hero p { color:var(--k-muted); font-size:18px; line-height:1.55; max-width:44ch; margin:0 0 28px; }
.sizu-hero .chips { display:flex; flex-wrap:wrap; gap:10px; }
.sizu-hero .chip { padding:9px 14px; border-radius:999px; background:var(--k-bg-2); border:1px solid var(--k-line); color:var(--k-text); font-size:14px; font-weight:500; display:inline-flex; gap:8px; align-items:center; }
.sizu-hero .chip b { width:7px; height:7px; border-radius:50%; background:var(--k-blush); }
.sizu-hero .chip:nth-child(1) b { background:var(--k-red); } .sizu-hero .chip:nth-child(3) b { background:var(--k-green); }
.sizu-hero .foot { color:var(--k-faint); font-size:13px; display:flex; justify-content:space-between; }
html.sizu-auth main { position:relative; z-index:2; margin-left:54vw; min-height:100vh; display:flex; align-items:center; justify-content:center; }
html.sizu-auth [class*="_containerBox_"] { background:rgba(25,24,23,.85); border:1px solid var(--k-line); border-radius:22px; box-shadow:0 30px 80px -30px rgba(0,0,0,.6); backdrop-filter:blur(10px); }
html.sizu-auth [class*="_containerBox_"] h1 { font-family:'Urbanist',sans-serif !important; font-weight:800 !important; letter-spacing:-0.03em; text-align:left !important; }
html.sizu-auth [class*="_containerBox_"] h1::after { content:"Welcome back. Sign in to the sizu knowledge base."; display:block; font:400 14px/1.5 'Instrument Sans',sans-serif; color:var(--k-muted); letter-spacing:0; margin-top:6px; }
html.sizu-auth .mantine-Button-root { height:44px; font-weight:600; }
@media (max-width:900px){ html.sizu-auth .sizu-hero { position:relative; width:auto; padding:32px 24px 0; border:0; } html.sizu-auth .sizu-hero .foot, html.sizu-auth .sizu-hero .chips { display:none; } html.sizu-auth main { margin-left:0; min-height:auto; padding:24px; } .sizu-hero h2 { font-size:44px; } }

/* ---------- quick links (left sidebar section) ---------- */
.ql-side { margin:8px 10px 6px; padding:10px 8px 8px; border:1px solid var(--k-line); border-radius:14px; background:linear-gradient(180deg, rgba(240,70,78,.06), rgba(255,255,255,.01)); }
.ql-side .ql-h { display:flex; align-items:center; justify-content:space-between; padding:0 6px 6px; }
.ql-side .ql-h span { font:700 12px 'Urbanist',sans-serif; letter-spacing:.06em; color:var(--k-muted); text-transform:uppercase; display:flex; align-items:center; gap:7px; }
.ql-side .ql-h span i { width:6px; height:6px; border-radius:50%; background:var(--k-red); }
.ql-side .ql-h .ql-btns { display:flex; gap:4px; }
.ql-side .ql-h button { background:var(--k-bg-3); border:1px solid var(--k-line); color:var(--k-text); border-radius:8px; height:24px; min-width:24px; padding:0 7px; font:600 12px 'Instrument Sans',sans-serif; cursor:pointer; }
.ql-side .ql-h button:hover { border-color:var(--k-blush); }
.ql-side ul { list-style:none; margin:0; padding:0; max-height:240px; overflow:auto; }
.ql-side .ql-group { font:600 10.5px 'Instrument Sans',sans-serif; letter-spacing:.06em; color:var(--k-faint); padding:8px 6px 3px; }
.ql-side .ql-item { display:flex; align-items:center; gap:8px; padding:6px; border-radius:8px; }
.ql-side .ql-item:hover { background:var(--k-bg-3); }
.ql-side .ql-item a { flex:1; color:var(--k-text); text-decoration:none; font:500 13.5px 'Instrument Sans',sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ql-side .dot { width:6px; height:6px; border-radius:50%; background:var(--k-blush); flex:none; }
.ql-side .dot.ext { background:var(--k-green); }
.ql-side .ql-item button { opacity:0; background:none; border:0; color:var(--k-muted); cursor:pointer; font-size:12px; padding:0 3px; }
.ql-side .ql-item:hover button { opacity:1; }
.ql-side.collapsed ul { display:none; }

/* ---------- modern cards and containers ---------- */
.mantine-Card-root {
  background: linear-gradient(180deg, var(--k-bg-2), #161514) !important;
  border: 1px solid var(--k-line) !important; border-radius: 16px !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.03) inset, 0 12px 30px -18px rgba(0,0,0,.7);
  transition: transform .18s cubic-bezier(.2,.7,.2,1), border-color .18s, box-shadow .18s;
}
.mantine-Card-root:hover { border-color: rgba(249,182,177,.35) !important; transform: translateY(-2px); box-shadow: 0 1px 0 rgba(255,255,255,.04) inset, 0 18px 40px -20px rgba(240,70,78,.35); }
.mantine-Card-section { border: 0 !important; background: linear-gradient(90deg, rgba(240,70,78,.08), transparent) !important; }
.mantine-Table-table { border-radius:14px; overflow:hidden; }
.mantine-Table-thead { background:var(--k-bg-2); }
.mantine-Table-tr:hover { background:var(--k-bg-2); }
.mantine-Badge-root { border-radius:999px; font-weight:600; letter-spacing:.02em; }
.mantine-Tabs-tab[data-active] { border-color:var(--k-red) !important; color:var(--k-text); }
.mantine-NavLink-root, .mantine-AppShell-navbar a, .mantine-AppShell-navbar [role="treeitem"] > div { border-radius:9px; transition:background .12s; }
.mantine-AppShell-navbar a:hover, .mantine-NavLink-root:hover { background:var(--k-bg-3) !important; }
.mantine-AppShell-navbar [aria-selected="true"] > div, .mantine-NavLink-root[data-active] { background:rgba(240,70,78,.12) !important; color:var(--k-text) !important; box-shadow: inset 2px 0 0 var(--k-red); }
.mantine-Input-input { background:var(--k-bg-2) !important; border:1px solid var(--k-line) !important; transition:border-color .15s, box-shadow .15s; }
.mantine-Input-input:focus, .mantine-Input-input:focus-within { border-color:var(--k-blush) !important; box-shadow:0 0 0 3px rgba(249,182,177,.12); }
.mantine-Button-root[data-variant="filled"] { box-shadow:0 8px 20px -10px rgba(240,70,78,.6); }
.mantine-Menu-dropdown, .mantine-Popover-dropdown, .mantine-Modal-content, .mantine-Spotlight-content { background:rgba(22,21,20,.96) !important; border:1px solid var(--k-line) !important; backdrop-filter:blur(14px); box-shadow:0 30px 70px -25px rgba(0,0,0,.8) !important; }
.mantine-Menu-item:hover { background:var(--k-bg-3) !important; }

::-webkit-scrollbar { width:10px; height:10px; } ::-webkit-scrollbar-thumb { background:#2E2B28; border-radius:10px; border:3px solid var(--k-bg); } ::-webkit-scrollbar-track { background:transparent; }
@media (prefers-reduced-motion:reduce){ .mantine-Card-root { transition:none; transform:none !important; } }

[data-mantine-color-scheme="dark"] a.mantine-Anchor-root, [data-mantine-color-scheme="dark"] .mantine-Anchor-root { color:var(--k-blush) !important; }

[data-mantine-color-scheme="dark"] {
  --mantine-color-blue-text: var(--k-blush); --mantine-color-blue-light-color: var(--k-blush);
  --mantine-color-blue-light: rgba(249,182,177,.10); --mantine-color-blue-light-hover: rgba(249,182,177,.16);
  --mantine-color-blue-filled: var(--k-red); --mantine-color-blue-filled-hover: var(--k-red-2);
  --mantine-color-blue-outline: var(--k-blush);
}
.sizu-brandtext { font-family:'Urbanist',sans-serif !important; font-weight:900 !important; letter-spacing:-0.045em; font-size:22px !important; position:relative; padding-right:9px; }
.sizu-brandtext::after { content:""; position:absolute; right:0; top:3px; width:7px; height:7px; border-radius:50%; background:var(--k-red); }
.ql-side { margin:10px 6px 10px; }

/* ---------- cascading Browse tree ---------- */
.tr-box { margin:10px 6px 6px; padding:10px 6px 8px; border:1px solid var(--k-line); border-radius:14px; background:rgba(255,255,255,.015); }
.tr-h { display:flex; align-items:center; justify-content:space-between; padding:0 6px 8px; }
.tr-h span { font:700 12px 'Urbanist',sans-serif; letter-spacing:.06em; color:var(--k-muted); text-transform:uppercase; display:flex; gap:7px; align-items:center; }
.tr-h span i { width:6px; height:6px; border-radius:50%; background:var(--k-blush); }
.tr-collapse { background:none; border:0; color:var(--k-faint); cursor:pointer; font-size:13px; }
.tr-collapse:hover { color:var(--k-text); }
.tr-filter { width:calc(100% - 12px); margin:0 6px 8px; height:30px; border-radius:9px; border:1px solid var(--k-line); background:var(--k-bg-2); color:var(--k-text); padding:0 10px; font:13px 'Instrument Sans',sans-serif; outline:none; }
.tr-filter:focus { border-color:var(--k-blush); }
.tr-root, .tr-kids { list-style:none; margin:0; padding:0; }
.tr-kids { display:none; position:relative; }
.tr-node.open > .tr-kids { display:block; }
.tr-row { display:flex; align-items:center; gap:4px; min-height:30px; border-radius:8px; cursor:pointer; color:var(--k-text); font:500 13.5px 'Instrument Sans',sans-serif; padding-right:8px; }
.tr-row:hover { background:var(--k-bg-3); }
.tr-row.active { background:rgba(240,70,78,.13); box-shadow:inset 2px 0 0 var(--k-red); }
.tr-space { font:700 14px 'Urbanist',sans-serif; letter-spacing:-.01em; min-height:34px; }
.tr-label { flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tr-label em { font-style:normal; color:var(--k-red); font-size:10px; margin-right:8px; display:inline-block; width:10px; }
.tr-caret { width:20px; height:20px; flex:none; border:0; background:none; color:var(--k-faint); cursor:pointer; font-size:15px; border-radius:6px; transition:transform .15s; line-height:1; }
.tr-caret:hover { background:var(--k-bg-3); color:var(--k-text); }
.tr-caret.none { visibility:hidden; }
.tr-node.open > .tr-row > .tr-caret { transform:rotate(90deg); color:var(--k-text); }
.tr-loading { color:var(--k-faint); font:12px 'Instrument Sans',sans-serif; padding:5px 34px; }
.tr-kids::before { content:""; position:absolute; left:15px; top:0; bottom:4px; width:1px; background:var(--k-line); }
@media (prefers-reduced-motion:reduce){ .tr-caret { transition:none; } }

[data-mantine-color-scheme="dark"] { --mantine-color-blue-4:#F9B6B1; --mantine-color-blue-5:#F7A39D; --mantine-color-blue-6:#F0464E; --mantine-color-blue-7:#D3181F; --mantine-color-blue-8:#B5121A; }
.ql-side ul { max-height:170px; }
.tr-box { margin-top:12px; }

/* full-width pages */
.ProseMirror, [class*="pageContainer"], [class*="editor"] .ProseMirror, .mantine-Container-root[data-strategy="block"]:has(.ProseMirror) { max-width:none !important; }
[class*="_container_"]:has(.ProseMirror), [class*="pageEditor"], [class*="page-container"] { max-width:none !important; width:100% !important; }
.ProseMirror { padding-left:clamp(16px,3vw,56px) !important; padding-right:clamp(16px,3vw,56px) !important; }
.ProseMirror table { width:100% !important; }

.ProseMirror:focus, .ProseMirror:focus-visible { outline:none !important; box-shadow:none !important; }

/* ---------- force brand fonts over Docmost's component font ---------- */
body, body *:not(code):not(pre):not(kbd):not(samp) { font-family:'Instrument Sans', system-ui, sans-serif !important; }
body h1, body h2, body h3, body h4, body .mantine-Title-root, body .sizu-wm, body .sizu-wm *, body .sizu-brandtext, body .tr-space, body .tr-space *, body .ql-h span, body .tr-h span, body .sizu-hero h2, body .dash-hello, body .dash-h, body .dash-tile b, body .dash-stat b, body [class*="_card_"] [class*="_title_"] { font-family:'Urbanist', system-ui, sans-serif !important; }
body code, body pre, body kbd { font-family:'JetBrains Mono', monospace !important; }

/* ---------- home dashboard ---------- */
.dash { margin:28px 0 36px; }
.dash-top { display:grid; grid-template-columns: 1.4fr 1fr; gap:16px; margin-bottom:16px; }
.dash-hero { padding:28px 30px; border-radius:20px; border:1px solid var(--k-line); background: radial-gradient(600px 300px at 0% 0%, rgba(240,70,78,.16), transparent 60%), linear-gradient(180deg, var(--k-bg-2), #151413); }
.dash-date { color:var(--k-faint); font-size:13px; font-weight:500; margin-bottom:8px; }
.dash-hello { font-weight:900; font-size:40px; line-height:1; letter-spacing:-.04em; margin:0 0 10px; color:var(--k-text); }
.dash-sub { color:var(--k-muted); font-size:15px; margin:0 0 18px; max-width:52ch; }
.dash-search { display:flex; align-items:center; gap:10px; width:100%; max-width:460px; height:44px; padding:0 14px; border-radius:12px; border:1px solid var(--k-line); background:#0F0E0D; color:var(--k-muted); font-size:14px; cursor:pointer; }
.dash-search:hover { border-color:var(--k-blush); color:var(--k-text); }
.dash-search kbd { margin-left:auto; font-size:11px; padding:2px 6px; border-radius:6px; background:var(--k-bg-3); color:var(--k-muted); border:1px solid var(--k-line); }
.dash-stats { display:grid; grid-template-columns: repeat(3,1fr); gap:12px; }
.dash-stat { padding:18px; border-radius:16px; border:1px solid var(--k-line); background:var(--k-bg-2); display:flex; flex-direction:column; justify-content:space-between; min-height:88px; }
.dash-stat b { font-size:30px; font-weight:800; letter-spacing:-.03em; color:var(--k-text); line-height:1; }
.dash-stat span { color:var(--k-muted); font-size:12.5px; }
.dash-stat.wide { grid-column: span 3; flex-direction:row; align-items:center; gap:10px; min-height:auto; }
.dash-stat.wide button { flex:1; height:36px; border-radius:10px; border:1px solid var(--k-line); background:var(--k-bg-3); color:var(--k-text); font-size:13px; font-weight:600; cursor:pointer; }
.dash-stat.wide button:hover { border-color:var(--k-blush); }
.dash-h { display:flex; align-items:baseline; justify-content:space-between; margin:26px 2px 12px; font-weight:800; font-size:18px; letter-spacing:-.02em; color:var(--k-text); }
.dash-h small { font-family:'Instrument Sans',sans-serif !important; font-weight:500; font-size:12.5px; color:var(--k-faint); letter-spacing:0; }
.dash-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(190px,1fr)); gap:12px; }
.dash-tile { position:relative; padding:16px 16px 14px; border-radius:16px; border:1px solid var(--k-line); background:linear-gradient(180deg, var(--k-bg-2), #151413); cursor:pointer; text-align:left; color:var(--k-text); transition: transform .16s cubic-bezier(.2,.7,.2,1), border-color .16s; min-height:92px; display:flex; flex-direction:column; gap:6px; }
.dash-tile:hover { transform:translateY(-2px); border-color:rgba(249,182,177,.4); }
.dash-tile b { font-size:16px; font-weight:800; letter-spacing:-.02em; }
.dash-tile span { color:var(--k-muted); font-size:12.5px; line-height:1.4; }
.dash-tile i { position:absolute; top:16px; right:16px; width:8px; height:8px; border-radius:50%; background:var(--k-blush); }
.dash-tile.t-red i { background:var(--k-red); } .dash-tile.t-green i { background:var(--k-green); } .dash-tile.t-sand i { background:#E9B872; } .dash-tile.t-violet i { background:#A99CF0; }
@media (max-width:1100px){ .dash-top { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce){ .dash-tile { transition:none; transform:none !important; } }

/* ---------- restyle the default home sections ---------- */
body [class*="_card_"] { padding:16px !important; }
body [class*="_card_"] [class*="_title_"] { font-weight:800 !important; font-size:18px !important; letter-spacing:-.02em; }
body [class*="_card_"] .mantine-Avatar-root { border-radius:10px !important; }
.mantine-Badge-root { background:var(--k-bg-3) !important; color:var(--k-text) !important; border:1px solid var(--k-line) !important; text-transform:none !important; font-weight:600 !important; letter-spacing:0 !important; padding:0 10px !important; }
.mantine-Badge-root { display:inline-flex !important; align-items:center !important; gap:7px; }
.mantine-Badge-root::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--k-blush); flex:none; }
.mantine-Badge-root .mantine-Badge-label { line-height:1; }

main a[href="/spaces"], .mantine-Anchor-root, main .mantine-Button-root[data-variant="subtle"], main button.mantine-UnstyledButton-root[class*="Anchor"] { color:var(--k-blush) !important; }
main .mantine-Button-root[data-variant="subtle"]:hover { background:rgba(249,182,177,.08) !important; }
