.ReactCrop{cursor:crosshair;max-width:100%;display:inline-block;position:relative;overflow:hidden}.ReactCrop:focus{outline:none}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__image{-ms-touch-action:none;touch-action:none;max-width:100%;display:block}.ReactCrop__crop-selection{box-sizing:border-box;cursor:move;-ms-touch-action:none;touch-action:none;border:1px solid;border-image-source:url(data:image/gif;base64,R0lGODlhCgAKAJECAAAAAP///////wAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEI5RDc5MTFDNkE2MTFFM0JCMDZEODI2QTI4MzJBOTIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEI5RDc5MTBDNkE2MTFFM0JCMDZEODI2QTI4MzJBOTIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuZGlkOjAyODAxMTc0MDcyMDY4MTE4MDgzQzNDMjA5MzREQ0ZDIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAyODAxMTc0MDcyMDY4MTE4MDgzQzNDMjA5MzREQ0ZDIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEBQoAAgAsAAAAAAoACgAAAhWEERkn7W3ei7KlagMWF/dKgYeyGAUAIfkEBQoAAgAsAAAAAAoACgAAAg+UYwLJ7RnQm7QmsCyVKhUAIfkEBQoAAgAsAAAAAAoACgAAAhCUYgLJHdiinNSAVfOEKoUCACH5BAUKAAIALAAAAAAKAAoAAAIRVISAdusPo3RAzYtjaMIaUQAAIfkEBQoAAgAsAAAAAAoACgAAAg+MDiem7Q8bSLFaG5il6xQAIfkEBQoAAgAsAAAAAAoACgAAAg+UYRLJ7QnQm7SmsCyVKhUAIfkEBQoAAgAsAAAAAAoACgAAAhCUYBLJDdiinNSEVfOEKoECACH5BAUKAAIALAAAAAAKAAoAAAIRFISBdusPo3RBzYsjaMIaUQAAOw==);border-image-slice:1;border-image-repeat:repeat;position:absolute;top:0;left:0;transform:translate(0,0);box-shadow:0 0 0 9999em #00000080}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%;box-shadow:0 0 1px 1px #fff,0 0 0 9999em #00000080}.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";background-color:#fff6;display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{position:absolute}.ReactCrop__drag-handle:after{content:"";box-sizing:border-box;background-color:#0003;border:1px solid #ffffffb3;outline:1px solid #0000;width:10px;height:10px;display:block;position:absolute}.ReactCrop .ord-nw{cursor:nw-resize;margin-top:-5px;margin-left:-5px;top:0;left:0}.ReactCrop .ord-nw:after{top:0;left:0}.ReactCrop .ord-n{cursor:n-resize;margin-top:-5px;margin-left:-5px;top:0;left:50%}.ReactCrop .ord-n:after{top:0}.ReactCrop .ord-ne{cursor:ne-resize;margin-top:-5px;margin-right:-5px;top:0;right:0}.ReactCrop .ord-ne:after{top:0;right:0}.ReactCrop .ord-e{cursor:e-resize;margin-top:-5px;margin-right:-5px;top:50%;right:0}.ReactCrop .ord-e:after{right:0}.ReactCrop .ord-se{cursor:se-resize;margin-bottom:-5px;margin-right:-5px;bottom:0;right:0}.ReactCrop .ord-se:after{bottom:0;right:0}.ReactCrop .ord-s{cursor:s-resize;margin-bottom:-5px;margin-left:-5px;bottom:0;left:50%}.ReactCrop .ord-s:after{bottom:0}.ReactCrop .ord-sw{cursor:sw-resize;margin-bottom:-5px;margin-left:-5px;bottom:0;left:0}.ReactCrop .ord-sw:after{bottom:0;left:0}.ReactCrop .ord-w{cursor:w-resize;margin-top:-5px;margin-left:-5px;top:50%;left:0}.ReactCrop .ord-w:after{left:0}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{width:100%;height:6px;margin-top:-3px;top:0;left:0}.ReactCrop__drag-bar.ord-e{width:6px;height:100%;margin-right:-3px;top:0;right:0}.ReactCrop__drag-bar.ord-s{width:100%;height:6px;margin-bottom:-3px;bottom:0;left:0}.ReactCrop__drag-bar.ord-w{width:6px;height:100%;margin-left:-3px;top:0;left:0}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:24px;height:24px}}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary:#142d3b;--color-primary-fg:#fff;--color-secondary:#2f3447;--color-secondary-fg:#fff;--color-logo-bg:#fff;--color-bg:#f4f5f7;--color-surface:#fff;--color-border:#e5e7eb;--color-text:#111827;--color-text-muted:#6b7280;--color-text-faint:#9ca3af;--color-danger:#dc2626;--color-success:#16a34a;--color-warning:#d97706;--ui-radius:14px;--sidebar-w:248px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--color-text);-webkit-font-smoothing:antialiased;background:#d8dade;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app{background:var(--color-bg);max-width:1440px;min-height:calc(100vh - 41px);margin:0 auto;display:flex;box-shadow:0 0 0 1px #0000000a}.sidebar{width:var(--sidebar-w);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:calc(100vh - 41px);display:flex;position:sticky;top:41px}.sidebar-logo{border-radius:var(--ui-radius);background:var(--color-logo-bg);border:1px solid var(--color-border);justify-content:center;align-items:center;height:150px;margin:16px;display:flex;position:relative;overflow:hidden}.sidebar-logo:after{content:"";background:var(--color-primary);height:3px;position:absolute;bottom:0;left:0;right:0}.sidebar-logo .logo-img{object-fit:contain;width:auto;max-width:80%;height:auto;max-height:60%}.nav{flex-direction:column;flex:1;gap:2px;padding:6px 12px;display:flex;overflow-y:auto}.nav-section{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-faint);padding:14px 10px 6px;font-size:10px;font-weight:700}.nav-item{color:var(--color-text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;width:100%;padding:9px 11px;font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;display:flex;position:relative}.nav-item svg{stroke:currentColor;fill:none;stroke-width:1.9px;flex-shrink:0;width:18px;height:18px}.nav-item:hover{background:var(--color-bg);color:var(--color-text)}.nav-item.active{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary)}.nav-item.active:before{content:"";background:var(--color-primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-12px}.nav-badge{background:var(--color-primary);color:var(--color-primary-fg);border-radius:100px;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:800}.sidebar-footer{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;padding:12px;display:flex}.user-chip{border-radius:9px;align-items:center;gap:9px;padding:6px 8px;display:flex}.user-avatar{background:var(--color-secondary);width:30px;height:30px;color:var(--color-secondary-fg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.user-meta{min-width:0}.user-name{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:700;overflow:hidden}.user-role{color:var(--color-text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.logout-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;font-weight:600;display:flex}.logout-btn svg{stroke:currentColor;fill:none;stroke-width:2px;width:15px;height:15px}.logout-btn:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border))}.profile-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font:inherit;cursor:pointer;text-align:left;border-radius:9px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;font-weight:600;text-decoration:none;display:flex}.profile-btn svg{stroke:currentColor;fill:none;stroke-width:2px;width:15px;height:15px}.profile-btn:hover{color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border));background:var(--color-bg)}.content{flex-direction:column;flex:1;min-width:0;display:flex}.pagehead{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:5;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:41px}.pagehead h1{letter-spacing:-.5px;margin:0;font-size:21px;font-weight:800}.pagehead .sub{color:var(--color-text-muted);margin-top:2px;font-size:12.5px}.pagehead-actions{align-items:center;gap:10px;display:flex}.screen-body{padding:24px 28px 40px}.screen[hidden]{display:none}.btn{font:inherit;cursor:pointer;letter-spacing:-.2px;border:1px solid #0000;border-radius:10px;align-items:center;gap:7px;padding:9px 15px;font-size:13px;font-weight:700;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn svg{stroke:currentColor;fill:none;stroke-width:2.1px;width:15px;height:15px}.btn-primary{background:var(--color-primary);color:var(--color-primary-fg);box-shadow:0 1px 3px color-mix(in srgb, var(--color-primary) 30%, transparent)}.btn-primary:hover:not(:disabled){filter:brightness(.94)}.btn-ghost{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-ghost:hover:not(:disabled){background:var(--color-bg)}.btn-danger{background:var(--color-danger);color:#fff;box-shadow:none}.btn-danger:hover:not(:disabled){filter:brightness(.94)}.btn-danger-ghost{background:var(--color-surface);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 30%, var(--color-border))}.btn-danger-ghost:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface))}.btn-sm{border-radius:8px;padding:6px 11px;font-size:12px}.btn-block{justify-content:center;width:100%}.stat-section-label{text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-faint);margin:6px 0 12px;font-size:11px;font-weight:700}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-bottom:26px;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);flex-direction:column;gap:10px;padding:16px 17px;display:flex}.stat-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.stat-icon svg{width:19px;height:19px;stroke:var(--color-primary);fill:none;stroke-width:1.9px}.stat-value{letter-spacing:-.6px;font-size:28px;font-weight:800;line-height:1}.stat-label{color:var(--color-text-muted);font-size:12.5px;font-weight:500}.account-grid{grid-template-columns:2fr 1fr;gap:14px;display:grid}@media (max-width:900px){.account-grid{grid-template-columns:1fr}}.account-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);padding:18px 20px;position:relative;overflow:hidden}.account-card.standing-ok{border-left:4px solid var(--color-success)}.account-card.standing-warn{border-left:4px solid var(--color-warning)}.account-card.standing-overdue{border-left:4px solid var(--color-danger)}.account-card .card-title{color:var(--color-text-muted);margin-bottom:14px;font-size:13px;font-weight:700}.pay-row{gap:36px;display:flex}.pay-item .pay-label{color:var(--color-text-faint);align-items:center;gap:6px;margin-bottom:4px;font-size:11.5px;font-weight:600;display:flex}.pay-item .pay-label svg{stroke:currentColor;fill:none;stroke-width:2px;width:14px;height:14px}.pay-item .pay-value{letter-spacing:-.3px;font-size:18px;font-weight:700}.badge-status{border-radius:100px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge-status.ok{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.badge-status.warn{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning)}.balance-value{letter-spacing:-.4px;font-size:20px;font-weight:800}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.search{flex:1;min-width:220px;max-width:360px;position:relative}.search svg{width:16px;height:16px;stroke:var(--color-text-faint);fill:none;stroke-width:2px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search input{border:1px solid var(--color-border);width:100%;font:inherit;background:var(--color-surface);border-radius:10px;padding:9px 12px 9px 36px;font-size:13px}.search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);outline:none}.toolbar-spacer{flex:1}.toggle-pill{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.toggle-pill button{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 12px;font-size:12px;font-weight:600}.toggle-pill button.active{background:var(--color-primary);color:var(--color-primary-fg)}.table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);overflow:hidden}table{border-collapse:collapse;width:100%}thead th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-faint);border-bottom:1px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:13px 18px;font-size:11px;font-weight:700}thead th.sortable{cursor:pointer}thead th .sort{vertical-align:middle;margin-left:4px;display:inline-flex}thead th svg{width:12px;height:12px;stroke:var(--color-text-faint);fill:none;stroke-width:2.2px}tbody td{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:13px 18px;font-size:13.5px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-bg)}.cell-name{font-weight:600}.cell-muted{color:var(--color-text-muted)}.cell-account{font-variant-numeric:tabular-nums;letter-spacing:.02em}.rel-tag{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:100px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-block}.rel-tag.rel-link{cursor:pointer}.rel-tag.rel-link:hover{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-border));color:var(--color-primary)}.rel-tag.rel-empty{color:var(--color-text-faint);background:0 0;border-style:dashed}.row-actions{justify-content:flex-end;gap:6px;display:flex}.icon-btn{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:30px;height:30px;color:var(--color-text-muted);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-btn svg{stroke:currentColor;fill:none;stroke-width:2px;width:15px;height:15px}.icon-btn:hover{background:var(--color-bg);color:var(--color-text)}.icon-btn.danger:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));background:color-mix(in srgb, var(--color-danger) 7%, var(--color-surface))}.table-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:13px 18px;display:flex}.table-footer .count{color:var(--color-text-muted);font-size:12.5px}.table-footer-right{align-items:center;gap:16px;display:flex}.page-size{color:var(--color-text-muted);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:inline-flex}.page-size .selectbox{cursor:pointer;border-radius:8px;width:auto;padding:6px 28px 6px 10px;font-size:12.5px}.pager button[disabled]{opacity:.45;cursor:default}.pager{gap:4px;display:flex}.pager button{border:1px solid var(--color-border);background:var(--color-surface);min-width:30px;height:30px;font:inherit;color:var(--color-text-muted);cursor:pointer;border-radius:8px;padding:0 8px;font-size:12.5px;font-weight:600}.pager button.active{background:var(--color-primary);color:var(--color-primary-fg);border-color:var(--color-primary)}.tip{color:var(--color-text-faint);align-items:center;gap:5px;font-size:12px;display:inline-flex}.tip svg{stroke:currentColor;fill:none;stroke-width:2px;width:14px;height:14px}.badge{white-space:nowrap;border-radius:100px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge.published,.badge.sent{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.badge.draft{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge.expired,.badge.unpublished{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning)}.thumb-cell{background:var(--color-bg);border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text-faint);border-radius:8px;justify-content:center;align-items:center;display:flex}.thumb-cell svg{stroke:currentColor;fill:none;stroke-width:1.8px;width:18px;height:18px}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);max-width:980px;padding:26px 28px}.form-cols{grid-template-columns:1fr 1fr;gap:22px 32px;display:grid}@media (max-width:820px){.form-cols{grid-template-columns:1fr}}.field{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.field.span2{grid-column:1/-1}.field-label{color:var(--color-text);font-size:12.5px;font-weight:700}.field-label .opt{color:var(--color-text-faint);font-weight:500}.input,.textarea,.selectbox{border:1px solid var(--color-border);width:100%;font:inherit;background:var(--color-surface);color:var(--color-text);border-radius:10px;padding:9px 12px;font-size:13.5px}.textarea{resize:vertical;min-height:84px;line-height:1.5}.input:focus,.textarea:focus,.selectbox:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);outline:none}.input[readonly]{background:var(--color-bg);color:var(--color-text-muted)}.input.invalid,.textarea.invalid,.selectbox.invalid{border-color:var(--color-danger)}.char-count{color:var(--color-text-faint);align-self:flex-end;font-size:11px}.field-hint{color:var(--color-text-muted);font-size:11.5px;line-height:1.5}.field-hint.with-info{align-items:flex-start;gap:7px;display:flex}.field-error{color:var(--color-danger);font-size:11.5px;font-weight:600}.info-tip{cursor:help;color:var(--color-primary);flex-shrink:0;margin-top:1px;display:inline-flex;position:relative}.info-tip .info-ico{stroke:currentColor;fill:none;stroke-width:2px;width:15px;height:15px}.info-tip:hover .info-ico,.info-tip:focus .info-ico{filter:brightness(.9)}.info-pop{z-index:50;background:var(--color-surface);border:1px solid var(--color-border);width:330px;color:var(--color-text);opacity:0;visibility:hidden;pointer-events:none;border-radius:12px;padding:14px 16px;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-4px);box-shadow:0 16px 40px #0000002e}.info-tip:hover .info-pop,.info-tip:focus .info-pop,.info-tip:focus-within .info-pop{opacity:1;visibility:visible;transform:translateY(0)}.info-pop strong{color:var(--color-text);margin-bottom:8px;font-size:12.5px;font-weight:800;display:block}.info-pop ol{color:var(--color-text-muted);margin:0;padding-left:18px;font-size:12px;line-height:1.55}.info-pop ol li{margin-bottom:3px}.info-pop ol li b{color:var(--color-text);font-weight:700}.info-pop .info-sub{color:var(--color-text-muted);margin-top:9px;font-size:11.5px;display:block}.info-pop .info-note{color:var(--color-warning);margin-top:9px;font-size:11.5px;font-weight:600;display:block}.radio-pills{gap:6px;display:inline-flex}.radio-pills label{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:var(--color-surface);border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.radio-pills label.sel{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary)}.color-field{align-items:center;gap:10px;display:flex}.color-swatch{border:1px solid var(--color-border);border-radius:9px;flex-shrink:0;width:38px;height:38px}.color-field .input{letter-spacing:.03em;font-family:ui-monospace,Menlo,monospace}.cp-field{position:relative}.cp-pop{z-index:60;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:240px;margin-top:6px;padding:12px;display:none;position:absolute;top:100%;left:0;box-shadow:0 12px 32px #0f172a29}.cp-pop.open{display:block}.cp-grid{grid-template-columns:repeat(8,22px);gap:6px;margin-bottom:10px;display:grid}.cp-cell{cursor:pointer;border:1px solid #0f172a1f;border-radius:6px;width:22px;height:22px;transition:transform .1s}.cp-cell:hover{transform:scale(1.15)}.cp-custom{color:var(--color-text-muted);border-top:1px solid var(--color-border);align-items:center;gap:8px;padding-top:10px;font-size:12px;display:flex}.cp-custom input[type=color]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:6px;width:36px;height:26px;padding:1px}.cp-field .color-swatch{cursor:pointer}.app-preview{border:1px solid var(--color-border);border-radius:12px;max-width:280px;margin-bottom:8px;overflow:hidden}.ap-logo{letter-spacing:.05em;text-transform:uppercase;border-bottom:4px solid #0000;justify-content:center;align-items:center;min-height:84px;font-size:11px;font-weight:700;display:flex}.ap-body{border-top:1px solid var(--color-border);background:#f4f5f7;justify-content:center;padding:16px;display:flex}.ap-btn{cursor:default;border:none;border-radius:9px;padding:9px 18px;font-family:inherit;font-size:12.5px;font-weight:700}.ap-nav{justify-content:space-around;padding:11px 6px;font-size:10.5px;font-weight:600;display:flex}.color-input{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:9px;flex-shrink:0;width:46px;height:38px;padding:2px}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:6px}.color-hex{color:var(--color-text-muted);letter-spacing:.03em;font-family:ui-monospace,Menlo,monospace;font-size:12.5px}.datetime-field{gap:8px;display:flex}.datetime-field .input[type=date]{flex:1;min-width:0}.time-select{flex:none;width:116px}.upload-row{align-items:flex-start;gap:18px;display:flex}.upload-thumb{border:1px dashed var(--color-border);background:var(--color-bg);width:104px;height:104px;color:var(--color-text-faint);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.upload-thumb svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:30px;height:30px}.upload-side{flex-direction:column;gap:10px;display:flex}.upload-buttons{gap:8px;display:flex}.form-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:20px;display:flex}.form-footer .left,.form-footer .right{gap:10px;display:flex}.attend-strip{background:var(--color-bg);border-radius:10px;gap:22px;margin-bottom:22px;padding:12px 16px;display:flex}.attend-strip .num{font-size:19px;font-weight:800}.attend-strip .lbl{color:var(--color-text-muted);font-size:11px;font-weight:600}.recip-builder{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;display:grid}@media (max-width:760px){.recip-builder{grid-template-columns:1fr}}.recip-pane{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;flex-direction:column;min-height:360px;display:flex;overflow:hidden}.recip-pane-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.recip-pane-title{font-size:13px;font-weight:700}.recip-pane-title .muted{color:var(--color-text-muted);font-weight:600}.recip-pane-head .toggle-pill,.recip-pane-head .toggle-pill button{flex:1}.link-clear{font:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.link-clear:disabled{color:var(--color-text-faint);cursor:default}.recip-search-wrap{padding:11px 12px 2px}.recip-search-wrap .search{min-width:0;max-width:none}.recip-search-wrap .search input{padding-top:8px;padding-bottom:8px}.recip-everyone{border:1px dashed color-mix(in srgb, var(--color-primary) 40%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 6%, transparent);cursor:pointer;font:inherit;text-align:left;border-radius:10px;align-items:center;gap:10px;margin:11px 12px 0;padding:9px 11px;display:flex}.recip-everyone:hover{background:color-mix(in srgb, var(--color-primary) 11%, transparent)}.recip-everyone .ravatar{background:var(--color-primary);color:var(--color-primary-fg);border-radius:9px}.recip-everyone .opt-name{font-size:13px;font-weight:700}.recip-everyone .opt-sub{color:var(--color-text-muted);font-size:11.5px}.recip-everyone .row-toggle{margin-left:auto}.recip-everyone.sel{border-style:solid;border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 9%, transparent)}.recip-list{flex-direction:column;flex:1;gap:2px;max-height:320px;padding:8px;display:flex;overflow-y:auto}.recip-row{cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.recip-row:hover{background:var(--color-bg)}.ravatar{background:var(--color-secondary);width:32px;height:32px;color:var(--color-secondary-fg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.recip-row.is-group .ravatar,.recip-row.is-all .ravatar{background:color-mix(in srgb, var(--color-primary) 16%, transparent);color:var(--color-primary);border-radius:9px}.ravatar svg{stroke:currentColor;fill:none;stroke-width:2px;width:16px;height:16px}.recip-row .opt-main{flex:1;min-width:0}.recip-row .opt-name{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.recip-row .opt-sub{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.row-toggle{border:1px solid var(--color-border);background:var(--color-surface);width:27px;height:27px;color:var(--color-text-faint);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.row-toggle svg{stroke:currentColor;fill:none;stroke-width:2.5px;width:15px;height:15px}.recip-row:hover .row-toggle{color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 45%, var(--color-border))}.recip-row.sel{background:color-mix(in srgb, var(--color-success) 7%, transparent)}.recip-row.sel .row-toggle,.recip-everyone.sel .row-toggle{background:var(--color-success);border-color:var(--color-success);color:#fff}.recip-row.sel:hover .row-toggle{background:var(--color-danger);border-color:var(--color-danger)}.recip-row.locked{cursor:default}.recip-row.locked:hover{background:color-mix(in srgb, var(--color-success) 7%, transparent)}.recip-row.locked:hover .row-toggle{background:var(--color-success);border-color:var(--color-success);color:#fff}.selected-list .recip-row{cursor:default}.selected-list .recip-row:hover{background:var(--color-bg)}.recip-remove{border:1px solid var(--color-border);background:var(--color-surface);width:27px;height:27px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.recip-remove svg{stroke:currentColor;fill:none;stroke-width:2.4px;width:14px;height:14px}.recip-remove:hover{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 40%, var(--color-border));background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface))}.recip-count-pill{color:var(--color-text-muted);margin-left:6px;font-size:11px;font-weight:700}.recip-empty{text-align:center;color:var(--color-text-faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px 16px;display:flex}.recip-empty svg{stroke:currentColor;fill:none;stroke-width:1.7px;width:26px;height:26px}.recip-empty span{color:var(--color-text-muted);font-size:12.5px}.recip-summary-bar{border-top:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-bg);align-items:center;gap:7px;padding:11px 14px;font-size:12px;display:flex}.recip-summary-bar svg{width:14px;height:14px;stroke:var(--color-primary);fill:none;stroke-width:2px;flex-shrink:0}.recip-summary-bar b{color:var(--color-text);font-weight:700}.mv-meta{align-items:center;gap:12px;margin-bottom:4px;display:flex}.mv-date{color:var(--color-text-muted);font-size:12.5px}.mv-section{border-bottom:1px solid var(--color-border);padding:18px 0}.mv-section:last-child{border-bottom:none;padding-bottom:0}.mv-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-faint);align-items:baseline;gap:8px;margin-bottom:10px;font-size:11px;font-weight:700;display:flex}.mv-reach{text-transform:none;letter-spacing:0;color:var(--color-text-muted);font-size:11.5px;font-weight:600}.mv-recips{flex-wrap:wrap;gap:8px;display:flex}.mv-recip{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);border-radius:100px;align-items:center;gap:8px;padding:5px 12px 5px 6px;font-size:12.5px;font-weight:600;display:inline-flex}.mv-recip.is-group,.mv-recip.is-all{background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 28%, var(--color-border))}.mv-recip .ravatar{width:24px;height:24px;font-size:9.5px}.mv-recip.is-group .ravatar,.mv-recip.is-all .ravatar{background:color-mix(in srgb, var(--color-primary) 16%, transparent);color:var(--color-primary);border-radius:7px}.mv-recip .ravatar svg{width:13px;height:13px}.mv-recip .mv-count{color:var(--color-text-faint);font-size:11px;font-weight:700}.mv-title{letter-spacing:-.2px;font-size:16px;font-weight:700}.mv-text{color:var(--color-text);white-space:pre-wrap;font-size:13.5px;line-height:1.6}.ms{position:relative}.ms-control{border:1px solid var(--color-border);background:var(--color-surface);cursor:text;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:7px 10px;display:flex}.ms-control.focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent)}.ms-chip{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 30%, var(--color-border));color:var(--color-primary);border-radius:8px;align-items:center;gap:6px;padding:4px 5px 4px 9px;font-size:12.5px;font-weight:600;display:inline-flex}.ms-chip .chip-count{opacity:.65;font-size:11px;font-weight:700}.ms-chip button{width:18px;height:18px;color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;padding:0;display:inline-flex}.ms-chip button:hover{opacity:1;background:color-mix(in srgb, currentColor 18%, transparent)}.ms-chip button svg{stroke:currentColor;fill:none;stroke-width:2.8px;width:11px;height:11px}.ms-input{min-width:130px;font:inherit;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:4px 2px;font-size:13.5px}.ms-dropdown{z-index:30;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;max-height:260px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 40px #00000021}.ms-dropdown[hidden]{display:none}.ms-option{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.ms-option:hover,.ms-option.active{background:var(--color-bg)}.ms-option .ravatar{background:color-mix(in srgb, var(--color-primary) 16%, transparent);color:var(--color-primary);border-radius:9px}.ms-option .opt-main{flex:1;min-width:0}.ms-option .opt-name{font-size:13.5px;font-weight:600}.ms-option .opt-sub{color:var(--color-text-muted);font-size:11.5px}.ms-option .opt-add{color:var(--color-primary);opacity:0;font-size:16px;font-weight:700}.ms-option:hover .opt-add{opacity:1}.ms-empty{text-align:center;color:var(--color-text-muted);padding:14px;font-size:12.5px}.cal-layout{grid-template-columns:1.3fr 1fr;align-items:start;gap:18px;display:grid}@media (max-width:980px){.cal-layout{grid-template-columns:1fr}}.cal-card,.agenda-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);overflow:hidden}.cal-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.cal-month{letter-spacing:-.3px;font-size:15px;font-weight:800}.cal-nav{gap:6px;display:flex}.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-dow{text-align:center;color:var(--color-text-faint);text-transform:uppercase;padding:10px 0 6px;font-size:10.5px;font-weight:700}.cal-cell{aspect-ratio:1/.86;border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);color:var(--color-text);cursor:pointer;padding:6px 7px;font-size:12px;position:relative}.cal-cell:nth-child(7n+1){border-left:none}.cal-cell.muted{color:var(--color-text-faint);background:var(--color-bg)}.cal-cell.today .daynum{background:var(--color-primary);color:var(--color-primary-fg);border-radius:50%;padding:1px 5px}.cal-cell.sel{background:color-mix(in srgb, var(--color-primary) 9%, transparent);box-shadow:inset 0 0 0 2px var(--color-primary)}.cal-dots{flex-wrap:wrap;gap:3px;margin-top:6px;display:flex}.cal-dot{border-radius:50%;width:6px;height:6px}.cal-marks{margin-top:6px;display:flex}.cal-count{background:color-mix(in srgb, var(--color-primary) 18%, transparent);min-width:18px;height:14px;color:var(--color-primary);border-radius:100px;justify-content:center;align-items:center;padding:0 5px;font-size:9px;font-weight:800;line-height:1;display:inline-flex}.agenda-card{flex-direction:column;max-height:560px;display:flex}.agenda-head{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:baseline;gap:10px;padding:16px 18px;font-size:14px;font-weight:800;display:flex}.agenda-count{color:var(--color-text-muted);white-space:nowrap;font-size:12px;font-weight:600}.agenda-scroll{overscroll-behavior:contain;overflow-y:auto}.agenda-empty{color:var(--color-text-muted);padding:22px 18px;font-size:13px}.agenda-item{border-bottom:1px solid var(--color-border);cursor:pointer;gap:12px;padding:14px 18px;display:flex}.agenda-item:last-child{border-bottom:none}.agenda-item:hover{background:var(--color-bg)}.agenda-accent{border-radius:4px;flex-shrink:0;width:4px}.agenda-title{font-size:13.5px;font-weight:700}.agenda-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:12px;margin-top:3px;font-size:12px;display:flex}.agenda-meta span{align-items:center;gap:5px;display:inline-flex}.agenda-meta svg{stroke:currentColor;fill:none;stroke-width:2px;width:13px;height:13px}.balance-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px;display:grid}.tx-table{table-layout:fixed}.tx-table td,.tx-table th{white-space:nowrap}.tx-table td.tx-desc{white-space:normal}.tx-table col.tx-date{width:132px}.tx-table col.tx-type{width:100px}.tx-table col.tx-method{width:138px}.tx-table col.tx-amt{width:106px}.tx-table col.tx-opts{width:84px}.num-debit{color:var(--color-danger);text-align:right;font-weight:600}.num-credit{color:var(--color-success);text-align:right;font-weight:600}td.num,th.num{text-align:right}.login-stage{background:var(--color-bg);justify-content:center;align-items:center;min-height:calc(100vh - 41px);padding:24px;display:flex}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);width:400px;max-width:100%;padding:34px 32px;box-shadow:0 12px 40px #0000000f}.login-logo{flex-direction:column;align-items:center;gap:12px;margin-bottom:26px;display:flex}.login-logo .logo-img{object-fit:contain;width:208px;max-width:70%;height:auto}.login-logo .s{color:var(--color-text-muted);font-size:12.5px}.login-card .field{margin-bottom:16px}.link-muted{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12.5px;font-weight:600;text-decoration:none}.modal-backdrop{z-index:200;background:#11182773;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-backdrop[hidden]{display:none}.modal{background:var(--color-surface);border-radius:var(--ui-radius);width:420px;max-width:90vw;overflow:hidden;box-shadow:0 20px 50px #00000040}.modal-icon-wrap{justify-content:center;padding:26px 0 8px;display:flex}.modal-icon{background:color-mix(in srgb, var(--color-danger) 12%, transparent);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.modal-icon svg{width:25px;height:25px;stroke:var(--color-danger);fill:none;stroke-width:2px}.modal-body{text-align:center;padding:4px 26px 8px}.modal-body h3{letter-spacing:-.3px;margin:0 0 8px;font-size:17px;font-weight:800}.modal-body p{color:var(--color-text-muted);margin:0;font-size:13.5px;line-height:1.55}.modal-body .warn-note{color:var(--color-warning);margin-top:10px;font-size:12px;font-weight:600}.modal-actions{gap:10px;padding:20px 26px 24px;display:flex}.modal-actions .btn{flex:1;justify-content:center}.modal-icon.ok{background:color-mix(in srgb, var(--color-success,#059669) 12%, transparent)}.modal-icon.ok svg{stroke:var(--color-success,#059669)}.modal-icon.warn{background:color-mix(in srgb, var(--color-warning) 14%, transparent)}.modal-icon.warn svg{stroke:var(--color-warning)}.modal.wide{width:520px}.reach-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.reach-pill svg{fill:none;stroke-width:2.6px;width:12px;height:12px}.reach-on{background:color-mix(in srgb, var(--color-success,#059669) 12%, transparent);color:var(--color-success,#059669)}.reach-on svg{stroke:var(--color-success,#059669)}.reach-off{color:var(--color-text-muted);background:#f3f4f6}.reach-off svg{stroke:var(--color-text-muted)}.reach-blocked{background:color-mix(in srgb, var(--color-warning) 14%, transparent);color:var(--color-warning)}.reach-blocked svg{stroke:var(--color-warning)}.import-drop{border:2px dashed var(--color-border);border-radius:var(--ui-radius);text-align:center;background:#fafbfc;padding:40px 24px}.import-drop svg{width:38px;height:38px;stroke:var(--color-text-faint);fill:none;stroke-width:1.6px}.import-drop-title{margin-top:12px;font-size:15px;font-weight:700}.import-drop-sub{color:var(--color-text-muted);margin-top:5px;font-size:12.5px;line-height:1.5}.import-cols{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.import-col{border:1px solid var(--color-border);color:var(--color-text-muted);background:#fff;border-radius:6px;padding:4px 9px;font-size:11.5px;font-weight:600}.import-col.req{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-border));color:var(--color-primary)}.import-stats{gap:10px;margin:18px 0 4px;display:flex}.import-stat{border:1px solid var(--color-border);text-align:center;background:#fff;border-radius:10px;flex:1;padding:12px 14px}.import-stat-num{letter-spacing:-.5px;font-size:22px;font-weight:800}.import-stat-num.bad{color:var(--color-warning)}.import-stat-label{color:var(--color-text-muted);margin-top:2px;font-size:11px}.import-progress{background:#eef0f3;border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.import-progress-bar{background:var(--color-primary);height:100%}.split-card{gap:12px;display:flex}.split-half{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex:1;padding:16px}.split-half.paid{border-color:color-mix(in srgb, var(--color-warning) 40%, var(--color-border));background:color-mix(in srgb, var(--color-warning) 4%, #fff)}.split-count{letter-spacing:-.6px;font-size:26px;font-weight:800}.split-label{margin-top:2px;font-size:12.5px;font-weight:600}.split-cost{color:var(--color-text-muted);margin-top:6px;font-size:12px}.split-cost strong{color:var(--color-text)}.split-free{color:var(--color-success,#059669);font-weight:700}.check-row{cursor:pointer;align-items:flex-start;gap:8px;margin-top:9px;font-size:13px;line-height:1.5;display:flex}.check-row input{flex-shrink:0;margin-top:2px}.storage-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);max-width:600px;margin-bottom:20px;padding:16px 18px}.storage-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.storage-head-right{align-items:center;gap:12px;display:flex}.storage-upgrade{padding:5px 10px;font-size:11.5px}.storage-upgrade svg{width:13px;height:13px}.storage-upgrade[hidden]{display:none}.storage-label{text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-faint);font-size:11px;font-weight:700}.storage-num{color:var(--color-text-muted);font-size:13px}.storage-num strong{color:var(--color-text);font-weight:700}.storage-track{background:var(--color-bg);border-radius:100px;height:8px;overflow:hidden}.storage-fill{background:var(--color-primary);border-radius:100px;height:100%}.storage-fill.warn{background:var(--color-warning)}.storage-foot{color:var(--color-text-muted);margin-top:8px;font-size:11.5px}.dropzone{border:1.5px dashed color-mix(in srgb, var(--color-primary) 40%, var(--color-border));border-radius:var(--ui-radius);background:color-mix(in srgb, var(--color-primary) 4%, var(--color-surface));text-align:center;cursor:pointer;margin-bottom:20px;padding:26px 20px;transition:background .12s,border-color .12s}.dropzone:hover{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));border-color:var(--color-primary)}.dropzone .dz-ic{width:34px;height:34px;stroke:var(--color-primary);fill:none;stroke-width:1.8px;margin-bottom:8px}.dropzone .dz-title{color:var(--color-text);font-size:14px;font-weight:700}.dropzone .dz-link{color:var(--color-primary)}.dropzone .dz-sub{color:var(--color-text-muted);margin-top:4px;font-size:12px}.name-link{cursor:pointer;color:var(--color-text);font-weight:600}.name-link:hover{color:var(--color-primary);text-decoration:underline}.file-cell{align-items:center;gap:10px;display:inline-flex}.file-ic{letter-spacing:.02em;color:#fff;border-radius:7px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:9px;font-weight:800;display:inline-flex}.file-ic.pdf{background:#dc2626}.file-ic.word{background:#2563eb}.file-ic.excel{background:#16a34a}.file-ic.other{background:var(--color-text-faint)}.type-pill{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:100px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-block}.tc-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.tc-title{letter-spacing:-.2px;font-size:14px;font-weight:800}.tc-head .search{flex:0 220px;min-width:0;max-width:220px}.tc-head .search input{padding-top:7px;padding-bottom:7px}.mobile-url-row{align-items:flex-start;gap:14px;display:flex}.mobile-url-col{flex-direction:column;gap:6px;display:flex}.mobile-url-line{align-items:center;gap:10px;display:flex}.mobile-url-text{color:var(--color-text);word-break:break-all;font-size:13.5px;font-weight:400}.mobile-url-qr{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-shrink:0;width:80px;height:80px;padding:6px;display:block}.qr-block{align-items:center;gap:12px;display:flex}.copy-qr-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:9px;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.copy-qr-btn svg{stroke:currentColor;fill:none;stroke-width:2px;width:15px;height:15px}.copy-qr-btn:hover{background:var(--color-bg);color:var(--color-text)}.copy-qr-btn.copied,.icon-btn.copied{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 40%, var(--color-border));background:color-mix(in srgb, var(--color-success) 8%, var(--color-surface))}.app{max-width:none;min-height:100vh;box-shadow:none}.sidebar{height:100vh;top:0}.pagehead{top:0}.login-stage{min-height:100vh}.app-loading{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.spinner{border:2px solid color-mix(in srgb, currentColor 25%, transparent);vertical-align:-3px;border-top-color:currentColor;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin;display:inline-block}.spinner.lg{border-width:3px;width:30px;height:30px}@keyframes spin{to{transform:rotate(360deg)}}.toast-stack{z-index:400;flex-direction:column;gap:10px;max-width:min(380px,100vw - 36px);display:flex;position:fixed;top:18px;right:18px}.toast{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-text-muted);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;animation:.16s toast-in;display:flex;box-shadow:0 12px 32px #0f172a29}.toast.success{border-left-color:var(--color-success)}.toast.error{border-left-color:var(--color-danger)}.toast.info{border-left-color:var(--color-primary)}.toast .toast-ic{flex-shrink:0;margin-top:1px}.toast .toast-ic svg{fill:none;stroke-width:2.2px;width:17px;height:17px}.toast.success .toast-ic svg{stroke:var(--color-success)}.toast.error .toast-ic svg{stroke:var(--color-danger)}.toast.info .toast-ic svg{stroke:var(--color-primary)}.toast .toast-body{flex:1;min-width:0}.toast .toast-title{color:var(--color-text);font-size:13px;font-weight:700}.toast .toast-msg{color:var(--color-text-muted);word-break:break-word;margin-top:2px;font-size:12.5px;line-height:1.45}.toast .toast-close{cursor:pointer;color:var(--color-text-faint);background:0 0;border:none;flex-shrink:0;padding:2px;line-height:0}.toast .toast-close svg{stroke:currentColor;fill:none;stroke-width:2.4px;width:14px;height:14px}.toast .toast-close:hover{color:var(--color-text)}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.combo{position:relative}.combo-control{border:1px solid var(--color-border);background:var(--color-surface);cursor:text;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:7px 10px;display:flex}.combo-control.focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent)}.combo-control svg.combo-search-ic{width:16px;height:16px;stroke:var(--color-text-faint);fill:none;stroke-width:2px;flex-shrink:0}.combo-input{min-width:0;font:inherit;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.combo-clear{cursor:pointer;color:var(--color-text-faint);background:0 0;border:none;padding:2px;line-height:0}.combo-clear svg{stroke:currentColor;fill:none;stroke-width:2.4px;width:14px;height:14px}.combo-clear:hover{color:var(--color-text)}.combo-dropdown{z-index:40;background:var(--color-surface);border:1px solid var(--color-border);overscroll-behavior:contain;border-radius:12px;max-height:300px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 40px #00000021}.combo-dropdown[hidden]{display:none}.combo-option{cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.combo-option:hover,.combo-option.active{background:var(--color-bg)}.combo-option .opt-name{font-size:13.5px;font-weight:600}.combo-option .opt-sub{color:var(--color-text-muted);font-size:11.5px}.combo-empty{text-align:center;color:var(--color-text-muted);padding:14px;font-size:12.5px}.otp-boxes{justify-content:center;gap:8px;display:flex}.otp-box{text-align:center;border:1px solid var(--color-border);background:var(--color-surface);width:44px;height:52px;color:var(--color-text);font-variant-numeric:tabular-nums;border-radius:10px;font-size:20px;font-weight:700}.otp-box:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);outline:none}.placeholder-panel{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--ui-radius);text-align:center;max-width:640px;padding:46px 32px}.placeholder-panel .ph-ic{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 14px;display:flex}.placeholder-panel .ph-ic svg{width:22px;height:22px;stroke:var(--color-primary);fill:none;stroke-width:1.9px}.placeholder-panel h2{letter-spacing:-.3px;margin:0 0 8px;font-size:18px;font-weight:800}.placeholder-panel p{max-width:440px;color:var(--color-text-muted);margin:0 auto;font-size:13.5px;line-height:1.6}.form-alert{background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-danger) 30%, var(--color-border));border-radius:10px;align-items:flex-start;gap:9px;margin-bottom:16px;padding:11px 13px;display:flex}.form-alert svg{width:16px;height:16px;stroke:var(--color-danger);fill:none;stroke-width:2.2px;flex-shrink:0;margin-top:1px}.form-alert span{color:var(--color-danger);font-size:12.5px;font-weight:600;line-height:1.45}.recip-row.removing .opt-sub,.recip-row.removing .row-toggle{color:var(--color-danger)}.recip-subhead{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-faint);padding:8px 4px 4px;font-size:11px;font-weight:700}.recip-subhead:first-child{padding-top:2px}.recip-pager{border-top:1px solid var(--color-border);color:var(--color-text-muted);justify-content:center;align-items:center;gap:12px;margin-top:4px;padding:8px 0 2px;font-size:12px;display:flex}.recip-pager button{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:26px;height:26px;color:var(--color-text-muted);border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.recip-pager button:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.recip-pager button:disabled{opacity:.4;cursor:default}.recip-pager button svg{stroke:currentColor;fill:none;stroke-width:2.2px;width:14px;height:14px}.badge.queued,.badge.sending{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary)}.badge.failed{background:color-mix(in srgb, var(--color-danger) 13%, transparent);color:var(--color-danger)}.recip-summary-bar.is-loading{color:var(--color-text-faint)}.thumb-cell img{object-fit:cover;border-radius:8px;width:100%;height:100%}.upload-thumb img{object-fit:cover;border-radius:12px;width:100%;height:100%}.crop-stage{justify-content:center;padding:4px 26px 12px;display:flex}.crop-stage .ReactCrop{max-width:100%}.crop-stage .ReactCrop__image{max-height:60vh}.doc-chip{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:9px;align-items:center;gap:8px;max-width:100%;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.doc-chip:hover{background:var(--color-surface);border-color:var(--color-primary)}.doc-chip svg{stroke:currentColor;fill:none;stroke-width:2px;flex-shrink:0;width:15px;height:15px}.admin-dash-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}@media (max-width:1100px){.admin-dash-grid{grid-template-columns:1fr}}.badge-status.overdue{background:color-mix(in srgb, var(--color-danger) 13%, transparent);color:var(--color-danger)}.badge-status.suspended{background:color-mix(in srgb, var(--color-text-muted) 14%, transparent);color:var(--color-text-muted)}.cell-name-tagged{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.dropzone.dragover{background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));border-color:var(--color-primary)}.import-drop{cursor:pointer}.import-drop.dragover{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));border-color:var(--color-primary)}.import-running{align-items:center;gap:14px;padding:30px 8px;display:flex}.import-running-name{color:var(--color-text);font-size:14px;font-weight:700}.import-running-sub{color:var(--color-text-muted);margin-top:3px;font-size:12.5px;line-height:1.5}.stat-card.clickable{cursor:pointer;text-align:left;width:100%;font:inherit;transition:border-color .12s,box-shadow .12s}.stat-card.clickable:hover{border-color:color-mix(in srgb, var(--color-primary) 45%, var(--color-border))}.stat-card.clickable.active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary) inset}.stat-caption{color:var(--color-text-muted);font-size:12px}.suspend-stage{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.suspend-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ui-radius);text-align:center;width:440px;max-width:100%;padding:34px 30px 28px;box-shadow:0 10px 30px #0000000f}.suspend-icon{background:color-mix(in srgb, var(--color-warning) 14%, transparent);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 18px;display:flex}.suspend-icon svg{width:27px;height:27px;stroke:var(--color-warning);fill:none;stroke-width:2px}.suspend-title{letter-spacing:-.3px;color:var(--color-text);margin:0 0 10px;font-size:19px;font-weight:800}.suspend-message{color:var(--color-text-muted);margin:0 0 24px;font-size:14px;line-height:1.6}.suspend-amount{color:var(--color-text);font-size:14px}.suspend-amount b{color:var(--color-danger)}.field>.selectbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px 14px;padding-right:36px}.upload-pair{grid-template-columns:1fr 1fr;gap:24px;display:grid}.upload-pair .field-hint{max-width:260px}.upload-thumb.invalid{border-color:var(--color-danger);border-style:solid}table.table-orgs{table-layout:fixed;width:100%;min-width:880px}table.table-orgs th,table.table-orgs td{padding-left:10px;padding-right:10px}table.table-orgs th:first-child,table.table-orgs td:first-child{padding-left:18px}table.table-orgs th:last-child,table.table-orgs td:last-child{padding-right:14px}.table-card:has(>table.table-orgs){overflow-x:auto}table.table-orgs td.cell-name{overflow-wrap:anywhere}table.table-orgs th.col-inapp,table.table-orgs td.cell-inapp{text-align:center}.cell-inapp svg{fill:none;width:17px;height:17px;stroke:var(--color-success);stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.cell-inapp .no{color:var(--color-text-faint)}.contact-left-note{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:10px;margin:0 0 18px;padding:10px 14px;font-size:13px;line-height:1.5}
