/* RAYKR blue admin design system. Kept separate from the original Vue build. */
:root:root {
  --primary:#2457c5;--success:#16816d;--warning:#b77619;--danger:#d75256;--violet:#7361b7;
  --bg:#f4f6f8;--card:#fff;--text:#252a33;--muted:#7d8188;
  --el-color-primary:#2457c5;--el-color-primary-rgb:36,87,197;
  --el-color-primary-light-3:#6689d6;--el-color-primary-light-5:#92abe2;--el-color-primary-light-7:#bdcdee;
  --el-color-primary-light-8:#d3ddf3;--el-color-primary-light-9:#e9eef9;--el-color-primary-dark-2:#1d469e;
  --el-color-success:#16816d;--el-color-success-light-9:#edf7f3;--el-color-warning:#b77619;
  --el-color-danger:#d75256;--el-color-danger-light-9:#fff0f0;
  --el-text-color-primary:#252a33;--el-text-color-regular:#535860;--el-text-color-secondary:#7d8188;
  --el-border-color:#dfe2e6;--el-border-color-light:#e8eaed;--el-border-color-lighter:#eff0f2;
  --el-border-radius-base:8px;--el-fill-color-light:#f5f6f8;--el-component-size:38px;
  --el-font-family:Inter,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;
}
html.rk-admin.rk-admin body {background:var(--bg);color:var(--text);font-family:var(--el-font-family);font-size:14px;line-height:1.55}
html.rk-admin.rk-admin body *,html.rk-admin.rk-admin body *::before,html.rk-admin.rk-admin body *::after {box-sizing:border-box}
html.rk-admin.rk-admin body button,html.rk-admin.rk-admin body input,html.rk-admin.rk-admin body select,html.rk-admin.rk-admin body textarea {font-family:inherit}
html.rk-admin.rk-admin body a {color:var(--primary)}
html.rk-admin.rk-admin body button:focus-visible,html.rk-admin.rk-admin body a:focus-visible,html.rk-admin.rk-admin body [role='button']:focus-visible,html.rk-admin.rk-admin body [role='menuitem']:focus-visible {outline:3px solid #869dc5;outline-offset:4px}
/* Text fields already draw their focus border on the component wrapper. */
html.rk-admin.rk-admin body .el-input__inner:focus,html.rk-admin.rk-admin body .el-textarea__inner:focus {outline:none;outline-offset:0}
html.rk-admin.rk-admin body ::selection {background:#cad5e7;color:#1a2c4c}
html.rk-admin.rk-admin body .layout {background:var(--bg)}
html.rk-admin.rk-admin body .sidebar {width:240px;background:#2457c5;color:#fff;border:0;padding:20px 14px 0;z-index:40}
html.rk-admin.rk-admin body .sidebar .logo {height:75px;padding:2px 15px 22px;border:0;gap:11px;position:relative;flex-shrink:0}
html.rk-admin.rk-admin body .sidebar .logo>.el-icon {width:39px;height:39px;background:#fff;color:#2457c5!important;border-radius:12px;padding:9px;font-size:24px!important;box-shadow:0 3px 10px #193d8a20}
html.rk-admin.rk-admin body .sidebar .logo>span {font-size:22px;letter-spacing:2px;color:#fff;line-height:1.15}
html.rk-admin.rk-admin body .sidebar .logo>span::after {content:'任务管理系统';display:block;letter-spacing:2px;color:#dee6f6;font-size:10px;font-weight:400;margin-top:6px}
html.rk-admin.rk-admin body .side-menu {background:transparent;--el-menu-bg-color:transparent;--el-menu-text-color:#fff;--el-menu-hover-bg-color:#1d469e;--el-menu-active-color:#2457c5;padding:35px 0 0;position:relative;flex:0 0 auto}
html.rk-admin.rk-admin body .side-menu::before {content:'工作空间';position:absolute;left:18px;top:9px;font-size:10px;letter-spacing:2px;color:#dee6f6}
html.rk-admin.rk-admin body .side-menu .el-menu-item {border-radius:9px;margin:5px 0;height:48px;line-height:48px;padding-left:17px!important;color:#fff;font-size:13px;gap:4px;transition:background .18s,color .18s}
html.rk-admin.rk-admin body .side-menu .el-menu-item .el-icon {font-size:19px;color:inherit;margin-right:10px;width:20px}
html.rk-admin.rk-admin body .side-menu .el-menu-item:hover {background:#1d469e;color:#fff}
html.rk-admin.rk-admin body .side-menu .el-menu-item.is-active {background:#fff;color:#2457c5;font-weight:600;box-shadow:0 4px 14px #193d8a20}
html.rk-admin.rk-admin body .side-menu .el-menu-item.is-active::after {content:'';width:5px;height:5px;border-radius:50%;background:#2457c5;margin-left:auto}
.rk-side-note {margin:auto 10px 20px;flex-shrink:0;padding:17px 14px;border:1px solid #ffffff40;border-radius:11px;color:#fff;font-size:12px;line-height:1.8;background:#1d469e}
.rk-side-note svg {color:#fff;width:23px;height:23px;margin-bottom:7px;display:block}
.rk-side-note strong {display:block;color:#fff;font-size:12px;font-weight:500;margin-bottom:4px}
.rk-side-note span {color:#dee6f6;font-size:11px}
html.rk-admin.rk-admin body .sidebar-bottom {margin-top:auto;border-top:1px solid #313947;padding:20px 10px 25px}
html.rk-admin.rk-admin body .sidebar .el-avatar {background:#364154;color:#d1dae8}
html.rk-admin.rk-admin body .sidebar .u-name {font-size:12px;color:#e3e6eb}
html.rk-admin.rk-admin body .sidebar .u-role {color:#8d97a7;font-size:10px;margin-top:3px}
html.rk-admin.rk-admin body .sidebar .u-more {color:#a7adb8}
html.rk-admin.rk-admin body .sidebar-bottom {display:none}
.rk-user-account {padding-left:18px;border-left:1px solid #e5e7eb;display:flex;align-items:center}
html.rk-admin.rk-admin body .rk-user-account .user-line {display:flex;align-items:center}
html.rk-admin.rk-admin body .rk-user-account .rk-account-trigger {width:auto;height:auto;min-height:44px;display:inline-flex;align-items:center;gap:10px;padding:4px 8px;border-radius:9px;color:#5d6674;font-style:normal;cursor:pointer;transition:background .15s}
html.rk-admin.rk-admin body .rk-user-account .rk-account-trigger:hover {background:#eff1f5}
html.rk-admin.rk-admin body .rk-account-trigger>.el-avatar {width:34px;height:34px;flex-shrink:0;background:#dee6f6!important;color:#1d469e!important}
html.rk-admin.rk-admin body .rk-account-trigger>.u-info {display:flex;flex-direction:column;gap:3px;min-width:55px;text-align:left;line-height:1.4}
html.rk-admin.rk-admin body .rk-account-trigger .u-name {font-size:12px;font-weight:600;color:#3a4353}
html.rk-admin.rk-admin body .rk-account-trigger .u-role {font-size:10px;font-weight:400;color:#8c919a}
html.rk-admin.rk-admin body .rk-account-trigger>svg {width:12px;height:12px;margin-left:5px;flex-shrink:0;color:#8a919d}
html.rk-admin.rk-admin body .main {margin-left:240px;min-width:0;width:calc(100% - 240px)}
.rk-topbar {height:73px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7e9ec;background:#ffffffd9;gap:20px}
.rk-breadcrumb {font-size:12px;display:flex;align-items:center;gap:13px;color:#8b8f95}
.rk-breadcrumb strong {font-weight:500;color:#3c424d}
.rk-top-actions {display:flex;align-items:center;gap:18px;font-size:12px;color:#7f848d}
.rk-top-actions time {font-variant-numeric:tabular-nums}
.rk-icon-button {width:35px;height:35px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e6e8ec;border-radius:10px;color:#5c6370;cursor:pointer;position:relative}
.rk-icon-button:hover {background:#f0f3f7;color:#2457c5;border-color:#cad1dc}
.rk-icon-button svg {width:17px;height:17px}
.rk-notify-dot {width:6px;height:6px;background:#d75256;border-radius:50%;position:absolute;right:7px;top:7px;border:1px solid #fff}
.rk-admin-link {padding-left:17px;border-left:1px solid #e5e7eb;color:#414a59;display:flex;align-items:center;gap:7px;text-decoration:none;font-weight:500}
.rk-admin-link svg {width:16px;height:16px;color:#2457c5}
html.rk-admin.rk-admin body .page {max-width:1510px;padding:32px 40px 52px;margin:auto}
html.rk-admin.rk-admin body .page-title {font-size:26px;letter-spacing:-.7px;font-weight:650;margin-bottom:27px;position:relative;min-height:48px;gap:12px;align-items:center;line-height:1.3}
.rk-page-caption {font-size:12px;font-weight:400;color:#8a8e94;letter-spacing:0;line-height:1.7;margin-top:8px;max-width:560px}
html.rk-admin.rk-admin body .page-title>span {display:block}
.rk-eyebrow {font-size:10px;letter-spacing:2px;color:#7a8291;font-weight:600;margin-bottom:8px}
.rk-overview {margin:0 0 27px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 28px;background:#edf4ff;border:1px solid #dce0e6;border-radius:14px;position:relative;overflow:hidden}
.rk-overview::after {content:'';width:220px;height:220px;border:1px solid #d3d8e2;border-radius:50%;position:absolute;right:75px;top:-140px;pointer-events:none}
.rk-overview .rk-overview-title {color:#234679;font-size:18px;letter-spacing:-.4px;font-weight:600;margin:0 0 6px}
.rk-overview p {color:#727a87;font-size:12px;margin:0;line-height:1.8}
.rk-overview-date {display:flex;align-items:center;gap:13px;flex-shrink:0;padding-left:26px;border-left:1px solid #cdd2db;z-index:1}
.rk-overview-date b {font-size:35px;font-weight:500;line-height:1.1;color:#4d586b;font-variant-numeric:tabular-nums;letter-spacing:-2px}
.rk-overview-date span {font-size:11px;line-height:1.9;color:#78808f}
html.rk-admin.rk-admin body .stat-grid {grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-bottom:30px}
html.rk-admin.rk-admin body .stat-card {position:relative;border:1px solid #e4e6ea;border-radius:12px;padding:21px 20px 17px;box-shadow:0 2px 3px #14243e02;min-width:0;transition:transform .18s,border-color .18s,box-shadow .18s}
html.rk-admin.rk-admin body .stat-card .lbl {font-size:12px;font-weight:500;color:#7c8189;line-height:1.5;padding-right:20px}
html.rk-admin.rk-admin body .stat-card .lbl::before {display:none}
html.rk-admin.rk-admin body .stat-card .val {color:#2c333f;font-size:29px;font-weight:600;letter-spacing:-.8px;margin-top:15px;line-height:1.3;font-variant-numeric:tabular-nums}
html.rk-admin.rk-admin body .stat-card .val.danger {color:#bd5b5b}
html.rk-admin.rk-admin body .stat-card .val.warning {color:#a67b36}
html.rk-admin.rk-admin body .stat-card .val.violet {color:#7c6caa}
.rk-stat-icon {position:absolute;right:17px;top:19px;color:#7b8699;display:flex;width:22px;height:22px}
.rk-stat-icon svg {width:19px;height:19px}
.rk-stat-foot {margin-top:15px;font-size:10px;color:#979aa0;display:flex;justify-content:space-between;align-items:center;gap:4px}
.rk-stat-foot svg {width:12px;height:12px;color:#929ba9}
html.rk-admin.rk-admin body .stat-card[role='button'] {cursor:pointer}
html.rk-admin.rk-admin body .stat-card[role='button']:hover {transform:translateY(-3px);border-color:#a9b5cb;box-shadow:0 6px 20px #26334a10}
html.rk-admin.rk-admin body .stat-card[aria-pressed='true'] {border-color:#8696b3;background:#f7f9fb;box-shadow:0 0 0 1px #8696b3}
.rk-section-label {display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;font-size:16px;font-weight:600;color:#353d4a;letter-spacing:-.2px}
.rk-section-label small {font-size:11px;font-weight:400;color:#95999f}
html.rk-admin.rk-admin body .filter-bar {margin:0 0 0;border:1px solid #e4e6ea;border-bottom:0;border-radius:12px 12px 0 0;box-shadow:none;padding:18px 20px 17px;justify-content:space-between;gap:15px}
html.rk-admin.rk-admin body .filter-bar .fb-status {gap:0}
html.rk-admin.rk-admin body .fb-status .el-radio-group {gap:5px;background:#f4f5f7;border-radius:8px;padding:4px;flex-wrap:wrap;display:flex}
html.rk-admin.rk-admin body .fb-status .el-radio-button__inner {border:0!important;background:transparent;box-shadow:none!important;border-radius:6px!important;padding:9px 12px;color:#82878f;font-size:11px;line-height:1.3;transition:background .18s,color .18s}
html.rk-admin.rk-admin body .fb-status .el-radio-button__original-radio:checked+.el-radio-button__inner {color:#263b5e;background:#fff;font-weight:600;box-shadow:0 1px 4px #27314312!important}
html.rk-admin.rk-admin body .fb-conds {gap:8px!important;flex-wrap:wrap}
html.rk-admin.rk-admin body .fb-contract {width:120px}
html.rk-admin.rk-admin body .fb-search {width:195px}
html.rk-admin.rk-admin body .el-input__wrapper,html.rk-admin.rk-admin body .el-select__wrapper {border-radius:8px;box-shadow:0 0 0 1px #e3e5e9 inset;background:#fff;min-height:37px}
html.rk-admin.rk-admin body .el-input__wrapper:hover,html.rk-admin.rk-admin body .el-select__wrapper:hover {box-shadow:0 0 0 1px #bac0cb inset}
html.rk-admin.rk-admin body .el-input__wrapper.is-focus {box-shadow:0 0 0 2px #899bb9 inset}
html.rk-admin.rk-admin body .el-input__inner,html.rk-admin.rk-admin body .el-select__placeholder {font-size:12px}
html.rk-admin.rk-admin body .el-input__inner::placeholder {color:#a0a4a9}
html.rk-admin.rk-admin body .el-textarea__inner {border-radius:8px;line-height:1.8;padding:12px 14px;font-size:13px}
html.rk-admin.rk-admin body .el-button {border-radius:8px;min-height:36px;height:auto;padding:9px 15px;font-size:12px;font-weight:500;transition:background .15s,transform .15s}
html.rk-admin.rk-admin body .el-button--primary:not(.is-text):not(.is-link):not(.is-plain) {background:#2457c5;border-color:#2457c5;box-shadow:0 3px 7px #2457c512;color:#fff}
html.rk-admin.rk-admin body .el-button--primary:not(.is-text):not(.is-link):not(.is-plain):hover {background:#1d469e;border-color:#1d469e}
html.rk-admin.rk-admin body .el-button.is-text,html.rk-admin.rk-admin body .el-button.is-link {padding:6px 8px;min-height:28px}
html.rk-admin.rk-admin body .el-button+.el-button {margin-left:6px}
html.rk-admin.rk-admin body .el-card {border:1px solid #e4e6ea;border-radius:12px;box-shadow:none!important;overflow:visible;background:#fff}
html.rk-admin.rk-admin body .el-card__header {padding:19px 23px;border-color:#edeff1;color:#3e4550;font-weight:600;font-size:14px}
html.rk-admin.rk-admin body .el-card__html.rk-admin.rk-admin body {padding:23px}
html.rk-admin.rk-admin body .el-table {--el-table-border-color:#edeff1;--el-table-header-bg-color:#f9fafb;--el-table-row-hover-bg-color:#f5f7fa;--el-table-text-color:#5a5f68;--el-table-header-text-color:#8c9097;font-size:12px;background:#fff}
/* Tables show complete content; narrow screens use the table's horizontal scroll. */
html.rk-admin.rk-admin body .el-table .el-table__cell {text-overflow:clip}
html.rk-admin.rk-admin body .el-table .cell,
html.rk-admin.rk-admin body .el-table .cell.el-tooltip {padding:0 12px;line-height:1.65;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:normal;min-width:0}
html.rk-admin.rk-admin body .el-table .badge {max-width:100%;white-space:normal;vertical-align:middle;overflow-wrap:anywhere}
html.rk-admin.rk-admin body .el-table .badge::before {display:none}
html.rk-admin.rk-admin body .el-table .el-tag {max-width:100%;height:auto;min-height:24px;white-space:normal}
html.rk-admin.rk-admin body .el-table .el-tag__content {white-space:normal;overflow-wrap:anywhere;text-overflow:clip}
html.rk-admin.rk-admin body .el-table th.el-table__cell {font-weight:500;font-size:11px;height:49px;background:#f8f9fa}
html.rk-admin.rk-admin body .el-table td.el-table__cell {height:70px;padding:13px 0}
html.rk-admin.rk-admin body .el-table tr:hover td.el-table__cell {background:#f5f7fa}
html.rk-admin.rk-admin body .el-table::before,html.rk-admin.rk-admin body .el-table__inner-wrapper::before {display:none}
html.rk-admin.rk-admin body .task-table {border:1px solid #e4e6ea;border-top:0;border-radius:0 0 12px 12px;overflow:hidden}
html.rk-admin.rk-admin body .task-table .el-table__html.rk-admin.rk-admin body td:nth-child(2) {color:#2f3643;font-size:13px;font-weight:550}
html.rk-admin.rk-admin body .mono {font-family:'SFMono-Regular',Consolas,monospace;color:#92979f;font-size:11px}
html.rk-admin.rk-admin body .money {font-variant-numeric:tabular-nums;font-weight:550;color:#48505f}
html.rk-admin.rk-admin body .badge {font-size:10px;line-height:19px;padding:3px 9px;border-radius:5px;gap:5px;font-weight:500}
html.rk-admin.rk-admin body .badge::before {content:'';width:4px;height:4px;background:currentColor;border-radius:50%;flex-shrink:0}
html.rk-admin.rk-admin body .badge.doing,html.rk-admin.rk-admin body .badge.pay-2 {background:#edf4fa;color:#5888aa}
html.rk-admin.rk-admin body .badge.soon {background:#fbf3e5;color:#b28642}
html.rk-admin.rk-admin body .badge.overdue,html.rk-admin.rk-admin body .badge.pay-4 {background:#fbeeed;color:#c06765}
html.rk-admin.rk-admin body .badge.deliver,html.rk-admin.rk-admin body .badge.contract-1 {background:#f0edf8;color:#8974ad}
html.rk-admin.rk-admin body .badge.archived,html.rk-admin.rk-admin body .badge.contract-0,html.rk-admin.rk-admin body .badge.pay-1 {background:#f1f2f4;color:#95999f}
html.rk-admin.rk-admin body .badge.contract-2,html.rk-admin.rk-admin body .badge.pay-3 {background:#eaf5ee;color:#528866}
html.rk-admin.rk-admin body .el-tag {border:0;border-radius:5px;font-size:10px;--el-tag-bg-color:#f1f3f5;--el-tag-text-color:#6c7482}
html.rk-admin.rk-admin body .el-tag--warning {--el-tag-bg-color:#fbf3e5;--el-tag-text-color:#ac844b}
html.rk-admin.rk-admin body .el-tag--danger {--el-tag-bg-color:#fbeeed;--el-tag-text-color:#c06765}
html.rk-admin.rk-admin body .el-tag--success {--el-tag-bg-color:#eaf5ee;--el-tag-text-color:#528866}
html.rk-admin.rk-admin body .pager {margin-top:19px}
html.rk-admin.rk-admin body .el-pagination {--el-pagination-font-size:12px;gap:4px}
html.rk-admin.rk-admin body .el-pagination button,html.rk-admin.rk-admin body .el-pager li {border-radius:6px}
html.rk-admin.rk-admin body .el-empty {padding:55px 20px;min-height:260px}
html.rk-admin.rk-admin body .el-empty__image {width:88px!important;opacity:.65}
html.rk-admin.rk-admin body .el-empty__description p {font-size:13px;color:#848992}
.rk-empty-help {font-size:11px;color:#a1a4aa;text-align:center;margin-top:8px;line-height:1.9}
html.rk-admin.rk-admin body .task-table .el-table__empty-block {min-height:230px;display:flex;flex-direction:column;justify-content:center;padding:35px 20px}
html.rk-admin.rk-admin body .task-table .el-table__empty-text {line-height:2;font-size:13px;color:#808896}
html.rk-admin.rk-admin body .detail-head {padding:0 0 24px;border-bottom:1px solid #dfe2e8;margin-bottom:24px;align-items:center}
html.rk-admin.rk-admin body .dh-title {font-size:26px;color:#2f3641;line-height:1.5;letter-spacing:-.6px}
html.rk-admin.rk-admin body .dh-top {gap:10px}
html.rk-admin.rk-admin body .detail-page .block {margin-bottom:22px}
html.rk-admin.rk-admin body .info-grid {gap:24px}
html.rk-admin.rk-admin body .info-cell .k {font-size:11px;color:#999ca2}
html.rk-admin.rk-admin body .info-cell .v {font-size:14px;color:#404856;margin-top:8px}
html.rk-admin.rk-admin body .content-text {padding:18px 20px;background:#f6f7f9;border:1px solid #edeff2;border-radius:9px;margin-top:25px;color:#747981}
html.rk-admin.rk-admin body .detail-page .stat-grid {grid-template-columns:repeat(auto-fit,minmax(145px,1fr));margin:0!important}
html.rk-admin.rk-admin body .detail-page .stat-card {background:#f7f8fa;border:0;box-shadow:none;min-height:105px}
html.rk-admin.rk-admin body .detail-page .stat-card .val {font-size:23px!important}
html.rk-admin.rk-admin body .progress-line {margin-top:23px;padding:15px 0 0;border-top:1px solid #edeff2}
html.rk-admin.rk-admin body .el-progress-bar__inner {background:#7b8ba8}
html.rk-admin.rk-admin body .cost-summary {background:#f4f6f8;padding:15px 18px;margin-bottom:20px;color:#838994}
html.rk-admin.rk-admin body .follow-form {gap:12px;align-items:flex-end;margin-bottom:27px}
html.rk-admin.rk-admin body .el-timeline-item__node {background:#abb5c6}
html.rk-admin.rk-admin body .el-timeline-item__tail {border-left-color:#e7eaee}
html.rk-admin.rk-admin body .el-timeline-item__timestamp {font-size:10px;color:#9fa3a9}
html.rk-admin.rk-admin body .el-timeline-item__content {font-size:12px;line-height:1.8;color:#5c636f}
html.rk-admin.rk-admin body .form-page {max-width:1200px}
html.rk-admin.rk-admin body .form-page .el-card__html.rk-admin.rk-admin body {padding:16px 36px 28px}
html.rk-admin.rk-admin body .el-form-item {margin-bottom:24px}
html.rk-admin.rk-admin body .el-form-item__label {font-size:12px;color:#747983}
html.rk-admin.rk-admin body .el-divider--horizontal {margin:33px 0 28px;border-color:#e7eaee}
html.rk-admin.rk-admin body .el-divider__text {font-size:14px;font-weight:600;color:#374359;padding:0 14px 0 0}
html.rk-admin.rk-admin body .el-divider__text.is-left {left:0}
html.rk-admin.rk-admin body .field-hint {font-size:10px;color:#a0a4aa}
html.rk-admin.rk-admin body .form-actions {border-top:1px solid #e7eaee;padding-top:22px;margin-top:30px;position:sticky;bottom:0;background:#fffffff2;backdrop-filter:blur(10px);z-index:5}
html.rk-admin.rk-admin body .form-actions>.el-button:last-child {min-width:130px}
html.rk-admin.rk-admin body .plan-row {border:1px solid #e0e4ea;background:#f8f9fb;padding:15px;border-radius:10px;gap:10px}
html.rk-admin.rk-admin body .settings-page .block {max-width:100%;margin-bottom:22px}
html.rk-admin.rk-admin body .settings-page .s-form {max-width:730px}
html.rk-admin.rk-admin body .hint,html.rk-admin.rk-admin body .sub-tag {font-size:11px;color:#8f95a0;line-height:1.8}
html.rk-admin.rk-admin body .el-alert {border-radius:8px;font-size:12px}
html.rk-admin.rk-admin body .el-dialog {border-radius:16px;padding:26px;max-width:calc(100vw - 28px);box-shadow:0 20px 100px #151f3126}
html.rk-admin.rk-admin body .el-dialog__title {font-size:18px;font-weight:600;color:#333c4e}
html.rk-admin.rk-admin body .el-dialog__html.rk-admin.rk-admin body {padding:22px 0}
html.rk-admin.rk-admin body .el-dialog__footer {border-top:1px solid #e6e9ee;padding-top:20px}
html.rk-admin.rk-admin body .el-overlay {background-color:#161e2c59;backdrop-filter:blur(3px)}
html.rk-admin.rk-admin body .el-drawer {border-radius:16px 0 0 16px}
html.rk-admin.rk-admin body .el-message-box {border-radius:15px;padding:20px}
html.rk-admin.rk-admin body .el-message {border-radius:10px}
html.rk-admin.rk-admin body .chart {margin-top:8px}
html.rk-admin.rk-admin body .page:has(.chart)>.stat-grid {grid-template-columns:repeat(4,minmax(0,1fr))}
html.rk-admin.rk-admin body .page:has(.chart) .stat-card .val {font-size:24px!important}
html.rk-admin.rk-admin body .page:has(.chart)>.el-card {margin-top:22px!important}
html.rk-admin.rk-admin body .notify-item {background:#f4f6f8;padding:15px;border:1px solid #e6e9ee;border-radius:10px}
html.rk-admin.rk-admin body .notify-item.unread {background:#eff2f7;border-color:#d3dae6}
/* Login: editorial, quiet, with one clear primary action. */
html.rk-admin.rk-admin body .login-page {min-height:100vh;background:#f6f7f9;align-items:stretch}
html.rk-admin.rk-admin body .brand-pane {flex:0 0 48%;background:#122847;min-height:100vh;padding:0;position:relative}
html.rk-admin.rk-admin body .brand-pane::before {content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 90%,#33425b88,transparent 65%),linear-gradient(130deg,transparent 50%,#5d6a800c 50%);pointer-events:none}
html.rk-admin.rk-admin body .brand-inner {min-height:100vh;width:100%;height:auto;padding:70px 12%;justify-content:center}
html.rk-admin.rk-admin body .brand-badge {width:54px;height:54px;border-radius:15px;background:#c5d0e3;color:#293447;border:0;margin-bottom:37px;box-shadow:none}
html.rk-admin.rk-admin body .brand-badge .el-icon {color:#2e3c54!important}
html.rk-admin.rk-admin body .brand-title {font-size:34px;line-height:1.65;letter-spacing:-.8px;font-weight:600;max-width:390px;color:#eaeef4}
html.rk-admin.rk-admin body .brand-en {font-size:10px;letter-spacing:3.8px;color:#a6b0c1;opacity:1;margin:12px 0 32px}
html.rk-admin.rk-admin body .brand-desc {font-size:13px;line-height:2.2;color:#9ea7b8;opacity:1;margin:0 0 35px}
html.rk-admin.rk-admin body .brand-features {gap:15px}
html.rk-admin.rk-admin body .brand-features li {padding:0;border:0;background:none;font-size:12px;color:#bcc4d1;border-radius:0;backdrop-filter:none}
html.rk-admin.rk-admin body .bf-dot {background:#a2b2cd;box-shadow:0 0 0 4px #9caac312;width:5px;height:5px;margin-right:13px}
html.rk-admin.rk-admin body .brand-deco {background:none;border:1px solid #727e9225;pointer-events:none}
html.rk-admin.rk-admin body .brand-deco.d1 {width:500px;height:500px;right:-270px;top:-160px}
html.rk-admin.rk-admin body .brand-deco.d2 {width:380px;height:380px;left:-200px;bottom:-200px}
html.rk-admin.rk-admin body .form-pane {padding:65px 50px;position:relative;align-items:center}
html.rk-admin.rk-admin body .form-pane::before {content:'RAYKR / ADMIN WORKSPACE';position:absolute;top:43px;left:50px;color:#9198a5;font-size:10px;letter-spacing:2px}
html.rk-admin.rk-admin body .login-card {max-width:390px;background:transparent;padding:30px 8px;box-shadow:none;border-radius:0}
html.rk-admin.rk-admin body .pc-title {margin-bottom:37px}
html.rk-admin.rk-admin body .pc-title h2 {font-size:30px;letter-spacing:-1px;font-weight:600;color:#313a49;margin-bottom:12px}
html.rk-admin.rk-admin body .pc-title p {font-size:12px;color:#8f95a0;line-height:1.8}
html.rk-admin.rk-admin body .login-card .el-input__wrapper {background:#fff;border-radius:9px;padding:7px 16px;box-shadow:0 0 0 1px #dadee6 inset;min-height:48px}
html.rk-admin.rk-admin body .login-card .el-form-item {margin-bottom:23px}
html.rk-admin.rk-admin body .login-btn {background:#2457c5;border-radius:9px;box-shadow:0 6px 12px #18253c10;letter-spacing:4px;font-size:14px;height:48px;margin-top:13px}
html.rk-admin.rk-admin body .login-btn:hover {background:#1d469e;box-shadow:0 6px 15px #18253c1a}
html.rk-admin.rk-admin body .foot {color:#a1a6af;font-size:10px;margin-top:30px}
.rk-login-label {font-size:11px;color:#6a7484;margin-bottom:8px;display:block;letter-spacing:.4px}
/* Desktop-first workspace, retaining comfortable touch controls. */
@media(min-width:1600px){html.rk-admin.rk-admin body .page{padding-top:38px}html.rk-admin.rk-admin body .rk-overview{padding:30px 32px}}
@media(min-width:769px) and (max-width:1200px){html.rk-admin.rk-admin body .sidebar{width:205px;padding-left:10px;padding-right:10px}html.rk-admin.rk-admin body .main{margin-left:205px;width:calc(100% - 205px)}html.rk-admin.rk-admin body .page{padding:26px 24px 40px}.rk-topbar{padding:0 24px}html.rk-admin.rk-admin body .stat-grid{gap:10px}html.rk-admin.rk-admin body .stat-card{padding:18px 14px}html.rk-admin.rk-admin body .stat-card .val{font-size:24px}html.rk-admin.rk-admin body .filter-bar{flex-direction:column;align-items:stretch}html.rk-admin.rk-admin body .fb-conds{justify-content:flex-end}}
@media(max-width:768px){
  html.rk-admin.rk-admin body .sidebar{display:none}html.rk-admin.rk-admin body .main{margin-left:0;width:100%}html.rk-admin.rk-admin body .rk-topbar{display:none}
  html.rk-admin.rk-admin body .m-header{background:#2457c5;box-shadow:none;padding:15px 18px;position:sticky;top:0}
  html.rk-admin.rk-admin body .m-logo{font-size:15px;letter-spacing:1px}html.rk-admin.rk-admin body .m-tabbar{border-top:1px solid #dfe3e9;box-shadow:0 -4px 16px #27324405}
  html.rk-admin.rk-admin body .m-tabbar .tab{font-size:10px;padding:12px 0;color:#8e949f}html.rk-admin.rk-admin body .m-tabbar .tab.router-link-active{color:#203f76}
  html.rk-admin.rk-admin body .page{padding:23px 17px 30px}html.rk-admin.rk-admin body .page-title{font-size:23px;margin-bottom:21px;align-items:flex-start}
  .rk-eyebrow{font-size:9px;margin-bottom:7px}.rk-page-caption{font-size:11px;margin-top:7px;max-width:260px}
  .rk-overview{padding:19px 18px;border-radius:12px;margin-bottom:20px}.rk-overview .rk-overview-title{font-size:15px}.rk-overview p{font-size:10px}.rk-overview-date{display:none}
  html.rk-admin.rk-admin body .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}
  html.rk-admin.rk-admin body .stat-card{padding:17px 16px 13px;min-height:119px;border-radius:11px;box-shadow:none}
  html.rk-admin.rk-admin body .stat-card:last-child:nth-child(odd){grid-column:1/-1}html.rk-admin.rk-admin body .stat-card .val{font-size:25px;margin-top:10px}
  html.rk-admin.rk-admin body .stat-card .lbl{font-size:11px}.rk-stat-foot{font-size:9px;margin-top:10px}.rk-stat-icon{right:14px;top:15px}
  .rk-section-label{font-size:15px}.rk-section-label small{font-size:9px}
  html.rk-admin.rk-admin body .filter-bar{background:transparent;border:0;padding:0;margin-bottom:15px;gap:12px;border-radius:0;flex-direction:column;align-items:stretch}
  html.rk-admin.rk-admin body .filter-bar .fb-status{margin:0;padding:0;overflow:auto;width:100%}
  html.rk-admin.rk-admin body .fb-status .el-radio-group{background:#e9ebef;padding:4px;gap:2px;flex-wrap:nowrap}
  html.rk-admin.rk-admin body .fb-status .el-radio-button__inner{font-size:11px;padding:9px 11px;border-radius:6px!important;background:transparent;box-shadow:none!important}
  html.rk-admin.rk-admin body .fb-status .el-radio-button__original-radio:checked+.el-radio-button__inner{background:#fff;color:#283f67}
  html.rk-admin.rk-admin body .fb-conds{flex-wrap:nowrap;gap:8px}html.rk-admin.rk-admin body .fb-contract{width:120px}html.rk-admin.rk-admin body .fb-search{width:auto;flex:1}
  html.rk-admin.rk-admin body .fb-conds .el-input__wrapper,html.rk-admin.rk-admin body .fb-conds .el-select__wrapper{border-radius:8px;box-shadow:0 0 0 1px #dde0e6 inset;padding:5px 12px}
  html.rk-admin.rk-admin body .task-cards{gap:12px}html.rk-admin.rk-admin body .task-card{padding:17px 18px;border-radius:12px;border:1px solid #dde1e7;box-shadow:none}
  html.rk-admin.rk-admin body .task-card::before{width:3px;top:17px;bottom:17px;border-radius:0 2px 2px 0;background:#a5afc1}
  html.rk-admin.rk-admin body .tc-title{font-size:16px;line-height:1.6;color:#343d4b;margin:12px 0}html.rk-admin.rk-admin body .tc-meta{font-size:10px;color:#888e99}
  html.rk-admin.rk-admin body .tc-foot{border-color:#ebeef2;padding-top:13px;margin-top:14px}html.rk-admin.rk-admin body .tc-foot .money{font-size:13px}
  html.rk-admin.rk-admin body .el-card__html.rk-admin.rk-admin body{padding:19px}html.rk-admin.rk-admin body .el-card__header{padding:17px 19px;font-size:13px}
  html.rk-admin.rk-admin body .el-button{min-height:39px;font-size:12px}html.rk-admin.rk-admin body .el-button.is-text,html.rk-admin.rk-admin body .el-button.is-link{min-height:34px}
  html.rk-admin.rk-admin body .detail-head{gap:15px;padding-bottom:21px;margin-bottom:20px}html.rk-admin.rk-admin body .dh-title{font-size:23px}
  html.rk-admin.rk-admin body .info-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}html.rk-admin.rk-admin body .info-cell{background:#f3f5f8;padding:13px;border-radius:8px}
  html.rk-admin.rk-admin body .info-cell .k{font-size:10px}html.rk-admin.rk-admin body .info-cell .v{font-size:12px;margin-top:6px;overflow-wrap:anywhere}
  html.rk-admin.rk-admin body .detail-page .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.rk-admin.rk-admin body .detail-page .stat-card{min-height:auto}
  html.rk-admin.rk-admin body .detail-page .stat-card .val{font-size:18px!important}html.rk-admin.rk-admin body .detail-page .stat-card:last-child:nth-child(odd){grid-column:auto}
  html.rk-admin.rk-admin body .content-text{font-size:12px;padding:15px;margin-top:18px}html.rk-admin.rk-admin body .follow-form{flex-direction:column;align-items:stretch}
  html.rk-admin.rk-admin body .pay-card{border:1px solid #dde1e7;box-shadow:none;border-radius:12px;padding:17px}
  html.rk-admin.rk-admin body .pay-card .pc-nums{background:#f0f3f7;border-radius:8px;padding:14px 10px}html.rk-admin.rk-admin body .pay-card .pc-cond{font-size:11px;line-height:1.9}
  html.rk-admin.rk-admin body .m-actionbar,html.rk-admin.rk-admin body .m-save{background:#fffffff2;border-top:1px solid #dee2ea;box-shadow:0 -4px 15px #26334a08;padding:12px 17px}
  html.rk-admin.rk-admin body .form-page .el-card__html.rk-admin.rk-admin body{padding:0 19px 22px}html.rk-admin.rk-admin body .form-actions{padding-top:20px}html.rk-admin.rk-admin body .field-hint{margin-left:0;display:block;font-size:10px}
  html.rk-admin.rk-admin body .plan-card{background:#f2f5f9;border-color:#d9dee7}html.rk-admin.rk-admin body .plan-label{font-size:11px}html.rk-admin.rk-admin body .plan-add{min-height:42px;border-color:#c8cfdc}
  html.rk-admin.rk-admin body .m-settings{padding-bottom:85px}html.rk-admin.rk-admin body .mg-title{color:#737d8e;font-size:12px;margin-top:24px;margin-bottom:10px}
  html.rk-admin.rk-admin body .mg-group{border:1px solid #d9dee7;box-shadow:none;border-radius:11px}html.rk-admin.rk-admin body .m-row{min-height:57px;padding:15px}
  html.rk-admin.rk-admin body .mr-label{font-size:12px;color:#3c4759}html.rk-admin.rk-admin body .mr-input{font-size:12px;color:#465061}html.rk-admin.rk-admin body .mr-value{font-size:12px}
  html.rk-admin.rk-admin body .hero-card{background:#26344d;box-shadow:none;border-radius:12px;padding:23px}html.rk-admin.rk-admin body .hc-amount{font-size:32px;letter-spacing:-1px}
  html.rk-admin.rk-admin body .hc-bar{background:#a1b3d3}html.rk-admin.rk-admin body .fn-cell,html.rk-admin.rk-admin body .chart-card{border:1px solid #dbdfe7;box-shadow:none;border-radius:11px}
  html.rk-admin.rk-admin body .user-card{border:1px solid #dbdfe7;box-shadow:none;border-radius:11px}
  html.rk-admin.rk-admin body .el-dialog{padding:22px;width:calc(100vw - 28px)!important;margin-top:10vh!important}html.rk-admin.rk-admin body .el-dialog__html.rk-admin.rk-admin body{padding:18px 0}
  html.rk-admin.rk-admin body .login-page{background:#f2f4f8;display:flex;min-height:100vh}html.rk-admin.rk-admin body .brand-pane{display:none}
  html.rk-admin.rk-admin body .form-pane{margin:0;padding:90px 28px 50px;align-items:center;flex:1}html.rk-admin.rk-admin body .form-pane::before{left:36px;top:35px;font-size:9px}
  html.rk-admin.rk-admin body .login-card{max-width:390px;padding:25px 8px;background:transparent;box-shadow:none}
  html.rk-admin.rk-admin body .login-card .m-logo{display:block;text-align:left;margin-bottom:35px}html.rk-admin.rk-admin body .m-badge{margin:0 0 22px;background:#26344d;box-shadow:none;border-radius:14px}
  html.rk-admin.rk-admin body .m-logo h1{font-size:25px;color:#333d4e;letter-spacing:-.8px}html.rk-admin.rk-admin body .m-logo .sub{margin-top:10px;color:#7e899b;font-size:11px}
  html.rk-admin.rk-admin body .pc-title{display:none}html.rk-admin.rk-admin body .foot{font-size:10px}
}
.rk-maintenance{background:#fff;border:1px solid #e2e5ea;border-radius:12px;padding:25px;margin-bottom:23px}
.rk-maint-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}
.rk-maint-heading h2{font-size:17px;color:#353f51;margin:0 0 8px;font-weight:600}
.rk-maint-heading p{font-size:12px;color:#808792;margin:0;line-height:1.8}
.rk-maint-help{font-size:11px;line-height:1.9;padding:13px 16px;background:#f2f4f8;color:#798292;border-radius:8px;margin:0 0 22px}
.rk-maint-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}
.rk-maint-stat{background:#f7f8fa;border:1px solid #e1e5eb;border-radius:9px;text-align:left;padding:13px 16px;cursor:pointer;color:#747e8e;transition:border-color .15s,background .15s}
.rk-maint-stat strong{display:block;font-size:24px;margin-top:8px;color:#435066;font-weight:600;font-variant-numeric:tabular-nums}
.rk-maint-stat>span{font-size:11px}.rk-maint-stat.overdue strong{color:#be5d5b}.rk-maint-stat.due strong{color:#b18743}
.rk-maint-stat:hover,.rk-maint-stat.selected{border-color:#8f9db4;background:#eceff5}
.rk-maint-filters{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:18px}
.rk-maint-items{display:flex;flex-direction:column;gap:12px}
.rk-maint-item{border:1px solid #e1e4ea;border-left:3px solid #a5b0c4;border-radius:9px;padding:18px 20px;position:relative;overflow:hidden}
.rk-maint-item.soon{border-left-color:#c9a263}.rk-maint-item.due{border-left-color:#d29b5f}.rk-maint-item.overdue{border-left-color:#ce7974}
.rk-maint-item.done,.rk-maint-item.canceled{border-left-color:#c4cad4;background:#f9fafb}
.rk-maint-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.rk-maint-category{font-size:10px;color:#80899b;letter-spacing:.4px}
.rk-maint-item h3{font-size:15px;font-weight:600;color:#3d4656;margin:6px 0 12px;overflow-wrap:anywhere}
.rk-maint-state{font-size:10px;padding:3px 9px;border-radius:5px;white-space:nowrap;background:#eaedf3;color:#62718c}
.rk-maint-state.soon,.rk-maint-state.due{background:#fbf3e5;color:#b28642}.rk-maint-state.overdue{background:#fbeeed;color:#c06765}
.rk-maint-state.done,.rk-maint-state.canceled{background:#eceef1;color:#8c94a1}
.rk-maint-meta{display:flex;gap:12px 25px;flex-wrap:wrap;font-size:11px;color:#848c99;line-height:1.8}
.rk-maint-item.overdue .rk-maint-due{color:#bd6761;font-weight:500}
.rk-maint-parent{font-size:11px;margin-bottom:10px;color:#818b9b}.rk-maint-parent a{color:#586781;text-decoration:none}.rk-maint-parent a:hover{text-decoration:underline}
.rk-maint-resource,.rk-maint-content{font-size:12px;line-height:1.9;color:#6b7380;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0}
.rk-maint-resource{color:#818b9b;font-size:11px}
.rk-maint-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:15px;border-top:1px solid #e9ecf2;padding-top:12px}
.rk-maint-completed{font-size:11px;color:#848d9c;margin-top:13px;overflow-wrap:anywhere}
.rk-maint-empty{text-align:center;padding:35px 14px;color:#88909f;font-size:12px;line-height:1.9}.rk-maint-empty strong{font-weight:500;color:#747f92}.rk-maint-empty p{font-size:11px;margin:9px 0 0}
.rk-maint-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.rk-maint-custom-cycle{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f2f4f8;border:1px solid #dee2ea;border-radius:8px;margin:-10px 0 25px;color:#5d6b84;font-size:12px}
.rk-maint-custom-cycle>.el-select{flex:1;min-width:100px}
.rk-maint-custom-cycle>.el-input-number{width:155px;flex-shrink:0}
@media(max-width:480px){.rk-maint-custom-cycle{padding:12px;gap:8px}.rk-maint-custom-cycle>.el-input-number{width:115px}.rk-maint-custom-cycle>.el-select{min-width:80px}}
.rk-maint-field-help{font-size:11px;line-height:1.9;color:#868fa0;margin:-12px 0 22px}
.rk-maint-error{padding:10px 14px;background:#fff1ef;border:1px solid #f3d5cf;border-radius:8px;font-size:12px;color:#bd635b;margin-bottom:18px}
.rk-maint-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px;font-size:11px;color:#818b9b}
.rk-maint-focused{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding:12px 15px;margin-bottom:18px;background:#eceff5;border-radius:8px;color:#5d6c86}
.rk-maint-complete-title{font-size:14px;color:#4b576c;margin:0 0 22px;font-weight:500}
.rk-maint-mail-note{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:11px 15px;margin-bottom:20px;background:#fbf5e8;border:1px solid #f0e5c9;border-radius:8px;color:#a18b55;font-size:11px;line-height:1.8}
.rk-suppliers{background:#fff;border:1px solid var(--el-border-color);border-radius:12px;padding:25px;margin-bottom:23px}
.rk-supplier-heading,.rk-supplier-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.rk-supplier-heading h2{font-size:17px;font-weight:600;color:var(--text);margin:0 0 8px}
.rk-supplier-heading p,.rk-supplier-footnote{font-size:11px;line-height:1.9;color:#748197;margin:0}
.rk-supplier-heading>.el-button{flex-shrink:0}
.rk-supplier-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0 16px}
.rk-supplier-list{display:grid;gap:14px}
.rk-supplier-card{border:1px solid #e2e8f1;border-left:3px solid var(--primary);border-radius:9px;padding:18px 20px;min-width:0}
.rk-supplier-card.ended,.rk-supplier-card.replaced{border-left-color:#a3adbb;background:#fafbfd}
.rk-supplier-card h3{margin:0;font-size:15px;font-weight:600;color:var(--text);overflow-wrap:anywhere}
.rk-supplier-state{font-size:10px;padding:4px 9px;border-radius:5px;background:var(--el-color-primary-light-9);color:var(--primary);flex-shrink:0}
.rk-supplier-card.ended .rk-supplier-state,.rk-supplier-card.replaced .rk-supplier-state{background:#edf0f4;color:#69788d}
.rk-supplier-service{font-size:12px;color:#57677d;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;margin:12px 0 16px}
.rk-supplier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 24px}
.rk-supplier-info{min-width:0;font-size:11px;line-height:1.8}
.rk-supplier-info>span{display:block;color:#8591a2;margin-bottom:3px}
.rk-supplier-info>strong{display:block;color:#4e5f75;font-weight:500;overflow-wrap:anywhere}
.rk-supplier-history{font-size:11px;line-height:1.9;color:#69788d;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0}
.rk-supplier-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;border-top:1px solid #edf0f5;margin-top:16px;padding-top:12px}
.rk-supplier-footnote{margin:18px 0 0}
.rk-supplier-empty{text-align:center;padding:25px 12px;color:#8390a1;font-size:12px;line-height:1.9}
.rk-supplier-dialog-note{font-size:12px;color:#526780;background:var(--el-color-primary-light-9);padding:12px 15px;border-radius:8px;margin:0 0 20px;line-height:1.9;overflow-wrap:anywhere}
@media(max-width:768px){.rk-suppliers{padding:18px}.rk-supplier-heading{flex-direction:column;gap:12px}.rk-supplier-card{padding:16px}.rk-supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rk-supplier-heading p{font-size:11px}}
.rk-voucher-upload{width:100%;min-width:0}
.rk-voucher-file-input{display:none}
.rk-voucher-help{font-size:11px;line-height:1.9;color:#7d899c;margin:8px 0 0;overflow-wrap:anywhere}
.rk-voucher-queue{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}
.rk-voucher-queue>li{display:flex;align-items:center;gap:6px;border:1px solid #e3e8f0;border-radius:8px;padding:10px;background:#f8fafd;min-width:0}
.rk-voucher-file-info{flex:1;min-width:0;line-height:1.7}
.rk-voucher-file-info>strong{display:block;font-size:11px;font-weight:500;color:#465771;overflow-wrap:anywhere}
.rk-voucher-file-info>span{display:block;font-size:10px;color:#8793a4}
.rk-voucher-file-info>.rk-voucher-failed{color:#c06765}
.rk-voucher-queue .el-button{flex-shrink:0}
.rk-voucher-records{background:#fff;border:1px solid var(--el-border-color);border-radius:12px;padding:25px;margin-bottom:23px}
.rk-voucher-records>h2{font-size:17px;font-weight:600;margin:0;color:var(--text)}
.rk-voucher-ledger{display:grid;gap:12px;margin-top:18px}
.rk-voucher-record{border:1px solid #e4e9f0;border-radius:9px;padding:15px 18px;min-width:0}
.rk-voucher-record.is-deleted{background:#f8f9fb}
.rk-voucher-record-head{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;font-size:12px;color:#596a82}
.rk-voucher-record-head>strong{font-weight:600}.rk-voucher-record-head>span{font-size:11px;color:#8390a3}
.rk-voucher-downloads{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:8px}
html.rk-admin.rk-admin body .rk-voucher-downloads .el-button{max-width:100%;white-space:normal;text-align:left;line-height:1.8;margin-left:0}
.rk-voucher-downloads .el-button>span{overflow-wrap:anywhere;min-width:0}
.rk-voucher-empty{font-size:12px;line-height:1.9;color:#8591a2;text-align:center;padding:24px 8px 8px}
@media(max-width:768px){.rk-voucher-records{padding:18px}.rk-voucher-record{padding:14px}}
.rk-profit-summary{padding:24px;background:#fff;border:1px solid #dfe6f0;border-radius:12px;margin-bottom:26px;min-width:0}
.rk-profit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.rk-profit-heading h2{margin:0 0 7px;font-size:17px;font-weight:600;color:var(--text)}
.rk-profit-heading p,.rk-profit-note{font-size:11px;line-height:1.9;color:#7b889b;margin:0;overflow-wrap:anywhere}
.rk-profit-count{font-size:11px;color:#647998;background:#f2f6fc;padding:7px 11px;border-radius:7px;flex-shrink:0}
.rk-profit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.rk-profit-card{border:1px solid #e5eaf2;border-radius:10px;padding:19px 18px;min-width:0;background:#fff}
.rk-profit-card.is-featured{border-color:#c5d6f1;background:linear-gradient(135deg,#eef4ff,#fbfdff)}
.rk-profit-label{font-size:12px;font-weight:500;color:#65748b;display:block}
.rk-profit-value{display:block;margin-top:14px;font-size:clamp(19px,1.7vw,28px);font-weight:600;color:#2457c5;letter-spacing:-.5px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.5}
.rk-profit-card>p{font-size:10px;line-height:1.9;color:#8894a5;margin:10px 0 0}
.rk-profit-card.is-negative .rk-profit-value{color:#c05155}
.rk-profit-card.is-negative.is-featured{background:#fff7f6;border-color:#f0d1cf}
.rk-profit-note{margin-top:16px}
.rk-profit-error{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:18px;color:#bc5b5d;background:#fff4f3;border-radius:8px;font-size:12px}
@media(max-width:1200px){.rk-profit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rk-profit-value{font-size:25px}}
@media(max-width:768px){.rk-profit-summary{padding:18px;margin-bottom:16px}.rk-profit-heading{flex-direction:column;gap:10px}.rk-profit-grid{gap:10px}.rk-profit-card{padding:15px 12px}.rk-profit-value{font-size:20px}.rk-profit-heading p{font-size:10px}.rk-profit-count{padding:5px 9px}}
@media(max-width:360px){.rk-profit-grid{grid-template-columns:1fr}}
.rk-directory-intro{padding:18px 22px;background:#eef4fd;border:1px solid #d6e3f4;border-radius:10px;margin-bottom:20px}
.rk-directory-intro>strong{font-size:13px;font-weight:600;color:#31578e}.rk-directory-intro>p{font-size:11px;color:#73849c;line-height:1.9;margin:8px 0 0}
.rk-directory-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.rk-directory-search{width:360px;max-width:100%}.rk-directory-filters{margin-left:auto;display:flex;gap:5px}
.rk-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rk-directory-card{min-width:0;background:#fff;border:1px solid #e0e6ee;border-radius:11px;padding:22px}
.rk-directory-card.is-disabled{background:#f9fafc}.rk-directory-card h3{font-size:15px;font-weight:600;color:var(--text);margin:0;overflow-wrap:anywhere}
.rk-directory-contact{margin:16px 0 0;display:grid;gap:10px}.rk-directory-contact>div{display:flex;gap:12px;font-size:11px;line-height:1.8}
.rk-directory-contact dt{flex:0 0 55px;color:#8b97a7}.rk-directory-contact dd{margin:0;color:#566780;overflow-wrap:anywhere;min-width:0}
.rk-directory-notes{font-size:11px;color:#7d899a;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;margin:15px 0 0}
.rk-directory-empty{text-align:center;background:#fff;border:1px solid #e3e8ef;border-radius:10px;padding:45px 20px;color:#75869e;font-size:12px}.rk-directory-empty strong{font-weight:500}.rk-directory-empty p{font-size:11px;margin:10px 0 0}
.rk-directory-snapshot-note{font-size:11px;color:#72849d;line-height:1.9;background:#f0f5fd;padding:11px 14px;border-radius:7px;margin:-8px 0 20px}
@media(max-width:1050px){.rk-directory-grid{grid-template-columns:1fr}.rk-directory-filters{margin-left:0}}
@media(max-width:768px){.rk-directory-search{flex:1;min-width:210px}.rk-directory-toolbar{gap:8px}.rk-directory-filters{width:100%;margin-top:4px}.rk-directory-card{padding:18px}.rk-directory-intro{padding:15px}.rk-directory-page .page-title{flex-wrap:wrap}}
@media(max-width:768px){.rk-maintenance{padding:19px 16px}.rk-maint-heading{flex-direction:column;gap:13px}.rk-maint-heading h2{font-size:16px}.rk-maint-help{font-size:10px;padding:12px;line-height:2}.rk-maint-summary{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.rk-maint-stat{padding:12px 14px}.rk-maint-item{padding:16px 14px}.rk-maint-meta{gap:7px 15px;font-size:10px}.rk-maint-item h3{font-size:14px}.rk-maint-form-grid{grid-template-columns:1fr;gap:0}.rk-maint-state{font-size:9px}.rk-maint-actions{flex-wrap:wrap;gap:3px}.rk-maint-actions .el-button{font-size:11px}.rk-maint-heading .el-button{width:100%}.rk-maint-pager{gap:8px;justify-content:center}}
@media(prefers-reduced-motion:reduce){html.rk-admin.rk-admin body *,html.rk-admin.rk-admin body *::before,html.rk-admin.rk-admin body *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.rk-transaction-remark{margin:10px 0;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;color:#334155}.rk-transaction-remark strong{font-weight:600;color:#64748b}

.rk-task-profit{margin-top:18px;padding:18px 20px;border:1px solid #dce5f5;border-radius:12px;background:#f6f8fd}.rk-task-profit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rk-task-profit-card .lbl{font-size:12px;color:#64748b;margin-bottom:8px}.rk-task-profit-value,.rk-task-profit-margin{font-size:23px;color:#2457c5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.rk-task-profit.is-negative .rk-task-profit-value,.rk-task-profit.is-negative .rk-task-profit-margin{color:#c53e47}.rk-task-profit p{font-size:11px;color:#64748b;line-height:1.8;margin:12px 0 0}@media(max-width:768px){.rk-task-profit{padding:15px}.rk-task-profit-grid{gap:12px}.rk-task-profit-value,.rk-task-profit-margin{font-size:20px}}

/* Compact task-detail suppliers and transaction records. */
.rk-suppliers,.rk-voucher-records{padding:18px 20px;margin-bottom:16px}
.rk-supplier-heading{gap:12px;align-items:center}
.rk-supplier-heading h2{font-size:16px;margin-bottom:4px}
.rk-voucher-records>h2{font-size:16px}
.rk-supplier-heading p,.rk-supplier-footnote{line-height:1.7}
.rk-supplier-tabs{margin:12px 0 10px;gap:5px}
.rk-supplier-list{gap:10px}
.rk-suppliers .rk-supplier-card{padding:12px 14px}
.rk-suppliers .rk-supplier-card-head{gap:10px;align-items:center}
.rk-suppliers .rk-supplier-card h3{font-size:13px}
.rk-suppliers .rk-supplier-state{padding:2px 7px}
.rk-suppliers .rk-supplier-service{margin:6px 0 8px;line-height:1.7;font-size:11px}
.rk-supplier-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:6px 14px}
.rk-supplier-info{display:flex;align-items:baseline;gap:6px;line-height:1.7}
.rk-supplier-info>span{display:inline;margin:0;flex-shrink:0}
.rk-supplier-info>strong{display:inline;min-width:0}
.rk-suppliers .rk-supplier-actions{margin-top:8px;padding-top:6px;gap:5px}
.rk-suppliers .rk-supplier-history{margin-top:6px;line-height:1.7}
.rk-supplier-footnote{margin-top:10px}
.rk-suppliers .rk-supplier-empty{padding:14px 10px;margin:0}
html.rk-admin.rk-admin body .rk-suppliers .el-button{min-height:30px;height:auto;padding:6px 10px;font-size:11px}
html.rk-admin.rk-admin body .rk-suppliers .el-button.is-link{padding:4px 3px;min-height:26px}
.rk-voucher-records>.rk-voucher-help{margin-top:4px;line-height:1.7}
.rk-voucher-ledger{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;align-items:start}
.rk-voucher-record{padding:11px 13px}
.rk-voucher-record-head{gap:6px 12px;line-height:1.7}
.rk-transaction-meta{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:5px;font-size:11px;line-height:1.7;color:#7d899c;overflow-wrap:anywhere}
.rk-transaction-meta>span{min-width:0}
.rk-transaction-remark{font-size:11px;font-weight:400;line-height:1.7;margin:5px 0 0;color:#7d899c}
.rk-transaction-remark strong{font-size:inherit;font-weight:400;color:inherit}
.rk-voucher-downloads{margin-top:5px;gap:0}
html.rk-admin.rk-admin body .rk-voucher-downloads .el-button{font-size:11px;padding:3px 0;min-height:24px;height:auto}
.rk-voucher-empty{padding:14px 8px 4px;margin:0}
@media(max-width:1000px){.rk-voucher-ledger{grid-template-columns:1fr}}
@media(max-width:768px){.rk-suppliers,.rk-voucher-records{padding:15px}.rk-supplier-heading{align-items:flex-start;gap:8px}.rk-supplier-tabs{margin:10px 0}.rk-suppliers .rk-supplier-card{padding:11px 12px}.rk-supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}.rk-supplier-info{flex-wrap:wrap;gap:0 5px}.rk-voucher-record{padding:11px 12px}.rk-transaction-meta{gap:2px 10px}}

/* Shared compact maintenance layout for task details and reminder overview. */
.rk-maintenance{padding:18px 20px;margin-bottom:16px}
.rk-maintenance .rk-maint-heading{gap:12px;align-items:center;margin-bottom:9px}
.rk-maintenance .rk-maint-heading h2{font-size:16px;margin-bottom:4px}
.rk-maintenance .rk-maint-heading p{font-size:11px;line-height:1.7}
.rk-maintenance .rk-maint-help{font-size:11px;line-height:1.7;padding:8px 11px;margin-bottom:12px}
.rk-maintenance .rk-maint-summary{gap:8px;margin-bottom:12px}
.rk-maintenance .rk-maint-stat{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;min-width:0}
.rk-maintenance .rk-maint-stat strong{font-size:19px;margin:0}
.rk-maintenance .rk-maint-filters{margin-bottom:10px}
.rk-maintenance .rk-maint-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px}
.rk-maintenance .rk-maint-item{padding:12px 14px;min-width:0}
.rk-maintenance .rk-maint-item-head{gap:8px;align-items:baseline}
.rk-maintenance .rk-maint-item-head>div{display:flex;align-items:baseline;gap:7px;min-width:0}
.rk-maintenance .rk-maint-category{flex-shrink:0;letter-spacing:0}
.rk-maintenance .rk-maint-item h3{font-size:13px;line-height:1.7;margin:0 0 6px;min-width:0}
.rk-maintenance .rk-maint-state{font-size:10px;padding:2px 7px;flex-shrink:0}
.rk-maintenance .rk-maint-meta{font-size:11px;gap:3px 12px;line-height:1.7}
.rk-maintenance .rk-maint-resource,.rk-maintenance .rk-maint-content,.rk-maintenance .rk-maint-completed{font-size:11px;line-height:1.7;margin:6px 0 0}
.rk-maintenance .rk-maint-actions{gap:5px;flex-wrap:wrap;margin-top:8px;padding-top:6px}
.rk-maintenance .rk-maint-empty{padding:16px 10px;font-size:12px}
.rk-maintenance .rk-maint-empty p{margin-top:4px}
.rk-maintenance .rk-maint-pager{margin-top:12px}
.rk-maintenance .rk-maint-mail-note{padding:8px 11px;margin-bottom:12px}
html.rk-admin.rk-admin body .rk-maintenance .el-button{min-height:30px;height:auto;padding:6px 10px;font-size:11px}
html.rk-admin.rk-admin body .rk-maintenance .el-button.is-text,html.rk-admin.rk-admin body .rk-maintenance .el-button.is-link{min-height:26px;padding:4px 5px}
@media(max-width:1000px){.rk-maintenance .rk-maint-items{grid-template-columns:1fr}}
@media(max-width:768px){.rk-maintenance{padding:15px}.rk-maintenance .rk-maint-heading{align-items:flex-start;gap:8px}.rk-maintenance .rk-maint-heading>.el-button{width:auto}.rk-maintenance .rk-maint-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.rk-maintenance .rk-maint-stat{padding:7px 10px}.rk-maintenance .rk-maint-item{padding:11px 12px}.rk-maintenance .rk-maint-help{padding:8px 10px}}

.rk-maintenance.is-global .rk-maint-parent{margin:0 0 6px;line-height:1.7;overflow-wrap:anywhere}.rk-maintenance.is-global .rk-maint-focused{padding:8px 11px;margin-bottom:12px;font-size:11px}

.rk-section-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:1510px;margin:0 auto;padding:20px 40px 0}.rk-section-tabs>span{font-size:11px;color:#7d899c;margin-left:8px}.rk-task-customer{display:flex;gap:6px 12px;align-items:baseline;flex-wrap:wrap;padding:10px 12px;background:#f5f7fc;border-radius:8px;margin-bottom:16px;font-size:12px;color:#4b5f7c}.rk-task-customer small{font-size:11px;color:#7d899c;margin-left:auto}.rk-task-customer span{overflow-wrap:anywhere;min-width:0}@media(max-width:768px){.rk-section-tabs{padding:14px 17px 0;gap:6px}.rk-section-tabs>span{width:100%;margin:0}.rk-task-customer small{width:100%;margin:0}.rk-section-tabs .el-button{font-size:12px}}

@media(min-width:769px) and (max-width:1200px){.rk-section-tabs{padding-left:24px;padding-right:24px}}

.rk-customer-info{min-width:0}.rk-customer-info .v{overflow-wrap:anywhere;white-space:normal}

/* Shared installment controls for desktop and mobile. */
html.rk-admin.rk-admin body .plan-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0 20px}
html.rk-admin.rk-admin body .plan-controls .plan-add{width:auto;margin:0;min-width:120px}
html.rk-admin.rk-admin body .plan-count{font-size:12px;color:#76849b}

html.rk-admin.rk-admin body .plan-edit-hint{font-size:12px;line-height:1.7;color:#76849b;margin:0 0 12px}
