:root{--navy:#14233f;--blue:#1f6bd0;--blue-2:#1a5bb4;--blue-soft:#e7eefb;--ink:#1a2334;--ink-2:#56627a;--ink-3:#8b97ab;--bg:#ffffff;--panel:#fafbfd;--panel-2:#f3f5f9;--bg-2:#f3f6fb;--border:#e7eaf1;--border-2:#d7dce6;--red:#e0584a;--green:#1f9d57;--font:"Geist", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;background:var(--bg)}h1,h2,h3{margin:0;letter-spacing:-.01em}p{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:99px}.screen{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;display:flex}.sb{width:248px;flex:none;height:100%;display:flex;flex-direction:column;background:linear-gradient(180deg,#1a2c4d,#111f37)}.ws{display:flex;align-items:center;gap:10px;padding:13px 12px;margin:6px;border-radius:10px;transition:background .14s}.ws:hover{background:#ffffff0d}.ws-logo{width:30px;height:30px;flex:none;border-radius:8px;background:linear-gradient(135deg,var(--blue),#14b8a6);display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #ffffff40}.ws-logo span{width:12px;height:12px;transform:rotate(45deg);border-radius:3px;background:#fff;opacity:.94}.ws-name{font-size:13.5px;font-weight:600;color:#f2f6fb}.ws-sub{font-size:11px;color:#7b8aa2;margin-top:1px}.ws-cv{margin-left:auto;color:#8a99b3}.ws-cv svg{width:15px;height:15px}.sb-search{margin:2px 12px 6px;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:#ffffff0d;color:#8a99b3;font-size:12.5px;width:auto;text-align:left}.sb-search svg{width:15px;height:15px}.sb-search kbd{margin-left:auto;font-family:var(--mono);font-size:10px;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:5px;padding:1px 5px;color:#9fb0c8}.nav{flex:1;overflow-y:auto;padding:8px 10px 10px}.nav-sec{font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6b7a93;padding:13px 10px 5px}.nav-item{width:100%;display:flex;align-items:center;gap:11px;padding:6px 10px;border:none;background:none;border-radius:9px;color:#aeb9cc;font-size:13px;font-weight:500;text-align:left;position:relative;transition:background .12s,color .12s}.nav-item:hover{background:#ffffff0d;color:#eef3fa}.nav-item.on{background:#ffffff17;color:#fff;font-weight:600}.nav-item.on:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--blue)}.nav-item .ni{width:28px;height:28px;flex:none;border-radius:8px;display:grid;place-items:center;color:#fff}.nav-item .ni svg{width:15px;height:15px}.nav-item .lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item .cnt{font-family:var(--mono);font-size:10.5px;font-weight:600;color:#7b8aa2}.nav-item .cnt.accent{color:#fff;background:var(--red);border-radius:99px;padding:1px 6px}.sb-user{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid rgba(255,255,255,.08);width:100%;border-left:none;border-right:none;border-bottom:none;background:none;text-align:left}.sb-user:hover{background:#ffffff0a}.sb-av{width:32px;height:32px;flex:none;border-radius:50%;background:linear-gradient(135deg,#1f6bd0,#14b8a6);color:#fff;font-size:12px;font-weight:600;display:grid;place-items:center}.sb-user-n{font-size:12.5px;font-weight:600;color:#f2f6fb}.sb-user-r{font-size:11px;color:#7b8aa2}.sb-user>svg{margin-left:auto;width:15px;height:15px;color:#8a99b3}.content{flex:1;min-width:0;display:flex;flex-direction:column}.tb{height:58px;flex:none;display:flex;align-items:center;gap:14px;padding:0 20px;border-bottom:1px solid var(--border);background:#fff}.tb-crumb{font-size:14px;font-weight:600;color:var(--navy);white-space:nowrap}.tb-crumb .muted{color:var(--ink-3);font-weight:500}.search{flex:1;max-width:460px;display:flex;align-items:center;gap:9px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:9px 13px;color:var(--ink-3);transition:.14s}.search:hover{border-color:var(--border-2);background:#fff}.search svg{width:16px;height:16px}.search input{flex:1;min-width:0;border:none;outline:none;background:none;font-family:inherit;font-size:13.5px;color:var(--ink)}.search kbd{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);background:#fff;border:1px solid var(--border);border-radius:5px;padding:2px 6px}.tb-right{margin-left:auto;display:flex;align-items:center;gap:10px}.create-wrap{position:relative}.btn-create{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:#fff;background:var(--blue);border:none;border-radius:9px;padding:9px 14px;box-shadow:0 6px 16px -8px #1f6bd0b3;transition:.14s}.btn-create:hover{background:var(--blue-2)}.btn-create svg{width:16px;height:16px}.create-menu{position:absolute;top:46px;right:0;width:220px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 50px -20px #14233f52;padding:6px;z-index:30}.cm-h{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:9px 10px 5px}.cm-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:none;border-radius:8px;font-size:13px;color:var(--ink-2);text-align:left}.cm-item:hover{background:var(--panel-2);color:var(--navy)}.cm-item svg{width:16px;height:16px;color:var(--ink-3)}.ic-btn{width:36px;height:36px;border:1px solid var(--border);background:#fff;border-radius:9px;color:var(--ink-2);display:grid;place-items:center;position:relative;transition:.14s}.ic-btn:hover{background:var(--panel-2);border-color:var(--border-2);color:var(--navy)}.ic-btn svg{width:17px;height:17px}.ic-btn .dot{position:absolute;top:7px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--red);border:1.5px solid #fff}.main{flex:1;overflow-y:auto;padding:26px 28px 32px}.hub-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.hub-ic{width:46px;height:46px;flex:none;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--blue),#3b86e6);display:grid;place-items:center;box-shadow:0 8px 18px -8px #1f6bd099}.hub-ic svg{width:24px;height:24px}.hub-title{font-size:23px;font-weight:600;color:var(--navy);letter-spacing:-.02em}.hub-sub{font-size:13.5px;color:var(--ink-2);margin-top:3px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media(max-width:1180px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:880px){.grid{grid-template-columns:repeat(2,1fr)}}.card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 18px 16px;transition:border-color .18s,box-shadow .22s,transform .22s;text-align:left;width:100%;cursor:pointer}.card:hover{border-color:var(--border-2);box-shadow:0 20px 40px -26px #14233f80;transform:translateY(-3px)}.card-head{display:flex;align-items:center;gap:13px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:14px}.card-ic{width:44px;height:44px;flex:none;border-radius:11px;background:var(--c);color:#fff;display:grid;place-items:center}.card-ic svg{width:22px;height:22px}.card-title{font-size:15px;font-weight:600;color:var(--navy);line-height:1.2}.card-sub{font-size:11.5px;color:var(--ink-3);margin-top:3px}.card-desc{font-size:13px;color:var(--ink-2);line-height:1.5}.login{display:flex;min-height:100vh}.brand{flex:0 0 46%;max-width:620px;position:relative;overflow:hidden;color:#cdd8e8;background:linear-gradient(160deg,#1a2c4d,#111f37 55%,#0d1830);padding:46px 52px;display:flex;flex-direction:column}.brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(50% 50% at 84% 8%,rgba(31,107,208,.28),transparent 60%),radial-gradient(46% 46% at 6% 96%,rgba(20,184,166,.16),transparent 60%);pointer-events:none}.brand:after{content:"";position:absolute;width:520px;height:520px;right:-150px;bottom:-160px;border-radius:64px;transform:rotate(45deg);background:linear-gradient(135deg,#1f6bd01f,#14b8a60d);box-shadow:inset 0 0 0 1px #ffffff0d;pointer-events:none}.brand>*{position:relative;z-index:1}.wordmark{display:flex;align-items:center;gap:11px}.wm-mark{width:38px;height:38px;flex:none;border-radius:10px;background:linear-gradient(135deg,var(--blue) 0%,#14b8a6 100%);box-shadow:inset 0 0 0 1.5px #ffffff4d;display:grid;place-items:center}.wm-mark span{display:block;width:15px;height:15px;transform:rotate(45deg);border-radius:3px;background:#fff;opacity:.92}.wm-name{font-size:18px;font-weight:600;color:#f2f6fb}.wm-sub{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:#7b8aa2;margin-top:2px}.brand-mid{margin-top:auto;margin-bottom:auto;max-width:420px}.brand-mid h1{font-size:34px;font-weight:600;color:#f2f6fb;line-height:1.1;letter-spacing:-.02em}.brand-mid .lede{margin-top:18px;font-size:15.5px;color:#9fb0c8;line-height:1.6}.ticks{margin-top:30px;display:flex;flex-direction:column;gap:13px}.tick{display:flex;align-items:center;gap:12px;font-size:14px;color:#c4d0e2}.tick-ic{width:26px;height:26px;flex:none;border-radius:7px;background:#6fb0f529;color:#6fb0f5;display:grid;place-items:center}.tick-ic svg{width:15px;height:15px}.brand-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--mono);font-size:11.5px;color:#6d7e98}.status{display:inline-flex;align-items:center;gap:7px;color:#9fb0c8}.status .dot{width:7px;height:7px;border-radius:50%;background:#26a560;box-shadow:0 0 0 3px #26a5602e}.form-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 28px}.form{width:100%;max-width:384px}.form-top{display:flex;justify-content:flex-end;margin-bottom:34px}.lang{display:inline-flex;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;padding:3px;gap:2px}.lang button{border:none;background:none;font-size:12px;font-weight:600;color:var(--ink-3);padding:5px 10px;border-radius:6px}.lang button.on{background:#fff;color:var(--navy);box-shadow:0 1px 2px #14233f1f}.form h2{font-size:24px;font-weight:600;color:var(--navy)}.form-sub{margin-top:9px;font-size:14px;color:var(--ink-2)}.seg{display:flex;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:3px;gap:3px;margin:26px 0 20px}.seg button{flex:1;border:none;background:none;font-size:13px;font-weight:600;color:var(--ink-2);padding:9px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.14s}.seg button svg{width:15px;height:15px}.seg button.on{background:#fff;color:var(--navy);box-shadow:0 2px 6px -2px #14233f2e}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field>label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.control{display:flex;align-items:center;gap:9px;border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 13px;transition:border-color .14s,box-shadow .14s}.control:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1f6bd021}.control svg{width:17px;height:17px;flex:none;color:var(--ink-3)}.control input{border:none;outline:none;background:none;font-family:inherit;font-size:14px;color:var(--ink);flex:1;min-width:0}.control .toggle{border:none;background:none;color:var(--ink-3);padding:0;display:grid;place-items:center}.control .toggle:hover{color:var(--ink-2)}.control .toggle.on{color:var(--blue)}.prefix{font-size:14px;color:var(--ink-2);font-weight:500;padding-right:9px;border-right:1px solid var(--border);white-space:nowrap}.suffix{font-size:13px;color:var(--ink-3);padding-left:9px;border-left:1px solid var(--border);white-space:nowrap}.tenant-badge{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:11px 13px;margin-bottom:16px}.tenant-badge b{color:var(--navy);font-weight:600}.tenant-badge svg{width:16px;height:16px;flex:none;color:var(--ink-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 22px}.remember{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;border:none;background:none}.check{width:18px;height:18px;border:1px solid var(--border-2);border-radius:5px;display:grid;place-items:center;color:#fff;transition:.14s}.check.on{background:var(--blue);border-color:var(--blue)}.check svg{width:12px;height:12px}.link{font-size:13px;font-weight:600;color:var(--blue);background:none;border:none;padding:0}.link:hover{color:var(--blue-2)}.btn-primary{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:15px;font-weight:600;color:#fff;background:var(--blue);border:none;border-radius:10px;padding:14px;box-shadow:0 10px 24px -10px #1f6bd0cc;transition:.14s}.btn-primary:hover:not(:disabled){background:var(--blue-2)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary svg{width:17px;height:17px}.form-err{margin-top:14px;font-size:13px;color:var(--red);background:#e0584a14;border:1px solid rgba(224,88,74,.25);border-radius:9px;padding:10px 12px}.hint{font-size:12.5px;color:var(--ink-3);line-height:1.5}.signup{margin-top:30px;padding-top:22px;border-top:1px solid var(--border);text-align:center;font-size:13.5px;color:var(--ink-2)}.signup a{color:var(--blue);font-weight:600}@media(max-width:880px){.brand{display:none}}.page-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}.page-head .grow{flex:1;min-width:0}.page-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;border-radius:9px;padding:9px 13px;border:1px solid var(--border);background:#fff;color:var(--ink-2);transition:.14s}.btn:hover{background:var(--panel-2);border-color:var(--border-2);color:var(--navy)}.btn svg{width:15px;height:15px}.btn.primary{color:#fff;background:var(--blue);border-color:var(--blue)}.btn.primary:hover{background:var(--blue-2)}.btn.danger{color:var(--red);border-color:#e0584a66}.btn.danger:hover{background:#e0584a14}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.sm{padding:6px 10px;font-size:12px}.panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 20px;margin-bottom:18px}.panel-h{display:flex;align-items:center;gap:10px;margin-bottom:14px}.panel-h h3{font-size:14.5px;font-weight:600;color:var(--navy)}.panel-h .muted{font-size:12px;color:var(--ink-3);font-weight:500}.panel-h .right{margin-left:auto;display:flex;gap:8px}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:99px;border:1px solid var(--border-2);color:var(--ink-2);background:var(--panel);white-space:nowrap}.pill .dot{width:6px;height:6px;border-radius:50%;background:var(--ink-3)}.pill.green{color:#147a43;background:#1f9d571a;border-color:#1f9d574d}.pill.green .dot{background:var(--green)}.pill.red{color:#b43d31;background:#e0584a1a;border-color:#e0584a4d}.pill.red .dot{background:var(--red)}.pill.amber{color:#9a6a12;background:#d69e2e1f;border-color:#d69e2e59}.pill.amber .dot{background:#d69e2e}.pill.blue{color:#1a5bb4;background:var(--blue-soft);border-color:#1f6bd04d}.pill.blue .dot{background:var(--blue)}.sw{width:40px;height:23px;border-radius:99px;border:none;background:var(--border-2);position:relative;transition:.16s;flex:none}.sw:after{content:"";position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #14233f4d;transition:.16s}.sw.on{background:var(--blue)}.sw.on:after{transform:translate(17px)}.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:760px){.feat-grid{grid-template-columns:1fr}}.feat{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:#fff}.feat .fi{width:38px;height:38px;flex:none;border-radius:10px;display:grid;place-items:center;color:#fff}.feat .fi svg{width:18px;height:18px}.feat .fn{font-size:13.5px;font-weight:600;color:var(--navy)}.feat .fd{font-size:11.5px;color:var(--ink-3);margin-top:2px}.feat .grow{flex:1;min-width:0}.empty{text-align:center;padding:40px 20px;color:var(--ink-3);font-size:13.5px}.kbd-search{position:fixed;top:0;right:0;bottom:0;left:0;background:#14233f66;display:flex;justify-content:center;align-items:flex-start;padding-top:14vh;z-index:80}.kbd-box{width:100%;max-width:560px;background:#fff;border-radius:14px;box-shadow:0 30px 70px -25px #14233f8c;overflow:hidden}.kbd-input{display:flex;align-items:center;gap:10px;padding:15px 18px;border-bottom:1px solid var(--border)}.kbd-input input{flex:1;border:none;outline:none;font-family:inherit;font-size:16px;color:var(--ink)}.kbd-input svg{width:18px;height:18px;color:var(--ink-3)}.kbd-res{max-height:50vh;overflow-y:auto;padding:6px}.kbd-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:9px;cursor:pointer}.kbd-item:hover,.kbd-item.on{background:var(--panel-2)}.kbd-item .ki{width:30px;height:30px;flex:none;border-radius:8px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center}.kbd-item .kt{font-size:13.5px;font-weight:600;color:var(--navy)}.kbd-item .ks{font-size:11.5px;color:var(--ink-3)}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:left;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0 12px 9px;border-bottom:1px solid var(--border)}.tbl td{padding:12px;border-bottom:1px solid var(--border);color:var(--ink-2);vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tr.row{transition:background .12s}.tbl tr.row:hover{background:var(--panel);cursor:pointer}.tbl .strong,.strong{font-weight:600;color:var(--navy)}.tbl .mono,.mono{font-family:var(--mono);font-size:12px;color:var(--ink-2)}.tbl .num,.num{text-align:right;font-family:var(--mono)}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:16px}.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.kv .k{font-size:11px;color:var(--ink-3);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.kv .v{font-size:15px;color:var(--navy);font-weight:600;margin-top:4px}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#14233f66;display:grid;place-items:center;z-index:60;padding:20px}.modal{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:16px;box-shadow:0 30px 70px -25px #14233f80;padding:24px}.modal h3{font-size:18px;font-weight:600;color:var(--navy);margin-bottom:4px}.modal .modal-sub{font-size:13px;color:var(--ink-2);margin-bottom:18px}.modal .field{display:flex;flex-direction:column;gap:7px}.modal .field input,.modal .field select{border:1px solid var(--border);border-radius:10px;padding:11px 12px;font-family:inherit;font-size:13.5px;color:var(--ink);outline:none;width:100%;background:#fff}.modal .field input:focus,.modal .field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1f6bd021}.modal .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.sec-label{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:18px 0 10px}.editor{display:flex;gap:22px;align-items:flex-start;max-width:1240px;margin:0 auto}.editor .paper{flex:1;min-width:0;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 50px -34px #14233f66;padding:34px 36px}.editor .rail{width:300px;flex:none;display:flex;flex-direction:column;gap:14px;position:sticky;top:16px}.rail-card{background:#fff;border:1px solid var(--border);border-radius:13px;padding:16px}.rail-card h4{font-size:13px;font-weight:600;color:var(--navy);margin:0 0 12px}.paper-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--border)}.paper-title{font-size:25px;font-weight:600;color:var(--navy);letter-spacing:-.02em}.paper-num{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--blue);margin-top:4px}.paper-co{display:flex;gap:12px}.paper-co .mark{width:44px;height:44px;flex:none;border-radius:11px;background:linear-gradient(135deg,var(--blue),#14b8a6);display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #ffffff40}.paper-co .mark span{width:17px;height:17px;transform:rotate(45deg);border-radius:4px;background:#fff;opacity:.95}.li th,.li td{padding:6px 8px}.li thead th{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-weight:600;border-bottom:1.5px solid var(--border);text-align:left}.li thead th.num{text-align:right}.li tbody tr{border-bottom:1px solid var(--panel-2)}.li input{width:100%;border:1px solid transparent;background:transparent;border-radius:6px;padding:7px 9px;font-family:inherit;font-size:13px;color:var(--ink);outline:none}.li input:hover{background:var(--panel)}.li input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #1f6bd01f}.li input.num,.li td.num{text-align:right;font-family:var(--mono)}.li .li-del{width:26px;height:26px;border:none;background:none;border-radius:6px;color:#c2cad8;display:grid;place-items:center;cursor:pointer}.li .li-del:hover{background:#e0584a1f;color:var(--red)}.add-line{display:inline-flex;align-items:center;gap:7px;margin-top:12px;font-size:12.5px;font-weight:600;color:var(--blue);background:none;border:1px dashed #c8d4e6;border-radius:8px;padding:8px 13px;cursor:pointer}.add-line:hover{background:#f4f8fe;border-color:var(--blue)}.totals{width:330px;margin-left:auto;margin-top:24px;display:flex;flex-direction:column;gap:9px}.totals .row{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-2)}.totals .row .v{font-family:var(--mono);font-weight:600;color:var(--navy)}.totals .net{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding:12px 14px;background:#0f1c33;border-radius:10px;color:#fff}.totals .net .v{font-family:var(--mono);font-size:16px;font-weight:600;color:#fff}.stamp{width:140px;height:74px;border:1.5px dashed var(--border-2);border-radius:10px;display:grid;place-items:center;font-size:11px;color:var(--ink-3);text-align:center}@media(max-width:980px){.editor{flex-direction:column}.editor .rail{width:100%;position:static;flex-direction:row;flex-wrap:wrap}.rail-card{flex:1;min-width:220px}}.av-lg{width:46px;height:46px;flex:none;border-radius:13px;background:linear-gradient(135deg,var(--blue),#14b8a6);color:#fff;font-size:16px;font-weight:600;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #ffffff40}.drow{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--panel-2);font-size:13px}.drow:last-child{border-bottom:none}.drow .di{width:30px;height:30px;flex:none;border-radius:8px;background:var(--panel-2);color:var(--ink-3);display:grid;place-items:center}.drow .dk{color:var(--ink-3);font-size:11px;text-transform:uppercase;letter-spacing:.05em;min-width:70px}.drow .dv{color:var(--navy);font-weight:500;flex:1;min-width:0;word-break:break-word}.drow .da{margin-left:auto;display:flex;gap:4px}.add-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}.add-row input,.add-row select{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:13px}.two-col{display:grid;grid-template-columns:1fr 320px;gap:18px;align-items:start}@media(max-width:900px){.two-col{grid-template-columns:1fr}}.muted{color:var(--ink-3)}@media print{body *{visibility:hidden}.doc-preview-modal,.doc-preview-modal *{visibility:visible}.doc-preview-modal{position:absolute;top:0;right:0;bottom:0;left:0;max-width:none!important;width:auto!important;box-shadow:none;padding:0}.doc-preview-modal .no-print{display:none!important}.modal-bg{position:static;background:none;padding:0;display:block}.doc-sheet{border:none!important;border-radius:0!important}}
