:root{--paper:#fdfdf9;--bg:#e8e8e4;--panel:#fdfdf9;--panel-2:#f8f8f5;--ink:#0e0e0e;--ink-2:#3a3a35;--ink-3:#5a5a55;--line:#e2e2db;--rule-strong:1.5px;--rule:1px;--rule-hair:.75px;--r-sm:3px;--r-md:6px;--line-2:#c4c4bc;--accent:#eb5939;--accent-dim:#8e3a24;--danger:var(--accent-dim);--stage:#17171a;--stage-line:rgba(253,253,249,.14);--stage-ink:rgba(253,253,249,.55);--s0:4px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--t-display:30px;--t-title:20px;--t-lead:15px;--t-body:14px;--t-sm:13px;--t-xs:12px;--t-label:11px;--t-micro:10px;--lh-tight:1.25;--lh-snug:1.45;--lh-body:1.7;--lh-loose:1.85;--glass:rgba(255,255,255,.68);--glass-line:rgba(255,255,255,.55);--glass-blur:saturate(180%) blur(20px);--glass-shadow:0 8px 32px rgba(17,17,16,.12),inset 0 1px 0 rgba(255,255,255,.8);--inter:var(--font-inter),var(--font-thai),sans-serif;--thai:var(--font-inter),var(--font-thai),sans-serif;--display:var(--font-display),var(--font-inter),var(--font-thai),sans-serif;--mono:var(--font-mono),var(--font-thai),ui-monospace,monospace;--serif:var(--font-serif),var(--font-thai),Georgia,serif}*{margin:0;padding:0;box-sizing:border-box}button,input,select,textarea{font-family:inherit}body,html{height:100%}@supports (height:100dvh){body{height:100dvh}}body{background:var(--bg);color:var(--ink);font-family:var(--thai);font-size:var(--t-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;overflow:hidden}.topbar{flex:none;justify-content:space-between;gap:var(--s5);padding:0 var(--s5);height:var(--s8);background:#0e0e0e;border-bottom:none}.tb-brand,.topbar{display:flex;align-items:center}.tb-brand{gap:var(--s4)}.tb-logo{height:22px;width:auto;display:block;filter:invert(1)}.tb-actions{display:flex;align-items:center;gap:var(--s2)}.tb-cur{display:flex;align-items:baseline;gap:var(--s3);min-width:0;margin:0 var(--s4);background:none;border:none;cursor:pointer;padding:var(--s1) var(--s3);border-radius:0;font-family:var(--thai);font-size:var(--t-sm);transition:.12s;overflow:hidden}.tb-cur:hover{background:rgba(253,253,249,.08)}.tb-cur .no{font-family:var(--mono);color:rgba(253,253,249,.9);min-width:0}.tb-cur .nm,.tb-cur .no{font-size:var(--t-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-cur .nm{color:rgba(253,253,249,.5)}@media (max-width:1180px){.tb-cur .nm{display:none}}@media (max-width:1140px){.tb-cur{display:none}}.tb-sep{width:1px;height:var(--s5);background:rgba(253,253,249,.18)}.tb-view{display:inline-flex;margin-left:var(--s2);min-width:0;border:1px solid rgba(253,253,249,.18);border-radius:var(--r-sm);overflow:hidden}.tb-view button{font-family:var(--thai);font-size:var(--t-sm);font-weight:500;color:rgba(253,253,249,.55);background:transparent;border:none;padding:var(--s1) var(--s3);cursor:pointer;transition:.15s;white-space:nowrap}.tb-view button:hover{color:#fdfdf9}.tb-view button.is-on{color:#0e0e0e;background:#fdfdf9}.topbar .btn{color:#fdfdf9;border-color:rgba(253,253,249,.28);background:transparent}.topbar .btn:hover:not(:disabled){border-color:#fdfdf9;background:rgba(253,253,249,.08)}.topbar .btn.is-on{border-color:#fdfdf9;background:rgba(253,253,249,.12)}.topbar .btn-primary{background:#fdfdf9;border-color:#fdfdf9;color:#0e0e0e}.topbar .btn-primary:hover:not(:disabled){background:#fff;border-color:#fff}.topbar .btn-save .ts{color:rgba(253,253,249,.55);border-left-color:rgba(253,253,249,.18)}.topbar .btn-save .ts.sync-err{color:#eb5939}.tb-menu{position:relative;display:inline-flex}.tb-create .btn:first-child{border-right:none}.btn-caret{font-family:var(--mono);padding-left:var(--s2);padding-right:var(--s2);line-height:1;min-width:30px;justify-content:center}.menu{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:168px;display:flex;flex-direction:column;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}.menu-right{left:auto;right:0}.menu button{font-family:var(--thai);font-size:var(--t-sm);font-weight:500;text-align:left;color:var(--ink);background:transparent;border:none;padding:var(--s2) var(--s3);cursor:pointer;transition:.12s;white-space:nowrap;display:flex;align-items:center}.menu button:hover{background:var(--panel-2)}.menu button.is-danger{color:var(--accent-dim)}.menu-danger{margin-top:var(--s2);padding-top:var(--s2);border-top:1px solid var(--line-2);display:flex;flex-direction:column}.menu-danger-lab{font-family:var(--mono);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:var(--s1) var(--s3) 0}.menu button.is-danger:hover{background:rgba(192,58,29,.08)}.menu-sep{height:1px;background:var(--line);margin:var(--s1) 0}.btn{font-family:var(--thai);font-size:var(--t-sm);font-weight:500;color:var(--ink);background:transparent;border:1px solid var(--line-2);display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 var(--s3);cursor:pointer;transition:.15s;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--ink);background:var(--panel-2)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn-primary:hover:not(:disabled){background:#000;border-color:#000}.btn-mini{height:26px;padding:0 var(--s2);font-size:var(--t-xs)}.btn-save{display:inline-flex;align-items:center;gap:var(--s2)}.btn-save.is-static{cursor:default;border-color:transparent;padding-left:var(--s2)}.btn-save.is-static .ts{border-left:none;padding-left:0}.btn-save .ts{font-family:var(--mono);font-size:var(--t-label);font-weight:400;color:var(--ink-3);padding-left:var(--s2);border-left:1px solid var(--line)}.btn-save .ts.sync{min-width:74px;text-align:right}.btn-save .ts.sync-local{min-width:0}.btn-save .ts.sync-cloud:before,.btn-save .ts.sync-err:before,.btn-save .ts.sync-local:before,.btn-save .ts.sync-warn:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:var(--s1);vertical-align:1px}.btn-save .ts.sync-cloud:before{background:#4a7c59}.btn-save .ts.sync-local:before{background:var(--line-2)}.btn-save .ts.sync-warn{color:var(--accent-dim);min-width:0}.btn-save .ts.sync-warn:before{background:var(--accent-dim)}.btn-save .ts.sync-err:before{background:var(--accent)}.btn-save .ts.sync-err{color:var(--accent-dim)}.btn-danger{color:var(--danger)}.btn-danger:hover:not(:disabled){border-color:var(--danger)}.st-overdue{color:var(--accent-dim);font-weight:600}.st-overdue:before{background:var(--accent)!important}.kpi .n .ov{font-style:normal;color:var(--accent-dim)}input,select,textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line-2);color:var(--ink);font-family:var(--thai);font-size:var(--t-body);font-weight:500;padding:var(--s2) 2px;outline:none;transition:.15s;border-radius:0}input:focus,select:focus,textarea:focus{border-bottom-color:var(--ink)}textarea{resize:vertical;min-height:76px;line-height:var(--lh-body);padding:var(--s2) 2px}textarea:focus{border-bottom-color:var(--ink)}input[type=number]{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}select{cursor:pointer}input::placeholder,textarea::placeholder{color:var(--ink-3);opacity:.55}label.f{display:block;margin-bottom:var(--s4)}label.f .l{font-size:var(--t-label);color:var(--ink-3);letter-spacing:.01em;display:block;margin-bottom:var(--s1)}label.f .l.lim-l{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3)}[data-sec=sign]{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}label.f .be{display:block;margin-top:var(--s1);font-family:var(--mono);font-size:var(--t-label);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 var(--s4);gap:0 var(--s4)}.pane.editor{container-type:inline-size;container-name:ed}@container ed (max-width: 330px){.grid-2{grid-template-columns:1fr}}@container ed (min-width: 700px){.addr-grid{grid-template-columns:repeat(4,1fr)}}.check{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s4);cursor:pointer}.check input{width:16px;height:16px;accent-color:var(--ink);cursor:pointer;flex:none;border:none}.check span{font-size:var(--t-sm)}.workspace{flex:1 1;display:grid;grid-template-columns:258px minmax(0,1fr) 380px;min-height:0}.pane{min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--panel)}.pane.docs{background:var(--panel-2)}.pane+.pane{border-left:1px solid var(--line)}.pane-head{flex:none;display:flex;justify-content:space-between;align-items:center;padding:0 var(--s5);height:var(--s7);border-bottom:1px solid var(--line)}.pane-head .lab{font-size:var(--t-sm);color:var(--ink-3)}.pane-head>.lab+.info{margin-right:auto;margin-left:var(--s2)}.pane-head .count{font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3)}.workspace.no-side{grid-template-columns:44px minmax(0,1fr) 380px}.workspace.is-wide.no-side{grid-template-columns:44px 1fr}.workspace.no-paper{grid-template-columns:258px 44px minmax(0,1fr)}.workspace.no-side.no-paper{grid-template-columns:44px 44px minmax(0,1fr)}.pane.preview.collapsed{align-items:center;padding-top:var(--s3);gap:var(--s4);background:var(--stage);border-left-color:var(--stage)}.pane.preview.collapsed .side-toggle{color:var(--stage-ink)}.pane.preview.collapsed .side-toggle:hover{color:var(--paper)}.pane.preview.collapsed .side-count.vert{writing-mode:vertical-rl;font-size:var(--t-xs);color:var(--stage-ink);letter-spacing:.08em;border:none;padding:0}.preview-head .lab{display:flex;align-items:center;gap:var(--s2)}.preview-head .side-toggle{color:var(--stage-ink)}.preview-head .side-toggle:hover{color:var(--paper)}.side-toggle{background:none;border:none;color:var(--ink-3);cursor:pointer;font-size:var(--t-lead);line-height:1;padding:var(--s1) var(--s2);transition:.15s}.side-toggle:hover{color:var(--ink)}.pane.docs.collapsed{align-items:center;padding-top:var(--s3);gap:var(--s4)}.pane.docs.collapsed .side-count{font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3);border:1px solid var(--line);padding:2px var(--s2)}.doc-tabs{display:flex;border-bottom:1px solid var(--line);padding:0 var(--s2)}.doc-tab{flex:1 1;min-width:0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1.25;font-family:var(--thai);font-size:var(--t-sm);font-weight:500;background:none;border:none;border-bottom:1px solid transparent;color:var(--ink-3);padding:var(--s3) 2px;margin-bottom:-1px;cursor:pointer;white-space:nowrap;transition:.15s}.doc-tab.is-on,.doc-tab:hover{color:var(--ink)}.doc-tab.is-on{border-bottom-color:var(--ink)}.doc-tab.is-empty{opacity:.45}.doc-tab .n{font-family:var(--mono);font-size:var(--t-label);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.doc-tab.is-on .n{color:var(--ink-2)}.doc-tab.is-chase:not(.is-empty) .n{color:var(--accent-dim)}.doc-search{padding:var(--s2) var(--s5);border-bottom:1px solid var(--line)}.doc-search input{font-size:var(--t-sm);padding:var(--s2) 2px;border-bottom:1px solid var(--line-2)}.doc-list{overflow-y:auto;flex:1 1;scroll-behavior:smooth}.doc-item{animation:doc-in .16s ease both}@keyframes doc-in{0%{opacity:0}to{opacity:1}}.doc-item{padding:var(--s4) var(--s5);border-bottom:var(--rule-hair) solid var(--line);cursor:pointer;transition:.12s;position:relative}.doc-item:before{content:"";position:absolute;left:0;top:-1px;bottom:-1px;width:2px;background:transparent;transition:.12s}.doc-item:hover{background:var(--panel-2)}.doc-item:focus-visible{outline:none;background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--ink-3)}.doc-item:focus-visible:before{background:var(--ink-3)}.doc-item.is-on:before{background:var(--ink)}.doc-item .no{font-family:var(--mono);font-size:var(--t-sm);display:flex;justify-content:space-between;gap:var(--s2);align-items:baseline}.doc-item .del{position:absolute;top:50%;right:var(--s3);transform:translateY(-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--line);color:var(--ink-3);font-size:var(--t-lead);line-height:1;cursor:pointer;opacity:0;transition:.12s}.doc-item:focus-within .del,.doc-item:hover .del{opacity:1}.del:focus-visible{outline:1px solid var(--ink);outline-offset:1px;opacity:1}.doc-item .del:hover{border-color:var(--accent-dim);color:var(--accent-dim)}.doc-item .nm{font-size:var(--t-sm);margin-top:var(--s1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-item .amt{font-family:var(--mono);font-size:var(--t-xs);margin-top:var(--s1);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:flex;justify-content:space-between;gap:var(--s2)}.doc-item .amt,.st{color:var(--ink-3);align-items:center}.st{display:inline-flex;gap:var(--s1);font-family:var(--thai)}.st:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--line-2)}.st-sent:before,.st-won:before{background:var(--ink)}.st-paid:before{background:#4a7c59}.st-lost:before{background:var(--line-2)}.st-lost,.st-void{text-decoration:line-through}.st-void{opacity:.7}.st-void:before{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink-3)}.st-picker{display:flex;border:1px solid var(--line-2);margin-bottom:var(--s3)}.st-btn{flex:1 1;padding:var(--s2) var(--s1);background:none;border:none;border-left:1px solid var(--line-2);font-family:var(--thai);font-size:var(--t-sm);color:var(--ink-3);cursor:pointer;transition:.15s;white-space:nowrap}.st-btn:first-child{border-left:none}.st-btn:hover{color:var(--ink);background:var(--panel-2)}.st-btn.is-on{color:var(--ink);font-weight:500;box-shadow:inset 0 0 0 1px var(--ink)}.pipeline{flex:none;padding:var(--s4) var(--s5);border-bottom:1px solid var(--line)}.pipeline .pl{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);padding:2px 0}.pipeline .pl .k{font-size:var(--t-xs);color:var(--ink-3)}.pipeline .pl .v{font-family:var(--mono);font-size:var(--t-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pipeline .pl .v.accent{color:var(--accent-dim)}@media (max-width:1200px) and (min-width:901px){.pipeline .pl{flex-direction:column;align-items:flex-start;gap:0;padding:3px 0}}.empty{padding:var(--s6) var(--s5);color:var(--ink-3);font-size:var(--t-sm);line-height:var(--lh-loose)}.tabs{flex:none;display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 var(--s3)}.tab{font-family:var(--thai);font-size:var(--t-sm);font-weight:500;background:none;border:none;border-bottom:1px solid transparent;color:var(--ink-3);padding:var(--s3) var(--s2);margin-bottom:-1px;cursor:pointer;white-space:nowrap;transition:.15s}.tab.is-on,.tab:hover{color:var(--ink)}.tab.is-on{border-bottom-color:var(--ink)}.form-scroll{flex:1 1;overflow-y:auto;padding:var(--s5) var(--s5) var(--s8)}.doc-header{padding:var(--s4) var(--s5) 0}.doc-header>*,.form-scroll>*{max-width:760px}.fs{margin-bottom:var(--s7)}.fs:has(>.fold:only-child){margin-bottom:var(--s4)}.fs>h3{font-family:var(--display);font-size:var(--t-body);font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-bottom:var(--s4);padding-bottom:var(--s3);border-bottom:1px solid var(--line)}.hint{font-size:var(--t-xs);color:var(--ink-3);line-height:var(--lh-body);margin:calc(var(--s2) * -1) 0 var(--s4)}.hint code{font-family:var(--mono);color:var(--ink-2)}.card.is-optional{padding-left:var(--s3);border-left:1px solid var(--line-2)}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s3);font-size:var(--t-xs);color:var(--ink-3)}.card-total{font-family:var(--mono);font-size:var(--t-sm);color:var(--ink);text-align:right;margin:var(--s1) 0 var(--s2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card-total.muted{color:var(--ink-3)}.x{background:none;border:none;color:var(--line-2);cursor:pointer;font-size:var(--t-lead);line-height:1;padding:0 2px;transition:.15s}.x:hover{color:var(--danger)}.add{width:100%;background:none;border:1px solid var(--line);color:var(--ink-3);font-family:var(--thai);font-size:var(--t-sm);padding:var(--s3);cursor:pointer;transition:.15s}.add:hover{border-color:var(--ink);color:var(--ink)}.btn-next{width:100%;padding:var(--s3);font-size:var(--t-body)}.actions-row{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s2)}.actions-row.is-manage{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.actions-row .btn-danger{border-color:transparent;padding-left:var(--s2);padding-right:var(--s2)}.actions-row .btn-danger:hover{border-color:var(--accent-dim)}.actions-row .add{flex:1 1 40%;width:auto}.ms-row{display:grid;grid-template-columns:1fr 64px 16px 96px 24px;align-items:center;grid-gap:var(--s2);gap:var(--s2);padding:var(--s2) 0;border-bottom:var(--rule-hair) solid var(--line)}.ms-row input{border-bottom:none;padding:var(--s1) 0}.ms-row .ms-label{font-size:var(--t-sm)}.ms-row .ms-desc{grid-column:1/-1;margin-top:calc(var(--s1) * -1);font-size:var(--t-xs);color:var(--ink-2)}.ms-row .ms-pct{font-family:var(--mono);text-align:right}.ms-row .ms-unit{font-size:var(--t-xs);color:var(--ink-3)}.ms-row .ms-amt{font-family:var(--mono);font-size:var(--t-sm);text-align:right;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ms-check{display:flex;align-items:baseline;gap:var(--s2);padding:var(--s3) 0;margin-bottom:var(--s3);border-bottom:1px solid var(--ink);font-size:var(--t-sm);color:var(--ink-3)}.ms-check b{font-family:var(--mono);font-weight:400;color:var(--accent-dim)}.ms-check .msg{margin-left:auto;color:var(--accent-dim);font-size:var(--t-xs)}.ms-check.is-ok .msg,.ms-check.is-ok b{color:var(--ink-2)}.sched-preview{margin-top:var(--s1);border-top:1px solid var(--line)}.sched-preview .sr{display:flex;justify-content:space-between;gap:var(--s4);font-size:var(--t-sm);padding:var(--s2) 0;border-bottom:var(--rule-hair) solid var(--line);color:var(--ink-2)}.sched-preview .sr b{font-family:var(--mono);font-weight:400;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.sched-preview .sr b em{font-style:normal;color:var(--ink-3)}.sched-preview .sr b em.wire{display:block;font-size:var(--t-xs)}.undo-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r-md);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);padding:var(--s2) var(--s3);margin-bottom:var(--s4);font-size:var(--t-xs);color:var(--ink-2)}.undo-bar button{border:none;background:none;color:var(--ink);cursor:pointer;font-size:var(--t-xs);font-weight:600;padding:0;flex:none}.disc-row{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--s3);gap:var(--s3);align-items:end;margin-bottom:var(--s4)}.disc-mode{flex:none}.disc-mode,.disc-row .f{margin-bottom:0}.disc-out{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:var(--t-sm);color:var(--ink-2);padding-bottom:var(--s2);white-space:nowrap}.sum-sticky{flex:none;display:flex;align-items:baseline;gap:var(--s3);background:var(--glass);border-top:1px solid var(--ink);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:var(--s3) var(--s5);flex-wrap:wrap;row-gap:0}.sum-sticky .k{font-size:var(--t-xs);color:var(--ink-3);flex:1 1}.sum-sticky .k,.sum-sticky b{white-space:nowrap}.sum-sticky b{font-family:var(--inter);font-size:var(--t-title);font-weight:600;letter-spacing:-.02em;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sum-sticky .net{font-size:var(--t-xs);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.sum-box{margin-top:var(--s3);border-top:1px solid var(--ink);padding-top:var(--s3)}.sum-box .sr{display:flex;justify-content:space-between;gap:var(--s4);font-size:var(--t-sm);padding:var(--s1) 0;color:var(--ink-3)}.sum-box .sr b{color:var(--ink);font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:400}.sum-box .sr.big{padding-top:var(--s3);margin-top:var(--s2);border-top:1px solid var(--line);align-items:baseline}.sum-box .sr.big b{font-size:var(--t-body);font-weight:500;color:var(--ink)}.sum-box .sr.opt{margin-top:var(--s2);padding-top:var(--s3);border-top:1px solid var(--line)}.sum-box .sr.opt b{color:var(--ink-2)}.client-pick{display:flex;align-items:flex-end;gap:var(--s3);margin-bottom:var(--s4)}.client-pick .f{flex:1 1;margin-bottom:0}.client-pick .btn-mini{flex:none;margin-bottom:var(--s1)}.partial-row{display:flex;align-items:flex-end;gap:var(--s3);margin-top:var(--s5)}.partial-row .f{flex:1 1;margin-bottom:0}.partial-row .btn{flex:none}.cl-card{border:1px solid var(--line);margin-bottom:var(--s2);background:var(--panel)}.cl-card.is-open{border-color:var(--line-2)}.cl-head{display:flex;align-items:center;gap:var(--s4);width:100%;padding:var(--s3) var(--s4);background:none;border:none;cursor:pointer;text-align:left;font:inherit;color:inherit}.cl-head:hover{background:var(--panel-2)}.cl-head .nm{flex:1 1;min-width:0;font-size:var(--t-sm);font-weight:500}.cl-head .drift{color:var(--accent-dim);font-style:normal}.cl-head .nm .sub{display:block;font-size:var(--t-xs);font-weight:400;font-style:normal;color:var(--ink-3);margin-top:var(--s0)}.cl-head .fig{flex:none;text-align:right}.cl-head .fig .k{display:block;font-size:var(--t-label);color:var(--ink-3)}.cl-head .fig b{font-family:var(--mono);font-size:var(--t-sm);font-weight:400;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cl-head .fig.is-due b{color:var(--accent-dim);font-weight:600}.cl-head .fig .ov{font-style:normal;font-size:var(--t-label)}.cl-head .caret{flex:none;color:var(--ink-3);font-size:var(--t-xs)}.cl-body{padding:var(--s4);border-top:1px solid var(--line);background:var(--panel-2)}.issued{margin-top:var(--s3)}.issued-line{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--s3);gap:var(--s3);align-items:baseline;padding:var(--s2) 0;font-size:var(--t-sm);width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);cursor:pointer}.issued-line:hover{padding-left:var(--s1)}.issued-line .no{font-family:var(--mono);font-size:var(--t-xs)}.issued-line .a{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.issued-sum{display:flex;justify-content:space-between;gap:var(--s3);padding-top:var(--s3);font-size:var(--t-sm);color:var(--ink-3)}.issued-sum b{font-family:var(--mono);font-weight:400;color:var(--ink)}.issued-sum.over b{color:var(--accent-dim)}.inst-btn,.issued-line{color:var(--ink)}.inst-btn{display:grid;grid-template-columns:1fr auto;grid-gap:var(--s3);gap:var(--s3);align-items:baseline;width:100%;text-align:left;background:none;border:1px solid var(--line);padding:var(--s2) var(--s3);margin-bottom:var(--s2);cursor:pointer;font-family:var(--thai);font-size:var(--t-sm);transition:.15s}.inst-btn:hover:not(:disabled){border-color:var(--ink)}.inst-btn:disabled{opacity:.45;cursor:not-allowed}.inst-btn .a{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.inst-btn .done{font-size:var(--t-xs);color:var(--ink-3)}.at-kind{display:flex;border:1px solid var(--line-2);margin-bottom:var(--s3)}.at-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s1);min-height:76px;padding:var(--s4);border:1px dashed var(--line-2);color:var(--ink-3);font-size:var(--t-sm);text-align:center;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.at-drop em{font-style:normal;font-size:var(--t-label);color:var(--ink-3)}.at-drop:hover{border-color:var(--ink-3);color:var(--ink-2)}.at-drop.is-over{border-color:var(--ink);color:var(--ink);background:var(--line)}.at-drop.is-busy{pointer-events:none;opacity:.6}.at-row{display:flex;align-items:center;gap:var(--s2);border-bottom:1px solid var(--line)}.at-row .nm{flex:1 1;display:flex;flex-direction:column;gap:2px;padding:var(--s3) 0;background:none;border:none;cursor:pointer;font-family:var(--thai);font-size:var(--t-sm);color:var(--ink);text-align:left}.at-row .nm:hover{color:var(--accent-dim)}.at-row .nm em{font-style:normal;font-size:var(--t-xs);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.at-row .x{flex:none;width:24px;height:24px;background:none;border:none;color:var(--ink-3);cursor:pointer;font-size:var(--t-body);line-height:1}.at-row .x:hover{color:var(--accent-dim)}.bill-group{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.bg-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);font-size:var(--t-sm);margin-bottom:var(--s3)}.bg-head .k{color:var(--ink);font-weight:500}.bg-head .a{font-family:var(--mono);color:var(--ink-3);font-size:var(--t-xs)}.bg-sum{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);font-size:var(--t-sm);color:var(--ink-3);margin-bottom:var(--s3)}.bg-sum b{font-family:var(--mono);font-weight:400;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bill-group .split-row{margin-bottom:var(--s3)}.bill-group .btn-next{margin-top:0}.bill-group .hint{margin-top:var(--s2)}.bill-alt{margin-top:var(--s5)}.bill-alt:before{content:"";display:block;height:1px;background:var(--line);margin-bottom:var(--s4)}.workspace.is-wide{grid-template-columns:258px 1fr}.pane.clients,.pane.summary,.pane.team{background:var(--panel)}.sum-scroll{flex:1 1;overflow-y:auto;padding:var(--s6) var(--s5) var(--s8)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));grid-gap:var(--s6);gap:var(--s6);padding-bottom:var(--s6);border-bottom:1px solid var(--ink)}.kpi{display:flex;flex-direction:column;gap:var(--s1)}.kpi .k{font-size:var(--t-xs);color:var(--ink-3)}.kpi .v{font-family:var(--inter);font-size:var(--t-display);font-weight:600;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi.is-due .v{color:var(--accent-dim)}.kpi .n{font-size:var(--t-xs);color:var(--ink-3)}.sum-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:var(--s7);gap:var(--s7);margin-top:var(--s6)}.sum-block{margin-bottom:var(--s6)}.sum-block>h3{font-size:var(--t-sm);font-weight:500;color:var(--ink-3);padding-bottom:var(--s2);margin-bottom:var(--s4);border-bottom:1px solid var(--line)}.sum-block.alert>h3{color:var(--accent-dim);border-bottom-color:var(--accent-dim)}.bars{align-items:flex-end;gap:var(--s3)}.bars,.bars-empty{display:flex;height:160px}.bars-empty{justify-content:center;color:var(--ink-3);font-size:var(--t-sm);border:1px dashed var(--line)}.bar,.bars-empty{align-items:center}.bar{flex:1 1;display:flex;flex-direction:column;height:100%;justify-content:flex-end;gap:var(--s2)}.bar .amt{font-family:var(--mono);font-size:var(--t-micro);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bar .col{width:100%;min-height:2px;background:var(--line-2);transition:height .2s}.bar:last-child .col{background:var(--ink)}.bar .lb{font-size:var(--t-xs);color:var(--ink-3)}.st-table{display:flex;flex-direction:column;max-width:900px}.st-line{display:grid;grid-template-columns:auto 1fr auto auto;grid-gap:var(--s4);gap:var(--s4);align-items:baseline;padding:var(--s3) 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);text-align:left}.st-line .no{font-family:var(--mono);font-size:var(--t-xs)}.st-line .nm{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-line .c{font-size:var(--t-xs);color:var(--ink-3)}.st-line .a{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.st-line.is-link{background:none;border-left:none;border-right:none;border-top:none;cursor:pointer;width:100%;transition:.12s}.st-line.is-link:hover{padding-left:var(--s2)}.st-table .st-line>.st:first-child:nth-last-child(3){grid-column:1/3}.pane.team .kpis{grid-template-columns:repeat(2,1fr)}.team-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.team-head>h3{border:none;margin:0;padding:0;flex:none}.team-head .actions-row{margin-top:0;flex:none}.team-head .actions-row .add{flex:none;padding:var(--s2) var(--s3)}.preview{background:var(--stage)}.preview>.pane-head{border-bottom-color:var(--stage-line)}.preview .zoom,.preview .zoom button,.preview>.pane-head .count,.preview>.pane-head .lab{color:var(--stage-ink)}.preview .zoom button:hover:not(:disabled){color:var(--paper)}.pane.preview,.pane.preview+.pane{border-left-color:var(--stage)}.zoom{display:flex;align-items:center;gap:var(--s2);font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3)}.paper-scroll{flex:1 1;overflow:auto;padding:var(--s5);display:flex;justify-content:flex-start;align-items:flex-start}.paper-scale{flex:none;margin:0 auto}.paper-inner{width:max-content}.paper-scale .qp{box-shadow:0 2px 8px rgba(0,0,0,.45),0 28px 72px rgba(0,0,0,.55)}.qp-sheets{display:grid;grid-gap:var(--s6);gap:var(--s6);padding-bottom:var(--s6)}.qp-sheet{position:relative}.qp-sheet-no{position:absolute;top:100%;right:0;margin-top:var(--s2);font-family:var(--mono);font-size:var(--t-micro);letter-spacing:.12em;color:rgba(253,253,249,.45)}.toast{position:fixed;bottom:var(--s5);left:50%;transform:translateX(-50%) translateY(20px);background:rgba(17,17,16,.78);color:var(--paper);font-size:var(--t-sm);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:var(--s3) var(--s5);opacity:0;pointer-events:none;transition:.25s;z-index:99}.toast.on{opacity:1;transform:translateX(-50%) translateY(0)}.login-overlay{position:fixed;inset:0;z-index:100;background:rgba(17,17,16,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--s5)}.login-card{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r-md);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:var(--s7);width:100%;max-width:360px;box-shadow:0 20px 60px rgba(17,17,16,.28),inset 0 1px 0 rgba(255,255,255,.85)}.login-card h2{font-family:var(--inter);font-size:var(--t-title);font-weight:600;letter-spacing:-.02em}.login-note{font-size:var(--t-sm);color:var(--ink-3);line-height:var(--lh-loose);margin:var(--s2) 0 var(--s5)}.login-card input{margin-bottom:var(--s4)}.login-card .btn{width:100%;justify-content:center}.login-skip{margin-top:var(--s2);background:none;border-color:transparent;color:var(--ink-3)}.login-skip:hover{color:var(--ink);border-color:var(--line-2)}.login-card .login-skip+.login-note{margin:var(--s3) 0 0}.login-err{font-size:var(--t-sm);color:var(--accent-dim);margin-bottom:var(--s4)}.brief-card{max-width:560px}.brief-text{width:100%;resize:vertical;margin-bottom:var(--s3);font-size:var(--t-sm);line-height:var(--lh-body)}.brief-file{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s4);font-size:var(--t-sm);color:var(--ink-2);cursor:pointer}.brief-file input{display:none}.brief-file span{border-bottom:1px dashed var(--line-2)}.brief-file .x{width:auto;margin:0}.brief-notes{white-space:pre-line;font-size:var(--t-sm);color:var(--ink-2);line-height:var(--lh-body);margin:var(--s2) 0 var(--s5);max-height:40vh;overflow-y:auto}.concept-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s3)}.concept-head .t{font-size:var(--t-sm);font-weight:500;color:var(--ink)}.concept-head .h{font-size:var(--t-xs);color:var(--ink-3)}.concept-ai{display:grid;grid-gap:var(--s2);gap:var(--s2);margin-top:var(--s3)}.concept-ai>.btn{justify-self:start}.concept-err{color:var(--accent-dim);margin:0}.concept-opt{display:grid;grid-gap:var(--s1);gap:var(--s1);text-align:left;cursor:pointer;padding:var(--s3);background:none;border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;color:var(--ink);transition:border-color .12s,background .12s}.concept-opt:hover{border-color:var(--ink);background:rgba(176,68,42,.03)}.concept-opt .hl{font-family:var(--font-serif),serif;font-style:italic;font-weight:300;font-size:18px;line-height:1.3}.concept-opt .tg{font-size:var(--t-xs);color:var(--ink-2);line-height:var(--lh-body)}*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:var(--r-sm)}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}@media print{body,html{background:#fff!important;margin:0;padding:0;height:auto!important;min-height:0!important;overflow:visible;display:block;-webkit-print-color-adjust:exact;print-color-adjust:exact}.login-overlay,.m-switch,.menu,.pane.docs,.pane.editor,.preview-head,.toast,.topbar{display:none!important}.m-edit .pane.preview{display:flex!important}.form-scroll,.paper-scroll,.sum-scroll{padding-bottom:0!important}.workspace{display:block;height:auto}.pane.preview{border:none}.pane.preview,.paper-scroll{background:#fff;overflow:visible}.paper-scroll{padding:0;display:block}.paper-scale{width:auto!important;height:auto!important;margin:0!important}.paper-inner{transform:none!important;width:auto!important}}.m-switch{display:none}@media (max-width:1200px) and (min-width:901px){.workspace{grid-template-columns:220px minmax(0,1fr) 340px}.workspace.no-side{grid-template-columns:44px minmax(0,1fr) 340px}.workspace.no-paper{grid-template-columns:220px 44px minmax(0,1fr)}.workspace.no-side.no-paper{grid-template-columns:44px 44px minmax(0,1fr)}}@media (max-width:1040px) and (min-width:901px){.workspace{grid-template-columns:180px minmax(0,1fr) 316px}.workspace.no-side{grid-template-columns:44px minmax(0,1fr) 316px}.workspace.no-paper{grid-template-columns:180px 44px minmax(0,1fr)}.workspace.no-side.no-paper{grid-template-columns:44px 44px minmax(0,1fr)}}@media (max-width:900px){.workspace,.workspace.is-wide,.workspace.is-wide.no-side,.workspace.no-side{grid-template-columns:1fr;position:relative}.pane+.pane{border-left:none}.pane.docs{position:absolute;inset:0;z-index:40;box-shadow:0 8px 32px rgba(17,17,16,.16)}.pane.docs.collapsed,.pane.preview.collapsed,.side-toggle{display:none}.topbar{height:auto;flex-wrap:wrap;gap:var(--s2);padding:var(--s2) var(--s3) 0}.tb-sep{display:none}.tb-brand{display:contents}.tb-logo{margin-right:auto;height:18px}.tb-actions{flex:none}.tb-actions .btn{padding:var(--s1) var(--s2);font-size:var(--t-xs)}.tb-actions .btn-save .ts{display:none}.tb-view{order:3;flex:1 0 100%;margin:0 calc(var(--s3) * -1);padding:0 var(--s3);border:none;border-top:1px solid rgba(253,253,249,.18);overflow-x:auto;-webkit-overflow-scrolling:touch}.tb-view::-webkit-scrollbar{display:none}.tb-view button{flex:none;white-space:nowrap;padding:var(--s2) var(--s3)}.form-scroll,.sum-scroll{padding-bottom:72px}.paper-scroll{padding:var(--s3)}.doc-list,.paper-scroll{padding-bottom:72px}.pane.editor{padding-bottom:56px}.pane.editor .form-scroll{padding-bottom:var(--s5)}.grid-2,.kpis,.sum-grid{grid-template-columns:1fr}.cl-head{flex-wrap:wrap}.cl-head .nm{flex:1 0 100%}.m-switch{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;height:56px;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--glass-line)}.m-switch button{flex:1 1;min-width:0;display:flex;align-items:center;justify-content:center;gap:var(--s1);background:none;border:none;cursor:pointer;font:inherit;font-size:var(--t-sm);color:var(--ink-3)}.m-switch button,.m-switch button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-switch button.is-on{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}.m-switch button:disabled{opacity:.35}.m-switch .n{font-family:var(--mono);font-size:var(--t-label);color:var(--ink-3);border:1px solid var(--line-2);border-radius:999px;padding:0 var(--s1)}}@media (min-width:701px) and (max-width:900px){.workspace,.workspace.no-side{grid-template-columns:minmax(320px,1fr) minmax(340px,1fr)}.m-switch button+button{display:none}.m-switch button:first-child{flex:none;padding:0 var(--s5)}}@media (max-width:700px){.m-edit .pane.preview,.m-preview .pane.editor{display:none}}@media (max-width:900px) and (pointer:coarse){input,select,textarea{font-size:16px}}.doc-bar{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s2);padding-bottom:var(--s2);border-bottom:1px solid var(--line)}.doc-bar select{width:auto;flex:none;border-bottom-color:transparent}.doc-bar select:focus,.doc-bar select:hover{border-bottom-color:var(--line-2)}.doc-bar .type-sel{font-weight:500}.doc-bar .doc-no{margin-left:auto;font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3)}.fold{border:var(--rule) solid var(--line);border-radius:var(--r-md);margin-bottom:var(--s4)}.fold-head{width:100%;display:flex;align-items:center;gap:var(--s3);padding:var(--s3);background:none;border:none;cursor:pointer;font:inherit;color:var(--ink-2);text-align:left}.fold-head:hover{color:var(--ink)}.fold-head .t{font-size:var(--t-sm);font-weight:500;flex:none}.fold-head .v{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fold-head .caret,.fold-head .v{font-size:var(--t-xs);color:var(--ink-3)}.fold-head .caret{margin-left:auto}.fold-body{padding:0 var(--s3) var(--s3)}.fold-body>.check:last-child,.fold-body>.f:last-child{margin-bottom:0}.info{position:relative;margin-left:var(--s2)}.info,.info-btn{display:inline-flex}.info-btn{width:16px;height:16px;border-radius:50%;cursor:pointer;border:1px solid var(--line-2);background:none;font-family:var(--mono);font-size:var(--t-micro);line-height:1;color:var(--ink-3);align-items:center;justify-content:center}.info-btn:hover{color:var(--ink);border-color:var(--ink-3)}.info-pop{position:absolute;top:calc(100% + var(--s2));left:0;z-index:40;width:max-content;max-width:320px;padding:var(--s3);border-radius:var(--r-md);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);font-size:var(--t-xs);line-height:var(--lh-body);color:var(--ink-2);white-space:normal}.split-row{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s4)}.split-row .k{font-size:var(--t-xs);color:var(--ink-3)}.split-row .st-btn{min-width:34px}.split-n{width:56px;text-align:center;border:1px solid var(--line-2);border-radius:var(--r-sm);padding:var(--s1) var(--s2);font-size:var(--t-sm);background:none;color:var(--ink)}.split-n,input.money{font-family:var(--mono)}input.money{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.it-head,.it-nums{display:grid;grid-template-columns:42px 52px minmax(0,1fr) minmax(0,1fr);grid-gap:6px;gap:6px;align-items:center}.it-head>.sp,.it-head>:last-child,.it-nums>:first-child{display:none}.it-head{padding-left:22px;font-family:var(--mono);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-bottom:var(--s2);border-bottom:1px solid var(--line);margin-bottom:var(--s1)}.it-head .r,.it-price,.it-qty,.it-sum{text-align:right}.it-head .sp{grid-column:1}.it-row{border-bottom:var(--rule-hair) solid var(--line);padding:var(--s2) 0 var(--s2) 22px;position:relative}.it-row.is-optional{opacity:.78}.it-row.is-open{background:var(--panel-2)}.it-title{display:block;width:100%;font-size:var(--t-body);font-weight:500;margin-bottom:var(--s1);resize:none;overflow:hidden;line-height:var(--lh-snug)}.it-nums input,.it-title{border:1px solid transparent;border-radius:var(--r-sm);padding:var(--s2);background:none;color:var(--ink)}.it-nums input{font-size:var(--t-sm);min-width:0}.it-nums input:hover,.it-title:hover{border-color:var(--line)}.it-nums input:focus,.it-title:focus{border-color:var(--ink);outline:none;background:var(--paper)}.it-price,.it-qty{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.it-qty::-webkit-inner-spin-button,.it-qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.it-qty{-moz-appearance:textfield}.it-sum{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:var(--t-sm);color:var(--ink);padding-right:var(--s2)}.it-sum.muted{color:var(--ink-3)}.it-tools{display:flex;gap:var(--s0);justify-content:flex-end;position:absolute;bottom:var(--s1);right:0;z-index:1;opacity:.45;transition:.12s}.it-row:focus-within .it-tools,.it-row:hover .it-tools{opacity:1}.it-tools .t,.it-tools .x{background:none;border:none;cursor:pointer;color:var(--ink-3);font:inherit;font-size:var(--t-xs);line-height:1;width:20px;height:20px;border-radius:var(--r-sm);transition:.12s;display:flex;align-items:center;justify-content:center;padding:0}.it-tools .x:hover{color:var(--danger);background:var(--line)}.it-tools .t:hover:not(:disabled){color:var(--ink);background:var(--line)}.it-tools .t:disabled{opacity:.25;cursor:default}.it-more{display:flex;align-items:center;gap:var(--s2);background:none;border:none;cursor:pointer;padding:var(--s1) var(--s2);font:inherit;font-size:var(--t-xs);color:var(--ink-3)}.it-more:hover{color:var(--ink-2)}.it-more .caret,.it-more .tag{font-size:var(--t-micro)}.it-more .tag{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--line-2);border-radius:999px;padding:0 var(--s2)}.it-detail{padding:var(--s3) var(--s2) var(--s4)}.flow{gap:0;margin-bottom:var(--s2)}.flow,.flow-step{display:flex;align-items:center}.flow-step{gap:var(--s2);background:none;border:none;cursor:pointer;padding:var(--s1) var(--s3) var(--s1) 0;font:inherit;font-size:var(--t-xs);color:var(--ink-3);position:relative}.flow-step+.flow-step:before{content:"";position:absolute;left:calc(var(--s3) * -1);top:50%;width:var(--s3);height:1px;background:var(--line-2)}.flow-step .dot{width:7px;height:7px;border-radius:50%;flex:none;border:1px solid var(--line-2);background:none}.flow-step.is-done{color:var(--ink-3)}.flow-step.is-done .dot{background:var(--line-2);border-color:var(--line-2)}.flow-step.is-now{color:var(--ink);font-weight:500}.flow-step.is-now .dot{background:var(--ink);border-color:var(--ink)}.flow-step:hover{color:var(--ink)}.flow-off{font-size:var(--t-xs);color:var(--accent-dim);border:1px solid var(--line-2);border-radius:999px;padding:0 var(--s3)}.flow-other{margin-left:auto;width:auto;flex:none;font-size:var(--t-xs);color:var(--ink-3);border:none;background:none}.next-action{width:100%;justify-content:center;margin-bottom:20px;background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:500}.next-action:hover:not(:disabled){background:var(--ink-2);border-color:var(--ink-2)}.next-wait{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2) var(--s3);margin-bottom:var(--s6);padding:var(--s3);border:var(--rule) dashed var(--line-2);border-radius:var(--r-sm)}.next-wait .t{font-size:var(--t-sm);font-weight:500;color:var(--ink)}.next-wait .v{font-size:var(--t-xs);color:var(--ink-3);flex:1 1;min-width:0}.preset-row{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s4)}.preset{border:1px solid var(--line-2);border-radius:999px;padding:var(--s1) var(--s3);background:none;cursor:pointer;font:inherit;font-size:var(--t-xs);color:var(--ink-3);transition:.12s}.preset:hover{border-color:var(--ink-3);color:var(--ink)}.preset.is-on{border-color:var(--ink);color:var(--ink);background:var(--panel-2)}.menu-lab{font-family:var(--mono);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:var(--s2) var(--s3) var(--s1)}.menu-empty{padding:var(--s1) var(--s3) var(--s2)}.menu button .mn-no,.menu-empty{font-size:var(--t-xs);color:var(--ink-3)}.menu button .mn-no{font-family:var(--mono);margin-right:var(--s2)}.menu button .mn-nm{font-size:var(--t-sm)}.qp-jump{cursor:pointer;border-radius:var(--r-sm);transition:box-shadow .12s,background .12s;position:relative}.qp-jump:after{content:"";position:absolute;left:calc(var(--s3) * -1);top:2px;bottom:2px;width:var(--rule-strong);background:var(--line);border-radius:1px;opacity:0;transition:opacity .15s}.qp-jump:focus-visible:after,.qp:hover .qp-jump:after{opacity:1}.qp-jump:hover{box-shadow:0 0 0 1px var(--line-2)}.qp-jump:hover:after{background:var(--ink-3)}@media print{.qp-jump,.qp-jump:hover{box-shadow:none!important;background:none!important}.qp-jump:after{display:none!important}}.pane.editor>.doc-issues{flex:none;margin:0;padding:var(--s3) var(--s5);border-bottom:1px solid var(--line);border-left:2px solid var(--line-2);background:none}.pane.editor>.doc-issues.is-error{border-left-color:var(--accent);background:rgba(235,89,57,.05)}.doc-issues{border-left-width:2px;border-left-color:var(--line-2);background:none}.doc-issues.is-error{border-left-color:var(--accent);background:rgba(235,89,57,.05)}.doc-issues .h{font-size:var(--t-sm);font-weight:500;color:var(--ink-2)}.doc-issues summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--s2)}.doc-issues summary::-webkit-details-marker{display:none}.doc-issues summary:before{content:"▸";font-size:var(--t-xs);color:var(--ink-3);transition:.12s}.doc-issues details[open]>summary:before{content:"▾"}.doc-issues summary:hover{color:var(--ink)}.doc-issues.is-error .h{color:var(--accent-dim)}.doc-issues ul{margin:var(--s2) 0 0;padding-left:var(--s4)}.doc-issues li{font-size:var(--t-xs);color:var(--ink-3);line-height:1.7}.doc-issues li.er{color:var(--ink-2)}.doc-issues ul{max-height:132px;overflow-y:auto}.crash{max-width:520px;margin:0 auto;padding:18vh var(--s5) var(--s7);color:var(--ink);font-family:var(--thai)}.crash h1{font-size:var(--t-title);font-weight:500;letter-spacing:-.02em}.crash p{margin-top:var(--s4);color:var(--ink-2);line-height:var(--lh-body)}.crash-do{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}.crash-id{font-size:var(--t-xs);color:var(--ink-3)}.crash-id code{font-family:var(--mono);-webkit-user-select:all;-moz-user-select:all;user-select:all}.toast-undo{margin-left:var(--s3);padding:0 0 1px;background:none;border:none;border-bottom:1px solid;color:inherit;font:inherit;font-weight:500;cursor:pointer}.topbar .btn-save.is-dirty .ts{color:#fdfdf9}.topbar .btn-save.is-dirty .ts:before{background:#fdfdf9}.mt-card{border:var(--rule) solid var(--line);border-radius:var(--r-md);padding:var(--s4);margin-bottom:var(--s4)}.mt-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s3)}.mt-card-head .n{font-family:var(--mono);font-size:var(--t-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.mt-form-sum{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--ink);font-size:var(--t-sm)}.mt-form-sum b{font-family:var(--mono);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grow-field{resize:none;overflow:hidden}.menu-key{margin-left:auto;padding-left:var(--s4);font-family:var(--mono);font-size:var(--t-label);color:var(--ink-3)}.menu button:disabled{opacity:.35;cursor:not-allowed}.menu button:disabled:hover{background:none}.money .kpi .v{font-size:var(--t-title)}.mn-rec .lk,.st-line .lk{background:none;border:none;padding:0;text-align:left;cursor:pointer;color:var(--ink-2);font:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mn-rec .lk:hover,.st-line .lk:hover{color:var(--ink);text-decoration:underline}.boot-fail{max-width:620px;margin:0 auto;padding:12vh var(--s5) var(--s6);display:flex;flex-direction:column;gap:var(--s4)}.boot-fail h1{font-family:var(--display);font-size:var(--t-title);font-weight:500}.boot-fail p{font-size:var(--t-sm);color:var(--ink-2);line-height:var(--lh-loose)}.boot-fail p b{color:var(--ink);font-weight:500}.boot-why{font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3);background:var(--line);padding:var(--s3);border-radius:var(--r-sm);white-space:pre-wrap;word-break:break-word}.boot-act{display:flex;gap:var(--s3);flex-wrap:wrap;margin-top:var(--s2)}.boot-act .btn-danger{margin-left:auto}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:var(--r-sm)}.topbar :focus-visible{outline-color:var(--paper)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.stage-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s3);min-height:60vh;padding:var(--s6) var(--s5);text-align:center}.stage-empty .t{font-size:var(--t-lead);color:var(--stage-ink)}.stage-empty .h{font-size:var(--t-sm);color:var(--stage-ink);opacity:.7;margin-bottom:var(--s3)}.stage-empty .btn-primary{background:var(--paper);border-color:var(--paper);color:var(--ink)}.stage-empty .btn-primary:hover:not(:disabled){background:#fff;border-color:#fff}.stage-empty .btn:not(.btn-primary){border-color:rgba(253,253,249,.28);color:var(--stage-ink)}.stage-empty .btn:not(.btn-primary):hover{border-color:var(--paper);color:var(--paper)}.it-no{position:absolute;left:0;top:20px;line-height:1;font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:480px){.tb-logo{height:15px}.tb-actions{gap:6px}.mn-rec{grid-template-columns:1fr auto;row-gap:2px}.mn-rec .c,.mn-rec .lk{grid-column:1}.mn-rec .c{grid-row:2;white-space:nowrap}.mn-rec>:last-child{grid-column:2;grid-row:1/span 2;align-self:center;white-space:nowrap}}.actions-row .add.lib-toggle{flex-basis:100%}.add.lib-toggle.is-on{border-color:var(--ink);color:var(--ink)}.lib-box{margin-top:var(--s2);border:1px solid var(--ink);border-radius:var(--r-sm);background:var(--panel)}.lib-search{width:100%;border:none;border-bottom:1px solid var(--line);padding:var(--s3);font-size:var(--t-sm);background:transparent}.lib-search:focus{outline:none;border-bottom-color:var(--ink)}.lib-empty{padding:var(--s3);font-size:var(--t-xs);color:var(--ink-3);margin:0}.lib-list{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto;overscroll-behavior:contain}.lib-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px var(--s3);gap:2px var(--s3);width:100%;text-align:left;background:none;border:none;border-bottom:var(--rule-hair) solid var(--line);padding:var(--s2) var(--s3);cursor:pointer;font-family:var(--thai)}.lib-row:focus-visible,.lib-row:hover{background:var(--bg);outline:none}.lib-row .lib-t{font-size:var(--t-sm);color:var(--ink);line-height:var(--lh-snug)}.lib-row .lib-p{font-family:var(--mono);font-size:var(--t-xs);color:var(--ink);text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lib-row .lib-p em{font-style:normal;color:var(--ink-3);font-family:var(--thai)}.lib-row .lib-m{grid-column:1/-1;font-size:var(--t-xs);color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-row .lib-m b{font-weight:500;color:var(--accent-dim)}.lib-row.is-in .lib-t{color:var(--ink-2)}.st-table .st-line.has-chase{grid-template-columns:auto 1fr auto auto auto}.chase-copy{border:1px solid var(--line);background:none;border-radius:var(--r-sm);font-family:var(--thai);font-size:var(--t-xs);color:var(--ink-2);padding:2px var(--s2);cursor:pointer;white-space:nowrap}.chase-copy:hover{border-color:var(--ink);color:var(--ink)}@media (max-width:480px){.st-table .st-line.has-chase{grid-template-columns:auto 1fr auto}.st-table .st-line.has-chase .chase-copy{grid-column:1/-1;justify-self:start}}.chase-row{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap;margin:-8px 0 20px}.chase-row .n{font-size:var(--t-xs);color:var(--ink-3)}.chase-row.is-late .n{color:var(--accent-dim)}@media (max-width:480px){.st-table .st-line.has-chase .a{grid-column:3;grid-row:2;text-align:right}.st-table .st-line.has-chase .chase-copy{grid-column:1/3;grid-row:2}}.backup-card{max-width:480px}.backup-list{max-height:40vh;overflow-y:auto;margin:var(--s2) 0 var(--s4);border-top:1px solid var(--line)}.backup-row{display:grid;grid-template-columns:1fr auto auto auto;grid-gap:var(--s3);gap:var(--s3);align-items:baseline;padding:var(--s2) 0;border-bottom:var(--rule-hair) solid var(--line);font-size:var(--t-sm)}.backup-row .s{font-family:var(--mono);font-size:var(--t-xs);color:var(--ink-3)}.backup-row .lk{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:var(--t-xs);color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.backup-row .lk:hover:not(:disabled){color:var(--ink)}.backup-row .lk:disabled{opacity:.4;cursor:default}@media (max-width:480px){.backup-row{grid-template-columns:1fr auto}.backup-row .lk{justify-self:start}}.tb-view .tb-count{display:inline-block;margin-left:6px;min-width:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-family:var(--mono);font-size:var(--t-label);line-height:18px;text-align:center;vertical-align:1px}