/* TFD 2026 final administration refinement layer */

:root{
  --tf-bg:#f5f4ef;
  --tf-surface:#fffefa;
  --tf-surface-soft:#faf8f2;
  --tf-line:#e4e2d9;
  --tf-line-strong:#d4d1c4;
  --tf-ink:#1d2724;
  --tf-muted:#6b7471;
  --tf-green:#255f56;
  --tf-green-dark:#1b4c45;
  --tf-gold:#b9832f;
  --tf-danger:#a64539;
  --tf-warning:#946421;
  --tf-blue:#345f82;
  --tf-radius:15px;
  --tf-shadow:0 10px 28px rgba(31,42,39,.05);
}

/* final admin shell helpers */
.tfd-final-page{display:grid;gap:16px}
.tfd-final-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 23px;border:1px solid var(--tf-line);border-radius:18px;background:var(--tf-surface);box-shadow:var(--tf-shadow)}
.tfd-final-head .kicker{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#94713d}
.tfd-final-head h1{margin:5px 0 0;font-size:24px;line-height:1.18;font-weight:900;letter-spacing:-.035em;color:var(--tf-ink)!important}
.tfd-final-head p{margin:7px 0 0;max-width:760px;color:var(--tf-muted)!important;font-size:12.7px;line-height:1.58}
.tfd-final-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.tfd-final-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid var(--tf-line-strong);border-radius:10px;background:#fff;color:#34423d!important;text-decoration:none;font-size:11.5px;font-weight:850;cursor:pointer}
.tfd-final-btn:hover{background:#f6f4ee;border-color:#c7c3b6}
.tfd-final-btn.primary{background:var(--tf-green);border-color:var(--tf-green);color:#fff!important}
.tfd-final-btn.primary:hover{background:var(--tf-green-dark)}
.tfd-final-btn.warn{background:#fff7e9;border-color:#ead4aa;color:#825819!important}
.tfd-final-btn.danger{background:#fff1ee;border-color:#efc7c0;color:#9a4035!important}
.tfd-final-btn[disabled],.tfd-final-btn.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}

.tfd-final-grid{display:grid;gap:13px}
.tfd-final-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tfd-final-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tfd-final-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tfd-final-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-radius);box-shadow:var(--tf-shadow);overflow:hidden}
.tfd-final-pad{padding:17px}
.tfd-final-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #eceae3;background:#fffefa}
.tfd-final-card-head h2,.tfd-final-card-head h3{margin:0;color:var(--tf-ink);font-size:13.5px;font-weight:900}
.tfd-final-card-head p,.tfd-final-card-head small{display:block;margin:2px 0 0;color:#7c8582;font-size:10.5px;font-weight:650}
.tfd-final-card-body{padding:16px}

.tfd-final-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.tfd-final-stat{position:relative;padding:15px 16px;border:1px solid var(--tf-line);border-radius:13px;background:var(--tf-surface);box-shadow:0 7px 20px rgba(31,42,39,.04);text-decoration:none;color:var(--tf-ink);overflow:hidden}
.tfd-final-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tf-green)}
.tfd-final-stat.gold:before{background:var(--tf-gold)}
.tfd-final-stat.red:before{background:var(--tf-danger)}
.tfd-final-stat.blue:before{background:var(--tf-blue)}
.tfd-final-stat span{display:block;font-size:9.8px;letter-spacing:.07em;text-transform:uppercase;font-weight:900;color:#7b8380}
.tfd-final-stat strong{display:block;margin-top:5px;font-size:25px;line-height:1;font-weight:900;letter-spacing:-.04em;color:#202b27}
.tfd-final-stat small{display:block;margin-top:7px;color:#7b8481;font-size:10px;font-weight:650}
.tfd-final-stat:hover{border-color:#cfccc1;transform:translateY(-1px)}

.tfd-final-tabs{display:flex;gap:6px;overflow-x:auto;padding:7px;border:1px solid var(--tf-line);border-radius:12px;background:rgba(255,254,250,.92);scrollbar-width:thin}
.tfd-final-tabs a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border-radius:8px;text-decoration:none;color:#52605b!important;font-size:10.5px;font-weight:820;white-space:nowrap}
.tfd-final-tabs a:hover{background:#f3f1ea;color:var(--tf-green)!important}
.tfd-final-tabs a.active{background:#26332f;color:#fff!important}

/* forms */
.tfd-final-form{display:grid;gap:12px}
.tfd-final-form.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tfd-final-field{min-width:0}
.tfd-final-field.wide{grid-column:1/-1}
.tfd-final-field label{display:block;margin-bottom:6px;color:#4d5955;font-size:10.8px;font-weight:850}
.tfd-final-field input,.tfd-final-field select,.tfd-final-field textarea{width:100%;min-height:42px;border:1px solid #d9d7ce;border-radius:10px;background:#fff;padding:9px 11px;color:#26312e;font-size:12px;outline:none}
.tfd-final-field textarea{min-height:90px;resize:vertical}
.tfd-final-field input:focus,.tfd-final-field select:focus,.tfd-final-field textarea:focus{border-color:#9f8a61;box-shadow:0 0 0 4px rgba(185,131,47,.09)}
.tfd-final-field small{display:block;margin-top:5px;color:#818987;font-size:9.8px;line-height:1.45}
.tfd-final-check{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #e6e4dc;border-radius:10px;background:#faf9f5;font-size:10.8px;font-weight:750;color:#4f5a56}
.tfd-final-check input{margin-top:2px}
.tfd-final-submitbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-top:1px solid #eceae3;background:#fcfbf7}
.tfd-final-submitbar .note{font-size:10px;color:#7c8582;font-weight:650}

/* compact filters */
.tfd-final-filter{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:13px;border:1px solid var(--tf-line);border-radius:13px;background:var(--tf-surface)}
.tfd-final-filter .actions{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap}
.tfd-final-search{display:flex;align-items:center;gap:8px;min-width:220px}
.tfd-final-search input{width:100%;min-height:38px;border:1px solid #d9d7ce;border-radius:10px;padding:8px 10px;font-size:11.5px}
.tfd-final-count{font-size:10px;color:#78817e;font-weight:800;white-space:nowrap}

/* tables */
.tfd-final-table-wrap{overflow:auto;max-width:100%}
.tfd-final-table{width:100%;border-collapse:separate;border-spacing:0}
.tfd-final-table th{position:sticky;top:0;z-index:2;padding:10px 11px;background:#f4f3ee;color:#626c68;font-size:9.5px;letter-spacing:.065em;text-transform:uppercase;text-align:left;border-bottom:1px solid #deddd5;white-space:nowrap}
.tfd-final-table td{padding:11px;border-bottom:1px solid #eeede7;color:#39443f;font-size:11.5px;vertical-align:top;background:#fffefa}
.tfd-final-table tbody tr:hover td{background:#faf9f4}
.tfd-final-table strong{color:#24302c;font-weight:900}
.tfd-final-table small{display:block;margin-top:2px;color:#7f8784;font-size:9.7px}
.tfd-final-table tr.is-hidden{display:none}
.tfd-final-table .right{text-align:right}
.tfd-final-empty{padding:26px;text-align:center;color:#737d79;font-size:11.5px;font-weight:700}
.tfd-final-empty strong{display:block;margin-bottom:4px;color:#34413d;font-size:13px}

.tfd-status-pill{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #dddcd5;border-radius:999px;background:#f2f1ec;color:#5f6966;font-size:9.5px;font-weight:900;text-transform:capitalize;white-space:nowrap}
.tfd-status-pill.pending,.tfd-status-pill.open,.tfd-status-pill.important{background:#fff5df;border-color:#ecd4a7;color:#875a17}
.tfd-status-pill.approved,.tfd-status-pill.completed,.tfd-status-pill.verified,.tfd-status-pill.ok,.tfd-status-pill.issued{background:#eaf5ef;border-color:#c7dfd2;color:#26624c}
.tfd-status-pill.rejected,.tfd-status-pill.critical,.tfd-status-pill.urgent{background:#fff0ed;border-color:#eec5bd;color:#9b4035}
.tfd-status-pill.needs_correction,.tfd-status-pill.warning,.tfd-status-pill.in_process{background:#eef4f7;border-color:#cfdae2;color:#3d647f}
.tfd-status-pill.closed,.tfd-status-pill.normal{background:#f1f1ed;border-color:#dddcd6;color:#616a67}

/* approval center */
.tfd-approval-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.tfd-approval-pop{position:relative}.tfd-approval-pop>summary{list-style:none}.tfd-approval-pop>summary::-webkit-details-marker{display:none}
.tfd-approval-popbox{position:absolute;right:0;z-index:25;width:300px;margin-top:7px;padding:12px;border:1px solid #deddd5;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(24,35,31,.16)}
.tfd-approval-popbox textarea{width:100%;min-height:90px;border:1px solid #d9d7ce;border-radius:9px;padding:9px;font-size:11.5px}
.tfd-priority{display:inline-flex;align-items:center;gap:5px;font-size:9.5px;font-weight:850;color:#6d7572}.tfd-priority:before{content:"";width:6px;height:6px;border-radius:50%;background:#a8aaa5}.tfd-priority.high:before,.tfd-priority.urgent:before{background:#a64539}.tfd-priority.normal:before{background:#b9832f}

/* notices */
.tfd-notice-layout{display:grid;grid-template-columns:minmax(290px,.8fr) minmax(0,1.5fr);gap:14px}
.tfd-notice-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px 14px;border-bottom:1px solid #eeede7;background:#fffefa}
.tfd-notice-item:last-child{border-bottom:0}.tfd-notice-title{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:900;color:#25312d}.tfd-notice-body{margin-top:4px;color:#68726f;font-size:10.8px;line-height:1.5}.tfd-notice-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.tfd-notice-delete{align-self:center}

/* front office */
.tfd-front-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:14px}
.tfd-front-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}

/* certificates */
.tfd-cert-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:14px}.tfd-cert-tools{display:grid;gap:14px}.tfd-cert-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:#5c6964}.tfd-cert-preview{padding:12px;border:1px dashed #d3d0c4;border-radius:11px;background:#faf9f4;color:#626d69;font-size:10.5px;line-height:1.55}

/* settings */
.settings-pro-page .ss-page-head,.settings-pro-page .ss-card,.settings-pro-page .ss-mini-card{border-color:var(--tf-line)!important;box-shadow:var(--tf-shadow)!important}
.settings-pro-page .ss-chip,.settings-pro-page .settings-role-chip{border-color:var(--tf-line)!important}
.settings-pro-page .ss-input{min-height:42px!important;border-radius:10px!important;border-color:#d9d7ce!important}
.settings-pro-page .ss-panel-title{padding:14px 16px!important}
.settings-pro-page form.ss-card>.ss-panel-body:last-child{position:sticky;bottom:8px;z-index:8;background:rgba(255,254,250,.96)!important;backdrop-filter:blur(10px);box-shadow:0 -5px 18px rgba(31,42,39,.04)}
.tfd-setting-nav{display:flex;gap:5px;overflow-x:auto;padding:7px;border:1px solid var(--tf-line);border-radius:12px;background:#fffefa;scrollbar-width:thin}.tfd-setting-nav a{padding:7px 9px;border-radius:8px;white-space:nowrap;text-decoration:none;color:#53605c!important;font-size:10px;font-weight:820}.tfd-setting-nav a.active{background:#26332f;color:#fff!important}.tfd-setting-nav a:hover{background:#f3f1eb}

/* health */
.tfd-health-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tfd-health-check{position:relative;padding:14px;border:1px solid var(--tf-line);border-radius:13px;background:#fffefa}.tfd-health-check:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#9da39f}.tfd-health-check.ok:before{background:#2e7a5e}.tfd-health-check.warning:before{background:#b9832f}.tfd-health-check.critical:before{background:#a64539}.tfd-health-check h3{font-size:12px;font-weight:900;color:#26312e}.tfd-health-check p{margin-top:5px;color:#707a76;font-size:10.3px;line-height:1.45}.tfd-health-check small{display:block;margin-top:8px;color:#858c89;font-size:9.5px}.tfd-health-score{font-size:25px;font-weight:900;letter-spacing:-.04em;color:#25312d}.tfd-recommendations{margin:7px 0 0;padding-left:17px;color:#68726f;font-size:10.5px;line-height:1.55}

/* performance / accessibility refinements */
.tfd-v40-content table,.tfd-final-card,.ss-card,.td-v40-card{content-visibility:auto;contain-intrinsic-size:1px 320px}
button,a,input,select,textarea{touch-action:manipulation}
button,.tfd-final-btn,.ss-btn,.td-v40-btn{min-height:38px}
input,select,textarea{font-size:max(16px,1em)}
@media(min-width:769px){input,select,textarea{font-size:inherit}}
[aria-busy="true"]{cursor:progress!important;opacity:.72!important}
.tfd-final-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:1180px){.tfd-final-stats,.tfd-health-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.tfd-final-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.tfd-notice-layout,.tfd-cert-layout,.tfd-front-layout{grid-template-columns:1fr}}
@media(max-width:820px){.tfd-final-head{flex-direction:column;padding:17px}.tfd-final-actions{justify-content:flex-start}.tfd-final-grid.cols-2,.tfd-final-grid.cols-3,.tfd-final-grid.cols-4,.tfd-final-form.grid-2,.tfd-final-filter{grid-template-columns:1fr}.tfd-final-submitbar{position:sticky;bottom:4px;z-index:15;box-shadow:0 -8px 22px rgba(31,42,39,.08)}.tfd-final-table.responsive{display:block}.tfd-final-table.responsive thead{display:none}.tfd-final-table.responsive tbody,.tfd-final-table.responsive tr,.tfd-final-table.responsive td{display:block;width:100%}.tfd-final-table.responsive tr{margin-bottom:10px;border:1px solid var(--tf-line);border-radius:12px;overflow:hidden;background:#fff}.tfd-final-table.responsive td{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;border-bottom:1px solid #efeee8;padding:9px 11px}.tfd-final-table.responsive td:before{content:attr(data-label);font-size:9px;letter-spacing:.05em;text-transform:uppercase;font-weight:900;color:#7a8380}.tfd-final-table.responsive td:last-child{border-bottom:0}.tfd-approval-row-actions{justify-content:flex-start}.tfd-approval-popbox{left:0;right:auto;max-width:calc(100vw - 48px)}}
@media(max-width:520px){.tfd-final-stats,.tfd-health-summary{grid-template-columns:1fr 1fr;gap:8px}.tfd-final-stat{padding:12px}.tfd-final-stat strong{font-size:21px}.tfd-final-head h1{font-size:21px}.tfd-notice-item{grid-template-columns:1fr}.tfd-notice-delete{justify-self:start}}
@media(prefers-reduced-motion:reduce){.tfd-final-stat:hover{transform:none}}
