@font-face{font-family:VS Sans;src:url(/fonts/NanumSquare-300.woff2) format("woff2");font-weight:300;font-display:swap;ascent-override:90%;descent-override:20%;line-gap-override:0%}@font-face{font-family:VS Sans;src:url(/fonts/NanumSquare-400.woff2) format("woff2");font-weight:400;font-display:swap;ascent-override:90%;descent-override:20%;line-gap-override:0%}@font-face{font-family:VS Sans;src:url(/fonts/NanumSquare-700.woff2) format("woff2");font-weight:700;font-display:swap;ascent-override:90%;descent-override:20%;line-gap-override:0%}@font-face{font-family:VS Sans;src:url(/fonts/NanumSquare-800.woff2) format("woff2");font-weight:800;font-display:swap;ascent-override:90%;descent-override:20%;line-gap-override:0%}@font-face{font-family:RoundControl;src:url(/fonts/RoundControl-Regular.woff2) format("woff2");font-weight:400;font-display:swap;ascent-override:90%;descent-override:20%;line-gap-override:0%}:root{--vw-accent:#0055FF;--vw-accent-soft:#7aa2ff;--vw-accent-fill:rgba(0,85,255,.24);--vw-accent-wash:rgba(0,85,255,.12);--vw-app:#0b0b0d;--vw-panel:#151518;--vw-bar:rgba(21,21,24,.72);--vw-pop:rgba(36,36,42,.96);--vw-box:rgba(255,255,255,.05);--vw-box-2:rgba(255,255,255,.085);--vw-btn:rgba(255,255,255,.09);--vw-on:rgba(255,255,255,.17);--vw-hover:rgba(255,255,255,.07);--vw-field:rgba(0,0,0,.26);--vw-field-line:rgba(255,255,255,.15);--vw-gantt:rgba(255,255,255,.34);--vw-text:#f5f5f7;--vw-text-2:#d2d2d8;--vw-text-3:#a2a2aa;--vw-text-4:#74747c;--vw-line:rgba(255,255,255,.08);--vw-good:#22c58b;--vw-warn:#ff9f0a;--vw-crit:#ff453a;--vw-r-panel:36px;--vw-r-box:16px;--vw-r-in:10px;--vw-r-ctrl:14px;--vw-r-pop:22px;--vw-r-chip:8px;--vw-pad:20px;--vw-pad-in:6px;--vw-gap:8px;--vw-sep:12px;--vw-h:36px;--vw-ic:18px;--vw-hd:72px;--vw-blur:blur(24px) saturate(1.6);--vw-shadow-pop:0 18px 44px rgba(0,0,0,.5);--vw-on-shadow:none;--vw-card-shadow:none;--vw-font:"VS Sans",-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--vw-xb:800;--vw-b:700;--vw-r:400;--vw-l:300;--vw-disp:"RoundControl",var(--vw-font);--vw-mono:ui-monospace,"SF Mono",Menlo,monospace;color-scheme:dark}:root[data-theme=light]{--vw-accent-soft:#0055FF;--vw-accent-fill:rgba(0,85,255,.15);--vw-accent-wash:rgba(0,85,255,.07);--vw-app:#f1f2f5;--vw-panel:#ffffff;--vw-bar:rgba(255,255,255,.74);--vw-pop:rgba(255,255,255,.97);--vw-box:rgba(18,20,28,.045);--vw-box-2:#ffffff;--vw-btn:rgba(18,20,28,.065);--vw-on:#ffffff;--vw-hover:rgba(18,20,28,.055);--vw-field:#ffffff;--vw-field-line:rgba(60,66,76,.26);--vw-gantt:rgba(18,20,28,.30);--vw-text:#17171B;--vw-text-2:#35373d;--vw-text-3:#666971;--vw-text-4:#93969e;--vw-line:rgba(0,0,0,.08);--vw-shadow-pop:0 16px 40px rgba(20,24,36,.16);--vw-on-shadow:0 1px 3px rgba(20,24,36,.12);--vw-card-shadow:0 1px 2px rgba(20,24,36,.07);color-scheme:light}*{box-sizing:border-box}@supports (corner-shape:superellipse(2)){*,:after,:before{corner-shape:superellipse(1.7)}.dot{corner-shape:round}}body,html{height:100%}body{margin:0;background:var(--vw-app);color:var(--vw-text-2);font:400 14px/1.6 var(--vw-font);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--vw-field-line);outline-offset:1px}.hov{transition:background-color .14s,filter .14s}.ack.sm.hov:hover,.file .btn.hov:hover,.file.hov:hover,.row.hov:hover,.tb .btn.hov:hover{background-color:var(--vw-hover)}.ack.hov:hover,.btn.hov:hover,.evt.hov:hover,.gantt.hov:hover,.lab.hov:hover,.rec.hov:hover{filter:brightness(1.2)}.ack.sm.hov:hover,.file .btn.hov:hover,.tb .btn.hov:hover{filter:none}:root[data-theme=light] .btn.hov:hover,:root[data-theme=light] .evt.hov:hover,:root[data-theme=light] .gantt.hov:hover,:root[data-theme=light] .lab.hov:hover,:root[data-theme=light] .rec.hov:hover{filter:brightness(.95)}:root[data-theme=light] .btn.cta.hov:hover{filter:brightness(1.12)}.side>.acts,.side>.hd,.tabbar,.tb,main>.hd{background:var(--vw-bar);backdrop-filter:var(--vw-blur);-webkit-backdrop-filter:var(--vw-blur)}.app{display:grid;grid-template-columns:248px minmax(0,1fr) 360px;grid-gap:var(--vw-gap);gap:var(--vw-gap);height:100dvh;padding:var(--vw-gap)}.panel{background:var(--vw-panel);border-radius:var(--vw-r-panel);padding:var(--vw-pad);display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}main.panel{padding:0;overflow-y:auto;overflow-x:hidden}main>.hd{position:-webkit-sticky;position:sticky;top:0;z-index:6;padding:18px var(--vw-pad);min-height:var(--vw-hd)}.view{flex:1 0 auto;padding:4px var(--vw-pad) 28px;min-width:0}.xscroll{overflow-x:auto}.side{padding:0;overflow-y:auto}.side>.hd{position:-webkit-sticky;position:sticky;top:0;z-index:4;padding:18px var(--vw-pad) 14px}.side>.body{flex:1 0 auto;padding:0 var(--vw-pad) 8px;font-size:14px}.side>.acts{position:-webkit-sticky;position:sticky;bottom:0;z-index:4;display:flex;justify-content:flex-end;gap:var(--vw-gap);padding:14px var(--vw-pad) 18px}@media(max-width:1100px){.app{grid-template-columns:248px minmax(0,1fr)}:root{--vw-hd:118px}.side{display:none}.side.open{display:flex;position:fixed;right:var(--vw-gap);top:var(--vw-gap);bottom:var(--vw-gap);width:min(360px,calc(100% - 16px));z-index:30;box-shadow:var(--vw-shadow-pop)}.hd{flex-wrap:wrap;row-gap:10px}.hd .t{flex:1 1}main>.hd>.seg{order:9;width:100%;grid-auto-columns:1fr}}.btn.only-mid{display:none}@media(max-width:1100px){.btn.only-mid{display:inline-flex}}.btn.docclose{visibility:hidden}@media(max-width:1100px){.btn.docclose{visibility:visible}}.ic{width:var(--vw-ic);height:var(--vw-ic);stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.ic,.sep{flex:none}.sep{height:1px;background:var(--vw-line);margin:var(--vw-sep) 0}.stack{display:flex;flex-direction:column;gap:2px}.scroll{overflow:auto;min-height:0}.ml{font-size:11px;font-weight:var(--vw-b);letter-spacing:.02em;color:var(--vw-text-3)}.brand{display:flex;align-items:center;gap:8px;padding:2px 10px 16px;flex:none}.brand img{height:10px}:root:not([data-theme=light]) .brand img{filter:invert(1)}.brand b{font:400 14px/10px var(--vw-disp);letter-spacing:.02em;color:var(--vw-text);display:inline-block;transform:skewX(-11deg);transform-origin:0 100%;-webkit-text-stroke:.45px currentColor}.row{height:var(--vw-h);display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:var(--vw-r-ctrl);font-size:14px;font-weight:var(--vw-r);color:var(--vw-text-2);width:100%;text-align:left;flex:none}.row.on{background:var(--vw-on);color:var(--vw-text);font-weight:var(--vw-b);box-shadow:var(--vw-on-shadow)}.row .n{margin-left:auto;font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);display:flex;gap:8px;align-items:center}.row .n,.row>.tx{white-space:nowrap}.row>.tx{overflow:hidden;text-overflow:ellipsis;min-width:0}.kbd{font:11px var(--vw-mono);color:var(--vw-text-3);border-radius:6px;padding:0 6px;line-height:19px;margin-left:auto}.btn,.kbd{background:var(--vw-btn);flex:none}.btn{height:var(--vw-h);padding:0 14px;border-radius:var(--vw-r-ctrl);font-size:14px;font-weight:var(--vw-r);color:var(--vw-text);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.cta{background:var(--vw-accent);color:#fff;font-weight:var(--vw-xb)}.btn.cta .kbd{background:rgba(255,255,255,.22);color:#fff}.btn.sq{width:var(--vw-h);padding:0}.btn .kbd{margin:0}.btn:disabled,.seg button:disabled{opacity:.38;cursor:default}.in{height:var(--vw-h);border-radius:var(--vw-r-ctrl);background:var(--vw-field);border:1px solid var(--vw-field-line);padding:0 12px;font-size:14px;font-weight:var(--vw-r);color:var(--vw-text);outline:0;min-width:0}.in:disabled{opacity:.4}.in.empty{color:var(--vw-text-4)}.doc .title::placeholder,.in::placeholder,.pal input::placeholder{font-weight:var(--vw-l);color:var(--vw-text-4)}select.in{padding:0 30px 0 12px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 16 16' fill='none' stroke='%238e8e93' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 6.5 8 10l3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}input[type=date].in,select.in{cursor:pointer}.search{height:var(--vw-h);display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:var(--vw-r-ctrl);background:var(--vw-field);border:1px solid var(--vw-field-line);color:var(--vw-text-4);font-size:14px;font-weight:var(--vw-l);width:100%;margin-bottom:var(--vw-sep);flex:none}.search.hov:hover{filter:brightness(1.25)}.hd{display:flex;align-items:center;gap:var(--vw-gap);flex:none}.hd .t{font-size:18px;font-weight:var(--vw-xb);color:var(--vw-text);letter-spacing:-.01em;margin-right:auto;min-width:0;line-height:1.3}.hd .t small,.hd .t>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hd .t small{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);letter-spacing:0;margin-top:3px}.side .hd .t{font-size:16px}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:62px;padding:3px;grid-gap:2px;gap:2px;border-radius:var(--vw-r-ctrl);background:var(--vw-box);height:var(--vw-h);flex:none}.seg.fill{grid-auto-columns:1fr;width:100%}.seg button{border-radius:11px;font-size:14px;font-weight:var(--vw-r);color:var(--vw-text-3)}.seg button.on{background:var(--vw-on);color:var(--vw-text);font-weight:var(--vw-b);box-shadow:var(--vw-on-shadow)}.seg button:not(.on):not(:disabled):hover{background:var(--vw-hover)}.chip{font-weight:var(--vw-r);padding:0 7px 1px;line-height:19px;color:var(--vw-text-3);white-space:nowrap;display:inline-block}.av,.chip{font-size:11px;background:var(--vw-btn);border-radius:var(--vw-r-chip)}.av{width:22px;height:22px;display:inline-grid;place-items:center;font-weight:var(--vw-b);color:var(--vw-text-2);flex:none}.av.lg{width:30px;height:30px;border-radius:var(--vw-r-in);font-size:12px}.dot{width:7px;height:7px;border-radius:50%;flex:none;display:inline-block}.empty{color:var(--vw-text-3);font-size:14px;font-weight:var(--vw-l);padding:16px 6px}.late{color:var(--vw-crit)}.untitled{color:var(--vw-text-4)}.ack{height:var(--vw-h);min-width:var(--vw-h);padding:0 10px;border-radius:var(--vw-r-ctrl);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:var(--vw-b);color:var(--vw-text-3);background:var(--vw-btn);flex:none}.ack.on{background:var(--vw-text);color:var(--vw-panel)}.ack.sm{height:28px;min-width:28px;padding:0 8px;border-radius:var(--vw-r-in);background:none}.ack.sm.on{background:var(--vw-text)}.ack .ic{stroke-width:2.2}.ackn{display:inline-flex;align-items:center;gap:3px}.ackn .ic{width:13px;height:13px;stroke-width:2.2}.popwrap{position:relative;display:inline-flex}.pop{position:absolute;top:calc(100% + 8px);right:0;z-index:45;min-width:260px;background:var(--vw-pop);border-radius:var(--vw-r-pop);box-shadow:var(--vw-shadow-pop);padding:var(--vw-pad-in);display:flex;flex-direction:column;gap:2px}.pop.left{right:auto;left:0}.pop .ml{padding:10px 12px 4px}.pop .row,.tip{border-radius:var(--vw-r-box)}.tip{position:fixed;z-index:80;max-width:280px;background:var(--vw-pop);box-shadow:var(--vw-shadow-pop);padding:10px 14px;font-size:12px;font-weight:var(--vw-l);line-height:1.55;color:var(--vw-text-3);pointer-events:none}.tip b{display:flex;align-items:center;gap:8px;color:var(--vw-text);font-size:14px;font-weight:var(--vw-b);margin-bottom:2px}.tip b .kbd{margin-left:auto}.toast{left:50%;bottom:28px;transform:translateX(-50%);background:var(--vw-pop);border-radius:var(--vw-r-box);padding:10px 16px;font-size:14px;color:var(--vw-text);box-shadow:var(--vw-shadow-pop);z-index:70}.toast,.veil{position:fixed}.veil{inset:0;z-index:50;background:rgba(0,0,0,.3);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:start center;padding-top:13vh}.pal{width:min(660px,calc(100% - 32px));background:var(--vw-pop);border-radius:var(--vw-r-pop);box-shadow:var(--vw-shadow-pop);padding:var(--vw-pad-in)}.palhead{display:flex;align-items:center;gap:var(--vw-gap)}.palclose{display:none}.pal input{flex:1 1;min-width:0;height:46px;border:0;outline:0;background:none;font-size:15px;padding:0 14px;color:var(--vw-text)}.pal .ml{padding:10px 12px 4px}.pal mark{background:var(--vw-accent-fill);color:inherit;border-radius:4px}.pal .res{max-height:52vh;overflow:auto}.pal .row{height:auto;min-height:var(--vw-h);padding:7px 12px;border-radius:var(--vw-r-box)}.pal .row.cur{background:var(--vw-on);color:var(--vw-text);font-weight:var(--vw-b);box-shadow:var(--vw-on-shadow)}.pal .sn{display:block;font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pal .col2{min-width:0;flex:1 1}.pal .foot{display:flex;gap:14px;padding:10px 12px 6px;border-top:1px solid var(--vw-line);margin-top:6px;font-size:11px;font-weight:var(--vw-l);color:var(--vw-text-3)}.big{font:800 34px/1.15 var(--vw-font);letter-spacing:-.02em;color:var(--vw-text)}.big small{font:300 14px var(--vw-font);color:var(--vw-text-3);margin-left:10px}.now{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--vw-gap);gap:var(--vw-gap);margin:16px 0 var(--vw-gap)}.now>button{background:var(--vw-box);border-radius:var(--vw-r-box);padding:14px 16px;text-align:left;display:block}.now>button.hov:hover{background:var(--vw-box-2)}.now>button.on{background:var(--vw-on);box-shadow:var(--vw-on-shadow)}.now b{display:block;font:800 24px/1.3 var(--vw-font);letter-spacing:-.01em;color:var(--vw-text);margin-top:2px}.qs{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--vw-gap);gap:var(--vw-gap)}.q{background:var(--vw-box);border-radius:var(--vw-r-box);padding:var(--vw-pad-in);min-width:0}.q>.ml{padding:10px 10px 6px;display:flex;justify-content:space-between}.q .row{border-radius:var(--vw-r-in)}.q.det{margin-bottom:var(--vw-gap)}.q .ml.day{padding:10px 10px 2px;color:var(--vw-text-4)}.q .row .tm{flex:none;width:44px;font-weight:var(--vw-b);color:var(--vw-text)}.q .row .tm.wide{width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.q .row .tm.wide{width:84px}}.q .add .btn.cta{flex:none}.foot{display:flex;align-items:center;gap:var(--vw-gap);margin-top:var(--vw-sep);font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3)}.foot>span{margin-right:auto}.q .none{padding:2px 10px 12px;font-size:14px;font-weight:var(--vw-l);color:var(--vw-text-3)}.q .add{display:flex;gap:var(--vw-gap);padding:6px 0 0}.q .add .in{flex:1 1}.q .add .btn,.q .add .in{border-radius:var(--vw-r-in)}.q .pair{display:flex;gap:2px}.q .pair .row{flex:1 1;min-width:0;width:auto}.q .pair .btn{border-radius:var(--vw-r-in)}@media(max-width:860px){.qs{grid-template-columns:1fr}.now{grid-template-columns:1fr 1fr}}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);grid-gap:var(--vw-gap);gap:var(--vw-gap);overflow-x:auto;min-height:calc(100dvh - var(--vw-hd) - 64px)}.col{background:var(--vw-box);border-radius:var(--vw-r-box);padding:var(--vw-pad-in);display:flex;flex-direction:column;gap:var(--vw-pad-in);transition:background-color .14s;min-width:0}.col.over{background:var(--vw-hover)}.col>.ml{display:flex;justify-content:space-between;padding:10px 10px 6px}.rec{display:block;width:100%;text-align:left;background:var(--vw-box-2);border-radius:var(--vw-r-in);padding:12px 14px;font-size:14px;font-weight:var(--vw-b);color:var(--vw-text);cursor:-webkit-grab;cursor:grab;box-shadow:var(--vw-card-shadow)}.rec.sel{background:var(--vw-accent-fill)}.rec.drag{opacity:.4}.rec .m{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:start;margin-top:10px;font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3)}.rec .m .fl{display:flex;gap:6px 8px;align-items:center;flex-wrap:wrap;min-width:0}.rec .m .due{line-height:22px}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;padding:0 12px 8px}.tbl td,.tbl th{white-space:nowrap}.tbl td{height:42px;padding:0 12px;border-top:1px solid var(--vw-line);font-weight:var(--vw-r);color:var(--vw-text-2)}.tbl td.t{width:100%;white-space:normal;color:var(--vw-text)}.tbl tr.sel td{background:var(--vw-accent-wash)}.tbl tbody tr{cursor:pointer}.tbl tbody tr:not(.sel):not(.flat):hover td{background:var(--vw-hover)}.tbl .mono{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3)}.bar-row{display:flex;gap:var(--vw-gap);margin-bottom:var(--vw-sep);align-items:center;flex-wrap:wrap}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:var(--vw-pad-in);gap:var(--vw-pad-in)}.cal .dow{padding:2px 10px 4px}.cal .day{background:var(--vw-box);border-radius:var(--vw-r-in);min-height:108px;padding:var(--vw-pad-in);display:flex;flex-direction:column;gap:3px;min-width:0}.cal .day.out{opacity:.38}.cal .day.today{background:var(--vw-on)}.cal .num{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);padding:2px 6px}.cal .day.today .num{color:var(--vw-text);font-weight:var(--vw-xb)}.evt{display:flex;gap:6px;align-items:center;height:24px;padding:0 8px;border-radius:7px;background:var(--vw-box-2);font-size:12px;font-weight:var(--vw-r);color:var(--vw-text);width:100%;text-align:left;min-width:0;box-shadow:var(--vw-card-shadow)}.evt.sel{background:var(--vw-accent-fill)}.evt.done{opacity:.5}.evt span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tl{display:grid;grid-gap:3px 0;gap:3px 0;min-width:940px}.tl,.tl .lab{align-items:center}.tl .lab{position:-webkit-sticky;position:sticky;left:0;z-index:2;height:var(--vw-h);display:flex;gap:10px;padding:0 12px;font-size:14px;font-weight:var(--vw-r);color:var(--vw-text);border-radius:var(--vw-r-in);min-width:0;text-align:left;background:var(--vw-panel);box-shadow:inset 0 0 0 100px var(--vw-box)}.tl .lab.sel{box-shadow:inset 0 0 0 100px var(--vw-accent-fill)}.tl .lab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl .dh{font-size:11px;font-weight:var(--vw-l);color:var(--vw-text-3);text-align:center;height:24px;line-height:24px}.tl .dh.we{opacity:.45}.tl .dh.today{color:var(--vw-text);font-weight:var(--vw-xb);background:var(--vw-on);border-radius:7px}.tl .mh{font-size:12px;font-weight:var(--vw-b);color:var(--vw-text-3);padding-left:4px;height:22px}.gantt{height:22px;border-radius:7px;background:var(--vw-gantt);margin:0 1px;min-width:0}.gantt.done{opacity:.4}.gantt.sel{background:var(--vw-accent)}.gantt.late{background:var(--vw-crit);opacity:.8}.tl .todayline{background:var(--vw-box);border-radius:7px;align-self:stretch}.stream{max-width:880px}.daysep{display:flex;align-items:center;gap:12px;margin:var(--vw-sep) 0 6px;font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3)}.daysep:after,.daysep:before{content:"";flex:1 1;height:1px;background:var(--vw-line)}.smsg{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);grid-gap:12px;gap:12px;padding:10px;border-radius:var(--vw-r-box);font-size:14px}.smsg.reply{margin-left:42px}.smsg.hit{background:var(--vw-accent-wash)}.smsg .dockbar{position:absolute;right:8px;top:6px;display:none;gap:2px;background:var(--vw-pop);border-radius:var(--vw-r-ctrl);padding:3px;box-shadow:var(--vw-shadow-pop)}.smsg:hover .dockbar{display:flex}.smsg .dockbar .btn{height:30px;border-radius:11px;background:none;padding:0 10px}.smsg .dockbar .btn.hov:hover{background:var(--vw-hover);filter:none}.smsg .docked{margin-top:6px}.docs{display:grid;grid-template-columns:248px minmax(0,1fr);grid-gap:var(--vw-pad);gap:var(--vw-pad);align-items:start}.docs .list{position:-webkit-sticky;position:sticky;top:calc(var(--vw-hd) + 4px);max-height:calc(100dvh - var(--vw-hd) - 48px);overflow:auto;border-right:1px solid var(--vw-line);padding-right:var(--vw-sep)}@media(max-width:860px){.docs{grid-template-columns:1fr}.docs .list{display:none}}.doc{max-width:740px;width:100%;font-size:15px;padding:0 4px 60px;min-width:0}.doc .title{width:100%;border:0;outline:0;background:none;font-size:26px;font-weight:var(--vw-xb);letter-spacing:-.01em;color:var(--vw-text);padding:4px 0;margin:4px 0}.doc .meta{display:flex;gap:8px;align-items:center;min-height:var(--vw-h)}.doc .meta .ml{font-weight:var(--vw-l);font-size:12px;letter-spacing:0}.doc .url{display:flex;gap:var(--vw-gap);margin:6px 0}.doc .url .in{flex:1 1}.saved{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);margin-left:auto;width:68px;text-align:right}.tb{display:flex;gap:2px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;align-items:center;position:-webkit-sticky;position:sticky;top:calc(var(--vw-hd) + 4px);z-index:3;padding:var(--vw-pad-in);margin:8px 0 12px;border-radius:var(--vw-r-box);box-shadow:inset 0 0 0 100px var(--vw-box)}.tb .btn{padding:0 11px;background:none;color:var(--vw-text-3);border-radius:var(--vw-r-in)}.tb .btn.on{background:var(--vw-on);color:var(--vw-text);font-weight:var(--vw-b);box-shadow:var(--vw-on-shadow)}.tb .tbsep{width:1px;height:18px;background:var(--vw-line);margin:0 8px;flex:none}.ProseMirror{outline:0;min-height:280px;color:var(--vw-text-2);font-weight:var(--vw-r);line-height:1.75}.ProseMirror p{margin:8px 0}.ProseMirror h1{font-size:22px}.ProseMirror h1,.ProseMirror h2{margin:22px 0 8px;font-weight:var(--vw-xb);color:var(--vw-text)}.ProseMirror h2{font-size:18px}.ProseMirror h3{font-size:15px;margin:16px 0 4px}.ProseMirror h3,.ProseMirror strong{font-weight:var(--vw-b);color:var(--vw-text)}.ProseMirror ol,.ProseMirror ul{padding-left:24px;margin:8px 0}.ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0}.ProseMirror ul[data-type=taskList] li{display:flex;gap:10px;align-items:flex-start}.ProseMirror ul[data-type=taskList] li>label{margin-top:6px;flex:none}.ProseMirror ul[data-type=taskList] li>div{flex:1 1;min-width:0}.ProseMirror ul[data-type=taskList] li[data-checked=true]>div{color:var(--vw-text-4);text-decoration:line-through}.ProseMirror input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1px solid var(--vw-field-line);border-radius:6px;background:var(--vw-field);margin:0;display:block;cursor:pointer}.ProseMirror input[type=checkbox]:checked{border-color:var(--vw-text-3);background:var(--vw-text-3) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230b0b0d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E") center/13px no-repeat}:root[data-theme=light] .ProseMirror input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E")}.ProseMirror blockquote{margin:12px 0;padding:8px 16px;border-radius:var(--vw-r-in);background:var(--vw-box)}.ProseMirror code{font:13px var(--vw-mono);background:var(--vw-btn);border-radius:6px;padding:1px 6px}.ProseMirror pre{background:var(--vw-box);border-radius:var(--vw-r-in);padding:12px 16px;overflow:auto}.ProseMirror pre code{background:none;padding:0}.ProseMirror hr{border:0;border-top:1px solid var(--vw-line);margin:18px 0}.ProseMirror a{color:var(--vw-accent-soft);text-decoration:underline;text-underline-offset:3px}.ProseMirror table{border-collapse:collapse;width:100%;margin:12px 0;table-layout:fixed;font-size:14px}.ProseMirror td,.ProseMirror th{border-top:1px solid var(--vw-line);border-bottom:1px solid var(--vw-line);padding:8px 12px;vertical-align:top;text-align:left;min-width:40px}.ProseMirror th{background:var(--vw-box);color:var(--vw-text);font-weight:var(--vw-b)}.ProseMirror td p,.ProseMirror th p{margin:0}.ProseMirror .selectedCell{background:var(--vw-accent-wash)}.ProseMirror img{max-width:100%;height:auto;border-radius:var(--vw-r-box);display:block;margin:12px 0}.ProseMirror img.ProseMirror-selectednode{outline:2px solid var(--vw-accent)}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--vw-text-4);font-weight:var(--vw-l);float:left;height:0;pointer-events:none}.kv{display:flex;justify-content:space-between;align-items:center;gap:12px;height:48px;border-top:1px solid var(--vw-line);font-size:14px}.kv:first-child{border-top:0}.kv>span:first-child{flex:none;cursor:default;font-weight:var(--vw-r);color:var(--vw-text-3)}.kv .in{width:180px;text-align:right}.kv select.in{text-align-last:right}.kv .seg{grid-auto-columns:60px}.kv .seg.w2{grid-auto-columns:98px}.msg{display:grid;grid-template-columns:30px minmax(0,1fr) auto;grid-gap:12px;gap:12px;padding:12px 0;border-top:1px solid var(--vw-line);font-size:14px;align-items:start}.msg:first-of-type{border-top:0}.msg .who,.smsg .who{font-weight:var(--vw-b);color:var(--vw-text)}.msg .who small,.smsg .who small{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);margin-left:8px}.msg .x,.smsg .x{white-space:pre-wrap;word-break:break-word;font-weight:var(--vw-r);color:var(--vw-text-2)}.cin{width:100%;margin:var(--vw-gap) 0 0;flex:none}.act{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);padding:3px 0}.sec{justify-content:space-between;min-height:var(--vw-h)}.file,.sec{display:flex;align-items:center}.file{gap:10px;height:var(--vw-h);padding:0 4px 0 12px;border-radius:var(--vw-r-in);font-size:14px}.file .tx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1;color:var(--vw-text-2)}.file .n{font-size:12px;font-weight:var(--vw-l);color:var(--vw-text-3);white-space:nowrap}.file .btn{height:28px;width:28px;border-radius:var(--vw-r-chip);background:none;padding:0}.drop{outline:2px dashed var(--vw-field-line);outline-offset:-8px}.center{height:100dvh;display:grid;place-items:center;padding:16px}.login{width:min(420px,100%);gap:var(--vw-sep);padding:32px;position:relative;overflow:visible}.login h1{font:400 28px var(--vw-disp);letter-spacing:.06em;color:var(--vw-text);margin:8px 0 0}.login p{color:var(--vw-text-3);font-weight:var(--vw-l)}.login .err,.login p{margin:0;font-size:14px}.login .err{position:absolute;left:32px;right:32px;top:calc(100% + 12px);color:var(--vw-crit)}.form{display:flex;gap:var(--vw-gap);flex-wrap:wrap}.form .in{flex:1 1}.form input[type=date].in,.form select.in{flex:none;width:150px}.tabbar{display:none}@media(max-width:700px){:root{--vw-h:44px;--vw-pad:16px;--vw-safe-t:env(safe-area-inset-top,0px);--vw-safe-b:env(safe-area-inset-bottom,0px);--vw-tab:60px;--vw-hd:calc(128px + env(safe-area-inset-top,0px))}.app{padding:0;gap:0;grid-template-columns:1fr}.rail{display:none}main.panel{border-radius:0;background:var(--vw-app)}main>.hd{padding:calc(12px + var(--vw-safe-t)) var(--vw-pad) 12px;background:color-mix(in srgb,var(--vw-app) 74%,transparent)}.view{padding:4px var(--vw-pad) calc(var(--vw-tab) + var(--vw-safe-b) + 20px)}.tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:42;height:calc(var(--vw-tab) + var(--vw-safe-b));padding:0 6px var(--vw-safe-b)}.tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:var(--vw-r);color:var(--vw-text-3)}.tabbar button.on{color:var(--vw-text);font-weight:var(--vw-xb)}.tabbar .ic{width:24px;height:24px}.tabbar i{position:absolute;top:7px;left:calc(50% + 8px);min-width:18px;height:18px;padding:0 5px;border-radius:var(--vw-r-chip);background:var(--vw-accent);color:#fff;font:700 11px/18px var(--vw-font);font-style:normal;text-align:center}.rail.open{display:flex;position:fixed;inset:0;width:auto;border-radius:0;z-index:40;background:var(--vw-app);padding:calc(18px + var(--vw-safe-t)) var(--vw-pad) calc(var(--vw-tab) + var(--vw-safe-b) + 12px)}.side.open{left:0;right:0;bottom:0;top:calc(var(--vw-safe-t) + 40px);width:auto;border-radius:28px 28px 0 0;z-index:46}.side.open:before{content:"";position:fixed;left:0;right:0;top:0;height:calc(var(--vw-safe-t) + 40px);background:rgba(0,0,0,.45)}.side>.acts{padding-bottom:calc(16px + var(--vw-safe-b))}.hd .t{font-size:20px}.in,.pal input,.search{font-size:16px}.kbd{display:none}.big{font-size:28px}.big small{display:block;margin:6px 0 0}.board{grid-auto-columns:84vw;scroll-snap-type:x proximity}.col{scroll-snap-align:start}.rec{cursor:default}.cal{gap:2px}.cal .day{min-height:68px;padding:2px}.cal .num{padding:2px 4px}.evt{height:18px;padding:0 4px;font-size:10px;border-radius:5px}.evt .dot{display:none}.kv{height:54px}.kv .in{width:190px}.kv .seg{grid-auto-columns:64px}.kv .seg.w2{grid-auto-columns:106px}.doc{font-size:16px;padding:0 0 40px}.pop,.pop.left{position:fixed;left:8px;right:8px;top:auto;bottom:calc(var(--vw-tab) + var(--vw-safe-b) + 8px);min-width:0;z-index:60}.veil{padding:0;place-items:stretch;grid-template-columns:minmax(0,1fr)}.pal{width:100%;min-width:0;max-width:100vw;overflow:hidden;border-radius:0;display:flex;flex-direction:column;padding:calc(8px + var(--vw-safe-t)) 8px calc(8px + var(--vw-safe-b))}.palclose{display:inline-flex;margin-right:4px}.pal input{height:52px}.pal .res{max-height:none;flex:1 1}.pal .foot{display:none}.pal .row{flex-wrap:wrap;row-gap:2px;padding:10px 12px}.pal .row .n{margin-left:0;width:100%}.pal .col2{flex:1 1 100%}.toast{bottom:calc(var(--vw-tab) + var(--vw-safe-b) + 12px);max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tip{display:none}.form .in,.form input[type=date].in,.form select.in{flex:1 1 100%;width:auto;max-width:none!important}}@media(hover:none){.smsg .dockbar{display:flex;position:static;margin:8px 0 0 42px;padding:0;background:none;box-shadow:none;grid-column:1/-1}.smsg .dockbar .btn{background:var(--vw-btn);height:34px}.hov:hover{filter:none}.ack.sm.hov:hover,.file.hov:hover,.row.hov:hover{background-color:transparent}}