@font-face{font-family:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(/assets/mona-sans-vietnamese-standard-normal-Rd0aZl9c.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:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(/assets/mona-sans-latin-ext-standard-normal-CQ1tG6In.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:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(/assets/mona-sans-latin-standard-normal-BMVx8nn_.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{--color-paper:oklch(100% 0 0);--color-paper-2:oklch(98.4% .003 265);--color-paper-3:oklch(96.2% .005 265);--color-ink:oklch(20% .014 268);--color-ink-2:oklch(43% .016 268);--color-ink-3:oklch(54% .014 268);--color-rule:oklch(91.5% .006 268);--color-rule-strong:oklch(84% .009 268);--color-on-ink:oklch(99% .002 268);--color-ink-hover:oklch(32% .018 268);--color-mint:oklch(93.5% .058 165);--color-sky:oklch(93% .042 238);--color-lilac:oklch(92% .05 298);--color-peach:oklch(93% .05 58);--color-lemon:oklch(95.5% .105 104);--color-rose:oklch(92.5% .045 12);--color-mark:var(--color-lemon);--color-ok:oklch(45% .11 160);--color-error:oklch(50% .17 27);--color-focus:var(--color-ink);--color-selection:oklch(93% .09 104);--color-shade:oklch(20% .014 268/.1);--color-scrim:oklch(20% .014 268/.32);--color-glass:oklch(100% 0 0/.62);--font-sans:"Mona Sans Variable", "Mona Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", "Noto Sans", sans-serif;--font-mono:"Martian Mono Variable", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--stretch-display:116%;--stretch-head:108%;--stretch-text:100%;--weight-text:420;--weight-strong:600;--weight-display:640;--text-2xs:.75rem;--text-xs:.8125rem;--text-sm:.9375rem;--text-md:1.0625rem;--text-lg:1.1875rem;--text-xl:1.375rem;--text-2xl:clamp(1.625rem, 1.25rem + 1.2vw, 2rem);--text-3xl:clamp(2rem, 1.35rem + 2.2vw, 2.875rem);--text-display-s:clamp(2.25rem, 1.35rem + 3.3vw, 3.75rem);--text-display:clamp(2.375rem, 1.1rem + 3.6vw, 4.25rem);--leading-tight:1.06;--leading-head:1.14;--leading-text:1.6;--tracking-display:-.032em;--tracking-head:-.022em;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:8rem;--section-gap:clamp(4.5rem, 3rem + 6vw, 8rem);--page-max:75rem;--prose-max:42rem;--gutter:clamp(1rem, .5rem + 2.5vw, 2.5rem);--nav-height:3.5rem;--nav-offset:.875rem;--radius-xs:.5rem;--radius-sm:.75rem;--radius-md:1.25rem;--radius-lg:1.75rem;--radius-pill:999px;--rule-hair:1px;--shadow-float:0 1px 2px oklch(20% .014 268/.05), 0 12px 32px -14px oklch(20% .014 268/.22);--shadow-lift:0 1px 2px oklch(20% .014 268/.04), 0 2px 6px oklch(20% .014 268/.04), 0 30px 60px -28px oklch(20% .014 268/.28);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.15s;--dur-mid:.28s;--dur-slow:.52s}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--color-ink);scrollbar-color:var(--color-rule-strong) transparent;scroll-padding-top:calc(var(--nav-height) + var(--nav-offset) * 2 + var(--space-sm))}body{background:var(--color-paper);min-height:100dvh;color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-text);font-stretch:var(--stretch-text);font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.5;overflow-x:clip}#root{min-height:100dvh}::selection{background:var(--color-selection);color:var(--color-ink)}img,svg{max-width:100%;display:block}h1,h2,h3{font-weight:var(--weight-display);line-height:var(--leading-head);letter-spacing:var(--tracking-head);font-stretch:var(--stretch-head);text-wrap:balance;overflow-wrap:anywhere;margin:0}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--color-rule-strong);text-decoration-color:var(--color-rule-strong);text-underline-offset:.22em;transition:text-decoration-color var(--dur-fast) var(--ease-out)}a:hover{text-decoration-color:currentColor}code,pre{font-family:var(--font-mono);font-size:.86em;font-stretch:87.5%}:not(pre)>code{background:var(--color-paper-3);overflow-wrap:anywhere;border-radius:.35em;padding:.1em .35em}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:var(--radius-xs)}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--space-sm);top:var(--space-sm);z-index:60;padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-on-ink);text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.icon{flex:none;width:1.125em;height:1.125em}.muted{color:var(--color-ink-3)}.btn{--btn-pad-y:var(--space-xs);--btn-pad-x:var(--space-md);justify-content:center;align-items:center;gap:var(--space-2xs);min-height:2.875rem;padding:var(--btn-pad-y) var(--btn-pad-x);border:var(--rule-hair) solid transparent;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-strong);font-stretch:var(--stretch-head);letter-spacing:-.005em;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);line-height:1.1;text-decoration:none;display:inline-flex}.btn:focus-visible{border-radius:var(--radius-pill)}.btn:active:not(:disabled){transform:translateY(1px)}.btn--ink{background:var(--color-ink);color:var(--color-on-ink)}.btn--ink:hover:not(:disabled){background:var(--color-ink-hover)}.btn--line{background:var(--color-paper);border-color:var(--color-rule-strong);color:var(--color-ink)}.btn--line:hover:not(:disabled){border-color:var(--color-ink)}.btn--sm{--btn-pad-y:var(--space-2xs);--btn-pad-x:var(--space-sm);min-height:2.375rem}.btn--xs{--btn-pad-y:.375rem;--btn-pad-x:var(--space-xs);min-height:2rem;font-size:var(--text-xs)}.btn--block{width:100%}.btn:disabled{opacity:.45;cursor:default}.btn-text{align-items:center;gap:var(--space-3xs);min-height:2rem;padding:0 var(--space-3xs);color:var(--color-ink-2);font-size:var(--text-xs);text-decoration:underline;-webkit-text-decoration-color:var(--color-rule-strong);text-decoration-color:var(--color-rule-strong);text-underline-offset:.22em;cursor:pointer;background:0 0;border:0;font-weight:560;display:inline-flex}.btn-text:hover:not(:disabled){color:var(--color-ink);text-decoration-color:currentColor}.btn-text:disabled{color:var(--color-ink-3);cursor:default;text-decoration:none}.icon-btn{border-radius:var(--radius-pill);width:2.5rem;height:2.5rem;color:var(--color-ink-2);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--color-paper-3);color:var(--color-ink)}.icon-btn:focus-visible{border-radius:var(--radius-pill)}.field{gap:var(--space-2xs);min-width:0;display:grid}.field__label{font-size:var(--text-xs);font-weight:var(--weight-strong);font-stretch:var(--stretch-head);color:var(--color-ink)}.field__hint{font-size:var(--text-xs);color:var(--color-ink-3)}.input{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);width:100%;min-height:2.75rem;color:var(--color-ink);font-size:var(--text-sm);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);padding:.625rem .875rem;line-height:1.4}@media (pointer:coarse){.input{font-size:max(16px, var(--text-sm))}}.input:hover:not(:disabled){border-color:var(--color-ink-3)}.input:focus-visible{border-color:var(--color-ink);box-shadow:0 0 0 1px var(--color-ink);outline:none}.input[aria-invalid=true]{border-color:var(--color-error);box-shadow:0 0 0 1px var(--color-error)}.input:disabled{background:var(--color-paper-2);color:var(--color-ink-2)}.input::placeholder{color:var(--color-ink-3)}textarea.input{resize:vertical;min-height:5.5rem;line-height:1.5}.select{position:relative}.select__input{appearance:none;cursor:pointer;padding-right:2.5rem}.select__chevron{pointer-events:none;color:var(--color-ink-2);position:absolute;top:50%;right:.875rem;translate:0 -50%}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;accent-color:var(--color-ink);flex:none;margin:0}fieldset{border:0;min-width:0;margin:0;padding:0}legend{padding:0}.card{padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-paper)}@media (width<=40rem){.card{padding:var(--space-sm);border-radius:var(--radius-md)}}.card__title{font-size:var(--text-lg);font-weight:var(--weight-display);font-stretch:var(--stretch-head);letter-spacing:var(--tracking-head);line-height:var(--leading-head)}.card__text{margin-top:var(--space-3xs);color:var(--color-ink-2);max-width:var(--prose-max)}.card__text+*{margin-top:var(--space-sm)}.notice{margin-bottom:var(--space-md);padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);color:var(--color-ink-2)}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.page-head__text{gap:var(--space-2xs);min-width:0;max-width:44rem;display:grid}.page-head__title{font-size:var(--text-2xl)}.page-head__lede{color:var(--color-ink-2);font-size:var(--text-md)}.page-head__actions{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.center-page{place-content:center;justify-items:center;gap:var(--space-lg);min-height:100dvh;padding:var(--space-xl) var(--gutter);text-align:center;display:grid}.center-page__logo{border-radius:var(--radius-xs);display:block}.center-page__bar{justify-content:space-between;align-items:center;gap:var(--space-md);width:min(100%,36rem);display:flex}.savebar{bottom:var(--space-sm);z-index:5;justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-md);margin-top:var(--space-md);padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md);border:var(--rule-hair) solid color-mix(in oklch, var(--color-rule-strong) 55%, transparent);border-radius:var(--radius-md);background:color-mix(in oklch, var(--color-paper) 86%, transparent);-webkit-backdrop-filter:blur(10px)saturate(150%);backdrop-filter:blur(10px)saturate(150%);box-shadow:var(--shadow-float);flex-wrap:wrap;display:flex;position:sticky}.savebar__text{gap:var(--space-3xs);flex:18rem;min-width:0;display:grid}.savebar__note{color:var(--color-ink-2);font-size:var(--text-xs)}.savebar__actions{align-items:center;gap:var(--space-sm);margin-left:auto;display:flex}.savebar__dirty{color:var(--color-ink-2);font-size:var(--text-xs);white-space:nowrap}.savebar__dirty:before{content:"";background:var(--color-ink);vertical-align:.05em;border-radius:50%;width:.5rem;height:.5rem;margin-right:.4rem;display:inline-block}@media (width<=40rem){.savebar{padding:var(--space-sm);box-shadow:none;background:var(--color-paper-2);position:static}.savebar__actions{justify-content:space-between;width:100%}}.status-line{min-height:0;font-size:var(--text-xs);font-weight:520}.status-line:empty{display:none}.status-line--ok{color:var(--color-ok)}.status-line--muted{color:var(--color-ink-3)}.error-text{color:var(--color-error);font-size:var(--text-xs);font-weight:520}.loading{align-items:center;gap:var(--space-2xs);padding:var(--space-lg) 0;color:var(--color-ink-3);display:flex}.loading__dot{background:var(--color-ink-3);width:.5rem;height:.5rem;animation:pulse 1.2s var(--ease-in-out) infinite;border-radius:50%}@keyframes pulse{50%{opacity:.25}}.load-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);color:var(--color-error);flex-wrap:wrap;display:flex}.empty{justify-items:start;gap:var(--space-sm);padding:var(--space-xl) var(--space-md);border:var(--rule-hair) dashed var(--color-rule-strong);border-radius:var(--radius-lg);background:var(--color-paper-2);color:var(--color-ink-2);display:grid}.empty--page{text-align:center;justify-items:center;max-width:36rem}.empty__title{color:var(--color-ink);font-size:var(--text-xl)}.load-more{justify-items:center;gap:var(--space-2xs);margin-top:var(--space-md);display:grid}.badge{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-paper);font-size:var(--text-2xs);font-weight:var(--weight-strong);font-stretch:var(--stretch-head);white-space:nowrap;align-items:center;gap:.375rem;padding:.1875rem .625rem;line-height:1.4;display:inline-flex}.badge__dot{background:var(--color-ink-3);border-radius:50%;width:.5rem;height:.5rem}.badge--ok .badge__dot{background:var(--color-ok)}.badge--stopped .badge__dot{background:var(--color-error)}.badge--pending .badge__dot{background:var(--color-ink-3);animation:pulse 1.6s var(--ease-in-out) infinite}.badge--edited{background:var(--color-mark);border-color:#0000}.chips{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.chip{border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-pill);background:var(--color-paper);align-items:center;gap:.125rem;max-width:100%;min-height:2.25rem;padding:0 .25rem 0 .875rem;font-weight:520;display:inline-flex}.chip>span{overflow-wrap:anywhere}.chip__remove{border-radius:var(--radius-pill);width:1.75rem;height:1.75rem;color:var(--color-ink-2);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.chip__remove:hover{background:var(--color-paper-3);color:var(--color-ink)}.chip__remove:focus-visible{border-radius:var(--radius-pill);outline-offset:1px}.chip__remove .icon{width:.875rem;height:.875rem}.tint-mint{background-color:var(--color-mint)}.tint-sky{background-color:var(--color-sky)}.tint-lilac{background-color:var(--color-lilac)}.tint-peach{background-color:var(--color-peach)}.tint-lemon{background-color:var(--color-lemon)}.tint-rose{background-color:var(--color-rose)}.confirm{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:inline-flex}.confirm__question{font-size:var(--text-xs);font-weight:560}.toolbar{align-items:flex-end;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.field--grow{flex:16rem}.search{position:relative}.search__icon{color:var(--color-ink-3);pointer-events:none;position:absolute;top:50%;left:.875rem;translate:0 -50%}.search__input{padding-left:2.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.not-found{justify-items:center;gap:var(--space-sm);max-width:32rem;padding-block:var(--space-xl);text-align:center;margin-inline:auto;display:grid}.not-found__code{font-size:var(--text-display-s);font-weight:var(--weight-display);font-stretch:var(--stretch-display);letter-spacing:var(--tracking-display);line-height:var(--leading-tight);background:linear-gradient(transparent 58%, var(--color-mark) 58%, var(--color-mark) 92%, transparent 92%);padding:0 .15em}.not-found__title{font-size:var(--text-2xl)}.not-found__text{margin-bottom:var(--space-2xs);color:var(--color-ink-2)}
