:root{--p1-bg:#fff;--p1-card:#fff;--p1-ink:#111;--p1-muted:#6b6b6b;--p1-accent:#111;--p1-accent-soft:#f2f2f2;--p1-line:#e3e3e3;--p1-good:#2f8a4c;--p1-good-soft:#e3f3e8;--p1-bad:#b8483a;--p1-bad-soft:#f8e4e0;--p1-verified:#0095f6;--p1-shadow:0 8px 28px #00000012;--p1-font-display:"Playfair Display",Georgia,serif;--p1-font-text:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",sans-serif;--p1-font-mono:ui-monospace,"SF Mono",Menlo,monospace;--p1-radius-field:12px;--p1-radius-card:16px;--p1-radius-menu:18px;--p1-radius-pill:999px;--p1-press-scale:.9}.dark,[data-theme=dark]{--p1-bg:#0a0a0a;--p1-card:#161616;--p1-ink:#f5f5f5;--p1-muted:#a8a8a8;--p1-accent:#f5f5f5;--p1-accent-soft:#262626;--p1-line:#2a2a2a;--p1-good:#6cc68a;--p1-good-soft:#1f3326;--p1-bad:#e98172;--p1-bad-soft:#3d231f;--p1-shadow:0 8px 28px #00000059}
[class^=p1-],[class*=\ p1-]{box-sizing:border-box}[class^=p1-]:focus-visible,[class*=\ p1-]:focus-visible{outline:2px solid var(--p1-accent);outline-offset:2px}.p1-display{font:600 4.4rem/1.05 var(--p1-font-display);letter-spacing:-.01em;color:var(--p1-ink)}.p1-page-title{font:600 2rem/1.15 var(--p1-font-display);color:var(--p1-ink)}.p1-section-title{font:600 1.35rem/1.2 var(--p1-font-display);color:var(--p1-ink)}.p1-body{font:400 15px/1.55 var(--p1-font-text);color:var(--p1-ink)}.p1-name{font:600 15px/1.55 var(--p1-font-text);color:var(--p1-ink)}.p1-caption{font:400 .85rem/1.45 var(--p1-font-text);color:var(--p1-muted)}.p1-kicker{font:600 .78rem/1.3 var(--p1-font-text);letter-spacing:.06em;text-transform:uppercase;color:var(--p1-muted)}.p1-btn{border:1px solid var(--p1-line);border-radius:var(--p1-radius-pill);background:var(--p1-card);min-height:40px;color:var(--p1-ink);font:600 .9rem/1.3 var(--p1-font-text);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px 14px;text-decoration:none;display:inline-flex}.p1-btn:disabled,.p1-btn[aria-disabled=true]{opacity:.5;cursor:default}.p1-btn[data-variant=primary]{background:var(--p1-accent);border-color:var(--p1-accent);color:var(--p1-card)}.p1-btn[data-variant=good]{background:var(--p1-good-soft);color:var(--p1-good);border-color:#0000}.p1-btn[data-variant=bad]{background:var(--p1-bad-soft);color:var(--p1-bad);border-color:#0000}.p1-follow{background:var(--p1-ink);min-width:132px;min-height:34px;color:var(--p1-bg);font:600 .9rem/1.3 var(--p1-font-text);cursor:pointer;border:0;border-radius:8px;place-items:center;padding:7px 18px;transition:opacity .15s;display:inline-grid}.p1-follow[aria-pressed=true]{background:var(--p1-line);color:var(--p1-ink)}.p1-text-btn{color:var(--p1-ink);font:600 .85rem/1.45 var(--p1-font-text);cursor:pointer;background:0 0;border:0;padding:4px 0}.p1-icon-btn{border-radius:var(--p1-radius-pill);width:44px;height:44px;color:var(--p1-ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;text-decoration:none;display:grid}.p1-action{border-radius:var(--p1-radius-pill);color:var(--p1-ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:8px;transition:transform .1s;display:grid}.p1-action:active{transform:scale(var(--p1-press-scale))}.p1-action[aria-pressed=true] svg{fill:currentColor}.p1-chip{border:1px solid var(--p1-line);border-radius:var(--p1-radius-pill);background:var(--p1-card);color:var(--p1-ink);font:400 .85rem/1.45 var(--p1-font-text);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.p1-chip[aria-pressed=true]{background:var(--p1-accent);border-color:var(--p1-accent);color:var(--p1-card);font-weight:600}.p1-chip small{opacity:.65;font-size:inherit}.p1-tag{border-radius:var(--p1-radius-pill);background:var(--p1-accent-soft);color:var(--p1-accent);font:400 .75rem/1.35 var(--p1-font-text);padding:2px 8px;display:inline-block}.p1-badge{border-radius:var(--p1-radius-pill);background:var(--p1-accent-soft);color:var(--p1-accent);font:700 .72rem/1.35 var(--p1-font-text);white-space:nowrap;padding:2px 10px;display:inline-block}.p1-badge[data-tone=good]{background:var(--p1-good-soft);color:var(--p1-good)}.p1-badge[data-tone=bad]{background:var(--p1-bad-soft);color:var(--p1-bad)}.p1-new-badge{border-radius:var(--p1-radius-pill);background:var(--p1-bad);color:#fff;font:700 .72rem/1.35 var(--p1-font-text);padding:1px 8px;display:inline-block}.p1-verified{color:var(--p1-verified);flex-shrink:0}.p1-tabs{border-top:1px solid var(--p1-line);justify-content:center;gap:clamp(14px,5vw,48px);display:flex}.p1-tab{color:var(--p1-muted);font:600 .78rem/1.3 var(--p1-font-text);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-top:1px solid #0000;margin-top:-1px;padding:14px 0}.p1-tab[aria-selected=true]{border-top-color:var(--p1-ink);color:var(--p1-ink)}.p1-card{border:1px solid var(--p1-line);border-radius:var(--p1-radius-card);background:var(--p1-card);color:var(--p1-ink);font:400 15px/1.55 var(--p1-font-text);box-shadow:var(--p1-shadow);padding:14px 16px}.p1-note{border-radius:var(--p1-radius-field);background:var(--p1-accent-soft);color:var(--p1-ink);font:400 .9rem/1.45 var(--p1-font-text);margin:0;padding:10px 12px}.p1-field{border:1px solid var(--p1-line);border-radius:var(--p1-radius-field);background:var(--p1-bg);width:100%;color:var(--p1-ink);font:400 .95rem/1.55 var(--p1-font-text);padding:10px 12px}.p1-field::placeholder{color:var(--p1-muted)}.p1-menu{border:1px solid var(--p1-line);border-radius:var(--p1-radius-menu);background:var(--p1-card);width:min(300px,100%);box-shadow:var(--p1-shadow);padding:8px}.p1-menu-item{width:100%;color:var(--p1-ink);font:400 .95rem/1.55 var(--p1-font-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.p1-menu-item svg{color:var(--p1-muted);flex-shrink:0}.p1-logo{display:block}.p1-logo-white,:is(.dark,[data-theme=dark]) .p1-logo-black{display:none}:is(.dark,[data-theme=dark]) .p1-logo-white{display:block}.p1-lockup{letter-spacing:-.02em;white-space:nowrap;align-items:baseline;font-weight:700;line-height:1;display:inline-flex}.p1-lockup-mark{flex-shrink:0;width:1.094em;height:1.094em;margin-top:-.24em;position:relative;top:.199em}.p1-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.p1-rail{z-index:5;width:72px;padding:20px 0 16px env(safe-area-inset-left,0px);box-sizing:content-box;scrollbar-width:none;background:var(--p1-bg);flex-direction:column;transition:width .2s,box-shadow .2s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden auto}.p1-rail-logo{height:48px;color:var(--p1-ink);flex-shrink:0;text-decoration:none;display:block;position:relative}.p1-rail-mark{width:26.26px;height:26.26px;position:absolute;top:4.87px;left:22.87px}.p1-rail-name{width:72px;color:var(--p1-muted);font:700 .72rem/1 var(--p1-font-text);letter-spacing:-.02em;text-align:center;white-space:nowrap;transition:opacity .15s;position:absolute;top:33px;left:0}.p1-rail-title{font:700 18px/1 var(--p1-font-text);letter-spacing:-.02em;white-space:nowrap;position:absolute;top:9px;left:64px}.p1-rail-items{flex-direction:column;flex:1;justify-content:safe center;gap:8px;padding:16px 12px;display:flex}.p1-rail-foot{padding:0 12px}.p1-side-item{width:100%;height:48px;color:var(--p1-ink);font:400 1rem var(--p1-font-text);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:16px;padding:0 12px;text-decoration:none;transition:background .15s;display:flex;position:relative;overflow:hidden}.p1-side-item>:first-child{flex-shrink:0;transition:transform .15s}.p1-side-label{opacity:0;transition:opacity .15s}.p1-side-item[aria-current=page] .p1-side-label{font-weight:700}.p1-side-item[aria-expanded=true]{background:var(--p1-accent-soft)}.p1-rail:is(:hover,:has(:focus-visible)):not([data-rest=true],:has([aria-expanded=true],[role=menu])){width:244px;box-shadow:var(--p1-shadow)}.p1-rail:is(:hover,:has(:focus-visible)):not([data-rest=true],:has([aria-expanded=true],[role=menu])) .p1-side-label{opacity:1}.p1-rail:is(:hover,:has(:focus-visible)):not([data-rest=true],:has([aria-expanded=true],[role=menu])) .p1-rail-name{opacity:0}.p1-tabbar{z-index:5;padding:0 env(safe-area-inset-right,0px)env(safe-area-inset-bottom,0px)env(safe-area-inset-left,0px);border-top:1px solid var(--p1-line);background:var(--p1-bg);-webkit-tap-highlight-color:transparent;display:flex;position:fixed;inset:auto 0 0}.p1-tab-item{height:50px;color:var(--p1-ink);cursor:pointer;background:0 0;border:0;flex:1;place-items:center;text-decoration:none;display:grid}.p1-tab-item[aria-current=page] svg:not(.solid){stroke-width:2.6px}.p1-row{align-items:center;gap:12px;padding:8px 0;display:flex}.p1-row-text{flex:1;gap:2px;min-width:0;display:grid}.p1-row-thumb{background:var(--p1-accent-soft);width:56px;height:56px;color:var(--p1-ink);font:600 15px var(--p1-font-text);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.p1-row-thumb[data-size=sm]{width:44px;height:44px;font:400 .75rem var(--p1-font-text)}.p1-tile{aspect-ratio:1;background:var(--p1-accent-soft);color:var(--p1-ink);font:600 1.35rem var(--p1-font-display);place-items:center;display:grid}.p1-course-card{color:inherit;gap:8px;text-decoration:none;display:grid}.p1-course-cover{aspect-ratio:4/5;background:var(--p1-accent-soft);color:var(--p1-ink);font:600 1.35rem var(--p1-font-display);border-radius:12px;place-items:center;display:grid;overflow:hidden}.p1-post{border:1px solid var(--p1-line);border-radius:var(--p1-radius-menu);background:var(--p1-card);color:var(--p1-ink);font:400 15px/1.55 var(--p1-font-text);box-shadow:var(--p1-shadow);overflow:hidden}.p1-post-head{align-items:center;gap:8px;padding:12px 16px;display:flex}.p1-post-media{aspect-ratio:4/5;background:var(--p1-accent-soft);place-items:center;display:grid}.p1-post-actions{align-items:center;padding:4px 8px;display:flex}.p1-post-actions>:last-child:not(:first-child){margin-left:auto}.p1-post-body{padding:0 16px 12px}@media (hover:hover){.p1-btn:not(:disabled):hover{border-color:var(--p1-accent)}.p1-btn[data-variant=good]:hover,.p1-btn[data-variant=bad]:hover{border-color:#0000}.p1-follow:hover{opacity:.85}.p1-text-btn:hover{color:var(--p1-muted)}.p1-icon-btn:hover,.p1-action:hover,.p1-menu-item:hover,.p1-side-item:hover{background:var(--p1-accent-soft)}.p1-chip:hover{border-color:var(--p1-accent)}.p1-side-item:hover>:first-child{transform:scale(1.06)}}@media (pointer:coarse){.p1-field{font-size:16px}}@media (prefers-reduced-motion:reduce){.p1-rail,.p1-side-item,.p1-side-item>:first-child,.p1-side-label,.p1-rail-name,.p1-action,.p1-follow{transition:none}}
