:root{--paper:#f5f6f8;--surface:#fff;--surface-2:#f8f9fb;--hover:#f0f2f5;--press:#e6e9ee;--ink:#1e2733;--ink-2:#4a5563;--ink-3:#7b8594;--ink-4:#a3abb6;--rule:#e4e7ec;--rule-2:#d0d5dc;--k-sheet:#1f7a4d;--k-doc:#2c5da8;--k-md:#6a4c9c;--k-txt:#5b6573;--k-file:#9a6a12;--accent:#2c5da8;--accent-soft:#e8eef8;--ok:#1f7a4d;--ok-soft:#e7f4ec;--warn:#9a6a12;--warn-soft:#fff6e0;--danger:#b42318;--danger-soft:#fdecea;--focus:#2c5da8;--radius:8px;--radius-sm:6px;--shadow-1:0 1px 2px #1e27330f;--shadow-2:0 10px 30px -6px #1e27332e, 0 2px 6px #1e27330f;--ease:cubic-bezier(.2, .7, .3, 1);--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", sans-serif;--font-mono:"SF Mono", Menlo, Consolas, "Noto Sans Mono CJK SC", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font:14px/1.6 var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;overflow-x:clip}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{background:#cfdcf2}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--ink-3)}.small{font-size:12px}.icon{flex:none;display:block}.boot{place-items:center;height:100%;display:grid}kbd{font:11px/1 var(--font-mono);color:var(--ink-3);border:1px solid var(--rule-2);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:2px 5px}code{font-family:var(--font-mono);font-size:.92em}.spinner{opacity:.75;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}.spinner.lg{width:26px;height:26px;color:var(--ink-3)}@keyframes spin{to{transform:rotate(360deg)}}.btn{border:1px solid var(--rule-2);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;white-space:nowrap;height:34px;box-shadow:var(--shadow-1);justify-content:center;align-items:center;gap:6px;padding:0 14px;transition:background .15s,border-color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:hover{border-color:var(--ink-4);background:var(--surface-2)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn.primary:hover{background:#2d3a4a;border-color:#2d3a4a}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{background:#9a1e14}.btn.block{width:100%;height:40px}.btn.sm{gap:4px;height:28px;padding:0 10px;font-size:13px}.btn:disabled{opacity:.55;cursor:default}.icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;transition:background .15s,color .15s;display:inline-grid}.icon-btn:hover,.icon-btn[aria-expanded=true]{background:var(--hover);color:var(--ink)}.icon-btn.danger:hover{background:var(--danger-soft);color:var(--danger)}.link{color:var(--accent);cursor:pointer;font-size:inherit;white-space:nowrap;background:0 0;border:0;padding:0}.link:hover{text-underline-offset:3px;text-decoration:underline}.link.danger{color:var(--danger)}.split{display:inline-flex}.split>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.split .split-more{border-left-color:#ffffff38;border-top-left-radius:0;border-bottom-left-radius:0;padding:0 8px}.chip{cursor:pointer;color:var(--ink-2);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 12px;transition:background .15s,color .15s;display:inline-flex}.chip:hover{background:var(--press)}.chip.on{background:var(--ink);color:#fff}.chip .count{color:var(--ink-3);font-size:11px}.chip.on .count{color:#ffffffa6}.check{color:var(--ink-2);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.check input{width:15px;height:15px;accent-color:var(--ink);margin:0}.pill{background:var(--hover);color:var(--ink-2);border-radius:4px;flex:none;align-items:center;gap:3px;padding:0 7px;font-size:12px;line-height:18px;display:inline-flex}.pill.edit,.pill.admin{background:var(--accent-soft);color:var(--accent)}.pill.off{background:var(--danger-soft);color:var(--danger)}input:not([type]),input[type=text],input[type=password],input[type=search],select,textarea{border:1px solid var(--rule-2);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;height:36px;padding:0 10px;transition:border-color .15s,box-shadow .15s}input:hover,select:hover{border-color:var(--ink-4)}input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #2c5da829}input[aria-invalid=true]{border-color:var(--danger)}input::placeholder{color:var(--ink-4)}input[type=search]::-webkit-search-cancel-button{cursor:pointer}select{cursor:pointer;text-overflow:ellipsis;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237b8594' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:12px;padding-right:32px}select[multiple],select[size]:not([size="1"]){background-image:none;padding-right:10px}.input-affix{display:flex;position:relative}.input-affix input{padding-right:40px}.affix-btn{min-width:30px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0 6px;display:grid;position:absolute;top:3px;bottom:3px;right:3px}.affix-btn:hover{background:var(--hover);color:var(--ink)}.affix-btn.text{color:var(--accent);font-size:12px}.input-affix:has(.affix-btn.text) input{padding-right:76px}.field-hint{color:var(--ink-3);font-size:12px}.user-form label.check,.form label.check{display:inline-flex}.field-hint.bad{color:var(--danger)}.error{color:var(--danger);margin:0;font-size:13px}.tab{color:#fff;border-radius:3px 3px 3px 9px;flex:none;place-items:center;width:26px;height:22px;font-size:13px;font-weight:600;line-height:1;display:inline-grid}.tab.small{width:20px;height:18px;font-size:11px}.login{background:radial-gradient(1200px 500px at 50% -10%, #e8edf4, transparent 70%), var(--paper);place-items:center;min-height:100%;padding:24px 16px;display:grid}.login-card{background:var(--surface);border:1px solid var(--rule);border-radius:12px;gap:14px;width:100%;max-width:380px;padding:32px 28px 28px;display:grid;box-shadow:0 20px 50px -24px #1e273340}.login-card h1{letter-spacing:.02em;word-break:break-word;margin:0;font-size:22px;line-height:1.35}.login-card p{margin:0}.login-card label,.form label,.user-form label{color:var(--ink-2);gap:6px;font-size:13px;display:grid}.login-mark{gap:6px;display:flex}.login-mark span{color:#fff;border-radius:3px 3px 3px 11px;place-items:center;width:34px;height:28px;font-weight:600;display:grid}.state-icon{background:var(--danger-soft);width:44px;height:44px;color:var(--danger);border-radius:50%;place-items:center;display:grid}.shake{animation:shake .35s var(--ease)}@keyframes shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.auth{--sx:70vw;--sy:30vh;isolation:isolate;color:#e8ecf4;min-height:100%;transition:opacity .45s var(--ease), filter .45s var(--ease);background:#0a0f1c;place-items:center;padding:32px 20px;display:grid;position:relative;overflow:hidden}.auth.leaving{opacity:0;filter:blur(6px)}.auth-bg{z-index:-1;pointer-events:none;position:absolute;inset:0}.auth-bg>i{display:block;position:absolute}.orb{opacity:.55;will-change:transform;border-radius:50%}.orb.o1{background:radial-gradient(circle at 40% 40%,#2f9e6b,#2f9e6b8c 28%,#2f9e6b2e 50%,#0000 70%);width:46vmax;height:46vmax;animation:22s ease-in-out infinite alternate drift1;top:-16vmax;left:-12vmax}.orb.o2{background:radial-gradient(circle,#3b6fd1,#3b6fd18c 28%,#3b6fd12e 50%,#0000 70%);width:52vmax;height:52vmax;animation:26s ease-in-out infinite alternate drift2;top:10vmax;right:-18vmax}.orb.o3{opacity:.45;background:radial-gradient(circle,#7b55c4,#7b55c48c 28%,#7b55c42e 50%,#0000 70%);width:40vmax;height:40vmax;animation:30s ease-in-out infinite alternate drift3;bottom:-22vmax;left:20vmax}@keyframes drift1{to{transform:translate(14vmax,10vmax)scale(1.15)}}@keyframes drift2{to{transform:translate(-16vmax,-8vmax)scale(.9)}}@keyframes drift3{to{transform:translate(-10vmax,-14vmax)scale(1.2)}}.auth-bg .grid{inset:-2px;overflow:hidden;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 100%);mask-image:radial-gradient(70% 60% at 50% 40%,#000 30%,#0000 100%)}.auth-bg .grid:before{content:"";will-change:transform;background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:44px 44px;animation:40s linear infinite grid-pan;position:absolute;inset:-44px 0 0 -44px}@keyframes grid-pan{to{transform:translate(44px,44px)}}.auth-bg .spot{width:1040px;height:1040px;transform:translate(calc(var(--sx) - 520px), calc(var(--sy) - 520px));will-change:transform;background:radial-gradient(circle closest-side,#8caaff24,#0000 60%);transition:transform .2s;top:0;left:0}.auth-bg .noise{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");inset:0}.auth-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,400px);align-items:center;gap:64px;width:100%;max-width:1080px;display:grid}.auth-hero{gap:20px;display:grid}.auth-hero>*{animation:rise .7s var(--ease) backwards}.auth-hero>:nth-child(2){animation-delay:60ms}.auth-hero>:nth-child(3){animation-delay:.12s}.auth-hero>:nth-child(4){animation-delay:.2s}.auth-hero>:nth-child(5){animation-delay:.28s}@keyframes rise{0%{opacity:0;filter:blur(4px);transform:translateY(14px)}}.hero-brand{color:#e8ecf4d9;letter-spacing:.04em;align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.brand-mark.lg{grid-template-rows:10px 10px;grid-template-columns:10px 10px;gap:3px}.hero-title{letter-spacing:.01em;color:#fff;margin:0;font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1.2}.grad{background:linear-gradient(100deg,#6ee7a8,#7aa7ff 45%,#c39bff 80%,#6ee7a8);color:#0000;-webkit-background-clip:text;background-clip:text}.hero-sub{color:#e8ecf49e;max-width:34em;margin:0;font-size:15px;line-height:1.75}.hero-points{color:#e8ecf4b3;flex-wrap:wrap;gap:10px 22px;margin:4px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.hero-points li{align-items:center;gap:7px;display:flex}.hero-points .icon{color:#8fb4ff}.showcase{perspective:1200px;height:262px;margin:6px 0;position:relative}.sc-card{color:#e8ecf4e0;background:linear-gradient(#2c3650d1,#1a2134db);border:1px solid #ffffff1f;border-radius:14px;padding:12px 14px 14px;font-size:12px;position:absolute;box-shadow:0 30px 60px -20px #0000008c,inset 0 1px #ffffff14}.sc-sheet{width:min(440px,76%);animation:7s ease-in-out infinite float1;top:0;left:0;transform:rotateY(8deg)rotateX(4deg)}.sc-doc{z-index:2;background:linear-gradient(#242c42eb,#161c2eeb);width:min(290px,52%);animation:8s ease-in-out infinite float2;bottom:-14px;right:-8px;transform:rotateY(-6deg)}@keyframes float1{50%{transform:rotateY(8deg)rotateX(4deg)translateY(-8px)}}@keyframes float2{50%{transform:rotateY(-6deg)translateY(7px)}}.sc-head{color:#fff;align-items:center;gap:8px;margin-bottom:10px;font-weight:600;display:flex}.sc-live{color:#7ee2a8;align-items:center;gap:5px;margin-left:auto;font-size:11px;font-weight:500;display:inline-flex}.sc-live i{background:currentColor;border-radius:50%;width:6px;height:6px;position:relative}.sc-live i:after{content:"";background:#7ee2a899;border-radius:50%;animation:1.8s infinite ping;position:absolute;inset:0}@keyframes ping{70%,to{opacity:0;transform:scale(3)}}.sc-grid{border-top:1px solid #ffffff1a;border-left:1px solid #ffffff1a;grid-template-columns:1fr .8fr 1fr .8fr;display:grid;position:relative}.sc-grid>b,.sc-grid>span{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff1a;border-right:1px solid #ffffff1a;padding:6px 8px;overflow:hidden}.sc-grid>b{color:#e8ecf48c;background:#ffffff0a;font-weight:500}.sc-grid .cell{animation:9s ease-in-out infinite both fill}.c02,.c12,.c22{font-variant-numeric:tabular-nums}.c00{animation-delay:0s}.c01{animation-delay:.25s}.c02{animation-delay:.5s}.c03{animation-delay:.75s}.c10{animation-delay:1.4s}.c11{animation-delay:1.65s}.c12{animation-delay:1.9s}.c13{animation-delay:2.15s}.c20{animation-delay:2.8s}.c21{animation-delay:3.05s}.c22{animation-delay:3.3s}.c23{animation-delay:3.55s}@keyframes fill{0%,4%{opacity:0;filter:blur(3px)}10%,88%{opacity:1;filter:none}to{opacity:0}}.sel{pointer-events:none;border:2px solid;border-radius:2px;transition:none;position:absolute}.sel em{font:600 10px/1 var(--font);color:#fff;white-space:nowrap;border-radius:3px 3px 3px 0;padding:2px 5px;font-style:normal;position:absolute;top:-17px;left:-2px}.sel.s1{border-color:#f08c3a;height:25%;animation:9s step-end infinite hop1}.sel.s1 em{background:#f08c3a}.sel.s2{border-color:#5aa0ff;height:25%;animation:9s step-end infinite hop2}.sel.s2 em{background:#5aa0ff}@keyframes hop1{0%{width:27.8%;top:25%;left:0}33%{width:22.2%;top:50%;left:27.8%}66%{width:27.8%;top:75%;left:50%}}@keyframes hop2{0%{width:27.8%;top:50%;left:50%}33%{width:27.8%;top:75%;left:0}66%{width:22.2%;top:25%;left:77.8%}}.sc-lines{gap:7px;display:grid}.ln{white-space:nowrap;margin:0;position:relative;overflow:visible}.ln.typing{clip-path:inset(0 100% 0 0);width:fit-content;animation:6s steps(12,end) infinite type}@keyframes type{0%{clip-path:inset(0 100% 0 0)}45%,85%{clip-path:inset(0 -40px 0 0)}to{clip-path:inset(0 -40px 0 0);opacity:0}}.caret{vertical-align:-3px;width:2px;height:1.15em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block;position:relative}.caret em{font:600 10px/1 var(--font);color:#fff;white-space:nowrap;border-radius:3px 3px 3px 0;padding:2px 5px;font-style:normal;position:absolute;top:-15px;left:0}.c-a{background:#c39bff}.c-a em{background:#9b6ae8}.c-b{background:#6ee7a8}.c-b em{background:#2f9e6b}.auth-card{width:100%;max-width:400px;animation:rise .7s .1s var(--ease) backwards;background:linear-gradient(#2e3854d6,#181f32e0);border:1px solid #ffffff24;border-radius:20px;justify-self:end;gap:16px;padding:34px 30px 26px;display:grid;position:relative;box-shadow:0 40px 80px -24px #0009,inset 0 1px #ffffff1f}.auth-card:before{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from 200deg, transparent 0 62%, #7aa7ffb3 76%, #6ee7a899 88%, transparent 98%);-webkit-mask-composite:xor;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.auth.leaving .auth-card{transform:scale(.97)}.auth-card h1{color:#fff;word-break:break-word;margin:0;font-size:22px;line-height:1.35}.auth-sub,.auth-card .muted{color:#e8ecf499;margin:4px 0 0;font-size:13px}.auth-card .login-mark span{box-shadow:0 6px 16px -6px #0009}.auth-card>label:not(.float-field){color:#e8ecf4bf;gap:6px;font-size:13px;display:grid}.auth-card input:not([type=checkbox]){color:#fff;background:#0a0f1c73;border-color:#ffffff24;border-radius:10px;height:46px}.auth-card input:hover{border-color:#ffffff47}.auth-card input:focus{background:#0a0f1c99;border-color:#7aa7ff;box-shadow:0 0 0 4px #7aa7ff2e}.auth-card input::placeholder{color:#e8ecf459}.auth-card .affix-btn{color:#e8ecf48c;top:7px;bottom:7px;right:6px}.auth-card .affix-btn:hover{color:#fff;background:#ffffff1a}.auth-card .error{color:#ff9b8f;align-items:center;gap:6px;display:flex}.auth-card .field-hint.bad{color:#ffb38a;margin-top:-8px}.auth-card .state-icon{color:#ff9b8f;background:#ff786426}.auth-foot{text-align:center;color:#e8ecf466;margin:0;font-size:12px}.float-field{display:block;position:relative}.float-field input{padding:16px 44px 0 40px!important}.ff-icon{color:#e8ecf473;pointer-events:none;transition:color .2s;position:absolute;top:15px;left:13px}.ff-label{color:#e8ecf480;pointer-events:none;transition:transform .18s var(--ease), color .18s, font-size .18s;transform-origin:0 0;font-size:14px;position:absolute;top:13px;left:41px}.float-field input:focus~.ff-label,.float-field input:not(:placeholder-shown)~.ff-label{color:#e8ecf499;font-size:11px;transform:translateY(-8px)}.float-field input:focus~.ff-label,.float-field:focus-within .ff-icon{color:#9dbcff}.btn.primary.glow{letter-spacing:.04em;color:#fff;height:46px;transition:background-position .5s var(--ease), box-shadow .2s, transform .1s;background:linear-gradient(100deg,#3b6fd1,#6a4cc4 60%,#2f9e6b) 0 0/160% 100%;border:0;border-radius:10px;font-weight:600;position:relative;overflow:hidden;box-shadow:0 12px 30px -10px #506ee6bf}.btn.primary.glow:hover{background:linear-gradient(100deg,#3b6fd1,#6a4cc4 60%,#2f9e6b) 100% 0/160% 100%;box-shadow:0 16px 36px -10px #6e78f0d9}.btn.glow:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff59 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.btn.glow:hover:after{transition:transform .8s var(--ease);transform:translate(120%)}.btn.glow .arrow{transition:transform .2s var(--ease);transform:rotate(180deg)}.btn.glow:hover .arrow{transform:rotate(180deg)translate(-3px)}.btn.primary.glow.ok{background:#2f9e6b}.btn.primary.glow:disabled{opacity:.85}.auth>.auth-card{justify-self:center}@media (width<=920px){.auth-layout{grid-template-columns:1fr;justify-items:center;gap:28px}.auth-hero{text-align:center;justify-items:center}.showcase,.hero-sub,.hero-points{display:none}.hero-title{font-size:26px}.auth-card{justify-self:center}}@media (width<=480px){.auth{align-items:start;padding:10vh 16px 24px}.auth-card{border-radius:16px;padding:28px 22px 22px}.hero-title br{display:none}}body{background:radial-gradient(1100px 520px at 8% -8%, #2c5da816, transparent 60%), radial-gradient(900px 480px at 100% -6%, #6a4c9c12, transparent 62%), var(--paper);background-repeat:no-repeat}.app-bg{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.app-bg i{border-radius:50%;position:absolute}.app-bg i:first-child{background:radial-gradient(circle closest-side,#5b8ce642,#5b8ce61a 55%,#0000);width:52vmax;height:52vmax;top:-22vmax;left:-14vmax}.app-bg i:nth-child(2){background:radial-gradient(circle closest-side,#966edc36,#966edc14 55%,#0000);width:46vmax;height:46vmax;top:-10vmax;right:-16vmax}.app-bg i:nth-child(3){background:radial-gradient(circle closest-side,#3caa782b,#3caa780f 55%,#0000);width:44vmax;height:44vmax;bottom:-26vmax;left:30vmax}.app-bg b{background-image:radial-gradient(#1e273321 1px,#0000 1.3px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 0,#000 20%,#0000 75%);mask-image:radial-gradient(90% 70% at 50% 0,#000 20%,#0000 75%)}.page:before{content:none}.page{isolation:isolate}.topbar{z-index:30;background:#f8f9fb;border-bottom-color:#d0d5dc99;margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);position:sticky;top:0}.page-title,.toolbar-row .hint,.actions,.list-bar,.card,.ledger{animation:lift .5s var(--ease) backwards}@keyframes lift{0%{opacity:0;transform:translateY(8px)}}.toolbar-row .hint{animation-delay:40ms}.actions{animation-delay:80ms}.list-bar,.card{animation-delay:.12s}.ledger{animation-delay:.16s}.ledger-row:not(.skeleton){animation:row-in .3s var(--ease) backwards;animation-delay:calc(var(--i,0) * 20ms + .12s)}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}}.ledger{box-shadow:0 1px 2px #1e27330a,0 12px 32px -18px #1e27332e}.ledger-row.clickable{position:relative}.ledger-row.clickable:before{content:"";background:var(--accent);width:3px;transition:transform .18s var(--ease);border-radius:0 3px 3px 0;position:absolute;top:10px;bottom:10px;left:0;transform:scaleY(0)}.ledger-row.clickable:hover:before{transform:scaleY(1)}.ledger-row.clickable:hover .tab{transform:translateY(-1px)rotate(-4deg)}.tab{transition:transform .2s var(--ease)}.btn.primary{background:linear-gradient(180deg, #2a3646, var(--ink));box-shadow:0 1px 2px #1e273333,0 6px 16px -8px #1e27338c,inset 0 1px #ffffff14}.btn.primary:hover{background:linear-gradient(#344255,#263140)}.chip.on{box-shadow:0 4px 12px -6px #1e273399}.brand-mark i{animation:mark-in .6s var(--ease) backwards}.brand-mark i:nth-child(2){animation-delay:80ms}.brand-mark i:nth-child(3){animation-delay:.16s}@keyframes mark-in{0%{transform:scale(0)}}.page{max-width:1120px;min-height:100%;margin:0 auto;padding:0 24px 80px;position:relative}.topbar{border-bottom:1px solid var(--rule);align-items:center;gap:20px;height:60px;margin-bottom:24px;display:flex}.brand{color:var(--ink);white-space:nowrap;align-items:center;gap:10px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.brand-mark{grid-template-rows:8px 8px;grid-template-columns:8px 8px;gap:2px;display:grid}.brand-mark i{border-radius:2px}.brand-mark i:first-child{background:var(--k-sheet)}.brand-mark i:nth-child(2){background:var(--k-doc)}.brand-mark i:nth-child(3){background:var(--k-md);grid-column:1/span 2}.topnav{gap:2px;display:flex}.topnav a{border-radius:var(--radius-sm);color:var(--ink-2);padding:5px 10px;text-decoration:none}.topnav a:hover{background:var(--hover);color:var(--ink)}.topnav a.on{color:var(--ink);background:var(--press);font-weight:600}.topbar-mid{flex:1;justify-content:flex-end;min-width:0;display:flex}.topbar-shortcuts{flex-shrink:0;gap:4px}.topbar-shortcuts a{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:flex}@media (width<=1100px){.topbar-shortcuts a span:not(.notification-count){display:none}.topbar-shortcuts a{padding:9px}}@media (width<=480px){.page .topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:60px;padding-top:10px;padding-bottom:10px}.topbar>.topbar-mid:has(.search){flex-basis:100%;order:5}.topbar-mid .search{max-width:none}.topbar .me-name{display:none}.topbar .brand{gap:6px;font-size:14px}.topbar .topnav a{padding:5px 6px}}.search{width:100%;max-width:320px;position:relative}.search input{background:var(--surface);padding-left:32px;padding-right:30px}.search-icon{color:var(--ink-3);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-kbd{pointer-events:none;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.me-btn{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}.me-btn:hover,.me-btn[aria-expanded=true]{background:var(--press);color:var(--ink)}.me-name{text-overflow:ellipsis;white-space:nowrap;max-width:9em;overflow:hidden}.menu-wrap{display:inline-flex}.menu{z-index:200;background:var(--surface);border:1px solid var(--rule);min-width:168px;max-width:320px;box-shadow:var(--shadow-2);animation:pop .12s var(--ease);border-radius:10px;padding:4px;position:fixed}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.menu button{text-align:left;border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:7px 10px;display:flex}.menu button .icon{color:var(--ink-3)}.menu button:hover,.menu button:focus-visible{background:var(--hover);outline:none}.menu button.danger{color:var(--danger)}.menu button.danger:hover,.menu button.danger:focus-visible{background:var(--danger-soft)}.menu button kbd{margin-left:auto}.menu-sep{background:var(--rule);height:1px;margin:4px 6px}.create-item{align-items:center;gap:10px;display:flex}.create-item>span:last-child{line-height:1.35;display:grid}.create-item b{font-weight:500}.create-item small{color:var(--ink-3);font-size:12px}.swatch-row{align-items:center;gap:10px;display:flex}.swatch-row i{border:1px solid #0000001a;border-radius:4px;width:16px;height:16px}.page-title{margin:0 0 4px;font-size:22px;line-height:1.3}.toolbar-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hint{color:var(--ink-3);max-width:46em;margin:0;font-size:13px}.hint.center{text-align:center;margin:16px auto}.notice{background:var(--warn-soft);color:#5c4210;border-radius:var(--radius);border:1px solid #f1dca6;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:9px 12px;display:flex}.notice>span{flex:1;min-width:12em}.notice.success{background:var(--ok-soft);color:#14532d;border-color:#bfe3cc}.notice.success .icon{color:var(--ok)}.notice.inline{border-width:0 0 1px;border-radius:0;margin:0}.notice code{background:#ffffffb3;border-radius:4px;padding:1px 5px}.list-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;display:flex}.filters{flex-wrap:wrap;gap:4px;display:flex}.sort{color:var(--ink-3);align-items:center;display:flex;position:relative}.sort .icon{pointer-events:none;position:absolute;left:9px}.sort select{width:auto;height:30px;color:var(--ink-2);background-color:#0000;border-color:#0000;padding-left:30px;font-size:13px}.sort select:hover{background-color:var(--surface);border-color:var(--rule-2)}.ledger{background:var(--surface);border:1px solid var(--rule);box-shadow:var(--shadow-1);border-radius:10px;overflow:hidden}.ledger-head,.ledger-row{grid-template-columns:minmax(0,1fr) 220px 110px 84px;align-items:center;gap:12px;padding:0 8px 0 16px;display:grid}.ledger-head{height:38px;color:var(--ink-3);border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:12px}.ledger-row{border-bottom:1px solid var(--rule);min-height:54px;transition:background .12s}.ledger-row:last-child{border-bottom:0}.ledger-row:hover{background:#fafbfc}.ledger-row.clickable{cursor:pointer}.ledger-row.clickable:hover .title{color:var(--accent)}.ledger-row.off{color:var(--ink-3)}.ledger-row.off .title{text-decoration:line-through;-webkit-text-decoration-color:var(--ink-4);text-decoration-color:var(--ink-4)}.ledger .name{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;min-width:0;padding:12px 0;display:flex}.ledger .name.static{cursor:default}.ledger .title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.ledger button.name:hover .title{color:var(--accent)}.ledger .when,.ledger .owner{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.live{color:var(--ok);background:var(--ok-soft);border-radius:4px;flex:none;align-items:center;gap:5px;padding:1px 7px;font-size:12px;display:inline-flex}.live i{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite blink}@keyframes blink{50%{opacity:.3}}.size{flex:none;font-size:12px}.row-actions{justify-content:flex-end;align-items:center;gap:2px;display:flex}.ledger .row-actions>.icon-btn:first-child{opacity:0;transition:opacity .12s}.ledger-row:hover .row-actions>.icon-btn,.ledger-row:focus-within .row-actions>.icon-btn{opacity:1}.users .ledger-head,.users .ledger-row{grid-template-columns:minmax(0,1fr) 200px 170px 48px}.empty{text-align:center;color:var(--ink-3);justify-items:center;gap:12px;padding:48px 16px;display:grid}.empty p{margin:0}.empty-title{color:var(--ink);font-size:16px;font-weight:600}.empty-create{grid-template-columns:repeat(4,minmax(0,150px));gap:10px;margin-top:8px;display:grid}.create-card{text-align:left;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);cursor:pointer;justify-items:start;gap:6px;padding:14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.create-card:hover{border-color:var(--rule-2);box-shadow:var(--shadow-2);transform:translateY(-1px)}.create-card b{color:var(--ink);font-weight:600}.create-card small{color:var(--ink-3);font-size:12px;line-height:1.4}.empty-inline{margin:4px 0 0}.skeleton{pointer-events:none}.sk{background:linear-gradient(90deg,#eef0f3 25%,#f6f7f9 50%,#eef0f3 75%) 0 0/200% 100%;border-radius:4px;height:12px;animation:1.2s linear infinite shimmer;display:block}.sk-tab{flex:none;width:26px;height:22px}@keyframes shimmer{to{background-position:-200% 0}}.drop-zone{z-index:150;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f5f6f8d1;place-items:center;display:grid;position:fixed;inset:0}.drop-zone>div{color:var(--accent);border:2px dashed var(--accent);background:var(--surface);box-shadow:var(--shadow-2);border-radius:16px;justify-items:center;gap:8px;padding:36px 56px;display:grid}.drop-zone b{color:var(--ink);font-size:16px}.drop-zone span{color:var(--ink-3);font-size:13px}.upload-panel{z-index:120;background:var(--surface);border:1px solid var(--rule);width:340px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-2);animation:pop .15s var(--ease);border-radius:12px;position:fixed;bottom:20px;right:20px;overflow:hidden}.upload-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;min-height:46px;padding:8px 8px 8px 14px;display:flex}.upload-panel ul{max-height:260px;margin:0;padding:6px 14px 12px;list-style:none;overflow:auto}.upload-panel li{padding:8px 0 4px}.upload-line{align-items:center;gap:10px;font-size:13px;display:flex}.upload-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.upload-state{color:var(--ink-3);flex:none;font-size:12px}.upload-panel li.error .upload-state{color:var(--danger)}.upload-panel li.done .upload-state{color:var(--ok)}.upload-err{color:var(--danger);margin:2px 0 0;font-size:12px}.bar{background:var(--hover);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.bar i{background:var(--accent);border-radius:2px;height:100%;transition:width .2s;display:block}.done .bar i{background:var(--ok)}.bar i.pulse{animation:1s ease-in-out infinite blink}.toasts{z-index:300;pointer-events:none;justify-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:grid;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--ink);color:#fff;box-shadow:var(--shadow-2);max-width:520px;animation:toast-in .2s var(--ease);border-radius:10px;align-items:center;gap:10px;padding:9px 8px 9px 14px;font-size:13px;display:flex}.toast.loading{padding-right:14px}.toast .icon{color:#8fd3a8}.toast.error{background:var(--danger)}.toast.error .icon,.toast.info .icon{color:#fff}.toast-x{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:3px;display:grid}.toast-x:hover{opacity:1;background:#ffffff1f}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.overlay{z-index:100;background:#1e273361;place-items:center;padding:16px;animation:.15s ease-out fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--surface);width:100%;max-width:420px;max-height:90vh;animation:modal-in .18s var(--ease);border-radius:12px;outline:none;padding:16px 20px 20px;overflow:auto;box-shadow:0 24px 60px -12px #1e273359}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.modal.wide{max-width:660px}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin:0 -8px 10px 0;display:flex}.modal-head h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.modal p{margin:0 0 12px}.dialog-msg{color:var(--ink-2)}.form{gap:14px;display:grid}.form-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-body+.form-actions{margin-top:16px}.share-form{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius);grid-template-columns:auto auto;justify-content:start;align-items:end;gap:12px 20px;margin:14px 0 6px;padding:14px;display:grid}.share-form>.btn{grid-column:1/-1;justify-self:start}.field{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.field legend{color:var(--ink-2);margin-bottom:6px;padding:0;font-size:13px}.pw-field{grid-column:1/-1;grid-template-columns:auto minmax(0,260px);align-items:center;gap:12px}.segmented{background:var(--press);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.segmented button{cursor:pointer;color:var(--ink-2);white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:4px 12px;transition:background .15s,color .15s;display:inline-flex}.segmented button:hover{color:var(--ink)}.sub{margin:20px 0 4px;font-size:14px}.share-list{margin:0;padding:0;list-style:none}.share-list li{border-top:1px solid var(--rule);border-radius:6px;align-items:center;gap:12px;margin:0 -8px;padding:10px 8px;display:flex}.share-list li:first-child{border-top:0}.share-list li.fresh{background:var(--accent-soft);animation:.4s fade}.share-list li.expired{opacity:.6}.share-main{flex:1;gap:4px;min-width:0;display:grid}.share-list code{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);-webkit-user-select:all;user-select:all;font-size:12px;overflow:hidden}.share-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.card{background:var(--surface);border:1px solid var(--rule);box-shadow:var(--shadow-1);border-radius:10px;padding:16px}.card-title{margin:0 0 12px;font-size:15px}.user-form{margin:20px 0 16px}.user-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.user-form-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.avatar{color:#fff;border:2px solid var(--surface);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;margin-left:-6px;font-size:12px;font-weight:600;display:grid}.avatar.sm{border:0;width:26px;height:26px;margin-left:0;font-size:12px}.avatar.more{background:var(--ink-3)}.editor-page{flex-direction:column;height:100%;display:flex}.editor-head{background:var(--surface);border-bottom:1px solid var(--rule);z-index:5;flex:none;align-items:center;gap:10px;height:54px;padding:0 12px 0 8px;display:flex;position:relative}.title-input{text-overflow:ellipsis;flex:1;min-width:80px;max-width:420px;font-size:15px;font-weight:600;background:0 0!important;border:1px solid #0000!important;height:34px!important}.title-input:hover:not([readonly]){border-color:var(--rule-2)!important}.title-input:focus:not([readonly]){border-color:var(--focus)!important;background:var(--surface)!important}.title-input[readonly]{cursor:default;box-shadow:none!important}.badge{background:var(--hover);color:var(--ink-2);border-radius:4px;flex:none;align-items:center;gap:4px;padding:1px 8px;font-size:12px;display:inline-flex}.sync{color:var(--ink-3);white-space:nowrap;cursor:default;align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.sync i{background:var(--ink-4);border-radius:50%;width:7px;height:7px}.sync.online i{background:var(--ok)}.sync.connecting i,.sync.saving i{background:#e0a100;animation:1s ease-in-out infinite blink}.sync.offline{color:var(--danger)}.sync.offline i{background:var(--danger);animation:1s ease-in-out infinite blink}.avatars{padding-left:6px;display:flex}.notice.warn .icon{color:var(--warn)}.editor-body{flex:1;min-height:0;position:relative}.loading{color:var(--ink-3);align-items:center;gap:10px;padding:40px;display:flex}.sheet-host{position:absolute;inset:0}.doc-host{background:var(--paper);flex-direction:column;display:flex;position:absolute;inset:0}.doc-toolbar{background:var(--surface);border-bottom:1px solid var(--rule);flex-wrap:wrap;flex:none;align-items:center;gap:2px;padding:5px 10px;display:flex}.tb-group{display:contents}.tb-select{background-position:right 8px center;padding:0 26px 0 8px;font-size:13px;border-color:#0000!important;width:auto!important;height:30px!important}.tb-select:hover{background-color:var(--hover)}.tb{cursor:pointer;min-width:30px;height:30px;color:var(--ink-2);background:0 0;border:0;border-radius:5px;place-items:center;padding:0 7px;font-size:14px;transition:background .12s,color .12s;display:inline-grid;position:relative}.tb.tb-text{font-size:13px}.tb:hover:not(:disabled),.tb[aria-expanded=true]{background:var(--hover);color:var(--ink)}.tb.on{background:var(--accent-soft);color:var(--accent)}.tb:disabled{opacity:.35;cursor:default}.tb-color{justify-items:center;font-weight:600;line-height:1;display:grid}.tb-color i{border-radius:1px;width:14px;height:3px;margin-top:2px}.sep{background:var(--rule);flex:none;width:1px;height:18px;margin:0 5px}.doc-scroll{flex:1;padding:28px 16px 120px;overflow:auto}.doc-paper{background:var(--surface);border:1px solid var(--rule);border-radius:4px;max-width:820px;min-height:100%;margin:0 auto;padding:56px 72px;box-shadow:0 1px 3px #1e27330d}.doc-paper .ProseMirror{min-height:60vh}.prose{outline:none;font-size:15px;line-height:1.8}.prose>:first-child{margin-top:0}.prose h1{margin:1.2em 0 .5em;font-size:26px;line-height:1.35}.prose h2{margin:1.1em 0 .4em;font-size:21px;line-height:1.4}.prose h3{margin:1em 0 .3em;font-size:17px}.prose p{margin:.5em 0}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose blockquote{border-left:3px solid var(--rule-2);color:var(--ink-2);margin:.8em 0;padding-left:14px}.prose pre{font-family:var(--font-mono);background:#f3f5f7;border-radius:6px;padding:12px 14px;font-size:13px;overflow:auto}.prose code{font-family:var(--font-mono);background:#f0f2f5;border-radius:3px;padding:1px 4px;font-size:.9em}.prose pre code{background:0 0;padding:0}.prose img{border-radius:2px;max-width:100%;height:auto}.prose img.ProseMirror-selectednode{outline:2px solid var(--accent)}.prose hr{border:0;border-top:1px solid var(--rule-2);margin:1.5em 0}.prose hr.ProseMirror-selectednode{border-top-color:var(--accent)}.prose table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.8em 0}.prose td,.prose th{border:1px solid var(--rule-2);vertical-align:top;padding:6px 10px;position:relative}.prose th{text-align:left;background:#f3f5f7;font-weight:600}.prose td p,.prose th p{margin:0}.prose .selectedCell:after{content:"";pointer-events:none;background:#2c5da81f;position:absolute;inset:0}.prose .column-resize-handle{background:var(--k-doc);pointer-events:none;width:4px;position:absolute;top:0;bottom:0;right:-2px}.prose.resize-cursor{cursor:col-resize}.prose mark{border-radius:2px;padding:0 1px}.prose ul,.prose ol{padding-left:1.6em}.prose p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-4);float:left;pointer-events:none;height:0}.collaboration-carets__caret{word-break:normal;pointer-events:none;border-left:1px solid;border-right:1px solid;margin:0 -1px;position:relative}.collaboration-carets__label{color:#fff;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:3px 3px 3px 0;padding:2px 5px;font-size:11px;font-weight:600;line-height:1;position:absolute;top:-1.4em;left:-1px}.text-host{background:var(--surface);flex-direction:column;display:flex;position:absolute;inset:0}.text-modes{border-bottom:1px solid var(--rule);flex:none;gap:2px;padding:6px 10px;display:flex}.text-modes .chip{padding:2px 12px;font-size:13px}.text-panes{flex:1;grid-template-columns:1fr;min-height:0;display:grid}.mode-split .text-panes{grid-template-columns:1fr 1fr}.cm-host{min-height:0;overflow:hidden}.cm-host .cm-editor{height:100%;font-size:14px}.cm-host .cm-editor.cm-focused{outline:none}.cm-host .cm-gutters{background:var(--surface-2);border-right-color:var(--rule);color:var(--ink-4)}.md-preview{border-left:1px solid var(--rule);background:var(--surface);padding:24px 40px;display:none;overflow:auto}.mode-split .md-preview,.mode-preview .md-preview{display:block}.mode-preview .cm-host{display:none}.mode-preview .md-preview{border-left:0;width:100%;max-width:860px;margin:0 auto}@media (width<=860px){.ledger-head,.ledger-row{grid-template-columns:minmax(0,1fr) 180px 84px}.ledger-head>:nth-child(3),.ledger-row>.owner{display:none}.users .ledger-head,.users .ledger-row{grid-template-columns:minmax(0,1fr) 140px 100px 48px}.user-fields{grid-template-columns:1fr 1fr}.user-fields>:last-child{grid-column:1/-1}}@media (width<=760px){.page{padding:0 14px 64px}.topbar{gap:10px;height:56px;margin-bottom:16px}.brand>span:last-child,.me-name,.me-btn>.icon{display:none}.me-btn{padding:3px}.search{max-width:none}.search-kbd{display:none}.page-title{font-size:20px}.toolbar-row{flex-direction:column;align-items:stretch;gap:12px}.actions{grid-template-columns:1fr 1fr;display:grid}.actions .menu-wrap>.btn,.actions .split{width:100%}.actions .split>.btn:first-child{flex:1}.ledger-head{display:none}.ledger-row,.users .ledger-row{grid-template-columns:minmax(0,1fr) auto;gap:0 8px;padding:4px 4px 4px 12px}.ledger-row>:nth-child(2){grid-column:1;margin:-12px 0 0 38px;padding-bottom:10px;font-size:12px}.ledger-row>:nth-child(3){display:none}.ledger-row>.row-actions{grid-area:1/2/span 2}.ledger .row-actions>.icon-btn:first-child{opacity:1}.users .ledger-row>:nth-child(3){grid-column:1;margin:-10px 0 0 38px;padding-bottom:10px;display:block}.users .ledger-row>:nth-child(2){display:none}.empty-create{grid-template-columns:1fr 1fr;width:100%}.share-form,.pw-field{grid-template-columns:1fr}.share-list li{flex-wrap:wrap}.share-list .row-actions{margin-left:auto}.user-fields{grid-template-columns:1fr}.editor-head{gap:6px;padding:0 8px 0 4px}.editor-head .btn{padding:0 9px}.editor-head .btn-text,.editor-head>.tab{display:none}.sync{gap:0;padding:6px;font-size:0}.avatars{display:none}.doc-toolbar{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.doc-toolbar>*{flex:none}.filters{scrollbar-width:none;flex-wrap:nowrap;margin:0 -14px;padding:0 14px;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.chip{flex:none}.list-bar{flex-wrap:nowrap}.doc-toolbar::-webkit-scrollbar{display:none}.doc-scroll{padding:12px 8px 96px}.doc-paper{padding:24px 18px}.mode-split .text-panes{grid-template-columns:1fr}.mode-split .md-preview{display:none}.md-preview{padding:18px}.upload-panel{width:auto;max-width:none;bottom:16px;left:16px;right:16px}.modal{padding:14px 16px 18px}}@media (hover:none){.ledger .row-actions>.icon-btn:first-child{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.auth-card input:-webkit-autofill{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #161d2e}.auth-card input:-webkit-autofill:hover{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #161d2e}.auth-card input:-webkit-autofill:focus{-webkit-text-fill-color:#fff;caret-color:#fff;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #161d2e}.auth-card input:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 1000px #161d2e,0 0 0 4px #7aa7ff2e}.float-field input:autofill~.ff-label{color:#e8ecf499;font-size:11px;transform:translateY(-8px)}.ed-loading{background:var(--paper);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.ed-skeleton{position:absolute;inset:0}.sk-toolbar{background:var(--surface);border-bottom:1px solid var(--rule);align-items:center;gap:10px;height:44px;padding:0 14px;display:flex}.sk-toolbar i{background:#eceff3;border-radius:4px;width:22px;height:14px}.sk-toolbar i:nth-child(4n){width:52px}.sk-toolbar i:nth-child(5n){margin-right:10px}.sk-grid{background:var(--surface);grid-template-columns:46px repeat(8,1fr);display:grid}.sk-grid i{border-bottom:1px solid #eef0f3;border-right:1px solid #eef0f3;height:28px;position:relative}.sk-grid i:nth-child(9n+1){background:#f6f7f9}.sk-grid i:not(:nth-child(9n+1)):after{content:"";width:55%;height:8px;animation:1.6s ease-in-out infinite sk-pulse;animation-delay:var(--d,0s);background:#eceff3;border-radius:3px;position:absolute;top:10px;left:8px}.sk-grid i:nth-child(3n):after{width:35%}.sk-grid i:nth-child(7n):after{width:70%}.sk-grid i:nth-child(-n+9){background:#f6f7f9}.sk-doc{flex-direction:column;display:flex;position:absolute;inset:0}.sk-paper{background:var(--surface);border:1px solid var(--rule);border-radius:4px 4px 0 0;flex:1;align-content:start;gap:14px;width:min(820px,100% - 32px);margin:28px auto 0;padding:56px 72px;display:grid}.sk-paper i{height:11px;animation:1.6s ease-in-out infinite sk-pulse;animation-delay:var(--d,0s);background:#eceff3;border-radius:4px;display:block}.sk-paper i.h{width:42%;height:20px;margin-bottom:10px}.sk-paper b{height:6px}@keyframes sk-pulse{50%{opacity:.45}}.ed-card{-webkit-backdrop-filter:blur(12px);border:1px solid var(--rule);min-width:260px;animation:lift .35s var(--ease) backwards;background:#ffffffdb;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:10px 12px;padding:16px 20px 18px;display:grid;position:relative;box-shadow:0 24px 50px -20px #1e273347}.ed-tab{color:#fff;border-radius:4px 4px 4px 12px;place-items:center;width:34px;height:30px;font-weight:700;animation:1.4s ease-in-out infinite tab-bob;display:grid}@keyframes tab-bob{50%{transform:translateY(-3px)rotate(-4deg)}}.ed-text{color:var(--ink-2);font-size:14px}.ed-bar{background:var(--hover);border-radius:2px;grid-column:1/-1;height:4px;position:relative;overflow:hidden}.ed-bar i{width:40%;animation:indeterminate 1.3s var(--ease) infinite;border-radius:2px;position:absolute;top:0;bottom:0}@keyframes indeterminate{0%{left:-40%}to{left:100%}}@media (width<=760px){.sk-paper{margin-top:12px;padding:24px 18px}}.btn.on{background:var(--accent-soft);color:var(--accent);border-color:#b9cbec}.editor-body.with-history .sheet-host{right:380px}.sheet-host{transition:right .22s var(--ease)}.history{z-index:4;background:var(--surface);border-left:1px solid var(--rule);width:380px;animation:slide-in .22s var(--ease);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-18px 0 40px -28px #1e273359}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}}.history-head{justify-content:space-between;align-items:center;padding:12px 10px 8px 16px;display:flex}.history-title{color:var(--ink);align-items:center;gap:8px;display:flex}.history-title h2{margin:0;font-size:15px}.history-filter{border-bottom:1px solid var(--rule);padding:0 16px 10px}.history-filter select{height:32px;font-size:13px}.history-list{overscroll-behavior:contain;flex:1;padding:6px 0 16px;overflow:auto}.history-empty{text-align:center;color:var(--ink-3);justify-items:center;gap:8px;padding:48px 28px;font-size:13px;display:grid}.history-empty b{color:var(--ink);font-size:14px}.history-empty .icon{color:var(--ink-4)}.hgroup{animation:lift .25s var(--ease) backwards;border-bottom:1px solid #f0f2f5;padding:10px 16px 6px}.hgroup-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.hgroup-head .avatar.sm{width:22px;height:22px;font-size:11px}.hgroup-user{text-overflow:ellipsis;white-space:nowrap;max-width:9em;font-size:13px;overflow:hidden}.hgroup-time{color:var(--ink-3);font-size:12px}.hgroup-count{color:var(--ink-3);background:var(--hover);border-radius:999px;margin-left:auto;padding:0 7px;font-size:11px;line-height:18px}.hgroup ul{margin:0;padding:0 0 0 30px;list-style:none}.hitem{text-align:left;cursor:pointer;width:100%;color:var(--ink-2);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;margin:1px 0;padding:5px 8px;font-size:13px;transition:background .12s;display:flex}.hitem:hover:not(:disabled){background:var(--hover)}.hitem.on{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.hitem:disabled{cursor:default}.hat{min-width:38px;color:var(--accent);background:var(--accent-soft);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;flex:none;max-width:9em;padding:1px 6px;font-size:11.5px;overflow:hidden}.hicon{width:22px;height:20px;color:var(--ink-3);background:var(--hover);border-radius:4px;flex:none;place-items:center;display:grid}.hchange{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.hchange del,.hchange ins,.hchange em{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-style:normal;overflow:hidden}.hchange del{color:var(--ink-3);flex:0 auto;max-width:45%;text-decoration-color:#b423188c}.hchange ins{color:var(--ink);flex:0 auto;font-weight:500;text-decoration:none}.hchange em{color:var(--ink-4);flex:none;font-size:12px}.harrow{color:var(--ink-4);flex:none}.htext{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hmore{margin:2px 0 4px 38px;font-size:12px}.history-loadmore{margin:14px auto 0;display:flex}.history-foot{color:var(--ink-3);border-top:1px solid var(--rule);background:var(--surface-2);padding:8px 16px;font-size:11.5px}@media (width<=760px){.editor-body.with-history .sheet-host{right:0}.history{width:100%}}.menu{border-radius:12px;min-width:196px;padding:6px}.menu.wide{min-width:280px;max-width:360px}.menu button{border-radius:8px;gap:11px;padding:8px 10px;font-size:14px}.menu button .icon{color:var(--ink-2);width:16px;height:16px}.menu button:hover .icon,.menu button:focus-visible .icon{color:var(--ink)}.menu button.danger .icon{color:currentColor}.menu-sep{margin:5px 4px}.menu-heading{color:var(--ink-3);letter-spacing:.04em;padding:6px 10px 4px;font-size:11.5px}.mi-tile{background:var(--hover);width:34px;height:34px;color:var(--ink-2);border-radius:9px;flex:none;place-items:center;display:grid}.mi-tile .tab{width:24px;height:21px;font-size:12px}.mi-tile.solid{color:#fff}.mi-text{gap:1px;min-width:0;line-height:1.35;display:grid}.mi-text b{color:var(--ink);font-size:14px;font-weight:500}.mi-text small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.menu button:hover .mi-tile{background:var(--surface);box-shadow:0 0 0 1px var(--rule)}.pill.lock{color:#9a5b00;background:#fff4e5;gap:4px}.pill.stat{border:1px solid var(--rule);background:#ffffffb3;font-size:12px}.title-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:4px;display:flex}.title-row .page-title{margin:0}.avatar.xs{border:0;width:18px;height:18px;margin:0;font-size:10px}.segmented.sm button{padding:2px 10px;font-size:12px}.sub.sm{color:var(--ink-2);margin-top:16px;font-size:13px}.acc-file{align-items:center;gap:10px;min-width:0;margin:-2px 0 14px;display:flex}.acc-file b{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);font-weight:500;overflow:hidden}.acc-loading{align-items:center;gap:8px;display:flex}.acc-modes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.acc-mode{text-align:left;border:1px solid var(--rule-2);background:var(--surface);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.acc-mode:hover{border-color:var(--ink-4)}.acc-mode.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px #2c5da81f}.acc-mode-icon{background:var(--hover);width:36px;height:36px;color:var(--ink-2);border-radius:10px;flex:none;place-items:center;display:grid}.acc-mode.on .acc-mode-icon{background:var(--surface);color:var(--accent)}.acc-mode .mi-text{flex:1}.acc-radio{border:1.5px solid var(--rule-2);border-radius:50%;flex:none;width:16px;height:16px;position:relative}.acc-mode.on .acc-radio{border-color:var(--accent)}.acc-mode.on .acc-radio:after{content:"";background:var(--accent);border-radius:50%;position:absolute;inset:3px}.acc-label{color:var(--ink-3);font-size:12.5px}.acc-label b{color:var(--accent);font-weight:600}.acc-fixed{align-items:flex-start;gap:12px;margin:16px 0 4px;display:flex}.acc-fixed .acc-label{white-space:nowrap;padding-top:4px}.acc-chips{flex-wrap:wrap;gap:6px;display:flex}.acc-chip{background:var(--hover);border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 3px;font-size:13px;display:inline-flex}.acc-chip small{color:var(--ink-3);font-size:11px}.acc-members{border:1px solid var(--rule);background:var(--surface-2);animation:lift .2s var(--ease);border-radius:12px;margin-top:14px;padding:10px 12px 12px}.acc-members-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.acc-search{max-width:none;margin-bottom:8px}.acc-list{gap:2px;max-height:280px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.acc-list li{border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:4px 6px;display:flex}.acc-list li.on{background:var(--surface);box-shadow:0 0 0 1px var(--rule)}.acc-person{cursor:pointer;flex:1;align-items:center;gap:10px;min-width:0;padding:3px 0;display:flex}.acc-person input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:0}.acc-person .mi-text b{font-size:13.5px}.acc-none{padding:10px 6px;font-size:13px}.acc-warn{color:#9a5b00;align-items:center;gap:6px;font-size:12.5px;display:flex;margin:10px 0 0!important}.acc-note{color:var(--ink-3);align-items:center;gap:6px;font-size:12.5px;display:flex;margin:14px 0 0!important}.share-access{border:1px solid var(--rule);background:var(--surface-2);border-radius:12px;align-items:center;gap:12px;margin-bottom:4px;padding:12px 14px;display:flex}.share-access .mi-text{flex:1;min-width:0}@media (width<=760px){.acc-modes{grid-template-columns:1fr}.acc-fixed{flex-direction:column;gap:6px}}.pill.export{background:var(--ok-soft);color:var(--ok);gap:3px}.role-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.user-checks{flex-wrap:wrap;gap:20px;display:flex}.check.dim{opacity:.55;cursor:default}.perm-matrix{margin:0 0 16px;padding:0;overflow:hidden}.perm-matrix summary{cursor:pointer;color:var(--ink-2);align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;list-style:none;display:flex}.perm-matrix summary::-webkit-details-marker{display:none}.perm-matrix summary:hover{background:var(--surface-2)}.perm-matrix .pm-arrow{transition:transform .2s var(--ease);color:var(--ink-3);margin-left:auto}.perm-matrix[open] .pm-arrow{transform:rotate(180deg)}.perm-matrix table{border-collapse:collapse;width:100%;font-size:13px}.perm-matrix th,.perm-matrix td{text-align:left;border-top:1px solid var(--rule);padding:8px 16px}.perm-matrix th{color:var(--ink-3);background:var(--surface-2);font-size:12px;font-weight:500}.perm-matrix td:first-child{color:var(--ink)}.perm-matrix td{color:var(--ink-2)}.perm-matrix td.yes{color:var(--ok);font-weight:600}.perm-matrix td.no{color:var(--danger);font-weight:600}.perm-matrix>p{border-top:1px solid var(--rule);margin:0;padding:10px 16px 14px}@media (width<=760px){.perm-matrix th,.perm-matrix td{padding:8px 10px}.users .ledger-row>.role-cell{grid-column:1;margin:-10px 0 0 38px;padding-bottom:10px;display:flex}}@media print{body.no-export #root{display:none!important}body.no-export:after{content:"没有打印权限，请联系管理员开通导出权限";padding:48px;font-size:18px;display:block}}.notification-bell{z-index:60;border:1px solid var(--rule-2);background:var(--surface);width:44px;height:44px;color:var(--ink);box-shadow:var(--shadow-2);border-radius:50%;place-items:center;text-decoration:none;display:grid;position:fixed;bottom:20px;right:20px}.notification-bell .notification-count{text-align:center;min-width:18px;position:absolute;top:-4px;right:-4px}.topbar-shortcuts .notification-count{margin-left:2px;line-height:16px}.notification-bell:hover{background:var(--hover)}.notification-count{background:var(--danger);color:#fff;font-variant-numeric:tabular-nums;border-radius:12px;padding:1px 6px;font-size:11px;font-weight:600}.resource-settings-page{margin:0;padding:0}.resource-page-heading{margin-bottom:24px}.resource-page-heading h1{margin:0 0 8px;font-size:24px}.resource-settings-card{border:1px solid var(--rule);background:var(--surface);min-width:0;box-shadow:var(--shadow-1);border-radius:10px;margin:0 0 20px;padding:24px}.resource-settings-card h2{align-items:center;gap:8px;margin:0 0 10px;font-size:17px;display:flex}.resource-settings-card h3{margin:24px 0 10px;font-size:14px}.resource-settings-card>.hint{margin-bottom:18px}.resource-settings-card .form{margin:14px 0}.resource-settings-card a{color:var(--accent);text-decoration:none}.resource-settings-card a:hover{text-decoration:underline}.resource-settings-card a.btn{color:var(--ink);text-decoration:none}.resource-settings-card input[type=email],.resource-settings-card input[type=url],.resource-settings-card input[type=number]{border:1px solid var(--rule-2);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;height:36px;padding:0 10px}.resource-form-fields{border:0;gap:14px;min-width:0;margin:0;padding:0;display:grid}.resource-setup-hint{border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--ink-2);margin:0;padding:10px 12px;font-size:13px;line-height:1.6}.resource-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.resource-form-fields input,.resource-copy-row input{width:100%;min-width:0}.resource-form-fields input[type=checkbox]{width:15px;accent-color:var(--accent);flex:none;margin:0}.resource-member-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.resource-member-grid>div{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius);gap:10px;padding:14px;display:grid}.resource-member-grid label{align-items:center;gap:8px;display:flex}.resource-connection{border-color:var(--accent)}.resource-copy-row{align-items:end;gap:12px;margin:14px 0;display:flex}.resource-copy-row label{min-width:0;color:var(--ink-2);flex:1;gap:6px;font-size:13px;display:grid}.resource-copy-row input{font-family:var(--font-mono)}.resource-target{border-bottom:1px solid var(--rule);gap:12px;padding:20px 0;display:grid}.resource-target:last-child{border-bottom:0;padding-bottom:0}.resource-target-heading,.resource-target-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.resource-target-heading a{overflow-wrap:anywhere;font-weight:600}.resource-target code{overflow-wrap:anywhere}.resource-target details{border-radius:var(--radius);background:var(--surface-2);padding:10px 12px}.resource-target summary,.resource-mail-job summary{cursor:pointer;color:var(--ink-2);font-size:13px}.resource-target details label{margin:12px 16px 0 0}.resource-target details .hint{margin-top:10px}.resource-notifications-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:start;gap:20px;display:grid}.resource-notification{width:100%;color:var(--ink-2);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);overflow-wrap:anywhere;margin-bottom:10px;transition:border-color .15s,background .15s;position:relative}.resource-notification.unread{background:var(--surface-2);border-left:3px solid var(--accent)}.resource-notification:hover{background:var(--hover);border-color:var(--rule-2)}.resource-notification-title{color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.resource-notification-title strong{flex:1;min-width:0;font-size:14px}.notification-state,.mail-state{background:var(--accent-soft);color:var(--accent);border-radius:999px;flex:none;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.notification-state:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.notification-state.read{color:var(--ink-3);background:var(--surface-2)}.notification-metrics{flex-wrap:wrap;gap:6px 18px;font-size:13px;display:flex}.notification-metrics b{color:var(--ink);font-weight:600}.notification-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.notification-open{color:var(--accent);align-items:center;gap:5px;font-size:12px;display:inline-flex}.notification-email>.hint{overflow-wrap:anywhere}.notification-email h2 .mail-state{margin-left:auto}.email-preference{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius);padding:14px 12px}.email-preference small{color:var(--ink-3);font-size:12px;font-weight:400;display:block}.email-preference input{accent-color:var(--accent)}.mail-state.sent{color:var(--ok);background:var(--ok-soft)}.mail-state.pending{color:var(--warn);background:var(--warn-soft)}.mail-state.failed{color:var(--danger);background:var(--danger-soft)}.mail-state.canceled{color:var(--ink-3);background:var(--surface-2)}.resource-mail-history{scrollbar-gutter:stable;max-height:320px;overflow-y:auto}.mail-job-kind{flex:1;align-items:center;gap:8px;display:inline-flex}.mail-job-kind .icon{color:var(--ink-3)}.resource-notification small{color:var(--ink-3);line-height:1.6}.resource-mail-job{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 0;font-size:13px;display:flex}.resource-mail-job details{flex-basis:100%}.resource-mail-job p{overflow-wrap:anywhere}.resource-table-editor{background:var(--surface);min-width:0;transition:right .22s var(--ease);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.editor-body.with-history .resource-table-editor{right:380px}.resource-table-toolbar{border-bottom:1px solid var(--rule);flex-shrink:0;gap:10px;padding:12px 20px;display:grid}.resource-toolbar-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.resource-count{font-variant-numeric:tabular-nums;align-items:center;gap:12px;display:inline-flex;margin:0!important}.resource-count b{color:var(--ink)}.resource-search{flex:260px;align-items:center;max-width:420px}.resource-search .icon{color:var(--ink-3);pointer-events:none;position:absolute;left:10px}.resource-table-filters .resource-search input{width:100%;padding-left:32px;padding-right:10px}.resource-table-filters select{width:auto}.resource-table-toolbar strong{font-size:15px}.resource-table-toolbar .hint{max-width:none;margin-top:4px}.resource-table-filters{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.resource-table-filters label{color:var(--ink-2);gap:6px;font-size:12px;display:grid}.resource-table-filters input{width:280px;max-width:100%}.resource-table-filters>.hint,.resource-table-filters>button{margin-bottom:8px}.resource-table-scroll{flex:1;min-height:0;padding-bottom:72px;overflow:auto}.resource-table-scroll table{border-collapse:separate;border-spacing:0;width:100%;min-width:1800px;font-size:13px}.resource-table-scroll td,.resource-table-scroll th{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:left;overflow-wrap:anywhere;background:var(--surface);max-width:280px;padding:8px 12px}.resource-table-scroll thead th{background:var(--surface-2);z-index:2;white-space:nowrap;color:var(--ink-2);font-size:12px;font-weight:600;position:sticky;top:0}.resource-table-scroll th:first-child{width:240px;min-width:200px;position:sticky;left:0;box-shadow:2px 0 3px #1e27330a}.resource-table-scroll tbody th{z-index:1;font-weight:500}.resource-table-scroll thead th:first-child{z-index:3}.resource-table-scroll tr:hover td,.resource-table-scroll tr:hover th[scope=row]{background:var(--surface-2)}.resource-table-scroll td:nth-child(4){min-width:240px}.resource-table-scroll input,.resource-table-scroll select{width:100%;min-width:120px;padding:7px}.resource-table-scroll select{padding-right:30px}.resource-work-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.resource-table-scroll .resource-work-table{table-layout:fixed;min-width:960px}.resource-work-table .resource-company-col{width:25%}.resource-work-table .resource-note-col{width:26%}.resource-table-scroll .resource-work-table th:first-child{width:auto;min-width:0}.resource-table-scroll .resource-work-table td:nth-child(4),.resource-table-scroll .resource-work-table input,.resource-table-scroll .resource-work-table select{min-width:0}.resource-row-id{color:var(--ink-3);overflow-wrap:anywhere;margin-top:6px;font-size:11px;display:block}.resource-work-table th strong{font-weight:600}.resource-human-cell{gap:4px;display:grid;position:relative}.resource-claim{border-radius:var(--radius-sm);background:var(--accent-soft);height:26px;color:var(--accent);font:inherit;cursor:pointer;white-space:nowrap;border:0;padding:0 8px;font-size:12px;font-weight:500;position:absolute;top:4px;right:4px}.resource-claim:hover{background:#d9e4f6}.resource-work-table .resource-human-cell input{background:0 0;border-color:#0000}.resource-work-table tr:hover .resource-human-cell input,.resource-work-table .resource-human-cell input:focus{border-color:var(--rule-2);background:var(--surface)}.resource-work-table .resource-human-cell input::placeholder{color:var(--ink-4)}.resource-work-table .resource-human-cell input:focus{border-color:var(--focus)}.resource-human-cell>small{color:var(--ink-3);font-size:11px}.resource-cell-conflict{background:var(--warn-soft);border-radius:var(--radius-sm);color:var(--warn);gap:6px;padding:8px;font-size:12px;display:grid}.resource-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px;margin:0;padding:8px;display:grid}.resource-detail-grid dt{color:var(--ink-3);margin-bottom:4px;font-size:12px}.resource-detail-grid dd{overflow-wrap:anywhere;margin:0}.resource-detail-row td{background:var(--surface-2)}.card-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.card-heading h2{margin:0}.resource-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px;padding:0;list-style:none;display:grid}.resource-steps button{text-align:left;border:1px solid var(--rule);background:var(--surface);width:100%;height:100%;box-shadow:var(--shadow-1);cursor:pointer;color:var(--ink);border-radius:10px;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.resource-steps button:hover{border-color:var(--accent)}.resource-steps li.done button{background:var(--surface-2)}.resource-steps small{color:var(--ink-3);margin-top:2px;font-size:12px;display:block}.resource-step-no{border:1.5px solid var(--accent);width:26px;height:26px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:inline-grid}.resource-steps li.done .resource-step-no{border-color:var(--ok);background:var(--ok);color:#fff}.resource-ready{border-radius:var(--radius);background:var(--ok-soft);color:var(--ok);align-items:center;gap:8px;margin:0 0 20px;padding:10px 14px;font-size:13px;display:flex}.resource-tabs{border-bottom:1px solid var(--rule);gap:4px;margin:0 0 16px;display:flex}.resource-tabs button{color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 14px;font-size:14px;font-weight:500;display:inline-flex;position:relative}.resource-tabs button:hover{color:var(--ink)}.resource-tabs button.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.resource-tab-dot{background:var(--warn);border-radius:50%;width:7px;height:7px}.resource-target-heading .resource-target-actions{margin-left:auto}.resource-target-stats{color:var(--ink-3);flex-wrap:wrap;gap:6px 18px;font-size:13px;display:flex}.resource-target-stats b{color:var(--ink);font-weight:600}.resource-field-group{border:1px solid var(--rule);border-radius:var(--radius);min-width:0;margin:0;padding:14px 16px 16px}.resource-field-group legend{color:var(--ink-2);padding:0 6px;font-size:12px;font-weight:600}.resource-tls{flex-wrap:wrap;align-self:end}.resource-tls small{flex-basis:100%;margin:0}.resource-dirty{color:var(--warn);margin-right:auto}.resource-smtp-test{border-top:1px solid var(--rule);margin-top:8px;padding-top:4px}.resource-smtp-test .resource-copy-row input{height:36px}.resource-test-result{border-radius:var(--radius-sm);overflow-wrap:anywhere;align-items:flex-start;gap:6px;margin:0;padding:10px 12px;font-size:13px;display:flex}.resource-test-result.ok{background:var(--ok-soft);color:var(--ok)}.resource-test-result.bad{background:var(--danger-soft);color:var(--danger)}.resource-member-toolbar{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.resource-member-toolbar input{flex:1;min-width:160px;max-width:240px;margin-left:auto}.resource-member-grid{max-height:340px;overflow-y:auto}.resource-member-grid>div.on{border-color:var(--accent);background:var(--accent-soft)}.resource-member-grid strong{align-items:center;gap:6px;display:flex}.resource-connection .resource-copy-row:first-of-type{margin-top:0}.resource-connection .input-affix{width:100%}.resource-connection .input-affix input{font-family:var(--font-mono)}.mail-state.off{color:var(--ink-3);background:var(--surface-2)}.segmented{border-radius:var(--radius);background:var(--hover);gap:2px;padding:3px;display:inline-flex}.segmented button{border-radius:var(--radius-sm);height:28px;color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:inline-flex}.segmented button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1);font-weight:600}.segmented b{background:var(--accent);color:#fff;border-radius:9px;padding:0 6px;font-size:11px;font-weight:600}.notification-inbox .segmented{margin-bottom:8px}.notification-list{display:grid}.notification-day{color:var(--ink-3);font-weight:600;margin:16px 0 8px!important;font-size:12px!important}.resource-notification-open{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:inherit;background:0 0;border:0;gap:8px;padding:16px 120px 16px 16px;display:grid}.resource-notification-open:disabled{cursor:wait;opacity:.65}.resource-notification.unread .resource-notification-open{padding-left:14px}.notification-mark{position:absolute;top:12px;right:12px}.unread-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.notification-condition{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.email-step-summary{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-height:24px;padding-top:2px;display:flex}.email-step-summary span{color:var(--ink-3);font-size:13px}.email-step-summary strong{overflow-wrap:anywhere;font-weight:600}.email-steps small.hint{margin-top:6px;font-size:12px;display:block}.email-steps small.hint .link{font-size:12px}.email-preference{width:100%;display:flex}.mail-job-count{color:var(--ink-2);font-size:12px;font-weight:600}.notification-condition{color:var(--ink-3);font-size:12px}.email-steps{counter-reset:step;gap:4px;margin:16px 0 0;padding:0;list-style:none;display:grid}.email-steps>li{counter-increment:step;padding:0 0 14px 36px;position:relative}.email-steps>li:before{content:counter(step);border:1.5px solid var(--rule-2);background:var(--surface);width:24px;height:24px;color:var(--ink-3);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid;position:absolute;top:0;left:0}.email-steps>li:after{content:"";background:var(--rule);width:1px;position:absolute;top:28px;bottom:2px;left:12px}.email-steps>li:last-child:after{content:none}.email-steps>li.current:before{border-color:var(--accent);color:var(--accent)}.email-steps>li.done:before{content:"✓";border-color:var(--ok);background:var(--ok);color:#fff}.email-steps .form{margin:0}.email-step-text{color:var(--ink-3);margin:3px 0 0;font-size:13px}.mail-job-kind small{color:var(--ink-3);font-size:12px}.notification-email{position:sticky;top:84px}.notification-kind{color:var(--ink-3);margin-top:-4px;font-size:12px}.notification-rows{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);margin-bottom:10px;display:grid;overflow:hidden}.notification-row-group+.notification-row-group{border-top:1px solid var(--rule)}.notification-row{align-items:center;gap:8px;padding-right:12px;display:flex}.notification-row:hover{background:var(--surface-2)}.notification-row-main{min-width:0;color:var(--ink-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:11px 14px;font-size:13px;display:flex}.notification-row-main strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);flex:0 auto;font-weight:500;overflow:hidden}.notification-row-metrics{white-space:nowrap;min-width:0;color:var(--ink-3);font-variant-numeric:tabular-nums;flex:1}.notification-row-metrics b{color:var(--ink-2);font-weight:600}.notification-row-main small{color:var(--ink-3);flex:none;font-size:12px}.notification-row-toggle{flex:none;font-size:12px}.notification-row-detail{background:var(--surface-2);border-top:1px dashed var(--rule);margin:0;padding:4px 14px 10px 28px;list-style:none}.notification-row-detail button{width:100%;color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;gap:16px;padding:6px 0;font-size:12px;display:flex}.notification-row-detail button:hover{color:var(--accent)}.notification-row-detail b{color:var(--ink-2);font-weight:600}.resource-since{margin:0}.resource-work-table .resource-time-col{width:132px}.resource-work-table .resource-owner-col{width:12%}.resource-time-cell time{color:var(--ink-2);font-variant-numeric:tabular-nums;display:block}.resource-time-cell small{color:var(--ink-3);margin-top:4px;font-size:11px;display:block}.resource-fresh .resource-time-cell time{color:var(--ink);font-weight:500}.resource-skipped th[scope=row] strong,.resource-skipped td{color:var(--ink-3)}.resource-table-scroll tr.resource-focus>td,.resource-table-scroll tr.resource-focus>th{background:#fff6d6;transition:background .4s}.resource-action-cell{text-align:center!important}.resource-expand{width:28px;height:28px;color:var(--ink-3)}.resource-expand .icon{transition:transform .15s var(--ease)}.resource-expand.on .icon{transform:rotate(180deg)}.resource-work-table .resource-action-col{width:48px}.resource-new-tag{background:var(--accent);color:#fff;vertical-align:1px;border-radius:4px;margin-left:6px;padding:0 6px;font-size:11px;font-weight:600;line-height:18px;display:inline-block}.resource-table-scroll .resource-day-row th{background:var(--paper);color:var(--ink-2);text-align:left;padding:8px 12px;font-size:12px;font-weight:600;position:sticky;top:auto;left:0}.resource-day-row th span{color:var(--ink-3);margin-left:8px;font-weight:400}.resource-status.todo{color:var(--ink-2)}.resource-status.doing{color:var(--accent);background:var(--accent-soft);border-color:#c9d8f0}.resource-status.done{color:var(--ok);background:var(--ok-soft);border-color:#bfe3cc}.resource-status.skip{color:var(--ink-4)}.resource-more{justify-content:center;padding:16px;display:flex}.resource-work-table .resource-phone-col,.resource-work-table .resource-assignee-col{width:150px}.resource-work-table .resource-status-col{width:120px}.resource-table-scroll .resource-work-table:has(.resource-phone-col){min-width:1180px}.resource-phone-cell span{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:2px;display:flex}.resource-phone-cell span+span{margin-top:4px}.resource-phone-cell a{color:var(--ink);font-weight:600;text-decoration:none}.resource-phone-cell a:hover{color:var(--accent);text-decoration:underline}.resource-copy.icon-btn{width:24px;height:24px;color:var(--ink-3);vertical-align:middle;flex:none}.resource-name-line{display:inline}.resource-name-line .resource-copy,.resource-row-id .resource-copy{width:22px;height:22px;margin-left:2px}.resource-row-id{align-items:center;display:flex!important}.resource-phone-cell small{color:var(--ink-3);font-size:12px}@media (width<=760px){.resource-settings-page{padding:0}.resource-settings-card{padding:18px 16px}.resource-notifications-layout,.resource-form-grid{grid-template-columns:minmax(0,1fr)}.resource-table-toolbar{padding:12px}.resource-search{flex-basis:100%;max-width:none}.resource-notification-open{padding-right:16px}.notification-mark{margin:-6px 16px 14px;position:static}.resource-table-scroll th:first-child{min-width:160px}.notification-bell{bottom:14px;right:14px}.resource-steps{grid-template-columns:minmax(0,1fr)}.notification-email{position:static}.notification-row-main{flex-wrap:wrap;gap:2px 10px}.notification-row-main strong{flex-basis:100%}.resource-tabs{overflow-x:auto}.resource-target-heading .resource-target-actions{margin-left:0}.resource-member-toolbar input{max-width:none;margin-left:0}.resource-copy-row{flex-wrap:wrap}.resource-copy-row>.btn{flex:none}.resource-work-table .resource-owner-col,.resource-owner-cell{display:none}}@media print{.notification-bell,.resource-table-filters{display:none}}.resource-table-editor{background:var(--paper)}.resource-table-toolbar{background:0 0;border-bottom:0;gap:12px;padding:16px 20px 12px}.resource-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.resource-stat{--tone:var(--ink-3);text-align:left;cursor:pointer;border:1px solid var(--rule);background:var(--surface);min-width:0;color:var(--ink-2);border-radius:12px;grid-template-columns:1fr auto;align-items:end;gap:2px 8px;padding:12px 14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 2px #1e27330a}.resource-stat:before{content:"";background:var(--tone);opacity:.85;height:3px;position:absolute;inset:0 0 auto}.resource-stat:hover{border-color:var(--rule-2);box-shadow:0 6px 18px -10px #1e273359}.resource-stat.on{border-color:var(--tone);box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 14%, transparent)}.resource-stat.all{--tone:#3b4a5e}.resource-stat.fresh{--tone:#2c5da8}.resource-stat.todo{--tone:#c27a12}.resource-stat.doing{--tone:#6a4c9c}.resource-stat.done{--tone:#1f7a4d}.resource-stat-label{color:var(--ink-3);grid-column:1/-1;align-items:center;gap:6px;font-size:12px;display:inline-flex}.resource-stat-label i{background:var(--tone);border-radius:50%;width:6px;height:6px}.resource-stat b{color:var(--ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:650;line-height:1.15}.resource-stat small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;justify-self:end;max-width:100%;padding-bottom:3px;font-size:11px;overflow:hidden}.resource-stat-bar{background:var(--hover);border-radius:2px;grid-column:1/-1;height:3px;margin-top:6px;overflow:hidden}.resource-stat-bar i{border-radius:inherit;background:var(--tone);height:100%;display:block}.resource-table-filters{gap:8px}.resource-table-filters .segmented{background:var(--surface);border:1px solid var(--rule)}.resource-table-filters .segmented button{height:26px}.resource-table-filters select,.resource-table-filters .resource-search input{border-radius:var(--radius);background-color:var(--surface);height:34px}.resource-search{flex:240px;max-width:none}.resource-count{white-space:nowrap;padding-left:4px;margin-left:auto!important}.resource-table-card{border:1px solid var(--rule);background:var(--surface);border-radius:12px;flex:1;min-height:0;margin:0 20px 16px;display:flex;overflow:hidden;box-shadow:0 1px 2px #1e27330a,0 12px 32px -24px #1e27334d}.resource-table-card>.resource-table-scroll{background:var(--surface);flex:1;padding-bottom:56px}.resource-table-scroll .resource-work-table td,.resource-table-scroll .resource-work-table th{vertical-align:middle;border-right:0;padding:7px 12px}.resource-table-scroll .resource-work-table thead th{background:var(--surface-2);height:38px;color:var(--ink-3);letter-spacing:.02em;padding-top:0;padding-bottom:0;font-size:12px;font-weight:500}.resource-table-scroll .resource-work-table th:first-child{box-shadow:none}.resource-table-scroll .resource-work-table tbody tr:hover>td,.resource-table-scroll .resource-work-table tbody tr:hover>th[scope=row]{background:#f9fafc}.resource-table-scroll .resource-day-row th{background:var(--surface-2);height:32px;color:var(--ink-2);letter-spacing:.02em;padding:0 16px;font-size:12px}.resource-table-scroll tr.resource-day-row:hover th{background:var(--surface-2)}.resource-company{align-items:center;gap:10px;min-width:0;display:flex}.resource-entity{width:32px;height:32px;color:var(--c);background:color-mix(in srgb, var(--c) 12%, #fff);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 22%, transparent);border-radius:9px;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.resource-company-text{min-width:0}.resource-company-text strong{font-size:13px}.resource-row-id{margin-top:1px!important}.resource-fresh>th[scope=row]{box-shadow:inset 3px 0 0 var(--accent)}.resource-new-tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;margin-left:4px;padding:0 6px;font-size:11px;font-weight:600;line-height:18px}.resource-human-cell.with-avatar input{padding-left:34px}.resource-assignee-avatar{color:#fff;pointer-events:none;z-index:1;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-weight:600;display:grid;position:absolute;top:50%;left:7px;transform:translateY(-50%)}.resource-human-cell>.resource-assignee-avatar{top:18px}.resource-status-pill{--tone:var(--ink-4);max-width:100%;display:inline-flex;position:relative}.resource-status-pill:before{content:"";background:var(--tone);pointer-events:none;border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;left:11px}.resource-status-pill.doing{--tone:#6a4c9c}.resource-status-pill.done{--tone:var(--ok)}.resource-status-pill.skip{--tone:var(--rule-2)}.resource-table-scroll .resource-work-table select.resource-status{border:1px solid var(--rule);background-position:right 10px center;background-size:11px;background-color:var(--surface-2);width:auto;min-width:96px;height:28px;color:var(--ink-2);border-radius:999px;padding:0 28px 0 23px;font-size:12px;font-weight:500}.resource-work-table select.resource-status.doing{color:#5a3f8a;background-color:#f2edf9;border-color:#ddd2ee}.resource-work-table select.resource-status.done{color:var(--ok);background-color:var(--ok-soft);border-color:#c4e4cf}.resource-work-table select.resource-status.skip{color:var(--ink-4);background-color:var(--surface)}@media (width<=1100px){.resource-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.resource-table-toolbar{padding:12px}.resource-summary{scrollbar-width:none;gap:8px;margin:0 -12px;padding:0 12px 2px;display:flex;overflow-x:auto}.resource-stat{flex:0 0 116px;padding:9px 11px}.resource-stat b{font-size:19px}.resource-stat small{display:none}.resource-table-filters .segmented{width:100%}.resource-table-filters .segmented button{flex:1;justify-content:center}.resource-table-card{margin:0 12px 12px}.resource-count{margin-left:0!important}}
