:root{--bg: #f4f5f7;--panel: #ffffff;--border: #e4e7ec;--text: #1a1f2b;--muted: #6b7280;--brand: #6d28d9;--brand-2: #2563eb;--won: #059669;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);--radius: 10px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.loading{display:grid;place-items:center;height:100%;color:var(--muted);font-size:15px}.app{display:flex;flex-direction:column;height:100%}.topbar{display:flex;align-items:center;gap:28px;padding:0 20px;height:60px;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow);z-index:5}.brand{font-size:17px;letter-spacing:-.2px;display:flex;align-items:center;gap:9px}.brand strong{color:var(--brand)}.brand-dot{width:12px;height:12px;border-radius:3px;background:linear-gradient(135deg,var(--brand),var(--brand-2))}.nav{display:flex;gap:4px}.nav button{border:0;background:transparent;color:var(--muted);font-size:14px;font-weight:600;padding:8px 14px;border-radius:8px;cursor:pointer}.nav button:hover{background:#f1f0fb;color:var(--text)}.nav button.active{background:#f1ecfd;color:var(--brand)}.topbar-stats{margin-left:auto;display:flex;gap:26px}.stat{display:flex;flex-direction:column;align-items:flex-end}.stat-value{font-size:15px;font-weight:700}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.content{flex:1;min-height:0;overflow:hidden}.pipeline-wrap{height:100%}.board{display:flex;gap:14px;height:100%;padding:18px;overflow-x:auto;align-items:flex-start}.column{flex:0 0 288px;max-width:288px;display:flex;flex-direction:column;max-height:100%}.column-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-bottom:10px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);border-top:3px solid var(--brand-2)}.column-head.won{border-top-color:var(--won)}.column-title{font-weight:700;font-size:13.5px}.column-meta{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.column-meta>span:first-child{font-size:12px;font-weight:700;color:var(--muted);background:#eef2ff;border-radius:20px;padding:1px 8px}.column-sum{font-size:11px;color:var(--muted);font-weight:600}.cards{display:flex;flex-direction:column;gap:9px;overflow-y:auto;padding-right:2px}.card{text-align:left;width:100%;cursor:pointer;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:11px 12px;display:flex;flex-direction:column;gap:6px;transition:transform .06s ease,box-shadow .12s ease}.card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1018281f;border-color:#d6bcfa}.card-title{font-weight:600;font-size:13.5px;line-height:1.25;color:var(--text)}.card-company{font-size:12px;color:var(--muted)}.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.chip{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:20px}.chip.money{background:#ecfdf3;color:#067647}.empty{color:#c3c8d0;text-align:center;font-size:20px;padding:8px 0}.avatar{width:34px;height:34px;border-radius:50%;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700;flex:0 0 auto}.avatar.sm{width:24px;height:24px;font-size:10.5px}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182859;display:flex;justify-content:flex-end;z-index:40}.drawer{width:420px;max-width:92vw;height:100%;background:var(--panel);box-shadow:-8px 0 30px #1018282e;padding:24px 26px;overflow-y:auto;position:relative;animation:slideIn .16s ease}@keyframes slideIn{0%{transform:translate(24px);opacity:.6}to{transform:none;opacity:1}}.drawer-close{position:absolute;top:14px;right:16px;border:0;background:transparent;font-size:26px;line-height:1;color:var(--muted);cursor:pointer}.drawer h2{margin:4px 0 2px;font-size:19px;padding-right:30px}.drawer-amount{color:var(--won);font-weight:800;font-size:20px;margin-bottom:18px}.fields{display:grid;grid-template-columns:120px 1fr;gap:8px 14px;margin:0}.field-label{color:var(--muted);font-size:12.5px}.field-value{font-size:13.5px;margin:0;word-break:break-word}.drawer-desc{margin-top:20px;border-top:1px solid var(--border);padding-top:14px}.drawer-desc p{font-size:13px;color:#374151;line-height:1.5}.contacts{height:100%;display:flex;flex-direction:column}.contacts-toolbar{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.search{flex:1;max-width:460px;padding:9px 13px;font-size:14px;border:1px solid var(--border);border-radius:9px;outline:none}.search:focus{border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.filters{display:flex;gap:4px}.filters button{border:1px solid var(--border);background:var(--panel);color:var(--muted);padding:8px 13px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.filters button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.count{margin-left:auto;color:var(--muted);font-size:13px}.grid{flex:1;overflow-y:auto;padding:18px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;align-content:start}.contact-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;display:flex;gap:12px;align-items:flex-start;position:relative}.contact-body{min-width:0}.contact-name{font-weight:700;font-size:14px;line-height:1.25}.contact-sub{font-size:12px;color:var(--muted);margin-top:1px}.contact-lines{display:flex;flex-direction:column;gap:2px;margin-top:7px;font-size:12.5px;color:#374151}.contact-lines span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{position:absolute;top:12px;right:12px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:20px}.tag.customer{background:#ecfdf3;color:#067647}.tag.supplier{background:#eff8ff;color:#175cd3}.user-box{display:flex;align-items:center;gap:12px;margin-left:22px;padding-left:22px;border-left:1px solid var(--border)}.user-name{font-size:13px;font-weight:600;color:var(--text)}.logout{border:1px solid var(--border);background:var(--panel);color:var(--muted);padding:6px 12px;border-radius:8px;font-size:12.5px;font-weight:600;cursor:pointer}.logout:hover{background:#fef2f2;color:#b42318;border-color:#fecaca}.login-screen{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#f5f3ff,#eff6ff)}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 40px #1018281f;padding:34px 32px;width:360px;display:flex;flex-direction:column}.login-brand{font-size:20px;display:flex;align-items:center;gap:10px}.login-brand strong{color:var(--brand)}.login-sub{color:var(--muted);font-size:13.5px;margin:6px 0 22px}.login-card label{font-size:12.5px;font-weight:600;color:var(--muted);margin-bottom:5px}.login-card input{padding:10px 12px;border:1px solid var(--border);border-radius:9px;font-size:14px;margin-bottom:15px;outline:none}.login-card input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.login-card button{margin-top:6px;padding:11px;border:0;border-radius:9px;background:var(--brand);color:#fff;font-size:14px;font-weight:700;cursor:pointer}.login-card button:hover{background:#5b21b6}.login-card button:disabled{opacity:.6;cursor:default}.login-error{background:#fef2f2;color:#b42318;font-size:12.5px;padding:8px 11px;border-radius:8px;margin-bottom:12px}.stage-select-label{display:block;font-size:12.5px;color:var(--muted);font-weight:600;margin:6px 0 5px}.stage-select{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:9px;font-size:13.5px;margin-bottom:18px;background:#fff;cursor:pointer}.stage-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.card{cursor:grab}.card:active{cursor:grabbing}.brand-btn{border:0;background:transparent;cursor:pointer;padding:0}.brand-btn:hover{opacity:.85}.crumb-sep{color:var(--border);font-size:18px;margin:0 -10px 0 -14px}.home{height:100%;overflow-y:auto;background:radial-gradient(1200px 500px at 50% -10%,#efeafe 0%,transparent 60%),var(--bg)}.home-inner{max-width:940px;margin:0 auto;padding:48px 24px 64px}.home-hero{margin-bottom:30px}.home-hero h1{font-size:30px;margin:0 0 6px;letter-spacing:-.5px}.home-hero p{color:var(--muted);font-size:15px;margin:0}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}.tile{display:flex;gap:14px;align-items:flex-start;text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:18px;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease,border-color .15s ease}.tile:hover:not(.soon){transform:translateY(-2px);box-shadow:0 8px 24px #1018281f;border-color:#d6bcfa}.tile.soon{cursor:default;opacity:.62}.tile-icon{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;font-size:26px;flex:0 0 auto;box-shadow:inset 0 0 0 1px #ffffff26}.tile-body{min-width:0}.tile-title{font-weight:700;font-size:16px;display:flex;align-items:center;gap:8px}.tile-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:#f1f5f9;color:var(--muted);padding:2px 7px;border-radius:20px}.tile-desc{color:var(--muted);font-size:13px;margin-top:3px}.tile-stat{font-size:12.5px;font-weight:600;color:var(--brand);margin-top:9px}.settings{height:100%;display:flex;overflow:hidden}.settings-nav{flex:0 0 220px;background:var(--panel);border-right:1px solid var(--border);padding:18px 14px;display:flex;flex-direction:column;gap:4px}.settings-nav-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700;padding:4px 10px 10px}.settings-nav button{text-align:left;border:0;background:transparent;color:var(--text);font-size:14px;font-weight:600;padding:10px 12px;border-radius:9px;cursor:pointer}.settings-nav button:hover{background:#f4f2fd}.settings-nav button.active{background:#f1ecfd;color:var(--brand)}.settings-soon{margin-top:auto;font-size:11.5px;color:#a3aab6;padding:12px 10px;line-height:1.5}.settings-main{flex:1;overflow-y:auto;padding:26px 30px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.panel-head h2{margin:0;font-size:20px}.panel-sub{color:var(--muted);font-size:13px;margin:4px 0 0}.panel-loading,.panel-error{color:var(--muted);padding:20px 0}.panel-error{color:#b42318}.btn-primary{border:0;background:var(--brand);color:#fff;font-weight:700;font-size:13.5px;padding:9px 15px;border-radius:9px;cursor:pointer}.btn-primary:hover{background:#5b21b6}.btn-primary:disabled{opacity:.6;cursor:default}.btn-ghost{border:1px solid var(--border);background:var(--panel);color:var(--muted);font-weight:600;font-size:12.5px;padding:7px 12px;border-radius:8px;cursor:pointer}.btn-ghost:hover{background:#f8fafc;color:var(--text)}.users-table{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--panel)}.ut-head,.ut-row{display:grid;grid-template-columns:2.4fr 1.2fr 1fr 1fr auto;align-items:center;gap:12px;padding:12px 16px}.ut-head{background:#f8fafc;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.ut-row{border-top:1px solid var(--border)}.ut-user{display:flex;align-items:center;gap:11px}.ut-name{font-weight:600;font-size:13.5px}.ut-name .you{color:var(--muted);font-weight:500;font-size:12px}.ut-mail{font-size:12px;color:var(--muted)}.ut-pw{font-size:12.5px;color:var(--muted)}.mini-select{padding:6px 8px;border:1px solid var(--border);border-radius:7px;font-size:12.5px;background:#fff;cursor:pointer}.mini-select:disabled{opacity:.5;cursor:default}.pill{border:0;border-radius:20px;padding:4px 11px;font-size:12px;font-weight:700;cursor:pointer}.pill.on{background:#ecfdf3;color:#067647}.pill.off{background:#fef3f2;color:#b42318}.pill:disabled{opacity:.6;cursor:default}.cred-notice{display:flex;gap:16px;justify-content:space-between;align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:11px;padding:14px 16px;margin-bottom:18px}.cred-notice strong{color:#065f46}.cred-box{display:flex;gap:18px;margin-top:8px;font-size:13px}.cred-box b{font-family:ui-monospace,Menlo,monospace}.cred-actions{display:flex;gap:8px;flex:0 0 auto}.cred-actions button{border:1px solid #86efac;background:#fff;color:#065f46;font-weight:600;font-size:12.5px;padding:7px 12px;border-radius:8px;cursor:pointer}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182866;display:grid;place-items:center;z-index:50}.modal{background:var(--panel);border-radius:14px;box-shadow:0 20px 60px #10182840;padding:24px 26px;width:380px;display:flex;flex-direction:column}.modal h3{margin:0 0 16px;font-size:17px}.modal label,.account-form label{font-size:12.5px;font-weight:600;color:var(--muted);margin-bottom:5px}.modal input,.modal select,.modal textarea,.account-form input{padding:9px 11px;border:1px solid var(--border);border-radius:9px;font-size:14px;margin-bottom:13px;outline:none;font-family:inherit}.modal input:focus,.modal select:focus,.modal textarea:focus,.account-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.modal-error{background:#fef2f2;color:#b42318;font-size:12.5px;padding:8px 11px;border-radius:8px;margin-bottom:12px}.account-form{max-width:360px;display:flex;flex-direction:column}.ok-msg{background:#f0fdf4;color:#065f46;font-size:13px;padding:8px 11px;border-radius:8px;margin-bottom:12px}.sales{height:100%;display:flex;flex-direction:column}.sales-tabs{display:flex;gap:4px;padding:12px 20px 0;background:var(--panel);border-bottom:1px solid var(--border)}.sales-tabs button{border:0;background:transparent;color:var(--muted);font-size:14px;font-weight:600;padding:10px 16px;border-radius:8px 8px 0 0;cursor:pointer;border-bottom:2px solid transparent}.sales-tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.sales-body{flex:1;display:flex;flex-direction:column;min-height:0}.sales-toolbar{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.orders-table{flex:1;overflow-y:auto;padding:8px 20px 20px}.ot-head,.ot-row{display:grid;grid-template-columns:1fr 1.8fr 1.2fr 1fr 1.2fr 1.1fr;gap:12px;align-items:center;padding:12px 14px}.pt-head,.pt-row{display:grid;grid-template-columns:1.2fr 3fr 1fr;gap:12px;align-items:center;padding:11px 14px}.ot-head,.pt-head{position:sticky;top:0;background:var(--bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.ot-row,.pt-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px}.ot-row{cursor:pointer;transition:border-color .1s,transform .06s}.ot-row:hover{border-color:#a7f3d0;transform:translateY(-1px)}.ot-num{font-weight:700}.muted{color:var(--muted)}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}.right{text-align:right}.strong{font-weight:700}.empty-row{text-align:center;color:var(--muted);padding:30px}.state-badge{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:20px;white-space:nowrap}.st-draft{background:#f1f5f9;color:#475569}.st-sent{background:#eff8ff;color:#175cd3}.st-sale{background:#ecfdf3;color:#067647}.st-cancel{background:#fef3f2;color:#b42318}.drawer-wide{width:620px}.order-head{display:flex;align-items:center;gap:12px;margin:2px 0 16px}.order-head h2{margin:0;font-size:20px}.order-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--border)}.order-meta>div{display:flex;flex-direction:column}.order-meta span{font-size:12px;color:var(--muted)}.order-meta b{font-size:14px}.lines{width:100%;border-collapse:collapse;font-size:13px}.lines th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--border)}.lines td{padding:8px;border-bottom:1px solid #f1f2f4;vertical-align:top}.lines th.right,.lines td.right{text-align:right}.line-section td{font-weight:700;background:#f8fafc;text-transform:uppercase;font-size:11.5px;letter-spacing:.3px;color:#475569}.line-note td{font-style:italic;color:var(--muted)}.order-totals{margin-top:16px;margin-left:auto;width:260px;display:flex;flex-direction:column;gap:6px}.order-totals>div{display:flex;justify-content:space-between;font-size:13.5px}.order-totals .grand{border-top:2px solid var(--border);padding-top:8px;margin-top:4px;font-size:16px}.order-totals .grand b{color:var(--won)}.order-note{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}.order-note p{font-size:13px;color:#374151}.order-link{margin-top:16px;font-size:13px;color:var(--brand);font-weight:600}.at-head,.at-row{display:grid;grid-template-columns:1.6fr 1.8fr 1.1fr .9fr .9fr 1fr;gap:12px;align-items:center;padding:12px 14px}.at-head{position:sticky;top:0;background:var(--bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.at-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px}.order-editor{width:720px;max-width:96vw}.oe-lines{width:100%;border-collapse:collapse;font-size:13px}.oe-lines th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);font-weight:700;padding:4px 6px}.oe-lines th.right{text-align:right}.oe-lines td{padding:4px 6px;vertical-align:top;border-bottom:1px solid #f1f2f4}.oe-lines td.right{text-align:right;padding-top:12px}.oe-lines td:first-child{min-width:220px}.oe-name{width:100%;margin-top:4px;padding:6px 8px;border:1px solid var(--border);border-radius:7px;font-size:12.5px}.oe-num{width:68px;padding:7px 6px;border:1px solid var(--border);border-radius:7px;font-size:13px;text-align:right}.oe-vat{padding:7px 4px;border:1px solid var(--border);border-radius:7px;font-size:12.5px;background:#fff}.plan-picker{min-width:120px}.inv-head,.inv-row{display:grid;grid-template-columns:1.3fr 1.9fr 1fr 1fr 1.3fr 1.1fr;gap:12px;align-items:center;padding:12px 14px}.inv-head{position:sticky;top:0;background:var(--bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.inv-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px;cursor:pointer}.inv-row:hover{border-color:#fed7aa}.task-group{margin-bottom:6px}.task-group-head{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:9px;cursor:pointer;box-shadow:var(--shadow)}.task-group-head:hover{border-color:#d6bcfa}.tg-arrow{font-size:11px;color:var(--muted);width:12px;transition:transform .1s}.tg-arrow.open{transform:rotate(90deg)}.tg-icon{font-size:14px}.tg-name{font-weight:700;font-size:13.5px}.tg-count{margin-left:auto;font-size:12px;color:var(--muted);background:#f1f5f9;padding:2px 9px;border-radius:20px}.task-group-body{padding:4px 0 4px 14px}.tk-row{display:grid;grid-template-columns:auto 2.4fr 1.5fr 1fr auto;gap:12px;align-items:center;padding:9px 12px;background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-top:5px;font-size:13.5px}.tk-row.done .tk-name{text-decoration:line-through;color:var(--muted)}.tk-name{font-weight:600;cursor:pointer}.tk-name:hover{color:var(--brand)}.tk-row input[type=checkbox]{width:16px;height:16px;accent-color:#0d9488;cursor:pointer}.oe-note{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-family:inherit}.sub-row{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;background:#f8fafc;border-radius:8px;margin-bottom:6px}.sub-row input[type=checkbox]{margin-top:2px;width:16px;height:16px;accent-color:#0d9488}.sub-body{flex:1;min-width:0}.sub-name{font-size:13.5px;font-weight:600}.sub-name.done{text-decoration:line-through;color:var(--muted)}.sub-desc{font-size:12px;color:var(--muted);margin-top:2px}.sub-edit{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:#f1ecfd;border-radius:8px;margin-bottom:6px}.sub-edit input{padding:7px 9px;border:1px solid var(--border);border-radius:7px;font-size:13px}.sub-edit-actions{display:flex;justify-content:flex-end;gap:6px}.sub-add{display:flex;gap:6px;margin-top:4px}.sub-add input{flex:1;padding:8px 10px;border:1px dashed var(--border);border-radius:8px;font-size:13px;outline:none}.sub-add input:focus{border-style:solid;border-color:var(--brand)}.ss{position:relative}.ss-control{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13.5px;cursor:text;background:#fff;min-height:36px}.ss-disabled .ss-control{background:#f8fafc;cursor:default}.ss-input{flex:1;border:0;outline:none;font-size:13.5px;font-family:inherit;min-width:0}.ss-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-value.ss-ph{color:#9aa2ae}.ss-x{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.ss-menu{position:absolute;z-index:60;top:calc(100% + 3px);left:0;right:0;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 8px 24px #10182824;max-height:240px;overflow-y:auto;padding:4px}.ss-menu-wide{right:auto;min-width:260px}.ss-opt{padding:8px 10px;border-radius:6px;font-size:13.5px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-opt:hover{background:#f1f0fb}.ss-opt.sel{background:#f1ecfd;color:var(--brand);font-weight:600}.ss-empty{padding:10px;font-size:12.5px;color:var(--muted);text-align:center}.tmpl-badge{font-size:9.5px;font-weight:800;letter-spacing:.4px;background:#fef3c7;color:#92400e;padding:2px 6px;border-radius:5px;margin-left:8px;vertical-align:middle}.task-card.clickable{cursor:pointer}.task-card.clickable:hover{border-color:#d6bcfa;box-shadow:0 3px 10px #1018281a}.td-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.td-top h2{margin:0;font-size:19px}.costs-view{padding:18px 20px;overflow-y:auto}.costs-summary{display:flex;gap:14px;margin-bottom:22px;flex-wrap:wrap}.cs-card{flex:1;min-width:180px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:14px 16px;display:flex;flex-direction:column;gap:4px}.cs-card span{font-size:12.5px;color:var(--muted)}.cs-card b{font-size:20px}.cs-card.total{background:linear-gradient(135deg,#f5f3ff,#eff6ff);border-color:#ddd6fe}.cs-card.total b{color:var(--brand);font-size:23px}.costs-block{margin-bottom:24px}.costs-block h3{font-size:14px;margin:0 0 10px}.costs-table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden}.costs-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);font-weight:700;padding:9px 12px;background:#f8fafc;border-bottom:1px solid var(--border)}.costs-table td{padding:9px 12px;border-bottom:1px solid #f1f2f4;font-size:13.5px}.costs-table th.right,.costs-table td.right{text-align:right}.cost-cat{font-size:11.5px;background:#f1f5f9;color:#475569;padding:2px 8px;border-radius:20px}.add-cost{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;align-items:center}.add-cost input,.add-cost select{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px}.add-cost input:first-child{flex:1;min-width:160px}.rates-head,.rates-row{display:grid;grid-template-columns:2fr 2fr 1.2fr;gap:12px;align-items:center;padding:11px 16px}.rates-head{background:#f8fafc;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.rates-row{border-top:1px solid var(--border);font-size:13.5px}.rate-input{width:90px;padding:6px 9px;border:1px solid var(--border);border-radius:8px;font-size:13.5px;text-align:right}.rate-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.rate-saved{font-size:11.5px;color:#067647;margin-left:8px}.planning{height:100%;display:flex;flex-direction:column}.plan-toolbar{display:flex;align-items:center;gap:16px;padding:14px 20px;background:var(--panel);border-bottom:1px solid var(--border)}.plan-nav{display:flex;align-items:center;gap:6px}.plan-range{font-weight:700;font-size:14.5px;margin-left:8px}.plan-hint{margin-left:auto;font-size:12.5px;color:var(--muted)}.plan-scroll{flex:1;overflow:auto;padding:14px 20px}.plan-grid{border-collapse:separate;border-spacing:0}.plan-grid th,.plan-grid td{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.plan-grid thead th{position:sticky;top:0;z-index:2;background:var(--bg);padding:8px 6px;text-align:center}.pg-emp{position:sticky;left:0;z-index:3;background:var(--panel);min-width:170px;max-width:170px;padding:10px 12px;font-weight:600;font-size:13px;text-align:left;border-left:1px solid var(--border)}thead .pg-emp{z-index:4}.pg-day{min-width:116px}.pg-day.weekend{background:#f8fafc}.pg-day.today{background:#fef2f2}.pg-dow{font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:700}.pg-date{font-size:13px;font-weight:700}.pg-cell{vertical-align:top;padding:5px;height:62px;background:var(--panel)}.pg-cell.weekend{background:#fbfcfd}.plan-chip{display:flex;align-items:center;gap:4px;background:#fef2f4;color:#be123c;border-radius:6px;padding:3px 6px;margin-bottom:4px;font-size:11.5px;font-weight:600}.pc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:88px}.pc-x{border:0;background:transparent;color:#be123c;cursor:pointer;font-size:14px;line-height:1;padding:0;margin-left:auto}.plan-add{border:1px dashed var(--border);background:transparent;color:var(--muted);border-radius:6px;width:100%;padding:3px;cursor:pointer;font-size:13px}.plan-add:hover{border-color:var(--brand);color:var(--brand)}.plan-select{width:100%;padding:4px;border:1px solid var(--brand);border-radius:6px;font-size:12px}.board-toolbar{padding:12px 18px 0;display:flex;align-items:center;gap:10px}.board-toolbar .search{flex:0 1 360px}.board-toolbar .count{color:var(--muted);font-size:13px}.lead-form{display:flex;flex-direction:column;gap:4px}.lead-form label{font-size:12px;font-weight:600;color:var(--muted);margin:8px 0 3px}.lead-form input,.lead-form select,.lead-form textarea{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13.5px;outline:none;width:100%;font-family:inherit}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.lead-form input:disabled,.lead-form select:disabled,.lead-form textarea:disabled{background:#f8fafc;color:#475569}.lf-row{display:flex;gap:12px}.lf-row>div{flex:1;display:flex;flex-direction:column;min-width:0}.lead-section{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}.ls-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ls-head h3{margin:0;font-size:14px}.ls-empty{font-size:12.5px;color:var(--muted);padding:4px 0}.link-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;background:#f8fafc;border-radius:8px;margin-bottom:6px;font-size:13px}.link-x{border:0;background:transparent;color:#b42318;font-size:12px;cursor:pointer;font-weight:600}.task-check{display:flex;align-items:center;gap:8px;cursor:pointer}.task-check .done{text-decoration:line-through;color:var(--muted)}.task-who{font-size:11.5px;color:var(--muted)}.task-add input{width:100%;padding:8px 10px;border:1px dashed var(--border);border-radius:8px;font-size:13px;outline:none;margin-top:4px}.task-add input:focus{border-color:var(--brand);border-style:solid}.view-toggle{display:flex;gap:2px;background:#eef0f3;border-radius:8px;padding:2px}.view-toggle button{border:0;background:transparent;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:15px;color:var(--muted)}.view-toggle button.active{background:#fff;color:var(--brand);box-shadow:var(--shadow)}.pl-head,.pl-row{display:grid;grid-template-columns:2fr 1.6fr 1.2fr 1.4fr 1fr .8fr;gap:12px;align-items:center;padding:11px 14px}.pl-head{position:sticky;top:0;background:var(--bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.pl-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px;cursor:pointer}.pl-row:hover{border-color:#f0abfc}.task-row{display:grid;grid-template-columns:auto 2.4fr 1.8fr 1.2fr .9fr;gap:12px;align-items:center;padding:11px 14px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px}.task-row input[type=checkbox]{width:17px;height:17px;accent-color:#0d9488;cursor:pointer}.task-row.done .task-row-name{text-decoration:line-through;color:var(--muted)}.task-row-name{font-weight:600}.task-row-link{display:flex;gap:6px;flex-wrap:wrap}.tag-proj{font-size:11.5px;background:#fdf4ff;color:#a21caf;padding:2px 8px;border-radius:20px}.tag-lead{font-size:11.5px;background:#f1ecfd;color:var(--brand);padding:2px 8px;border-radius:20px}.proj-grid{flex:1;overflow-y:auto;padding:18px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;align-content:start}.proj-card{text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:15px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:transform .07s,box-shadow .12s,border-color .12s}.proj-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #1018281f;border-color:#f0abfc}.proj-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.proj-name{font-weight:700;font-size:14.5px;line-height:1.3}.proj-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12.5px;color:var(--muted)}.proj-progress{display:flex;align-items:center;gap:10px}.pp-bar{flex:1;height:7px;background:#eef0f3;border-radius:20px;overflow:hidden}.pp-fill{height:100%;background:linear-gradient(90deg,#c026d3,#7c3aed);border-radius:20px}.pp-label{font-size:11.5px;color:var(--muted);font-weight:600;white-space:nowrap}.proj-detail{height:100%;display:flex;flex-direction:column}.proj-detail-head{padding:16px 20px;background:var(--panel);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.proj-detail-head h2{margin:0;font-size:18px}.proj-detail-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);width:100%;margin-top:2px}.proj-board{padding:16px 18px}.task-card{cursor:default}.task-foot{display:flex;justify-content:space-between;align-items:center;margin-top:4px;gap:8px}.task-unassigned{font-size:11px;color:#c3c8d0;font-style:italic}.task-side{display:flex;gap:8px;align-items:center}.task-hours{font-size:11.5px;font-weight:700;color:#7c3aed;background:#f5f3ff;padding:1px 7px;border-radius:20px}.task-date{font-size:11.5px;color:var(--muted)}.month-filter{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);font-weight:600}.month-filter input{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13.5px;outline:none}.month-filter input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #ede9fe}.modal-hint{font-size:13px;color:var(--muted);background:#f4f2fd;padding:9px 12px;border-radius:8px;margin-bottom:14px}.ut-actions{display:flex;gap:6px;justify-content:flex-end;align-items:center}.perm-badge{font-size:11px;font-weight:700;background:#ecfdf3;color:#067647;padding:3px 9px;border-radius:20px;white-space:nowrap}.perm-modal{width:560px;max-width:94vw}.perm-table{width:100%;border-collapse:collapse;margin-bottom:8px}.perm-table th{font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);font-weight:700;padding:8px 6px;border-bottom:1px solid var(--border);text-align:center}.perm-table th:first-child{text-align:left}.perm-table td{padding:9px 6px;border-bottom:1px solid #f1f2f4;text-align:center}.pm-name{text-align:left!important;font-weight:600;font-size:13.5px}.pm-check input{width:17px;height:17px;cursor:pointer;accent-color:var(--brand)}.muted-dash{color:#c3c8d0}.perm-table .mini-select{padding:5px 7px;font-size:12px}.inv-drawer{width:900px;max-width:96vw;padding:0;display:flex;flex-direction:column}.inv-drawer-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--panel);position:sticky;top:0;z-index:2}.inv-drawer-bar .drawer-close{position:static}.inv-drawer-actions{display:flex;gap:8px}.inv-doc-scroll{overflow-y:auto;padding:22px;background:#eef1f4;flex:1}.inv-doc{position:relative;max-width:760px;margin:0 auto;background:#fff;color:#1f2733;padding:40px 44px 28px;font-size:12.5px;line-height:1.45;overflow:hidden;box-shadow:0 6px 24px #1018281f}.inv-corner{position:absolute;top:-90px;right:-70px;width:280px;height:210px;background:#e8eef7;border-radius:50%;z-index:0;pointer-events:none}.inv-doc>*:not(.inv-corner){position:relative;z-index:1}.inv-doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:34px}.inv-tagline{color:#1b3f8b;font-weight:700;font-size:13px;max-width:200px}.inv-seller{text-align:right}.inv-seller-addr{margin-top:8px;font-size:12px;color:#384150}.inv-seller-addr b{display:block;margin-bottom:2px}.cl-logo{display:inline-block;text-align:right}.cl-logo-word{font-size:26px;font-weight:800;letter-spacing:-.5px}.cl-green{color:#4a9d2f}.cl-blue{color:#123a6b}.cl-logo-sub{font-size:9px;letter-spacing:3px;color:#7b8494;font-weight:700;margin-top:-2px}.inv-parties{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.inv-buyer{font-size:12.5px;color:#2a3340}.inv-buyer-name{font-weight:700}.inv-doc-title{font-size:30px;font-weight:700;color:#123a6b;text-align:right;margin:6px 0 0}.inv-metabox{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 18px;border:1.5px solid #4a9d2f;border-radius:12px;padding:12px 18px;margin-bottom:22px}.inv-metabox>div{display:flex;flex-direction:column}.inv-metabox span{color:#2e7d32;font-weight:700;font-size:11.5px}.inv-metabox b{font-weight:500;color:#2a3340;margin-top:2px}.inv-doc-lines{width:100%;border-collapse:separate;border-spacing:0;margin-bottom:26px;border:1px solid #d5dbe4;border-radius:12px;overflow:hidden}.inv-doc-lines thead th{background:#123a6b;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:10px 12px}.inv-doc-lines th.l,.inv-doc-lines td.l{text-align:left}.inv-doc-lines th.r,.inv-doc-lines td.r{text-align:right;white-space:nowrap}.inv-doc-lines tbody td{padding:11px 12px;border-bottom:1px solid #eef1f4}.inv-doc-lines tbody tr:last-child td{border-bottom:0}.inv-doc-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.inv-pay{font-size:12px;color:#2a3340;max-width:320px}.inv-pay p{margin:0 0 8px}.inv-summary{min-width:300px}.inv-summary table{width:100%;border-collapse:separate;border-spacing:0}.inv-summary td{padding:8px 12px;border:1px solid #d5dbe4;border-top:0}.inv-summary tr:first-child td{border-top:1px solid #d5dbe4}.inv-summary td:last-child{border-left:0}.inv-summary .r{text-align:right;white-space:nowrap}.inv-sum-total td{background:#123a6b;color:#fff;font-weight:700}.inv-words{text-align:right;margin-top:10px;font-size:12px}.inv-words .muted{color:#7b8494}.inv-narration{margin-top:20px;padding-top:14px;border-top:1px solid #eef1f4;font-size:12px;color:#384150;white-space:pre-wrap}.inv-doc-foot{margin-top:40px;padding-top:12px;border-top:1px solid #e3e7ee;text-align:center;font-size:11px;color:#56606f}.inv-doc-foot .muted{margin-top:6px;color:#9aa2b0}@media print{body *{visibility:hidden}.inv-doc,.inv-doc *{visibility:visible}.drawer-overlay,.inv-drawer,.inv-doc-scroll{position:static!important;overflow:visible!important;background:#fff!important;box-shadow:none!important;padding:0!important;width:auto!important}.inv-drawer-bar{display:none!important}.inv-doc{position:static;box-shadow:none;max-width:100%;margin:0;padding:0}.inv-corner{display:none}@page{size:A4;margin:14mm}}.company-form{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 20px;max-width:720px}.cf-row{display:flex;flex-direction:column;gap:5px}.cf-row label{font-size:12.5px;font-weight:600;color:var(--text);display:flex;flex-direction:column}.cf-hint{font-weight:400;font-size:11px;color:var(--muted);margin-top:1px}.cf-row input{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13.5px}.cf-row input:focus{outline:none;border-color:var(--brand)}@media (max-width: 640px){.company-form{grid-template-columns:1fr}}.cl-logo-img{max-width:220px;max-height:80px;object-fit:contain;display:inline-block}.logo-row{display:flex;gap:20px;align-items:center;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--border)}.logo-preview{width:240px;height:96px;border:1px dashed var(--border);border-radius:10px;display:grid;place-items:center;background:#fafbfc;overflow:hidden;flex:0 0 auto}.logo-preview img{max-width:220px;max-height:80px;object-fit:contain}.logo-placeholder{color:var(--muted);font-size:12.5px}.logo-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.logo-upload{position:relative;overflow:hidden;cursor:pointer}.logo-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.pr-head,.pr-row{display:grid;grid-template-columns:1.1fr 1fr 1.4fr 1.4fr 1.1fr .8fr .9fr;gap:12px;align-items:center;padding:12px 14px}.pr-head{position:sticky;top:0;background:var(--bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700}.pr-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);margin-top:8px;font-size:13.5px;cursor:pointer}.pr-row:hover{border-color:#ddd6fe}.pr-doc-title{font-size:26px;font-weight:700;color:#123a6b;margin:4px 0 2px}.pr-doc-sub{color:var(--muted);font-size:13px;margin-bottom:16px}.pr-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.pr-badge{background:#ede9fe;color:#5b21b6;font-weight:700;font-size:12px;padding:4px 12px;border-radius:20px}.pr-badge.ghost{background:#f1f5f9;color:#475569;font-weight:600}.pr-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.pr-parties h4{margin:0 0 4px;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:#2e7d32}.pr-parties b{display:block}.pr-parties div div{font-size:12.5px;color:#384150}.pr-section{margin-bottom:18px}.pr-section h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.3px;color:#123a6b}.pr-scope{font-size:13px;color:#2a3340;white-space:pre-wrap;line-height:1.5}.pr-items{list-style:none;margin:0;padding:0}.pr-items li{display:flex;align-items:center;gap:8px;font-size:13px;padding:4px 0}.pr-chk{width:18px;height:18px;border:1.5px solid #cbd5e1;border-radius:4px;display:inline-grid;place-items:center;font-size:12px;color:#059669;flex:0 0 auto}.pr-chk.on{border-color:#059669;background:#ecfdf5}.pr-statement{font-size:12.5px;color:#384150;background:#f8fafc;border:1px solid #eef1f4;border-radius:8px;padding:10px 14px;margin:20px 0}.pr-signs{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:26px}.pr-sign-box{height:90px;border-bottom:1.5px solid #94a3b8;display:grid;place-items:center;overflow:hidden}.pr-sign-box img{max-height:84px;max-width:100%;object-fit:contain}.pr-sign-empty{color:#cbd5e1}.pr-sign-cap{font-size:12px;color:var(--muted);margin-top:6px;text-align:center}.pr-item-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.pr-item-row input[type=text],.pr-item-row input:not([type=checkbox]){flex:1;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px}.sign-modal{margin:auto;align-self:center;background:var(--panel);border-radius:14px;padding:22px 24px;box-shadow:0 20px 60px #1018284d;width:620px;max-width:94vw}.sign-modal h3{margin:0 0 2px}.sign-canvas{width:100%;height:220px;border:2px dashed #cbd5e1;border-radius:10px;margin-top:12px;touch-action:none;background:#fff;cursor:crosshair}@media print{.pr-doc .inv-corner{display:none}}.inv-ksef-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:10px 16px;background:#f8fafc;border-bottom:1px solid var(--border);font-size:13px}.inv-ksef-bar b{font-weight:700}.ksef-note{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:8px;padding:10px 14px;font-size:12.5px;line-height:1.5;margin-bottom:14px}.pur-view{max-width:720px;margin:0 auto}.pur-view h2{margin:0 0 14px;font-size:18px}.pur-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 18px;background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:12px 16px;margin-bottom:16px}.pur-meta>div{display:flex;flex-direction:column}.pur-meta span{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.3px}.pur-meta b{font-size:13.5px;margin-top:2px}.pur-meta .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.pur-project{margin-bottom:16px}.pur-project label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px}.lf-label-row{display:flex;align-items:center;justify-content:space-between}.link-add{border:0;background:transparent;color:var(--brand);font-weight:600;font-size:12.5px;cursor:pointer;padding:2px 4px}.link-add:hover{text-decoration:underline}.contact-modal{max-width:560px}.contact-modal label{display:block;font-size:12.5px;font-weight:600;margin:10px 0 4px}.contact-modal input[type=text],.contact-modal input:not([type=checkbox]){width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13.5px}.nip-row{display:flex;gap:8px}.nip-row input{flex:1}.vat-status{margin-top:6px;font-size:12.5px;font-weight:600}.vat-status.ok{color:#067647}.vat-status.warn{color:#b42318}.cf2-row{display:flex;gap:12px;align-items:flex-end}.cf2-row .chk{display:flex;align-items:center;gap:6px;font-weight:500;font-size:13px;margin:10px 0 4px}.cf2-row .chk input{width:auto}.notif{position:relative}.notif-bell{position:relative;border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:6px 9px;font-size:15px;cursor:pointer;line-height:1}.notif-bell:hover{background:#f8fafc}.notif-badge{position:absolute;top:-6px;right:-6px;background:#e11d48;color:#fff;font-size:10px;font-weight:800;min-width:16px;height:16px;border-radius:9px;display:grid;place-items:center;padding:0 3px}.notif-panel{position:absolute;right:0;top:40px;width:340px;max-width:90vw;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #1018282e;z-index:50;overflow:hidden}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border)}.notif-list{max-height:60vh;overflow-y:auto}.notif-empty{padding:22px;text-align:center;color:var(--muted);font-size:13px}.notif-item{display:block;width:100%;text-align:left;border:0;background:transparent;border-bottom:1px solid #f1f2f4;padding:11px 14px;cursor:pointer}.notif-item:hover{background:#f8fafc}.notif-item.unread{background:#f5f3ff}.notif-item.unread:hover{background:#efeaff}.notif-title{font-weight:700;font-size:13px}.notif-body{font-size:12.5px;color:#374151;margin-top:2px}.notif-time{font-size:11px;color:var(--muted);margin-top:3px}@keyframes bell-pulse{0%,to{transform:none}15%{transform:rotate(-14deg)}30%{transform:rotate(12deg)}45%{transform:rotate(-9deg)}60%{transform:rotate(6deg)}78%{transform:rotate(-3deg)}}.notif-bell.pulse{animation:bell-pulse .6s ease 3;border-color:#e11d48;box-shadow:0 0 0 3px #fee2e2}.att-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.att-head h3{margin:0;font-size:15px}.att-count{color:var(--muted);font-weight:500}.att-upload{position:relative;overflow:hidden;cursor:pointer}.att-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.att-empty{color:var(--muted);font-size:13px;padding:16px 0}.att-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.att-card{position:relative;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow)}.att-thumb{display:grid;place-items:center;height:96px;background:#f1f5f9;overflow:hidden}.att-thumb img{width:100%;height:100%;object-fit:cover}.att-icon{font-size:42px}.att-name{font-size:12px;font-weight:600;padding:7px 8px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.att-meta{font-size:11px;color:var(--muted);padding:1px 8px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.att-del{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;border:0;background:#1018288c;color:#fff;font-size:15px;line-height:1;cursor:pointer;display:grid;place-items:center}.att-del:hover{background:#b42318}.att{position:relative}.att-hint{font-size:12px;color:var(--muted);margin-bottom:12px}.att-dragover{outline:2px dashed var(--brand);outline-offset:6px;border-radius:12px}.att-dropmask{position:absolute;top:0;right:0;bottom:0;left:0;background:#6d28d914;border-radius:12px;display:grid;place-items:center;font-weight:800;color:var(--brand);pointer-events:none;z-index:5}.att-thumb{border:0;padding:0;cursor:pointer;width:100%}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c14eb;z-index:80;display:grid;place-items:center;animation:slideIn .12s ease}.lb-img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:4px;box-shadow:0 10px 40px #00000080}.lb-close{position:absolute;top:14px;right:20px;font-size:34px;color:#fff;background:transparent;border:0;cursor:pointer;line-height:1}.lb-nav{position:absolute;top:50%;transform:translateY(-50%);font-size:42px;color:#fff;background:#ffffff1a;border:0;width:52px;height:72px;border-radius:10px;cursor:pointer}.lb-nav:hover{background:#ffffff38}.lb-prev{left:18px}.lb-next{right:18px}.lb-caption{position:absolute;bottom:18px;left:50%;transform:translate(-50%);color:#fff;font-size:13px;display:flex;gap:14px;align-items:center;background:#00000073;padding:8px 16px;border-radius:20px}.lb-download{color:#c4b5fd;text-decoration:underline}@media (max-width: 720px){.topbar{gap:8px;padding:0 10px;height:52px}.crumb-sep{display:none}.nav{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.nav::-webkit-scrollbar{display:none}.nav button{padding:7px 9px;white-space:nowrap;font-size:13px}.topbar-stats{display:none}.user-box{margin-left:auto;padding-left:0;border-left:0;gap:8px}.user-name{display:none}.brand{font-size:14px;gap:6px}.logout{padding:6px 10px}.drawer,.drawer-wide,.order-editor{width:100vw;max-width:100vw;padding:18px 14px}.inv-drawer{width:100vw;max-width:100vw}.drawer h2{font-size:17px}.sales-toolbar,.contacts-toolbar,.board-toolbar{flex-wrap:wrap;gap:8px;padding:12px}.search,.board-toolbar .search{max-width:none;flex:1 1 100%}.count{margin-left:0}.filters{flex-wrap:wrap}.orders-table{overflow-x:auto}.inv-head,.inv-row,.pr-head,.pr-row{min-width:620px}.rates-head,.rates-row{min-width:420px}.lead-section{overflow-x:auto}.lf-row{flex-direction:column;gap:10px}.company-form,.pur-meta,.inv-metabox,.pr-parties,.pr-signs{grid-template-columns:1fr}.cf2-row{flex-direction:column;align-items:stretch;gap:4px}.settings{flex-direction:column}.settings-nav{width:auto;display:flex;gap:6px;overflow-x:auto;padding:8px 10px;border-right:0;border-bottom:1px solid var(--border)}.settings-nav-title,.settings-soon{display:none}.settings-nav button{white-space:nowrap}.settings-main{padding:16px 14px}.home-inner{padding:18px 14px}.tiles{grid-template-columns:1fr;gap:12px}.home-hero h1{font-size:26px}.board{padding:12px;gap:10px}.column{flex:0 0 80vw;max-width:80vw}.att-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.notif-panel{width:92vw;right:-6px}.inv-doc{padding:22px 16px}}
