@font-face{font-family:Sentient;src:url(/assets/Sentient-400-DwjSseAQ.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Sentient;src:url(/assets/Sentient-400-italic-DTliXp3o.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Sentient;src:url(/assets/Sentient-500-C5XG4E4u.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Satoshi;src:url(/assets/Satoshi-400-CNjkFwMl.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Satoshi;src:url(/assets/Satoshi-500-B5Vlsa52.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Satoshi;src:url(/assets/Satoshi-700-w1A6Zgza.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Satoshi;src:url(/assets/Satoshi-900-Cf9HTe0v.woff2)format("woff2");font-weight:900;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy:#041a71;--navy2:#0a2390;--ink:#050a2c;--violet:#655cc6;--vd:#5249b8;--v2:#8a82e0;--lav:#b7b1f3;--soft:#eeebff;--paper:#f4f3fb;--card:#fff;--line:#e3e0f6;--tx:#1b2150;--mut:#5c6290;--dim:#60668f;--ok:#12a150;--okb:#e6f6ec;--warn:#8f5500;--warnb:#fff3dc;--bad:#c2273d;--badb:#fde9ec;--r:14px;--sh:0 1px 2px #041a710d,0 8px 24px -16px #041a7140}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--paper);color:var(--tx);-webkit-font-smoothing:antialiased;font-family:Satoshi,system-ui,sans-serif;font-size:14px;line-height:1.5}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit;color:inherit}h1,h2,h3{color:var(--navy);font-family:Sentient,Georgia,serif;font-weight:400;line-height:1.12}em{color:var(--violet);font-style:italic}:focus-visible{outline:2px solid var(--violet);outline-offset:2px;border-radius:8px}.mono{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);font-family:Menlo,ui-monospace,monospace;font-size:10px;font-weight:600}svg.i{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}#app{grid-template-columns:252px minmax(0,1fr);height:100vh;display:grid}aside{background:linear-gradient(180deg,var(--navy) 0%,#031258 100%);color:#fff;flex-direction:column;padding:22px 16px 16px;display:flex;position:relative;overflow:hidden auto}aside:after{content:"";pointer-events:none;background:radial-gradient(circle,#8a82e066,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;bottom:-60px;right:-90px}.brand{z-index:1;align-items:center;gap:10px;padding:2px 8px 18px;display:flex;position:relative}.brand img{height:28px}.brand span{letter-spacing:.14em;text-transform:uppercase;color:var(--lav);border:1px solid #ffffff40;border-radius:5px;padding:2px 6px;font-family:Menlo,monospace;font-size:9px}.nav{z-index:1;gap:3px;display:grid;position:relative}.nav .sec{letter-spacing:.14em;text-transform:uppercase;color:#ffffff73;padding:14px 10px 6px;font-family:Menlo,monospace;font-size:9.5px}.nav a{color:#ffffffc7;border-radius:11px;align-items:center;gap:12px;padding:10px 12px;font-weight:500;transition:all .15s;display:flex;position:relative}.nav a:hover{color:#fff;background:#ffffff12}.nav a.on{color:#fff;background:#b7b1f329}.nav a.on:before{content:"";background:var(--lav);border-radius:0 4px 4px 0;width:4px;position:absolute;top:9px;bottom:9px;left:-16px}.nav a .bd{background:var(--v2);color:#fff;border-radius:99px;margin-left:auto;padding:1px 8px;font-size:10.5px;font-weight:700}.nav a.dis{opacity:.4;pointer-events:none}.nav a .soon{letter-spacing:.1em;text-transform:uppercase;margin-left:auto;font-family:Menlo,monospace;font-size:9px}.me{z-index:1;background:#ffffff14;border:1px solid #ffffff24;border-radius:14px;align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex;position:relative}.me b{font-size:13px;display:block}.me small{color:#fff9;font-size:11.5px}.me .out{color:#ffffffb3;margin-left:auto}.me .out:hover{color:#fff}.av{color:#fff;background:var(--violet);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:grid}.av.sm{width:24px;height:24px;font-size:10px}.main{flex-direction:column;min-width:0;height:100vh;display:flex}.top{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f4f3fbe6;align-items:center;gap:14px;padding:14px 32px;display:flex}.srch{border:1px solid var(--line);max-width:420px;color:var(--dim);background:#fff;border-radius:12px;flex:1;align-items:center;gap:10px;padding:9px 14px;display:flex}.srch input{color:var(--tx);background:0 0;border:0;outline:0;flex:1}.sp{flex:1}.ibtn{border:1px solid var(--line);width:40px;height:40px;color:var(--mut);background:#fff;border-radius:12px;place-items:center;display:grid;position:relative}.ibtn:hover{color:var(--violet)}.ibtn .cnt{background:var(--bad);color:#fff;border:2px solid #fff;border-radius:99px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:-4px;right:-4px}.live{color:var(--mut);align-items:center;gap:6px;font-size:12px;display:inline-flex}.live i{background:var(--ok);border-radius:50%;width:8px;height:8px}.live.off i{background:var(--warn)}.btn{background:var(--violet);color:#fff;border-radius:11px;align-items:center;gap:8px;padding:10px 18px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 8px 18px -10px #655cc6e6}.btn:hover{background:var(--vd)}.btn.ghost{color:var(--navy);border:1px solid var(--line);box-shadow:none;background:#fff}.btn.ghost:hover{border-color:var(--violet);color:var(--violet)}.btn.sm{border-radius:9px;padding:7px 13px;font-size:12.5px}.btn.danger{background:var(--bad);box-shadow:none}.btn[disabled]{opacity:.5;cursor:not-allowed}#view{flex:1;padding:28px 32px 48px;overflow:auto}.ph{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.ph h1{margin-top:6px;font-size:34px}.ph .acts{flex-wrap:wrap;gap:10px;display:flex}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}.pad{padding:20px 22px}.card h3{font-size:20px}.ch{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ch small{color:var(--dim);font-size:12.5px}.grid{gap:18px;display:grid}.g5{grid-template-columns:repeat(5,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:1fr 1fr}.g21{grid-template-columns:1.55fr 1fr}.kpi{flex-direction:column;gap:4px;padding:18px 20px;display:flex}.kpi .l{color:var(--mut);align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex}.kpi .ic{background:var(--soft);width:30px;height:30px;color:var(--violet);border-radius:9px;place-items:center;display:grid}.kpi b{color:var(--navy);margin-top:6px;font-family:Sentient,serif;font-size:38px;font-weight:400;line-height:1.1}.kpi .d{color:var(--dim);font-size:12px}.kpi.bad b{color:var(--bad)}.chip{background:var(--soft);color:var(--vd);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.chip.ok{background:var(--okb);color:#0b7a3b}.chip.warn{background:var(--warnb);color:var(--warn)}.chip.bad{background:var(--badb);color:#8e1b2d}.chip.mut{color:var(--mut);background:#efeff6}.seg{border:1px solid var(--line);background:#fff;border-radius:11px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--mut);border-radius:8px;padding:6px 14px;font-size:13px;font-weight:700}.seg button.on{background:var(--navy);color:#fff}.bar{align-items:center;gap:10px;margin:8px 0;font-size:13px;display:flex}.bar .t{background:var(--soft);border-radius:99px;flex:1;height:8px;overflow:hidden}.bar .t i{background:var(--violet);border-radius:99px;height:100%;display:block}.bar .n{text-align:right;width:28px;font-weight:700}.bar span.l{width:130px;color:var(--mut)}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.filters select,.filters input{border:1px solid var(--line);background:#fff;border-radius:10px;outline:0;padding:8px 12px}table.tb{border-collapse:collapse;width:100%}.tb th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--line);padding:10px 14px;font-family:Menlo,monospace;font-size:10px;font-weight:600}.tb td{vertical-align:middle;border-bottom:1px solid #efedfb;padding:12px 14px}.tb tr.row{cursor:pointer}.tb tr.row:hover{background:#f8f7fe}.t-title{color:var(--navy);font-weight:700}.sub{color:var(--dim);font-size:12.5px}.kanban{grid-template-columns:repeat(5,minmax(230px,1fr));gap:14px;padding-bottom:10px;display:grid;overflow-x:auto}.col{background:#eceaf8;border-radius:14px;min-height:240px;padding:10px}.col.over{outline:2px dashed var(--violet)}.col h4{color:var(--navy);justify-content:space-between;padding:4px 6px 10px;font-size:12.5px;display:flex}.col h4 span{color:var(--dim);font-weight:700}.tc{border:1px solid var(--line);cursor:grab;box-shadow:var(--sh);background:#fff;border-radius:12px;margin-bottom:8px;padding:12px}.tc:hover{border-color:var(--violet)}.tc b{color:var(--navy);margin-bottom:6px;font-size:13.5px;display:block}.tc .m{color:var(--dim);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.fld{align-content:start;gap:6px;margin-bottom:14px;display:grid}.fld>span{color:var(--navy);font-size:12.5px;font-weight:700}.inp,.fld input,.fld select,.fld textarea{border:1px solid var(--line);background:#fff;border-radius:10px;outline:0;width:100%;padding:10px 12px}.inp:focus,.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px #655cc626}.fld textarea{resize:vertical;min-height:84px}.row2{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.row3{grid-template-columns:repeat(3,1fr);gap:0 14px;display:grid}.modal{z-index:60;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal .bg{background:#050a2c73;position:absolute;inset:0}.modal .box{background:#fff;border-radius:18px;width:min(560px,100%);max-height:92vh;position:relative;overflow:auto;box-shadow:0 40px 80px -30px #041a7199}.modal .box.lg{width:min(860px,100%)}.modal .mh{justify-content:space-between;gap:12px;padding:22px 26px 6px;display:flex}.modal .mh h2{margin-top:4px;font-size:26px}.modal .mb{padding:10px 26px 6px}.modal .mf{justify-content:flex-end;gap:10px;padding:16px 26px 22px;display:flex}.note{background:var(--soft);color:#33297f;border-radius:12px;gap:10px;margin-bottom:12px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.note.ok{background:var(--okb);color:#0b5f2e}.note.warn{background:var(--warnb);color:#6b4300}.note.bad{background:var(--badb);color:#8e1b2d}.state{text-align:center;color:var(--mut);place-items:center;gap:10px;padding:48px 24px;display:grid}.state h3{font-size:24px}.state .ico{background:var(--soft);width:56px;height:56px;color:var(--violet);border-radius:18px;place-items:center;display:grid}.state.bad .ico{background:var(--badb);color:var(--bad)}.skl{background:linear-gradient(90deg,#eceaf8 25%,#f6f5fd 37%,#eceaf8 63%) 0 0/400% 100%;border-radius:10px;height:64px;margin-bottom:10px;animation:1.3s infinite sk}@keyframes sk{0%{background-position:100%}to{background-position:0}}.li{border-bottom:1px solid #efedfb;align-items:flex-start;gap:12px;padding:11px 0;display:flex}.li:last-child{border:0}.li .g{flex:1;min-width:0}.li small{color:var(--dim)}.chk{align-items:center;gap:10px;padding:6px 0;display:flex}.chk input{accent-color:var(--violet);width:16px;height:16px}.chk.done span{color:var(--dim);text-decoration:line-through}.cal{background:var(--line);border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.cal .h{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);background:#f8f7fe;padding:8px;font-family:Menlo,monospace;font-size:10px}.cal .d{background:#fff;min-height:104px;padding:6px;font-size:12px}.cal .d.out{color:#aaa;background:#fafafe}.cal .d.today .n{background:var(--violet);color:#fff}.cal .n{border-radius:50%;place-items:center;width:22px;height:22px;margin-bottom:4px;font-weight:700;display:inline-grid}.ev{text-align:left;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;width:100%;margin-bottom:2px;padding:2px 6px;font-size:11.5px;font-weight:500;display:block;overflow:hidden}.ev.task{background:var(--soft);color:var(--vd)}.ev.event{color:#0b6b5f;background:#ddf3f0}.ev.project{background:var(--warnb);color:var(--warn)}.ev.overdue{background:var(--badb);color:#8e1b2d}.pub{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.pub .side{background:linear-gradient(160deg,var(--navy),#031258 70%);color:#fff;flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.pub .side h1{color:#fff;max-width:12em;font-size:46px}.pub .side h1 em{color:var(--lav)}.pub .side img{width:fit-content;height:34px}.pub .side p{color:#ffffffbf;max-width:30em;margin-top:14px}.pub .form{place-items:center;padding:32px;display:grid}.pub .form form{width:min(400px,100%)}.pub .form h2{margin-bottom:6px;font-size:32px}.side .mark{opacity:.12;width:420px;position:absolute;bottom:-120px;right:-120px}.menu{border:1px solid var(--line);z-index:40;background:#fff;border-radius:14px;width:380px;max-height:70vh;position:absolute;top:48px;right:0;overflow:auto;box-shadow:0 30px 60px -30px #041a7180}.menu .mh{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.menu .mi{text-align:left;border-bottom:1px solid #efedfb;width:100%;padding:12px 16px;display:block}.menu .mi:hover{background:#f8f7fe}.menu .mi.unread{background:#fbfaff;font-weight:700}.menu .mi small{color:var(--dim);font-weight:400;display:block}.rel{position:relative}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:14px;display:flex}.tabs button{color:var(--mut);border-bottom:2px solid #0000;padding:8px 14px;font-weight:700}.tabs button.on{color:var(--navy);border-color:var(--violet)}.toast{background:var(--navy);color:#fff;z-index:80;border-radius:12px;padding:10px 18px;font-weight:500;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 20px 40px -20px #041a71cc}.toast.bad{background:var(--bad)}.menubtn{display:none}@media (width<=960px){#app{grid-template-columns:1fr}aside{z-index:50;width:260px;transition:all .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}aside.open{transform:none}.menubtn{display:grid}.top{padding:12px 16px}#view{padding:20px 16px 40px}.g5,.g3,.g2,.g21{grid-template-columns:1fr 1fr}.row2,.row3,.pub{grid-template-columns:1fr}.pub .side{display:none}.ph h1{font-size:28px}.srch{display:none}.menu{width:min(380px,92vw)}.tb{display:block;overflow-x:auto}}@media (width<=560px){.g5,.g3,.g2,.g21{grid-template-columns:1fr}.top{flex-wrap:wrap;gap:8px}.top .sp,.top .live{display:none}.seg{max-width:100%;overflow-x:auto}.seg button{white-space:nowrap}}
