    .main.work-main {
      flex: 1;
      min-width: 0;
      overflow: auto;
      background: #f5f7fa;
      padding: 0.75rem 1rem 1.5rem;
    }
    .work-breadcrumb {
      font-size: 0.6875rem;
      color: #888;
      margin-bottom: 0.5rem;
      letter-spacing: -0.02em;
    }
    .work-breadcrumb a { color: #666; text-decoration: none; }
    .work-breadcrumb a:hover { text-decoration: underline; }
    .work-breadcrumb .sep { margin: 0 0.35rem; color: #bbb; }
    .work-page-hd {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      margin-bottom: 0.75rem;
    }
    .work-page-title {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      font-size: 1.125rem;
      font-weight: 700;
      color: #222;
      letter-spacing: -0.03em;
    }
    .work-page-title .fav {
      color: #f59e0b;
      font-size: 0.875rem;
      cursor: pointer;
      opacity: 0.85;
    }
    .work-actions { display: flex; flex-wrap: wrap; gap: 0.375rem; }
    .btn-portal {
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      padding: 0.4rem 0.85rem;
      font-size: 0.75rem;
      font-weight: 600;
      border-radius: 3px;
      border: 1px solid transparent;
      text-decoration: none;
      cursor: pointer;
      letter-spacing: -0.02em;
      line-height: 1.3;
    }
    .btn-portal-primary {
      background: #00205b;
      color: #fff;
      border-color: #00205b;
    }
    .btn-portal-primary:hover { background: #003080; }
    .btn-portal-secondary {
      background: #fff;
      color: #333;
      border-color: #c5cdd8;
    }
    .btn-portal-secondary:hover { background: #f8fafc; }
    .btn-portal-search {
      background: #3366ff;
      color: #fff;
      border-color: #3366ff;
    }
    .btn-portal-search:hover { background: #2952cc; }
    .btn-portal-reset {
      background: #fff;
      color: #555;
      border-color: #c5cdd8;
    }
    .search-panel {
      background: #fff;
      border: 1px solid #d1d5db;
      margin-bottom: 0.75rem;
    }
    .search-panel table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.75rem;
    }
    .search-panel th {
      width: 10%;
      min-width: 5.5rem;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      padding: 0.45rem 0.65rem;
      font-weight: 600;
      color: #444;
      text-align: left;
      vertical-align: middle;
    }
    .search-panel td {
      border: 1px solid #e5e7eb;
      padding: 0.35rem 0.5rem;
      background: #fff;
    }
    .search-panel input,
    .search-panel select {
      width: 100%;
      max-width: 14rem;
      border: 1px solid #d1d5db;
      padding: 0.3rem 0.45rem;
      font-size: 0.75rem;
      font-family: inherit;
      border-radius: 2px;
    }
    .search-panel-foot {
      display: flex;
      justify-content: flex-end;
      gap: 0.35rem;
      padding: 0.5rem 0.65rem;
      border-top: 1px solid #e5e7eb;
      background: #fafbfc;
    }
    .table-toolbar {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      margin-bottom: 0.4rem;
      font-size: 0.75rem;
    }
    .table-toolbar .total strong { color: #3366ff; font-weight: 700; }
    .table-toolbar .tools { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem; }
    .table-toolbar select {
      border: 1px solid #d1d5db;
      padding: 0.25rem 0.4rem;
      font-size: 0.75rem;
    }
    .portal-data-table-wrap {
      background: #fff;
      border: 1px solid #d1d5db;
      overflow: auto;
    }
    .portal-data-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.75rem;
    }
    .portal-data-table thead th {
      background: #e8eef5;
      color: #00205b;
      font-weight: 700;
      text-align: center;
      padding: 0.5rem 0.4rem;
      border: 1px solid #d1d5db;
      white-space: nowrap;
    }
    .portal-data-table tbody td {
      border: 1px solid #e5e7eb;
      padding: 0.4rem 0.5rem;
      text-align: center;
      color: #333;
    }
    .portal-data-table tbody tr:nth-child(even) { background: #f9fafb; }
    .portal-data-table tbody tr:hover { background: #eef6ff; }
    .portal-data-table tbody tr.is-selected { background: #dbeafe; }
    .portal-data-table tbody td.text-left { text-align: left; }
    .portal-data-table tbody td a { color: #3366ff; text-decoration: none; }
    .portal-data-table tbody td a:hover { text-decoration: underline; }
    .portal-data-table .empty-row td {
      padding: 2rem;
      color: #888;
      text-align: center;
    }
    .detail-section {
      margin-top: 1rem;
    }
    .detail-section-hd {
      font-size: 0.8125rem;
      font-weight: 700;
      color: #222;
      margin-bottom: 0.4rem;
      padding-bottom: 0.35rem;
      border-bottom: 2px solid #00205b;
    }
    .flash-banner {
      margin-bottom: 0.65rem;
      padding: 0.5rem 0.75rem;
      border-radius: 4px;
      font-size: 0.75rem;
    }
    .flash-banner.ok { background: #ecfdf5; border: 1px solid #a7f3d0; color: #065f46; }
    .flash-banner.err { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }
