:root{--bg:#fdfcff;--bg2:#f6f4fd;--ink:#2a2647;--ink2:#5a5680;--muted:#8884a8;--faint:#b6b3ce;--line:#28205017;--line2:#2820500e;--card:#fff;--soft:#f6f4fc;--ac:#7c5cff;--ac2:#f06ba8;--ac3:#4f9bff;--ac-soft:#7c5cff17;--pink:#f06ba8;--blue:#4f9bff;--orange:#fb8a52;--green:#2bc48f;--amber:#e8b53a;--neg:#f06b82;--neg-soft:#f06b821a;--grad:linear-gradient(135deg,#6d4aff 0%,#9061ff 100%);--grad-soft:linear-gradient(135deg,#8b6cff 0%,#a884ff 100%);--grad2:linear-gradient(135deg,#6d4aff,#2b8fff);--fdisp:"Inter Tight","Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--fbody:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--shadow:0 10px 30px #1c143c14;--radius:18px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--fbody);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;zoom:.8}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}::selection{background:#6d4aff38}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#1c143c29 padding-box content-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#1c143c47 padding-box content-box}.font-disp{font-family:var(--fdisp)}.grad-text{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.ac{color:var(--ac)}.app{grid-template-columns:264px 1fr;display:grid;position:fixed;inset:0;overflow:hidden}.sidebar{border-right:1px solid var(--line);background:linear-gradient(#fff,#fbfaff);flex-direction:column;padding:18px 14px;display:flex;overflow:hidden}.brand{align-items:center;gap:11px;padding:8px 10px 18px;display:flex}.brand img{width:auto;height:40px}.brand .bn{font-family:var(--fdisp);letter-spacing:-.01em;font-size:20px;font-weight:800}.nav{flex-direction:column;flex:1;gap:3px;padding-right:2px;display:flex;overflow-y:auto}.nav .sec{letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:14px 12px 6px;font-size:10.5px;font-weight:700}.navitem{color:var(--ink2);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:14.5px;font-weight:600;transition:background .15s,color .15s;display:flex;position:relative}.navitem svg{width:19px;height:19px;color:var(--faint);flex-shrink:0;transition:color .15s}.navitem:hover{background:var(--ac-soft);color:var(--ink)}.navitem:hover svg{color:var(--ac)}.navitem.on{background:var(--ac-soft);color:var(--ac)}.navitem.on svg{color:var(--ac)}.navitem .dotr{background:var(--ac);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:800;display:flex}.sidefoot{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:8px;padding-top:12px;display:flex}.avatar{background:var(--grad2);color:#fff;width:36px;height:36px;font-family:var(--fdisp);letter-spacing:.02em;border:1.5px solid #fff9;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;overflow:hidden;box-shadow:0 1.5px 4px #140e2e2e,inset 0 1px #ffffff4d}.avatar img{object-fit:cover;width:100%;height:100%}.main{background:radial-gradient(700px 380px at 100% 0%, #ec48990d, transparent 60%), radial-gradient(620px 380px at 0% 100%, #2b8fff0d, transparent 60%), var(--bg);flex-direction:column;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:40;background:#ffffffb3;flex-shrink:0;align-items:center;gap:14px;height:54px;padding:0 22px;display:flex;position:relative}.topbar .search{background:var(--soft);border:1px solid var(--line);max-width:440px;color:var(--muted);border-radius:12px;flex:1;align-items:center;gap:10px;padding:9px 14px;display:flex}.topbar .search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px}.topbar .tbtn{border:1px solid var(--line);background:var(--card);width:40px;height:40px;color:var(--ink2);border-radius:12px;justify-content:center;align-items:center;transition:all .15s;display:flex}.topbar .tbtn:hover{background:var(--ac-soft);color:var(--ac);border-color:#0000}.content{z-index:0;flex:1;padding:16px 26px 34px;position:relative;overflow-y:auto}.page-head{margin-bottom:14px}.kick{font-family:var(--fdisp);letter-spacing:.13em;text-transform:uppercase;color:var(--ac);align-items:center;gap:9px;margin-bottom:4px;font-size:11px;font-weight:700;display:inline-flex}.kick:before{content:"";background:var(--grad);border-radius:3px;width:18px;height:3px}h1.title{font-family:var(--fdisp);letter-spacing:-.025em;font-size:30px;font-weight:800;line-height:1.1}.sub{color:var(--muted);max-width:680px;margin-top:3px;font-size:13.5px;font-weight:500}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.card.pad0{padding:0;overflow:hidden}.grid{gap:18px;display:grid}.row{align-items:center;gap:12px;display:flex}.spread{justify-content:space-between;align-items:center;gap:12px;display:flex}.btn{font-family:var(--fdisp);letter-spacing:-.005em;transition:transform .14s var(--ease),box-shadow .2s,background .18s,border-color .18s,opacity .15s;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:650;display:inline-flex}.btn svg{width:16px;height:16px}.btn-p,.btn-o,.btn-g{background:var(--ac-soft);color:var(--ac);border-color:#0000}.btn-p:hover,.btn-o:hover,.btn-g:hover{color:var(--ac);background:#7c5cff29;transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;pointer-events:none;transform:none}select{color:var(--ink2);border:1px solid var(--line);background:var(--card) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238884a8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 11px center;appearance:none;cursor:pointer;border-radius:10px;outline:none;padding:8px 32px 8px 12px;font-family:inherit;font-size:13px;font-weight:600}select:focus{border-color:var(--ac)}select:disabled{opacity:.6;cursor:default}.tree{justify-content:flex-start;min-width:max-content;padding:14px 0;display:flex}.tree ul{justify-content:center;margin:0;padding-top:26px;list-style:none;display:flex;position:relative}.tree li{text-align:center;padding:26px 12px 0;list-style:none;position:relative}.tree li:before,.tree li:after{content:"";border-top:2px solid var(--line);width:50%;height:26px;position:absolute;top:0;right:50%}.tree li:after{border-left:2px solid var(--line);left:50%;right:auto}.tree li:only-child:before,.tree li:only-child:after{display:none}.tree li:only-child{padding-top:0}.tree li:first-child:before,.tree li:last-child:after{border:0}.tree li:last-child:before{border-right:2px solid var(--line);border-radius:0 7px 0 0}.tree li:first-child:after{border-radius:7px 0 0}.tree ul ul:before{content:"";border-left:2px solid var(--line);width:0;height:26px;position:absolute;top:0;left:50%}.orgnode{background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:8px;min-width:158px;padding:15px 20px;transition:border-color .15s,transform .15s;display:inline-flex}.orgnode:hover{border-color:var(--ac);transform:translateY(-2px)}.chip{border:1px solid var(--line);color:var(--ink2);background:var(--card);border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.tag{letter-spacing:.02em;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.pri-high{color:#e23a59;background:#f0506b1f}.pri-med{color:#bf7d00;background:#f5a41e29}.pri-low{color:#2b8fff;background:#2b8fff1f}.badge{background:var(--ac-soft);color:var(--ac);border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:700}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;position:relative;overflow:hidden}.stat-card .ic{border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:14px;display:flex}.stat-card .n{font-family:var(--fdisp);letter-spacing:-.02em;font-size:32px;font-weight:800;line-height:1}.stat-card .l{color:var(--muted);margin-top:6px;font-size:13.5px;font-weight:500}.ic-v{color:#7c5cff}.ic-p{color:#f06ba8}.ic-b{color:#4f9bff}.ic-o{color:#fb8a52}.ic-g{color:#2bc48f}.ic-y{color:#e8b53a}.ic,.stat-card .ic,.ftile .fi{border-radius:0;background:0 0!important;width:auto!important;height:auto!important}.ic svg,.stat-card .ic svg,.ftile .fi svg{width:26px;height:26px}.ftile{background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:16px;padding:20px;transition:border-color .18s,transform .18s}.ftile:hover{border-color:#6d4aff66;transform:translateY(-3px)}.ftile .fi{border-radius:13px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:14px;display:flex}.ftile h4{font-family:var(--fdisp);margin-bottom:5px;font-size:17px;font-weight:700}.ftile p{color:var(--muted);font-size:13.5px;font-weight:500;line-height:1.5}.board{grid-template-columns:repeat(4,1fr);align-items:start;gap:16px;display:grid}.col{background:var(--bg2);border:1px solid var(--line);border-radius:16px;min-height:200px;padding:12px}.col-head{font-family:var(--fdisp);justify-content:space-between;align-items:center;padding:6px 8px 12px;font-size:14px;font-weight:700;display:flex}.col-head .cnt{color:var(--faint);font-weight:700}.tcard{background:var(--card);border:1px solid var(--line);cursor:grab;border-radius:13px;margin-bottom:10px;padding:13px;transition:box-shadow .15s,transform .12s,border-color .15s}.tcard:hover{border-color:#6d4aff66}.tcard:active{transform:scale(.98)}.tcard .id{color:var(--faint);font-size:11.5px;font-weight:700;font-family:var(--fdisp)}.tcard .tt{margin:5px 0 9px;font-size:14px;font-weight:600;line-height:1.35}.tcard .meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pts{color:var(--ink2);background:var(--soft);border-radius:8px;margin-left:auto;padding:3px 8px;font-size:11.5px;font-weight:800}.sprow{border:1px solid var(--line);text-align:left;background:#f6f6fc;border-radius:11px;align-items:center;gap:11px;width:100%;padding:11px 13px;transition:background .12s;display:flex}.sprow:hover{background:#eeeef8}.blrow{text-align:left;border-radius:9px;align-items:center;gap:11px;width:100%;padding:8px 12px;transition:background .12s;display:flex}.blrow:hover{background:#1c143c0a}.blrow.sel{background:var(--ac-soft);box-shadow:inset 2.5px 0 0 var(--ac)}.eprow{text-align:left;align-items:center;gap:9px;width:100%;padding:8px 8px 6px;display:flex}.ddrow:hover{background:var(--soft)!important}.docbody{color:var(--ink2)}.docbody p,.docbody div{margin:0 0 6px;font-size:15.5px;font-weight:400;line-height:1.75}.docbody h1{letter-spacing:-.01em;color:var(--ink);margin:14px 0 6px;font-size:28px;font-weight:800;line-height:1.25}.docbody h2{color:var(--ink);margin:12px 0 5px;font-size:22px;font-weight:700;line-height:1.3}.docbody h3{color:var(--ink);margin:10px 0 4px;font-size:18px;font-weight:700;line-height:1.35}.docbody ul,.docbody ol{margin:4px 0 8px;padding-left:24px;font-size:15.5px}.docbody blockquote{border-left:3px solid var(--ac);color:var(--muted);margin:8px 0;padding:2px 14px}.docbody pre{color:#c9c5ea;background:#13112a;border-radius:10px;margin:8px 0;padding:12px 14px;font:500 13px/1.6 ui-monospace,monospace;overflow:auto}.docbody img,.docbody video{border-radius:12px;max-width:100%;margin:10px 0}.docbody a{color:var(--ac);text-decoration:underline}.bar{background:var(--soft);border:1px solid var(--line2);border-radius:6px;height:9px;overflow:hidden}.bar>span{background:var(--grad);border-radius:6px;height:100%;display:block}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#140e2e73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--line);border-radius:22px;width:100%;max-width:620px;max-height:88vh;overflow:auto;box-shadow:0 30px 80px #140e2e4d}.field{flex-direction:column;gap:7px;margin-bottom:16px;display:flex}.field label{color:var(--ink2);font-size:13px;font-weight:700}.field input,.field textarea,.field select{border:1px solid var(--line);background:var(--soft);color:var(--ink);border-radius:12px;outline:none;padding:11px 14px;font-family:inherit;font-size:14.5px;transition:border-color .15s,background .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ac);background:#fff}.field textarea{resize:vertical;min-height:80px}.login-wrap{background:radial-gradient(58% 60% at 22% 28%, #7c5cff21, transparent 62%), radial-gradient(52% 52% at 30% 84%, #f06ba817, transparent 60%), radial-gradient(50% 50% at 92% 72%, #4f9bff14, transparent 60%), var(--bg);grid-template-columns:1.08fr .92fr;display:grid;position:fixed;inset:0;overflow:hidden}.login-left{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:0 5vw;display:flex}.login-brand{mix-blend-mode:multiply;width:min(460px,84%);height:auto;margin-bottom:26px}.login-left h2{font-family:var(--fdisp);color:#1c1733;letter-spacing:-.025em;max-width:520px;font-size:40px;font-weight:800;line-height:1.07}.login-left p{color:#4a4668;max-width:440px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:16px;font-weight:500}.login-panel{justify-content:center;align-items:center;padding:40px;display:flex}.login-card{text-align:center;width:100%;max-width:392px}.login-card img.lg{mix-blend-mode:multiply;display:none}.login-input{border:1px solid var(--line);background:var(--card);border-radius:13px;align-items:center;gap:10px;padding:0 13px;transition:border-color .15s;display:flex}.login-input:focus-within{border-color:var(--ac)}.login-input input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;padding:13px 0;font-family:inherit;font-size:14.5px}.gbtn{border:1px solid var(--line);width:100%;color:var(--ink);font-size:15.5px;font-weight:700;font-family:var(--fbody);background:#fff;border-radius:14px;justify-content:center;align-items:center;gap:12px;padding:14px;transition:all .15s;display:flex}.gbtn:hover{border-color:var(--ac);box-shadow:0 8px 22px #6d4aff24}.gbtn:active{transform:scale(.98)}.muted{color:var(--muted)}.dim{color:var(--faint)}.flex{display:flex}.gap8{gap:8px}.gap12{gap:12px}.gap16{gap:16px}.mt8{margin-top:8px}.mt16{margin-top:16px}.mt24{margin-top:24px}.scroll-reveal{opacity:0;transform:translateY(18px)}.hamburger{background:var(--soft);width:38px;height:38px;color:var(--ink);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:none}.side-backdrop{display:none}@media (width<=760px){.app{grid-template-columns:1fr}.sidebar{z-index:300;width:262px;transition:transform .25s var(--ease);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 0 40px #140e2e40}.sidebar.open{transform:translate(0)}.side-backdrop{z-index:250;background:#140e2e66;display:block;position:fixed;inset:0}.hamburger{display:flex}.topbar{gap:10px;height:56px;padding:0 14px}.topbar .search{display:none}.content{padding:14px 14px 90px}.grid,.tk-split{grid-template-columns:1fr!important}.bl-hide-sm{display:none!important}.blrow{gap:8px}.board{gap:12px;overflow-x:auto;grid-template-columns:none!important;display:flex!important}.board .col{min-width:80vw}.stat-card{padding:16px}.login-wrap{grid-template-columns:1fr;display:block}.login-left{display:none}.login-panel{justify-content:center;align-items:flex-start;min-height:auto;padding:8vh 20px 24px;display:flex}.login-card{max-width:420px}.login-card img.lg{height:110px;margin-bottom:18px;display:inline-block}.page-head{gap:12px;flex-direction:column!important;align-items:stretch!important}.page-head .row{flex-wrap:wrap}h1.title{font-size:25px}.sub{font-size:13px}.topbar .btn{padding:8px 12px;font-size:12.5px}.topbar .btn svg{width:15px;height:15px}.spread{flex-wrap:wrap}.editor-cols{flex-direction:column!important;height:auto!important;display:flex!important}.editor-cols>*{width:100%!important;height:auto!important}.editor-canvas{min-height:340px;height:64vh!important}.table-scroll{overflow-x:auto}.table-scroll>*{min-width:560px}.modal{max-height:90vh;max-width:94vw!important}.overlay{padding:12px}}
