:root{--side:#182139;--bg:#f7f8fb;--line:#d9dee8;--txt:#222b3a}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--txt);font-size:13px}.topbar{height:48px;position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:5px 9px}.hamb{width:34px;height:34px;font-size:19px;border:1px solid #cbd5e1;background:#eef4ff;border-radius:7px}.logout{margin-left:auto;background:#ffe7ee;color:#a4003e;text-decoration:none;padding:6px 9px;border-radius:7px;font-weight:700}.sidebar{position:fixed;left:0;top:0;bottom:0;width:220px;background:var(--side);z-index:80;padding:8px;transform:translateX(-100%);transition:.2s;overflow:auto}.nav-open .sidebar{transform:none}.shade{display:none;position:fixed;inset:0;background:#0006;z-index:70}.nav-open .shade{display:block}.brand{display:flex;align-items:center;gap:7px;color:#fff;font-weight:800;font-size:14px;padding:4px 3px 8px}.brand img{width:30px;height:30px;border-radius:50%;object-fit:cover}.sidebar a{display:flex;align-items:center;min-height:32px;text-decoration:none;color:#1d2433;background:#e8f3ff;margin:4px 0;padding:5px 8px;border-radius:7px;font-weight:700;font-size:12px}.sidebar a:nth-of-type(2n){background:#efe9ff}.sidebar a:nth-of-type(3n){background:#e7f8ed}.sidebar a:nth-of-type(4n){background:#fff1da}.sidebar a:nth-of-type(5n){background:#fdeaf2}.wrap{padding:8px;max-width:1500px;margin:auto}.wrap h2{font-size:17px;margin:4px 0 8px}.card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px;margin-bottom:7px}.grid,.stats3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.stat{padding:7px 5px;border-radius:8px;border:1px solid var(--line);background:#eef7ff;text-align:center;font-size:11px;min-height:48px}.stat b{display:block;font-size:14px;margin-top:3px}.stat:nth-child(3n+2){background:#eaf8ef}.stat:nth-child(3n){background:#fff0f0}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;border-radius:6px;padding:5px 8px;min-height:28px;font-size:11px;font-weight:700;cursor:pointer;text-decoration:none;color:#1e293b;background:#e8efff}.btn.green{background:#dff6e8}.btn.orange{background:#ffefd7}.btn.purple{background:#efe3ff}.btn.red{background:#ffe4e4}.btn.gray{background:#f3f4f6}.actions3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.tablebox{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}table{border-collapse:collapse;width:max-content;min-width:100%;font-size:11px}th,td{border-bottom:1px solid var(--line);padding:6px 7px;white-space:nowrap;text-align:left}th{position:sticky;top:0;background:#fff5ce;z-index:1}.frow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.fg label{display:block;font-size:10px;font-weight:700;margin-bottom:2px}.fg input,.fg select{width:100%;height:29px;padding:4px 6px;border:1px solid #cbd2df;border-radius:6px;background:white;font-size:11px}.docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.doc{background:#fff;border:1px solid var(--line);border-radius:8px;padding:4px;text-align:center}.doc b{font-size:9px}.preview{height:78px;background:#f5f5f5;border:1px dashed #bcc5d2;border-radius:6px;margin-top:3px;display:flex;align-items:center;justify-content:center;overflow:hidden}.preview img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center center}.doc.photo .preview img{width:100%;height:100%;object-fit:contain;object-position:center center}.muted{color:#697386;font-size:10px}.msg{padding:7px;border-radius:7px;background:#e8f8ed;border:1px solid #b7e3c5;margin-bottom:7px}.err{background:#ffe9e9;border-color:#f2b6b6}.row-actions{display:flex;gap:3px;flex-wrap:nowrap}.fixed-first th:nth-child(1),.fixed-first td:nth-child(1){position:sticky;left:0;background:#fff;z-index:2}.fixed-first th:nth-child(1){background:#fff5ce;z-index:3}.photo-sm{width:32px;height:32px;border-radius:5px;object-fit:cover}.late{color:#b91c1c;font-weight:800}.ok{color:#047857;font-weight:800}@media(max-width:900px){.frow{grid-template-columns:repeat(2,1fr)}.wrap{padding:6px}.topbar b{font-size:13px}.sidebar{width:205px}table{font-size:10px}}@media(max-width:520px){.stats3,.grid,.actions3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{font-size:9px;padding:5px 3px;min-height:44px}.stat b{font-size:12px}.btn{font-size:9.5px;padding:4px 5px;min-height:26px}.docs{grid-template-columns:repeat(3,minmax(0,1fr))}.preview{height:72px}.frow{grid-template-columns:1fr 1fr}}
/* V5 compact document editor */
.doc-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:3px}.doc-tools button{min-height:23px;padding:2px 3px;font-size:9px;border:1px solid #cbd5e1;border-radius:5px;background:#f3f7ff}.ssst-editor{display:none;position:fixed;inset:0;background:#0009;z-index:999;align-items:center;justify-content:center;padding:10px}.ssst-editor.open{display:flex}.ssst-editor-box{width:min(94vw,680px);background:white;border-radius:10px;padding:8px}.ssst-editor-box canvas{width:100%;height:auto;max-height:62vh;background:#111;touch-action:none}.ssst-editor-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:6px}.ssst-editor-actions button{min-height:30px;border:1px solid #cbd5e1;border-radius:6px;background:#eef4ff;font-weight:700}.compact-head{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.compact-head .btn{min-width:0}.filter-btn{border:0;background:transparent;font-size:12px;padding:0 2px;cursor:pointer}.filter-input{display:none;width:90px!important;height:22px!important;font-size:9px!important}.filter-open .filter-input{display:block}.agent-filter{height:27px;font-size:10px;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.secret-box{width:68px!important;height:27px!important;font-size:10px!important;text-align:center}
/* V12 compact action + summary search */
.compact-actions{gap:2px;flex-wrap:wrap;max-width:245px}.compact-actions .btn{min-height:22px;padding:2px 5px;font-size:8.5px;border-radius:4px;font-weight:700}.summary-search{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.summary-search #summarySearch{height:27px;min-width:120px;flex:1;border:1px solid #ccd3df;border-radius:6px;padding:4px 6px;font-size:10px}.member-tools{display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding:5px 7px}
@media(max-width:520px){.compact-actions{max-width:190px}.compact-actions .btn{font-size:8px;padding:2px 4px;min-height:21px}}

/* V15 tablet + mobile readability */
@media (min-width:521px) and (max-width:1100px){
  body{font-size:14px}.wrap{padding:10px}.topbar{height:52px}.topbar b{font-size:15px}.sidebar{width:230px}
  .frow{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.fg label{font-size:11px}.fg input,.fg select{height:36px;font-size:13px;padding:6px 8px}
  .docs{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.preview{height:115px}.doc b{font-size:10px}.doc-tools button{min-height:29px;font-size:10px}
  .btn{font-size:11px;min-height:30px;padding:5px 8px}.stat{min-height:56px;font-size:11px}.stat b{font-size:15px}
  table{font-size:11px}th,td{padding:7px 8px}.photo-sm{width:42px;height:42px}
}
@media (max-width:700px){.member-biodata{grid-template-columns:1fr 1fr!important}.doc-view-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.member-biodata{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.member-biodata .item{background:#fff;border:1px solid var(--line);border-radius:7px;padding:6px;min-height:44px}.member-biodata .item small{display:block;color:#697386;font-size:9px}.member-biodata .item b{font-size:11px;word-break:break-word}.doc-view-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.doc-view-grid .docview{border:1px solid var(--line);border-radius:7px;background:#fff;padding:5px;text-align:center}.doc-view-grid img{width:100%;height:120px;object-fit:contain;background:#f6f7f9;border-radius:5px}.photo-fallback{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:5px;background:#f3f4f6;font-size:9px;color:#697386}.dupwarn{color:#b91c1c;font-weight:700;font-size:10px}.dupgood{color:#047857;font-weight:700;font-size:10px}

/* V-filter: compact per-column filter in every list header */
.tablebox th{position:relative}
.ssst-col-filter{display:inline-flex;align-items:center;margin-left:5px;vertical-align:middle;position:relative}
.ssst-filter-btn{border:0;background:transparent;padding:1px 3px;line-height:1;font-size:13px;cursor:pointer;color:inherit}
.ssst-filter-input{display:none;position:absolute;z-index:40;top:22px;right:0;width:130px;height:28px;padding:3px 6px;border:1px solid #9aa4b2;border-radius:5px;background:#fff;color:#111;font-size:12px;box-shadow:0 2px 8px rgba(0,0,0,.18)}


/* FINAL SSST FILTER: identical compact toggle on desktop + mobile */
.tablebox th{overflow:visible!important}
.ssst-col-filter{display:inline-flex!important;align-items:center!important;margin-left:4px!important;vertical-align:middle!important;position:relative!important;width:auto!important}
.ssst-filter-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:25px!important;height:24px!important;min-width:25px!important;padding:0!important;border:1px solid #9aa4b2!important;border-radius:4px!important;background:#f7f7f7!important;color:#111!important;font-size:15px!important;line-height:1!important;cursor:pointer!important}
.ssst-filter-input{display:none!important;position:absolute!important;z-index:9999!important;top:calc(100% + 4px)!important;left:0!important;right:auto!important;width:130px!important;max-width:65vw!important;height:28px!important;margin:0!important;padding:3px 6px!important;border:1px solid #9aa4b2!important;border-radius:5px!important;background:#fff!important;color:#111!important;font-size:12px!important;line-height:normal!important;box-shadow:0 2px 8px rgba(0,0,0,.18)!important}
.ssst-col-filter.open .ssst-filter-input{display:block!important}
@media(max-width:700px){
 .ssst-col-filter{margin-left:3px!important}
 .ssst-filter-btn{width:25px!important;height:24px!important;min-width:25px!important;font-size:15px!important}
 .ssst-filter-input{width:130px!important;max-width:65vw!important;height:28px!important;font-size:12px!important}
}

.page-form-scroll{
  max-height:calc(100dvh - 58px);
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
  touch-action:pan-y;
  padding-bottom:18px;
}
.page-form-scroll::-webkit-scrollbar{width:7px}
.page-form-scroll::-webkit-scrollbar-thumb{background:#b8c1ce;border-radius:8px}
@media(max-width:700px){
  .page-form-scroll{
    max-height:calc(100dvh - 58px);
    padding-bottom:24px;
  }
}
