:root{--cols:2;--gap:12px;--tile-min-h:116px;--radius:12px;--radius-sm:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--page-max:720px;--page-pad:var(--space-4)}@media (width>=560px){:root{--gap:14px;--tile-min-h:128px;--page-pad:var(--space-6)}}@media (width>=900px){:root{--cols:6;--gap:16px;--tile-min-h:140px;--page-max:960px}}.grid{grid-template-columns:repeat(var(--cols), 1fr);--row-h:calc((var(--tile-min-h) - var(--gap)) / 2);grid-auto-rows:var(--row-h);gap:var(--gap);grid-auto-flow:row;display:grid}.size-1x1,.size-1x2,.size-1x3,.size-1x4{grid-column-end:span 1}.size-2x1,.size-2x2,.size-2x3,.size-2x4{grid-column-end:span 2}.size-3x1,.size-3x2,.size-3x3,.size-3x4{grid-column-end:span 3}.size-4x1,.size-4x2,.size-4x3,.size-4x4{grid-column-end:span 4}.size-5x1,.size-5x2,.size-5x3,.size-5x4{grid-column-end:span 5}.size-6x1,.size-6x2,.size-6x3,.size-6x4{grid-column-end:span 6}.tile[style*=--col]{grid-column-start:var(--col);grid-row-start:var(--row)}.tile[data-h="1"],.lp-grid [class$=x1]{grid-row-end:span 2}.tile[data-h="2"],.lp-grid [class$=x2]{grid-row-end:span 4}.tile[data-h="3"],.lp-grid [class$=x3]{grid-row-end:span 6}.tile[data-h="4"],.lp-grid [class$=x4]{grid-row-end:span 8}.tile-bare[data-h="1"]{grid-row-end:span 1}@media (width<=899px){.grid{grid-auto-rows:auto}.grid>*{grid-area:auto/1/auto/-1!important}.grid>.tile[data-narrow]{grid-column:span 1!important}.tile{min-height:var(--tile-min-h)}.tile[data-h="2"]{min-height:calc(2 * var(--tile-min-h))}.tile[data-h="3"],.tile[data-h="4"]{min-height:calc(3 * var(--tile-min-h))}.tile.tile-bare{min-height:0}}.profile-tile{align-self:center;margin-bottom:0}.profile-tile[style*=--col]{grid-column-start:var(--col);grid-row-start:var(--row)}.tile-placeholder{display:none}.drop-ghost{border:2px dashed var(--accent);border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 10%, transparent);pointer-events:none}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent-raw:#e9a13b;--sans:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--tracking-display:-.045em;--tracking-title:-.02em}:root,:root[data-ground=dark]{--ink:#0d1114;--panel:#151b20;--panel-2:#1b2329;--line:#262f37;--text:#edf1f3;--text-dim:#93a2ac;--text-faint:#64737e;--accent:var(--accent-raw);--live:#ff4b2b;--synced:#46b99a}:root[data-ground=light]{--ink:#e7ebee;--panel:#fff;--panel-2:#f3f6f8;--line:#d2dae0;--text:#10161a;--text-dim:#4c5a64;--text-faint:#7b8994;--accent:color-mix(in srgb, var(--accent-raw) 68%, #000);--live:#d6331a;--synced:#1f8570}@media (prefers-color-scheme:light){:root[data-ground=auto]{--ink:#e7ebee;--panel:#fff;--panel-2:#f3f6f8;--line:#d2dae0;--text:#10161a;--text-dim:#4c5a64;--text-faint:#7b8994;--accent:color-mix(in srgb, var(--accent-raw) 68%, #000);--live:#d6331a;--synced:#1f8570}}*{box-sizing:border-box}body{background:var(--ink);min-height:100dvh;color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}.page{max-width:var(--page-max);padding:48px var(--page-pad) 96px;margin:0 auto}@media (width>=900px){.page{padding-top:72px}}.profile{align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);display:flex}@media (width>=900px){.profile{gap:var(--space-6);margin-bottom:var(--space-12)}.avatar{width:88px;height:88px}.profile h1{font-size:2rem}.profile p{font-size:1.05rem}}.avatar{background:conic-gradient(from 210deg, var(--accent), #c4573b, #2f5b73, var(--accent));border-radius:50%;flex:none;width:68px;height:68px}img.avatar{object-fit:cover;box-shadow:0 0 0 1px color-mix(in srgb, var(--text) 14%, transparent)}.profile h1{letter-spacing:var(--tracking-title);margin:0;font-size:1.6rem;font-weight:600}.profile p{color:var(--text-dim);margin:2px 0 0;font-size:.95rem}.profile[class*=size-3x]{align-items:flex-start;gap:var(--space-3);flex-direction:column}@media (width>=900px){.profile[class*=size-3x]{gap:var(--space-3)}.profile[class*=size-3x] h1{font-size:1.5rem}.profile[class*=size-3x] p{font-size:.95rem}}.profile[data-h="2"]{align-content:center}.tile{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);gap:var(--space-2);color:inherit;flex-direction:column;text-decoration:none;transition:border-color .16s;display:flex}a.tile:hover,a.tile:focus-visible{border-color:var(--accent)}a.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile-inner{gap:var(--space-2);flex-direction:column;height:100%;display:flex}.src{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:8px;font-size:10px;display:flex}.tile h2{letter-spacing:-.012em;margin:0;font-size:.95rem;font-weight:600;line-height:1.32}.meta{color:var(--text-dim);font-size:.83rem}.pip{font-family:var(--mono);letter-spacing:.08em;color:var(--synced);align-items:center;gap:5px;margin-top:auto;font-size:9.5px;display:flex}.pip:before{content:"";background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.pip.stale{color:var(--text-faint)}.livebadge{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--live);align-items:center;gap:5px;font-size:9.5px;font-weight:600;display:inline-flex}.livebadge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}@media (prefers-reduced-motion:no-preference){.livebadge:before{animation:1.9s ease-in-out infinite tally}@keyframes tally{0%,to{opacity:1}50%{opacity:.25}}}.bar{background:var(--line);border-radius:3px;height:5px;overflow:hidden}.bar>i{background:var(--accent);height:100%;display:block}.thumb{border-radius:var(--radius-sm);background:linear-gradient(120deg, #2f5b73, var(--panel) 70%);height:92px}img.thumb{object-fit:cover;background:color-mix(in srgb, var(--text) 8%, transparent);width:100%}.foot{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);flex-wrap:wrap;gap:14px;margin-top:36px;padding-top:18px;font-size:10.5px;display:flex}:root[data-surface=glass] body:before{content:"";z-index:-1;pointer-events:none;background-color:var(--ink);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.42'/%3E%3C/svg%3E"), radial-gradient(60% 42% at 14% 10%, color-mix(in srgb, var(--accent-raw) 78%, transparent), transparent 68%), radial-gradient(52% 38% at 88% 26%, color-mix(in srgb, var(--accent-raw) 46%, #2f5b73), transparent 66%), radial-gradient(58% 44% at 72% 62%, color-mix(in srgb, var(--accent-raw) 40%, #c4573b), transparent 70%), radial-gradient(50% 40% at 20% 78%, color-mix(in srgb, var(--accent-raw) 34%, #2f5b73), transparent 70%);background-size:180px 180px,cover,cover,cover,cover;position:fixed;inset:0}:root[data-surface=glass][data-ground=light] body:before,:root[data-surface=glass][data-ground=auto] body:before{background-color:#eef1f5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E"), radial-gradient(62% 44% at 12% 8%, color-mix(in srgb, var(--accent-raw) 92%, transparent), transparent 66%), radial-gradient(54% 40% at 90% 24%, #3d86adb8, transparent 64%), radial-gradient(60% 46% at 74% 64%, color-mix(in srgb, var(--accent-raw) 62%, #e0674a), transparent 68%), radial-gradient(52% 42% at 18% 80%, #5aa7c494, transparent 68%)}@media (prefers-color-scheme:dark){:root[data-surface=glass][data-ground=auto] body:before{background-color:var(--ink)}}:root[data-surface=glass] .src,:root[data-surface=glass] .pip{color:color-mix(in srgb, var(--text) 62%, transparent)}:root[data-surface=glass] .meta{color:color-mix(in srgb, var(--text) 78%, transparent)}:root[data-surface=glass] .pip{color:color-mix(in srgb, var(--synced) 88%, var(--text))}:root[data-surface=glass] .pip.stale,.pip.stale{color:color-mix(in srgb, var(--text) 42%, transparent)}:root[data-surface=glass] .foot{color:var(--text);border-top-color:color-mix(in srgb, var(--text) 22%, transparent);text-shadow:0 1px 2px #000000d9,0 0 14px #000000a6}:root[data-surface=glass] .profile p{color:var(--text);text-shadow:0 1px 2px #000000d9,0 0 14px #000000a6}:root[data-surface=glass] .profile h1{text-shadow:0 1px 4px #00000059}:root[data-surface=glass][data-ground=light] .foot,:root[data-surface=glass][data-ground=light] .profile p,:root[data-surface=glass][data-ground=light] .profile h1{text-shadow:0 1px 3px #ffffff80}@media (prefers-color-scheme:light){:root[data-surface=glass][data-ground=auto] .foot,:root[data-surface=glass][data-ground=auto] .profile p,:root[data-surface=glass][data-ground=auto] .profile h1{text-shadow:0 1px 3px #ffffff80}}:root[data-surface=glass] .tile{isolation:isolate;background-image:linear-gradient(135deg,#ffffff42,#ffffff12 32%,#0000 66%);background-color:color-mix(in srgb, var(--ink) 46%, transparent);-webkit-backdrop-filter:blur(26px)saturate(200%)brightness(.94);backdrop-filter:blur(26px)saturate(200%)brightness(.94);border:0;position:relative;box-shadow:0 12px 40px #00000052}:root[data-surface=glass] .tile:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;z-index:1;background:linear-gradient(140deg,#ffffff9e,#ffffff24 34%,#ffffff0a 62%,#ffffff38);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}:root[data-surface=glass][data-ground=light] .tile,:root[data-surface=glass][data-ground=auto] .tile{-webkit-backdrop-filter:blur(24px)saturate(220%)brightness(1.12);background-color:#ffffff61;box-shadow:inset 0 1px #ffffffc7,inset 0 -1px #1f293712,0 1px 2px #1f29370f,0 10px 28px #1f29371a}:root[data-surface=glass][data-ground=light] .tile:before,:root[data-surface=glass][data-ground=auto] .tile:before{background:linear-gradient(140deg,#fffffff2,#ffffff59 30%,#1f293714 62%,#1f293729)}@media (prefers-color-scheme:dark){:root[data-surface=glass][data-ground=auto] .tile{background-color:color-mix(in srgb, var(--ink) 46%, transparent);-webkit-backdrop-filter:blur(26px)saturate(200%)brightness(.94);box-shadow:0 12px 40px #00000052}:root[data-surface=glass][data-ground=auto] .tile:before{background:linear-gradient(140deg,#ffffff9e,#ffffff24 34%,#ffffff0a 62%,#ffffff38)}}:root[data-surface=flat][data-ground=light] body{background:color-mix(in srgb, var(--accent-raw) 5%, #eef1f4)}@media (prefers-color-scheme:light){:root[data-surface=flat][data-ground=auto] body{background:color-mix(in srgb, var(--accent-raw) 5%, #eef1f4)}}.tile-avatar{object-fit:cover;width:34px;height:34px;box-shadow:0 0 0 1px color-mix(in srgb, var(--text) 14%, transparent);border-radius:50%}.mark-chip{background:var(--mark,currentColor);color:#fff;min-width:17px;height:15px;font-family:var(--sans);letter-spacing:0;text-transform:lowercase;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0 3px;font-size:9.5px;font-weight:700;line-height:1;display:inline-flex}.mark{width:15px;height:15px;fill:var(--mark,currentColor);opacity:.95;flex:none}.stats{gap:var(--space-3);color:var(--text-dim);flex-wrap:wrap;margin:0;font-size:.83rem;display:flex}.stats b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.tile:has(.pip.stale){min-height:calc(var(--tile-min-h) - 18px)}.media-grid{border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;gap:6px;display:grid;overflow:hidden}.media-grid[data-count="3"] .media-item:last-child{aspect-ratio:32/9;grid-column:span 2}@media (width>=560px){.media-grid[data-count="3"]{grid-template-columns:repeat(3,1fr)}.media-grid[data-count="3"] .media-item:last-child{aspect-ratio:16/9;grid-column:auto}}.media-item{aspect-ratio:16/9;background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:6px;margin:0;position:relative;overflow:hidden}.media-item img{object-fit:cover;width:100%;height:100%;display:block}.media-item figcaption{font-family:var(--mono);letter-spacing:.04em;color:#fff;text-align:right;background:linear-gradient(#0000,#000000b8);padding:12px 7px 5px;font-size:10px;font-weight:600;position:absolute;bottom:0;left:0;right:0}.tile-bare{min-height:0;padding:0;box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:0!important}:root .tile-bare:before,:root[data-surface=glass] .tile-bare:before{display:none}.section-heading{margin:var(--space-4) 0 0;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);align-self:stretch;font-size:11px;font-weight:500}:root[data-surface=glass] .section-heading{color:color-mix(in srgb, var(--text) 66%, transparent);text-shadow:0 1px 2px #0000002e}.tile-image{object-fit:cover;border-radius:var(--radius);width:100%;height:100%;display:block}.tile-text h2{margin:0 0 var(--space-2);letter-spacing:-.02em;font-size:1.02rem}.tile-text p{color:var(--text-dim);-webkit-line-clamp:6;-webkit-box-orient:vertical;margin:0;font-size:.92rem;display:-webkit-box;overflow:hidden}.tile-book{gap:var(--space-4);align-items:flex-start;min-width:0;display:flex}.book-cover{aspect-ratio:2/3;object-fit:cover;background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:6px;flex:none;width:84px}.book-body{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.book-body>h2{letter-spacing:-.01em;margin:0;font-size:1.02rem;line-height:1.25}.book-shops{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.book-shops li{border:1px solid color-mix(in srgb, var(--text) 20%, transparent);border-radius:999px;align-items:center;gap:2px;padding:2px 4px 2px 10px;display:inline-flex}.book-shops a{color:var(--text);white-space:nowrap;font-size:.8rem;text-decoration:none}.book-shops a:hover{text-decoration:underline}.book-shops li:not(:has(.book-x)){padding-right:10px}.book-x{color:var(--text);opacity:.5;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:1rem;line-height:1}.book-x:hover{opacity:1}.book-add{flex-wrap:wrap;gap:6px;display:flex}.book-add input{font:inherit;border:1px solid color-mix(in srgb, var(--text) 22%, transparent);background:color-mix(in srgb, var(--ink) 30%, transparent);color:var(--text);border-radius:8px;width:8.5rem;min-width:0;padding:5px 9px;font-size:.8rem}.book-add input:focus{border-color:var(--accent);outline:none}.book-add button,.book-open{font:inherit;border:1px dashed color-mix(in srgb, var(--text) 30%, transparent);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding:5px 11px;font-size:.78rem}.book-add button{border-style:solid;border-color:var(--accent)}.book-open:hover{border-style:solid}@media (width<=30rem){.book-cover{width:64px}.book-add input{width:100%}}.tile-space-mark{height:100%;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text);opacity:.35;border:1px dashed color-mix(in srgb, var(--text) 22%, transparent);border-radius:12px;place-items:center;font-size:10px;display:grid}.tile{overflow:hidden}.tile>.pip:last-child,.tile>p.stale:last-child{margin-top:auto}.tile h2{-webkit-line-clamp:4;-webkit-box-orient:vertical;flex-shrink:0;display:-webkit-box;overflow:hidden}[data-h="1"] h2{-webkit-line-clamp:2}[data-h="1"][data-narrow] h2{-webkit-line-clamp:1}[data-h="1"] .media-grid,[data-h="1"] .thumb,[data-h="1"] .meta{display:none}[data-h="1"] .tile-avatar{width:26px;height:26px}[data-h="1"]{gap:5px}.section-index{gap:var(--space-4);margin-bottom:var(--space-6);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:11px;display:flex;overflow-x:auto}.section-index a{color:var(--text);opacity:.72;white-space:nowrap;text-decoration:none}.section-index a:hover{opacity:1;text-underline-offset:3px;text-decoration:underline}.section-heading{scroll-margin-top:24px}.link-preview{object-fit:cover;border-radius:10px;flex:auto;width:100%;min-height:0}[data-h="1"] .link-preview{display:none}
