:root{--bg: #f5f7fb;--card: #ffffff;--text-1: #0f172a;--text-2: #475569;--text-3: #94a3b8;--border: #e2e8f0;--primary: #1d3fd8;--primary-soft: #eef2ff;--success: #12a150;--warning: #d97706;--danger: #dc2626;--safe-bottom: env(safe-area-inset-bottom, 0px);color-scheme:light}:root[data-theme=dark]{--bg: #0b1020;--card: #141a2e;--text-1: #e2e8f0;--text-2: #a5b4cb;--text-3: #64748b;--border: #26304d;--primary-soft: #1b2554;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text-1);-webkit-font-smoothing:antialiased}.page{padding:24px;max-width:1280px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-head h1{font-size:22px;line-height:1.3;margin:0;font-weight:650;letter-spacing:-.01em}.page-head .sub{color:var(--text-2);margin-top:4px}.grid{display:grid;gap:16px}.grid.kpi{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid.two{grid-template-columns:2fr 1fr}.grid.half{grid-template-columns:1fr 1fr}.kpi-label{color:var(--text-2);font-size:13px}.kpi-value{font-size:28px;font-weight:650;line-height:1.2;margin-top:6px;font-variant-numeric:tabular-nums}.kpi-foot{color:var(--text-3);font-size:12px;margin-top:4px}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.num{font-variant-numeric:tabular-nums}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack>*+*{margin-top:16px}.row-gap>td{background:var(--primary-soft)!important}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;word-break:break-all}.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:17px;letter-spacing:-.01em}.brand img{width:28px;height:28px}.brand.dark{color:var(--text-1)}.auth-wrap{min-height:100%;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(1200px 600px at 10% -10%,#dfe6ff 0%,transparent 60%),var(--bg)}:root[data-theme=dark] .auth-wrap{background:radial-gradient(1200px 600px at 10% -10%,#1b2554 0%,transparent 60%),var(--bg)}.auth-card{width:100%;max-width:400px}.auth-card .brand{margin-bottom:20px;justify-content:center}.check-row{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.check-row:last-child{border-bottom:0}.check-name{font-weight:550}.check-hint{color:var(--text-2);font-size:13px;margin-top:2px}.check-value{color:var(--text-3);font-size:12px;margin-top:4px;word-break:break-word}.action-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.action-item:last-child{border-bottom:0}.action-body{flex:1;min-width:0}.action-item>.ant-tag,.row>.ant-tag:first-child{align-self:flex-start;min-width:56px;text-align:center;margin-inline-end:0}.action-item>.ant-btn{align-self:flex-start}.action-title{font-weight:550}.action-fix{color:var(--text-2);font-size:13px;margin-top:4px;white-space:pre-wrap}.ring{position:relative;display:inline-grid;place-items:center}.ring .ring-label{position:absolute;text-align:center;line-height:1.1}.ring .ring-value{font-weight:700;font-variant-numeric:tabular-nums}.ring .ring-sub{font-size:11px;color:var(--text-3)}.comment{padding:10px 12px;border-radius:10px;background:var(--bg);margin-bottom:8px}.comment.internal{background:#fff7ed;border:1px dashed #fdba74}:root[data-theme=dark] .comment.internal{background:#2a1d0f;border-color:#92400e}.comment .meta{font-size:12px;color:var(--text-3);margin-bottom:4px}.bottom-tabs{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;background:var(--card);border-top:1px solid var(--border);padding-bottom:var(--safe-bottom)}.bottom-tabs a,.bottom-tabs button{flex:1;background:none;border:0;cursor:pointer;font:inherit;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;font-size:11px;color:var(--text-3);text-decoration:none}.bottom-tabs a.active,.bottom-tabs button.active{color:var(--primary)}.bottom-tabs .anticon{font-size:20px}.has-bottom-tabs{padding-bottom:calc(64px + var(--safe-bottom))}.md{line-height:1.7;overflow-wrap:anywhere}.md>*+*{margin-top:10px}.md p,.md ul,.md ol{margin:0}.md ul,.md ol{padding-inline-start:22px}.md .md-h{margin:16px 0 4px;font-weight:650}.md h3.md-h{font-size:17px}.md h4.md-h{font-size:15px}.md h5.md-h,.md h6.md-h{font-size:14px}.md-code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:0 4px;font-size:12.5px}.md-quote{margin:0;padding:8px 12px;border-inline-start:3px solid var(--primary);background:var(--primary-soft);border-radius:0 8px 8px 0;color:var(--text-2)}.md-table{border-collapse:collapse;font-size:13px}.md-table th,.md-table td{border:1px solid var(--border);padding:6px 10px;text-align:left;vertical-align:top}.md-table th{background:var(--bg)}.report{max-width:860px;margin:0 auto}.report h2{font-size:16px;margin:0 0 12px}.report-summary{white-space:pre-wrap;line-height:1.7}@media (max-width: 900px){.grid.two,.grid.half{grid-template-columns:1fr}}@media (max-width: 640px){.page{padding:16px}.page-head h1{font-size:19px}.kpi-value{font-size:24px}.grid.kpi{grid-template-columns:1fr 1fr}.grid.kpi>.site-card{grid-column:1 / -1}.check-row{grid-template-columns:1fr;gap:6px}.hide-mobile{display:none!important}}@media print{.no-print,.ant-layout-sider,.ant-layout-header,.bottom-tabs{display:none!important}.page{padding:0;max-width:none}body{background:#fff}}.m-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding-inline:12px!important;border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px);height:auto!important;min-height:56px;line-height:normal!important}.m-header .brand img{width:26px;height:26px}.lang-toggle{min-width:36px;height:34px;padding:0 8px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text-1);font-weight:650;cursor:pointer}.sheet .ant-drawer-content{border-radius:20px 20px 0 0}.sheet .ant-drawer-body{padding:8px 16px calc(16px + var(--safe-bottom))}.sheet-handle{width:44px;height:5px;border-radius:3px;background:var(--border);margin:4px auto 12px}.sheet-title{color:var(--text-2);font-size:14px;margin:0 4px 8px}.sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.sheet-cell{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 4px;border:0;background:none;border-radius:12px;color:var(--text-1);font:inherit;font-size:14px;cursor:pointer}.sheet-cell:active{background:var(--bg)}.sheet-cell.danger{color:var(--danger)}.sheet-icon{font-size:24px;line-height:1}.notif-item{cursor:pointer;padding:10px 8px!important;border-radius:8px}.notif-item.unread{background:var(--primary-soft)}.notif-item.unread+.notif-item.unread{margin-top:2px}.search-hit{display:block;width:100%;text-align:left;border:0;background:none;padding:8px;border-radius:8px;cursor:pointer;color:var(--text-1);font:inherit}.search-hit:hover,.search-hit:focus-visible{background:var(--bg)}@media (max-width: 640px){.search-modal{top:12px;max-width:calc(100vw - 16px)}}.content-board{display:grid;grid-template-columns:repeat(6,minmax(200px,1fr));gap:12px;overflow-x:auto;padding-bottom:4px}.content-col{background:var(--bg);border-radius:12px;padding:10px;min-height:160px}.content-card{display:block;width:100%;text-align:left;font:inherit;color:var(--text-1);background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:8px;cursor:pointer}.content-card:hover,.content-card:focus-visible{border-color:var(--primary);outline:none}.content-col .content-card:last-child{margin-bottom:0}.content-card .overdue{color:var(--danger)}.content-preview{overflow-wrap:anywhere}.attachment{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--border)}.attachment:last-of-type{border-bottom:0}.attachment-name{font-weight:550;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-align:start}.link-button{background:none;border:0;padding:0;color:var(--primary);cursor:pointer;font:inherit}.link-button:hover{text-decoration:underline}.ob-item{padding:12px 0;border-bottom:1px solid var(--border)}.ob-item:last-child{border-bottom:0}.ob-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.ob-item.waiting{background:var(--primary-soft);padding:12px;border-radius:10px;border-bottom:0;margin-bottom:8px}.ob-reply{margin-top:8px;padding:8px 12px;border-inline-start:3px solid var(--primary);background:var(--bg);border-radius:0 8px 8px 0;white-space:pre-wrap}.brand-logo-preview{max-height:56px;max-width:200px;object-fit:contain}.brand img.custom-logo{width:auto;max-width:120px;object-fit:contain}.kpi-money{font-size:20px}.clickable{cursor:pointer}.inv-status{display:inline-block;font-size:12px;font-weight:600;padding:1px 8px;border-radius:10px;border:1px solid currentColor;line-height:18px}.inv-status-draft{color:var(--text-2)}.inv-status-sent{color:var(--primary)}.inv-status-overdue{color:var(--danger)}.inv-status-paid{color:var(--success)}.inv-status-void{color:var(--text-3);text-decoration:line-through}.invoice-paper{max-width:860px;margin:0 auto;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:32px;display:flex;flex-direction:column;gap:24px}.inv-head{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.inv-logo{height:40px;max-width:200px;object-fit:contain;margin-bottom:8px;display:block}.inv-issuer-name{font-weight:650;font-size:16px}.inv-small{color:var(--text-2);font-size:13px;line-height:1.6}.inv-meta{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.inv-title{font-size:26px;font-weight:700;letter-spacing:.02em;color:var(--primary);text-transform:uppercase}.inv-number{font-size:15px;font-weight:600}.inv-dates th{text-align:right;font-weight:400;color:var(--text-2);padding:1px 12px 1px 0;font-size:13px}.inv-dates td{text-align:right;font-size:13px}.inv-label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-bottom:4px;font-weight:600}.inv-table-wrap{overflow-x:auto}.inv-table{width:100%;border-collapse:collapse;min-width:480px}.inv-table th,.inv-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.inv-table th{font-size:12px;color:var(--text-2);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.inv-table .r{text-align:right;white-space:nowrap}.inv-table tfoot td{border-bottom:0;padding-top:4px;padding-bottom:4px}.inv-table tfoot tr:first-child td{padding-top:12px}.inv-total td{font-weight:700;font-size:16px;border-top:2px solid var(--text-1)!important;padding-top:8px!important}.inv-line-edit{display:grid;grid-template-columns:1fr 90px 140px 32px;gap:8px;align-items:start}@media (max-width: 640px){.invoice-paper{padding:16px;gap:16px;border-radius:10px}.inv-meta{text-align:left;align-items:flex-start}.inv-dates th,.inv-dates td{text-align:left}.inv-table{min-width:0;font-size:13px}.inv-table th,.inv-table td{padding:6px 4px}.inv-table th{font-size:11px;letter-spacing:0}.inv-total td{font-size:14px}.inv-line-edit{grid-template-columns:1fr 1fr 32px}.inv-line-edit>:first-child{grid-column:1 / -1}}@media print{.invoice-paper{border:0;border-radius:0;padding:0;max-width:none;background:#fff;color:#000}.invoice-paper .inv-small,.invoice-paper .inv-label,.invoice-paper .inv-table th,.invoice-paper .inv-dates th{color:#444}.invoice-paper .inv-table th,.invoice-paper .inv-table td{border-color:#ccc}.invoice-paper .inv-total td{border-top-color:#000!important}.inv-table-wrap{overflow:visible}.inv-table{min-width:0}.inv-table tr{break-inside:avoid}}
