@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}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-cyrillic-ext-wght-normal.D4X5GqEv.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-cyrillic-wght-normal.CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-vietnamese-wght-normal.U01xdrZh.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-latin-ext-wght-normal.CXYtwYOx.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/_astro/nunito-latin-wght-normal.BzFMHfZw.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}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/caveat-cyrillic-ext-600-normal.DDEJyoof.woff2)format("woff2"),url(/_astro/caveat-cyrillic-ext-600-normal.BLVNc-Ct.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/caveat-cyrillic-600-normal.Ba_MyzgW.woff2)format("woff2"),url(/_astro/caveat-cyrillic-600-normal.CqH0c_uj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/caveat-latin-ext-600-normal.DDJRD6ps.woff2)format("woff2"),url(/_astro/caveat-latin-ext-600-normal.shBvSnoU.woff)format("woff");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:Caveat;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/caveat-latin-600-normal.zlTlWIYU.woff2)format("woff2"),url(/_astro/caveat-latin-600-normal.DUjB8dgm.woff)format("woff");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-scheme:dark;--canvas:#151a22;--canvas-grid:#303947;--surface:#202732;--surface-hover:#2a3443;--surface-border:#3a4656;--text-primary:#f1f4f9;--text-secondary:#aab6c8;--accent:#a5b2ff;--accent-ink:#151a22;--accent-tint:#a5b2ff2e;--guide:#ff80bf;--success:#75d7ac;--warning:#ffd180;--danger:#ff8793;--pastel-ink:#202735;--font-ui:"Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--font-board:"Nunito Variable", Nunito, "Inter Variable", system-ui, sans-serif;--font-hand:Caveat, "Nunito Variable", cursive;--r-bar:16px;--r-item:8px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s6:24px;--s8:32px;--target:40px;--shadow:0 10px 30px #05080e73;--ease:cubic-bezier(.2, .7, .2, 1)}@media (pointer:coarse){:root{--target:44px}}*{box-sizing:border-box}[hidden]{display:none!important}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--text-primary);font:14px/20px var(--font-ui);-webkit-font-smoothing:antialiased}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}svg.icon,.icon-btn svg,.btn svg,.menu-item svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.btn{justify-content:center;align-items:center;gap:var(--s2);min-height:var(--target);border:1px solid var(--surface-border);background:var(--surface);padding:0 var(--s4);border-radius:var(--r-item);cursor:pointer;color:var(--text-primary);white-space:nowrap;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-hover)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.06)}.btn.danger{background:var(--danger);border-color:var(--danger);color:var(--accent-ink)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{width:var(--target);height:var(--target);border-radius:var(--r-item);color:var(--text-primary);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.icon-btn:hover{background:var(--surface-hover)}.icon-btn[aria-pressed=true]{background:var(--accent-tint);color:var(--text-primary);box-shadow:inset 0 0 0 1px #a5b2ff73}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.input{width:100%;min-height:var(--target);background:var(--canvas);border:1px solid var(--surface-border);border-radius:var(--r-item);padding:0 var(--s3)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}select.input{padding-right:var(--s6)}kbd{background:var(--canvas);border:1px solid var(--surface-border);color:var(--text-secondary);border-bottom-width:2px;border-radius:4px;padding:1px 5px;font:12px/16px ui-monospace,SFMono-Regular,Menlo,monospace}.meta{color:var(--text-secondary);font-size:12px;line-height:16px}.error{color:var(--danger)}.chip{background:var(--surface-hover);color:var(--text-secondary);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:2px 8px;font-size:12px;line-height:16px;display:inline-flex}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);z-index:50;color:var(--text-primary);border:1px solid var(--surface-border);font:500 12px/16px var(--font-ui);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s var(--ease), transform .12s var(--ease);background:#0d1117;border-radius:6px;padding:5px 8px;transition-delay:0s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(2px)}[data-tip-pos=right]:after{top:50%;bottom:auto;left:calc(100% + 10px);transform:translateY(-50%)translate(-2px)}[data-tip-pos=bottom]:after{top:calc(100% + 8px);bottom:auto;transform:translate(-50%)translateY(-2px)}[data-tip-pos=left]:after{inset:50% calc(100% + 10px) auto auto;transform:translateY(-50%)translate(2px)}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;transition-delay:.35s;transform:translate(-50%)}[data-tip-pos=right]:hover:after,[data-tip-pos=right]:focus-visible:after,[data-tip-pos=left]:hover:after,[data-tip-pos=left]:focus-visible:after{transform:translateY(-50%)}[data-tip]:focus-visible:after{transition-delay:0s}@media (pointer:coarse){[data-tip]:after{display:none}}.modal{background:var(--surface);color:var(--text-primary);border:1px solid var(--surface-border);border-radius:var(--r-bar);padding:var(--s6);width:min(480px,100vw - 32px);max-height:calc(100dvh - 64px);box-shadow:var(--shadow)}.modal.wide{width:min(720px,100vw - 32px)}.modal::backdrop{background:#080b1099}.modal[open]{animation:pop .14s var(--ease)}.modal h2{margin:0;font-size:16px;line-height:22px}.modal-head{justify-content:space-between;align-items:center;gap:var(--s3);margin:calc(-1 * var(--s2)) calc(-1 * var(--s2)) var(--s3) 0;display:flex}.form{gap:var(--s4);display:grid}.field{gap:6px;font-size:14px;display:grid}.field>span{color:var(--text-secondary);font-size:12px;font-weight:550;line-height:16px}.check{align-items:center;gap:var(--s2);display:flex}.actions{justify-content:flex-end;gap:var(--s2);flex-wrap:wrap;display:flex}.actions.start{justify-content:flex-start}@keyframes pop{0%{opacity:0;transform:translateY(4px)scale(.99)}}@keyframes fade{0%{opacity:0}}@media (width<=640px){.modal.sheet-sm{border-radius:var(--r-bar) var(--r-bar) 0 0;width:100vw;max-width:100vw;padding-bottom:calc(var(--s6) + env(safe-area-inset-bottom));margin:auto 0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.menu{background:var(--surface);border:1px solid var(--surface-border);box-shadow:var(--shadow);min-width:240px;animation:pop .12s var(--ease);border-radius:12px;padding:6px;display:grid}.menu-group+.menu-group{border-top:1px solid var(--surface-border);margin-top:6px;padding-top:6px}.menu-label{color:var(--text-secondary);padding:6px 10px 4px;font-size:12px;font-weight:550;line-height:16px}.menu-item{text-align:left;border-radius:var(--r-item);cursor:pointer;width:100%;min-height:36px;color:var(--text-primary);background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;font-size:14px;line-height:20px;text-decoration:none;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-hover);outline:none}.menu-item:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.menu-item:disabled{opacity:.45;cursor:not-allowed}.menu-item.danger{color:var(--danger)}.menu-item kbd{margin-left:auto}.menu-item .check-mark{color:var(--accent);margin-left:auto}.app-head{justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s3) var(--s6);border-bottom:1px solid var(--surface-border);background:var(--surface);display:flex}.workspace{align-items:center;gap:var(--s3);font-weight:650;display:flex}.logo{width:28px;height:28px}.account{position:relative}.avatar{width:28px;height:28px;color:var(--pastel-ink);background:#d6c7ff;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.account .menu{z-index:20;position:absolute;top:calc(100% + 6px);right:0}.page{max-width:1120px;padding:var(--s8) var(--s6) 64px;margin:0 auto}.page-title{letter-spacing:-.01em;margin:0;font-size:28px;font-weight:700;line-height:34px}.toolrow{gap:var(--s3);margin:var(--s6) 0 var(--s4);flex-wrap:wrap;align-items:center;display:flex}.toolrow .search{flex:260px;position:relative}.toolrow .search svg{color:var(--text-secondary);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.toolrow .search .input{padding-left:40px}.section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin:var(--s6) 0 var(--s3);font-size:12px;font-weight:650;line-height:16px}.board-grid{gap:var(--s4);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (width<=1023px){.board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=639px){.board-grid{grid-template-columns:1fr}.page{padding:var(--s6) var(--s4) 48px}.app-head{padding:var(--s3) var(--s4)}}.board-card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--r-bar);transition:border-color .12s var(--ease), transform .12s var(--ease);position:relative;overflow:hidden}.board-card:hover,.board-card:focus-within{border-color:var(--accent)}.board-card .open{color:inherit;text-decoration:none;display:block}.board-card .open:focus-visible{outline:none}.board-card .open:focus-visible .preview{box-shadow:inset 0 0 0 2px var(--accent)}.preview{aspect-ratio:16/9;background:var(--canvas);border-bottom:1px solid var(--surface-border);width:100%;display:block}.preview svg{width:100%;height:100%;display:block}.card-body{padding:var(--s3) var(--s4) var(--s4);gap:4px;padding-right:56px;display:grid}.card-title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:16px;font-weight:650;line-height:22px;display:-webkit-box;overflow:hidden}.card-meta{gap:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.card-menu{right:var(--s2);bottom:var(--s3);position:absolute}.card-menu .menu{z-index:20;position:absolute;bottom:calc(100% + 4px);right:0}.skeleton .preview,.skeleton .bar{background:linear-gradient(90deg, var(--surface-hover), #313c4d, var(--surface-hover));background-size:200% 100%;animation:1.2s linear infinite shimmer}.skeleton .bar{border-radius:4px;height:14px}@keyframes shimmer{to{background-position:-200% 0}}.empty-state{text-align:center;justify-items:center;gap:var(--s4);padding:56px var(--s6);border:1px dashed var(--surface-border);border-radius:var(--r-bar);background:radial-gradient(circle, var(--canvas-grid) 1px, transparent 1.5px) 0 0 / 24px 24px, var(--canvas);display:grid}.empty-state h2{margin:0;font-size:22px;line-height:28px}.empty-state p{color:var(--text-secondary);max-width:44ch;margin:0}.notice{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--surface-border);background:var(--surface);border-radius:12px;display:flex}.notice.danger{border-color:#ff879380}.notice svg{color:var(--danger)}.more{margin-top:var(--s6);justify-content:center;display:flex}.choice-grid{gap:var(--s3);grid-template-columns:1fr 1fr;display:grid}@media (width<=480px){.choice-grid{grid-template-columns:1fr}}.choice{gap:var(--s2);padding:var(--s2);border:1px solid var(--surface-border);cursor:pointer;background:var(--canvas);border-radius:12px;display:grid;position:relative}.choice:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choice input{opacity:0;position:absolute}.choice .thumb{aspect-ratio:16/9;border-radius:var(--r-item);background:var(--canvas);overflow:hidden}.choice .thumb svg{width:100%;height:100%;display:block}.choice strong{padding:0 4px;font-size:14px}.choice .meta{padding:0 4px 4px}.choice .tick{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);border-radius:50%;place-items:center;display:none;position:absolute;top:14px;right:14px}.choice:has(input:checked) .tick{display:grid}.choice .tick svg{stroke-width:3px;width:14px;height:14px}.login{max-width:400px;padding:0 var(--s4);gap:var(--s4);margin:12vh auto;display:grid}.login .card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--r-bar);padding:var(--s6)}.page .card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--r-bar);gap:var(--s3);margin-bottom:20px;padding:20px;display:grid}.page .card h2,.login .card h2{margin:0;font-size:18px;line-height:24px}.table{border-collapse:collapse;width:100%;font-size:14px}.table th,.table td{text-align:left;padding:var(--s3) var(--s2);border-bottom:1px solid var(--surface-border);vertical-align:middle}.table th{color:var(--text-secondary);font-weight:600}.row-actions{gap:var(--s2);flex-wrap:wrap;justify-content:flex-end;display:flex}@media (width<=640px){.table thead{display:none}.table tr{padding:var(--s3) 0;border-bottom:1px solid var(--surface-border);display:grid}.table td{border:0;padding:2px 0}.row-actions{justify-content:flex-start}}.modal .choice-grid{max-height:min(56vh,560px);padding:2px;overflow:auto}.segmented{border:1px solid var(--surface-border);border-radius:var(--r-item);background:var(--canvas);gap:2px;margin:0;padding:2px;display:flex}.segmented label{min-height:40px;padding:0 var(--s3);border-radius:calc(var(--r-item) - 2px);cursor:pointer;white-space:nowrap;flex:1;justify-content:center;align-items:center;font-weight:550;display:flex}.segmented label.active{background:var(--accent-tint);box-shadow:inset 0 0 0 1px #a5b2ff73}.segmented label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.segmented input{opacity:0;pointer-events:none;position:absolute}
