.vs{container-type:inline-size;margin:24px auto}.vs__canvas{--u:calc(100cqw / 960);--vs-ink:#16263f;--vs-fg-1:#212121;--vs-fg-2:#333333;--vs-fg-3:#5d6065;--vs-line:#eaeaea;position:relative;aspect-ratio:960/540;overflow:hidden;background:#fff;border:1px solid #dadce0;border-radius:calc(14 * var(--u));box-shadow:0 2px 8px rgba(0,0,0,8%),0 24px 48px -24px rgba(0,0,0,.18);color:var(--vs-fg-1);font-family:var(--font-sans,Inter,ui-sans-serif,system-ui,sans-serif);font-size:calc(13 * var(--u));line-height:1.2;user-select:none}.vs__canvas svg{display:block}.vs__bar{position:absolute;inset:0 0 auto 0;height:calc(48 * var(--u));display:flex;align-items:center;gap:calc(12 * var(--u));padding:0 calc(12 * var(--u))0 calc(14 * var(--u));border-bottom:1px solid var(--vs-line)}.vs__mark{flex:none;width:calc(22 * var(--u));height:calc(22 * var(--u))}.vs__name{flex:1;font-size:calc(13.5 * var(--u));font-weight:600;white-space:nowrap}.vs__tabs{position:absolute;left:calc(319 * var(--u));top:calc(6 * var(--u));width:calc(322 * var(--u));display:flex;gap:calc(2 * var(--u));padding:calc(3 * var(--u));border-radius:calc(8 * var(--u));background:#f2f3f5}.vs__thumb{position:absolute;left:calc(3 * var(--u));top:calc(3 * var(--u));width:calc(104 * var(--u));height:calc(30 * var(--u));border-radius:calc(6 * var(--u));background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.12);animation:vs-thumb 15s infinite}.vs__tab{position:relative;flex:none;width:calc(104 * var(--u));height:calc(30 * var(--u));display:flex;align-items:center;justify-content:center;gap:calc(6 * var(--u));color:var(--vs-fg-3);font-size:calc(12.5 * var(--u));font-weight:600;white-space:nowrap}.vs__tab svg{width:calc(15 * var(--u));height:calc(15 * var(--u))}.vs__tab--gantt{color:var(--vs-fg-1);animation:vs-tab-gantt 15s infinite}.vs__tab--map{animation:vs-tab-map 15s infinite}.vs__tab--outline{animation:vs-tab-outline 15s infinite}.vs__faces{display:flex}.vs__face{width:calc(26 * var(--u));height:calc(26 * var(--u));display:inline-flex;align-items:center;justify-content:center;border:calc(2 * var(--u))solid #fff;border-radius:50%;background:var(--pc);color:#fff;font-size:calc(11 * var(--u));font-weight:600}.vs__face+.vs__face{margin-left:calc(-7 * var(--u))}.vs__share{padding:calc(7 * var(--u))calc(12 * var(--u));border-radius:calc(8 * var(--u));background:#278041;box-shadow:0 1px 2px rgba(0,0,0,.12);color:#fff;font-size:calc(13 * var(--u));font-weight:600}.vs__body{position:absolute;inset:calc(49 * var(--u))0 0 0}.vs__view{position:absolute;inset:0;background:#fff}.vs__view--gantt{animation:vs-view-gantt 15s infinite}.vs__view--map{opacity:0;animation:vs-view-map 15s infinite}.vs__view--outline{opacity:0;animation:vs-view-outline 15s infinite}.vs-pie{flex:none;width:calc(19 * var(--u));height:calc(19 * var(--u));border:calc(1.7 * var(--u))solid;border-radius:50%;background:conic-gradient(currentColor calc(var(--p) * 1%),transparent 0)}.vs-cb{flex:none;width:calc(14 * var(--u));height:calc(14 * var(--u));display:inline-flex;align-items:center;justify-content:center;border:calc(1.6 * var(--u))solid #c8ccd2;border-radius:calc(4 * var(--u));color:#fff}.vs-cb.is-done{border-color:#5e9a4e;background:#5e9a4e}.vs-cb svg{width:calc(10 * var(--u));height:calc(10 * var(--u))}.vs-pr{flex:none;width:calc(21 * var(--u));height:calc(21 * var(--u));display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--pg);box-shadow:0 calc(2 * var(--u))calc(4 * var(--u))var(--ps),inset 0 1px 1px rgba(255,255,255,.45);color:#fff;font-size:calc(9.5 * var(--u));font-weight:700}.vs-pr--p1{--pg:linear-gradient(155deg, #ce4154, #a80e28);--ps:rgba(168, 14, 40, 0.45)}.vs-pr--p2{--pg:linear-gradient(155deg, #f7c078, #e38b1f);--ps:rgba(227, 139, 31, 0.4);color:#212121}.vs-pr--p3{--pg:linear-gradient(155deg, #2d74d6, #1658c4);--ps:rgba(29, 111, 224, 0.4)}.vs-fx{flex:none;width:calc(18 * var(--u));height:calc(18 * var(--u));display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--pc);color:#fff;font-size:calc(8.5 * var(--u));font-weight:700}.vs-dia{flex:none;width:calc(11 * var(--u));height:calc(11 * var(--u));margin:0 calc(2 * var(--u));border-radius:calc(2 * var(--u));background:#d07a24;transform:rotate(45deg)}.vs-tb{height:calc(40 * var(--u));display:flex;align-items:center;gap:calc(14 * var(--u));padding:0 calc(16 * var(--u));border-bottom:1px solid var(--vs-line);color:var(--vs-fg-3);font-size:calc(12.5 * var(--u))}.vs-tb svg{flex:none;width:calc(15 * var(--u));height:calc(15 * var(--u))}.vs-tb__i{display:inline-flex;align-items:center;gap:calc(6 * var(--u))}.vs-tb__sep{width:1px;height:calc(18 * var(--u));background:#dadce0}.vs-tb__scale{margin-left:auto;display:inline-flex;align-items:center;gap:calc(12 * var(--u))}.vs-tb__dots{display:flex;align-items:center}.vs-tb__dots i{width:calc(7 * var(--u));height:calc(7 * var(--u));border:1px solid #9aa0a6;border-radius:50%;background:#fff}.vs-tb__dots i+i{margin-left:calc(9 * var(--u))}.vs-tb__dots i.is-on{width:calc(11 * var(--u));height:calc(11 * var(--u));border-color:#2e7d4f;background:#2e7d4f}.vs-g{position:absolute;inset:calc(40 * var(--u))0 0 0}.vs-g__grid{position:absolute;inset:0 auto 0 0;width:calc(400 * var(--u));border-right:1px solid #dadce0}.vs-g__head,.vs-g__row{display:flex;align-items:center;white-space:nowrap}.vs-g__head{height:calc(34 * var(--u));border-bottom:1px solid #dadce0;color:var(--vs-fg-3);font-size:calc(10.5 * var(--u));font-weight:500}.vs-g__row{height:calc(30 * var(--u));border-bottom:1px solid #f1f1f3;color:var(--vs-fg-2);font-size:calc(11.5 * var(--u))}.vs-g__row.is-phase{color:var(--vs-fg-1);font-weight:600}.vs-c1{width:calc(160 * var(--u));display:flex;align-items:center;gap:calc(7 * var(--u));padding-left:calc(12 * var(--u));overflow:hidden}.vs-c1--task{padding-left:calc(28 * var(--u))}.vs-c2{width:calc(48 * var(--u))}.vs-c3{width:calc(56 * var(--u));padding-right:calc(12 * var(--u));text-align:right}.vs-c4{width:calc(56 * var(--u))}.vs-c5{width:calc(44 * var(--u))}.vs-c6{width:calc(36 * var(--u))}.vs-chev{width:calc(6 * var(--u));height:calc(6 * var(--u));margin:0 calc(2 * var(--u))calc(3 * var(--u))0;border:solid var(--vs-fg-3);border-width:0 calc(1.5 * var(--u))calc(1.5 * var(--u))0;transform:rotate(45deg)}.vs-g__dia{width:calc(9 * var(--u));height:calc(9 * var(--u));margin-left:calc(-14 * var(--u));background:#d07a24;transform:rotate(45deg)}.vs-pri{display:inline-flex;padding:calc(2 * var(--u))calc(6 * var(--u));border-radius:calc(4 * var(--u));color:#fff;font-size:calc(10 * var(--u));font-weight:700}.vs-pri--p1{background:#c25031}.vs-pri--p2{background:#d9a441;color:#212121}.vs-pri--p3{background:#407f73}.vs-av{width:calc(22 * var(--u));height:calc(22 * var(--u));display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--pc) 16%,#fff);color:var(--pc);font-size:calc(8.5 * var(--u));font-weight:700}.vs-g__tl{position:absolute;inset:0 0 0 calc(400 * var(--u));overflow:hidden}.vs-tl__months,.vs-tl__days{display:flex;height:calc(17 * var(--u))}.vs-tl__months span{padding-left:calc(6 * var(--u));border-left:1px solid var(--vs-line);color:var(--vs-fg-2);font-size:calc(10.5 * var(--u));font-weight:600;line-height:calc(17 * var(--u))}.vs-tl__days{border-bottom:1px solid #dadce0}.vs-tl__days span{flex:1;border-left:1px solid #f1f1f3;color:var(--vs-fg-3);font-size:calc(7.5 * var(--u));line-height:calc(17 * var(--u));text-align:center}.vs-tl__days .is-we{background:#f6f7f9}.vs-tl__body{position:absolute;inset:calc(34 * var(--u))0 0 0}.vs-we{position:absolute;inset:0 auto 0 calc(var(--i) * 100%/var(--n));width:calc(100%/var(--n));background:#f6f7f9}.vs-today{position:absolute;inset:0 auto 0 calc(18.5 * 100%/var(--n));border-left:calc(1.5 * var(--u))dashed #3d7fd6}.vs-tr{position:absolute;left:0;right:0;top:calc(var(--r) * 30 * var(--u));height:calc(30 * var(--u));border-bottom:1px solid #f1f1f3}.vs-gc-blue{--cb:#6ea8ef;--cf:#3d7fd6}.vs-gc-cyan{--cb:#7fd0e8;--cf:#3aa7c9}.vs-gc-green{--cb:#7bc47f;--cf:#3f9a52}.vs-gc-orange{--cb:#eaa25a;--cf:#d07a24}.vs-b{position:absolute;left:calc(var(--s) * 100%/var(--n));top:calc(8 * var(--u));width:calc((var(--e) - var(--s)) * 100%/var(--n));height:calc(14 * var(--u));overflow:hidden;border-radius:calc(4 * var(--u));background:var(--cb);transform-origin:left center;--vs-from:scaleX(0);animation:vs-in 15s var(--d)infinite backwards}.vs-b>i{display:block;width:calc(var(--p) * 1%);height:100%;background:var(--cf)}.vs-b--ph{top:calc(11 * var(--u));height:calc(6 * var(--u));overflow:visible;border-radius:calc(1 * var(--u));background:var(--cf)}.vs-b--ph::before,.vs-b--ph::after{content:"";position:absolute;top:100%;border-top:calc(5 * var(--u))solid var(--cf);border-left:calc(4 * var(--u))solid transparent;border-right:calc(4 * var(--u))solid transparent}.vs-b--ph::before{left:0;border-left-width:0}.vs-b--ph::after{right:0;border-right-width:0}.vs-ms{position:absolute;left:calc((var(--s) + .5) * 100%/var(--n) - 7 * var(--u));top:calc(8 * var(--u));--vs-from:scale(0.4);animation:vs-in 15s var(--d)infinite backwards}.vs-ms i{display:block;width:calc(14 * var(--u));height:calc(14 * var(--u));border-radius:calc(2 * var(--u));background:var(--cf);transform:rotate(45deg)scale(.8)}.vs-bl{position:absolute;left:calc(var(--e) * 100%/var(--n) + 6 * var(--u));top:0;color:var(--vs-fg-2);font-size:calc(11 * var(--u));line-height:calc(30 * var(--u));white-space:nowrap;--vs-from:translateX(calc(-6 * var(--u)));animation:vs-in 15s var(--d)infinite backwards}.vs-links{position:absolute;top:0;left:0;width:100%;height:calc(12 * 30 * var(--u));overflow:visible;animation:vs-in 15s var(--d)infinite backwards}.vs-links path{fill:none;stroke:#8a8d93;stroke-width:1.2;vector-effect:non-scaling-stroke}.vs-mm--navy{--g:linear-gradient(150deg, #26405f, #152135);--t:#fff;--bc:#16263f;--sh:rgba(20, 30, 50, 0.22)}.vs-mm--amber{--g:linear-gradient(150deg, #f7b858, #ec9a28);--t:#16263f;--bc:#f2a63b;--sh:rgba(200, 140, 40, 0.3)}.vs-mm--red{--g:linear-gradient(150deg, #d6203e, #b10e28);--t:#fff;--bc:#c41230;--sh:rgba(196, 18, 48, 0.3)}.vs-mm--green{--g:linear-gradient(150deg, #1c864a, #15803d);--t:#fff;--bc:#15803d;--sh:rgba(21, 128, 61, 0.3)}.vs-mm__lines{position:absolute;inset:0;width:100%;height:100%}.vs-mm__ln{stroke:var(--bc);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;animation:vs-draw 15s var(--d)infinite backwards}.vs-mm__ln--sm{stroke-width:2.4}.vs-mm__n{position:absolute;left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));--vs-from:scale(0.6);animation:vs-in 15s var(--d)infinite backwards}.vs-mm__root{width:calc(170 * var(--u));height:calc(120 * var(--u));display:flex;flex-direction:column;align-items:center;gap:calc(11 * var(--u));padding:calc(13 * var(--u))calc(14 * var(--u))0;border-radius:calc(20 * var(--u));background:linear-gradient(155deg,#26405f,#141f31);box-shadow:0 calc(14 * var(--u))calc(32 * var(--u))rgba(20,30,50,.3)}.vs-mm__art{width:calc(142 * var(--u));height:calc(66 * var(--u));display:flex;align-items:center;justify-content:center;border-radius:calc(13 * var(--u));background:linear-gradient(160deg,#f6e8c8,#efdbb0)}.vs-mm__art svg{width:calc(104 * var(--u));height:calc(64 * var(--u))}.vs-mm__title{color:#fff;font-size:calc(14 * var(--u));font-weight:800;letter-spacing:.03em;white-space:nowrap}.vs-mm__br{width:calc(150 * var(--u));height:calc(44 * var(--u));display:flex;align-items:center;gap:calc(9 * var(--u));padding:0 calc(10 * var(--u))0 calc(15 * var(--u));border-radius:calc(13 * var(--u));background:var(--g);box-shadow:0 calc(7 * var(--u))calc(18 * var(--u))var(--sh);color:var(--t);font-size:calc(17 * var(--u));font-weight:700;white-space:nowrap}.vs-mm__ch{height:calc(38 * var(--u));display:inline-flex;align-items:center;gap:calc(8 * var(--u));padding:0 calc(13 * var(--u));border:calc(1.5 * var(--u))solid var(--bc);border-radius:calc(10 * var(--u));background:#fff;box-shadow:0 calc(4 * var(--u))calc(13 * var(--u))rgba(20,30,50,8%);color:var(--vs-ink);font-size:calc(15 * var(--u));font-weight:600;white-space:nowrap}.vs-mm__date{color:#646c7d;font-size:calc(12 * var(--u));font-weight:500}.vs-ol{position:absolute;left:calc(170 * var(--u));top:calc(22 * var(--u));width:calc(620 * var(--u));color:var(--vs-ink)}.vs-ol__in{--vs-from:translateX(calc(-10 * var(--u)));animation:vs-in 15s var(--d)infinite backwards}.vs-ol__title{display:flex;align-items:center;gap:calc(11 * var(--u));margin-bottom:calc(6 * var(--u));font-size:calc(20 * var(--u));font-weight:800;letter-spacing:.03em}.vs-ol__icon{width:calc(28 * var(--u));height:calc(28 * var(--u));display:inline-flex;align-items:center;justify-content:center;border-radius:calc(9 * var(--u));background:linear-gradient(150deg,#26405f,#152135)}.vs-ol__icon svg{width:calc(17 * var(--u));height:calc(17 * var(--u))}.vs-ol__grp,.vs-ol__sub{padding-left:calc(16 * var(--u));border-left:calc(1.5 * var(--u))dashed #d3d9e2}.vs-ol__grp{margin-left:calc(14 * var(--u))}.vs-ol__sub{margin-left:calc(11 * var(--u))}.vs-ol__r{height:calc(29 * var(--u));display:flex;align-items:center;gap:calc(7 * var(--u));font-size:calc(14 * var(--u));font-weight:600;white-space:nowrap}.vs-ol__r.is-phase{height:calc(32 * var(--u));font-size:calc(15 * var(--u));font-weight:700}.vs-ol__r .vs-pie{width:calc(18 * var(--u));height:calc(18 * var(--u))}.vs-ol__r .vs-pr{width:calc(19 * var(--u));height:calc(19 * var(--u));font-size:calc(8.5 * var(--u))}.vs-ol__r .vs-cb{width:calc(15 * var(--u));height:calc(15 * var(--u))}.vs-ol__caret{width:calc(9 * var(--u));color:#646c7d;font-size:calc(9 * var(--u))}.vs-ol__sp{width:calc(9 * var(--u))}.vs-ol__dot{flex:none;width:calc(5 * var(--u));height:calc(5 * var(--u));border-radius:50%;background:#b4bcc8}.vs-ol__chip{padding:calc(2 * var(--u))calc(7 * var(--u));border-radius:calc(6 * var(--u));background:#fdf1e4;color:#9a5418;font-size:calc(11 * var(--u));font-weight:600}.vs-ol__meta{margin-left:auto;display:inline-flex;align-items:center;gap:calc(8 * var(--u));color:#646c7d;font-size:calc(12 * var(--u));font-weight:500}.vs__cur{position:absolute;left:0;top:0;z-index:5;width:calc(22 * var(--u));height:calc(24 * var(--u));filter:drop-shadow(0 calc(2 * var(--u)) calc(3 * var(--u)) rgba(20,30,50,.3));transform-origin:0 0;translate:calc(820 * var(--u))calc(505 * var(--u));animation:vs-cursor 15s infinite,vs-press 15s infinite}.vs__cur svg{width:100%;height:100%}.vs__ring{position:absolute;left:calc((var(--x) - 13) * var(--u));top:calc(11 * var(--u));z-index:4;width:calc(26 * var(--u));height:calc(26 * var(--u));border:calc(2.5 * var(--u))solid #3693ff;border-radius:50%;opacity:0;animation:vs-ring 15s var(--d)infinite backwards}@keyframes vs-in{0%{opacity:0;transform:var(--vs-from,none)}3%{opacity:1;transform:none}36%{opacity:1;transform:none}37%,100%{opacity:0;transform:none}}@keyframes vs-draw{0%{stroke-dashoffset:1;opacity:1}4%{stroke-dashoffset:0}36%{stroke-dashoffset:0;opacity:1}37%,100%{stroke-dashoffset:0;opacity:0}}@keyframes vs-view-gantt{0%,29.33%{opacity:1}32%,96%{opacity:0}98.67%,100%{opacity:1}}@keyframes vs-view-map{0%,29.33%{opacity:0}32%,62.67%{opacity:1}65.33%,100%{opacity:0}}@keyframes vs-view-outline{0%,62.67%{opacity:0}65.33%,96%{opacity:1}98.67%,100%{opacity:0}}@keyframes vs-thumb{0%,29.33%{translate:0 0}31%,62.67%{translate:calc(106 * var(--u))0}64.33%,96%{translate:calc(212 * var(--u))0}97.67%,100%{translate:0 0}}@keyframes vs-tab-gantt{0%,29.33%{color:var(--vs-fg-1)}31%,96%{color:var(--vs-fg-3)}97.67%,100%{color:var(--vs-fg-1)}}@keyframes vs-tab-map{0%,29.33%{color:var(--vs-fg-3)}31%,62.67%{color:var(--vs-fg-1)}64.33%,100%{color:var(--vs-fg-3)}}@keyframes vs-tab-outline{0%,62.67%{color:var(--vs-fg-3)}64.33%,96%{color:var(--vs-fg-1)}97.67%,100%{color:var(--vs-fg-3)}}@keyframes vs-cursor{0%,22%{translate:calc(820 * var(--u))calc(505 * var(--u))}27.33%,29.33%{translate:calc(480 * var(--u))calc(26 * var(--u))}40%,55.33%{translate:calc(850 * var(--u))calc(300 * var(--u))}60.67%,62.67%{translate:calc(586 * var(--u))calc(26 * var(--u))}73.33%,88.67%{translate:calc(840 * var(--u))calc(470 * var(--u))}94%,96%{translate:calc(374 * var(--u))calc(26 * var(--u))}100%{translate:calc(820 * var(--u))calc(505 * var(--u))}}@keyframes vs-press{0%,27.6%,28.8%,60.9%,62%,94.2%,95.4%,100%{scale:1}28%,61.33%,94.67%{scale:.82}}@keyframes vs-ring{0%{opacity:0;transform:scale(.3)}0.4%{opacity:.9;transform:scale(.4)}5%,100%{opacity:0;transform:scale(1.6)}}@media(prefers-reduced-motion:reduce){.vs__canvas *,.vs__canvas *::before,.vs__canvas *::after{animation:none!important}.vs__cur,.vs__ring{display:none}}