.merit-kpis{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:1rem;margin:1rem 0 1.4rem}.merit-kpis.compact{grid-template-columns:repeat(4,1fr)}.merit-kpi{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.2rem;box-shadow:0 12px 35px #193a5b0d}.merit-kpi.primary{background:linear-gradient(135deg,#063b2f,#087f5b);color:#fff}.merit-kpi small,.merit-kpi strong{display:block}.merit-kpi small{color:var(--muted)}.merit-kpi.primary small{color:#cce9df}.merit-kpi strong{font-size:2rem;line-height:1.2}.merit-tier{display:inline-block;margin-top:.5rem;padding:.28rem .6rem;border-radius:999px;font-size:.78rem;font-weight:800;background:#fff;color:#063b2f}.merit-grid,.merit-settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.2rem;margin:1.2rem 0}.merit-bar-row{display:grid;grid-template-columns:minmax(150px,230px) 1fr 46px;gap:.7rem;align-items:center;margin:.75rem 0}.merit-bar-row span small{display:block;color:var(--muted)}.merit-bar-row>div{height:15px;background:#e7efeb;border-radius:999px;overflow:hidden}.merit-bar-row i{display:block;height:100%;background:linear-gradient(90deg,#087f5b,#d7b23e);border-radius:999px}.tier-ladder{display:grid;gap:.55rem;padding:0;list-style:none}.tier-ladder li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem;border-left:5px solid #cfd8d4;background:#f6f9f7;border-radius:8px}.tier-ladder li.current{border-color:#d7b23e;background:#fff7dc}.tier-ladder strong{color:#087f5b}.muted{color:var(--muted);font-size:.9rem}.merit-recognitions{margin:1.2rem 0}.merit-recognitions article{padding:.7rem 0;border-bottom:1px solid var(--line)}.merit-recognitions article:last-child{border:0}.merit-recognitions strong,.merit-recognitions span{display:block}.merit-table{min-width:980px}.merit-form{max-width:900px;margin:auto}.merit-score-preview{padding:1rem;border-radius:12px;background:#edf8f3;color:#075b43}.event-banner{margin-bottom:1rem;background:linear-gradient(110deg,#fff,#edf8f3)}.event-banner h2{margin-bottom:.35rem}.status.pending{background:#eaf2ff;color:#1849a9}.merit-filters{display:grid;grid-template-columns:2fr 1fr 140px auto auto;gap:.7rem;align-items:end;margin-bottom:1rem}.merit-filters label{margin:0}.merit-admin-table{min-width:1100px}.merit-review-form{min-width:290px;padding-top:.7rem}.merit-review-form div{display:flex;gap:.4rem;flex-wrap:wrap}.small-button{padding:.48rem .7rem;font-size:.85rem}.category-list details{padding:.7rem 0;border-bottom:1px solid var(--line)}.category-list summary{display:flex;justify-content:space-between;gap:1rem}.category-list summary span{color:var(--muted)}.category-form{padding:.8rem 0}.checkbox{display:flex;grid-template-columns:auto 1fr;align-items:center}.checkbox input{width:auto}.event-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.event-card{display:grid;grid-template-columns:1fr 130px;gap:1rem;align-items:center}.event-card>div strong,.event-card>div small{display:block}.event-qr{text-align:center}.event-qr img{display:block;width:120px;height:120px;margin:auto}.event-card form{grid-column:1/-1;display:flex;gap:.5rem}.event-card form select{max-width:180px}.welcome-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.merit-report-filter{display:flex;gap:.7rem;align-items:end;max-width:420px}.merit-report-filter label{margin:0}.merit-report{display:grid;gap:1.2rem}.merit-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.distribution-row{display:flex;justify-content:space-between;padding:.75rem;border-bottom:1px solid var(--line)}.report-note{padding:1rem;border-left:5px solid #d7b23e;background:#fff7dc}.report-brand{display:flex;align-items:center;gap:1rem;border-bottom:3px solid #087f5b;padding-bottom:1rem}.report-brand img{width:72px;height:72px}.report-brand h1{margin:.2rem 0}
@media(max-width:900px){.merit-kpis,.merit-kpis.compact{grid-template-columns:1fr 1fr}.merit-grid,.merit-settings-grid,.merit-report-grid{grid-template-columns:1fr}.merit-filters{grid-template-columns:1fr 1fr}.event-cards{grid-template-columns:1fr}}
@media(max-width:600px){.merit-kpis,.merit-kpis.compact,.merit-filters{grid-template-columns:1fr}.merit-bar-row{grid-template-columns:110px 1fr 34px}.event-card{grid-template-columns:1fr}.event-qr{justify-self:center}.category-list summary{align-items:flex-start;flex-direction:column}.topbar{overflow-x:auto}.topbar nav{min-width:620px}}
@media print{.topbar,footer,.welcome-actions,.merit-filters,.merit-report-filter,.no-print,button,.button{display:none!important}.container{width:100%;margin:0}.card{box-shadow:none}.merit-admin-table{min-width:0;font-size:10px}.merit-report .report-brand{display:flex}.merit-report-grid{grid-template-columns:1fr 1fr}@page{size:A4 landscape;margin:10mm}}

/* Member merit dashboard V17 */
.merit-page-v17{--merit-green:#086b50;--merit-deep:#064a39;--merit-gold:#d3ad43;--merit-soft:#f4f8f6;padding-bottom:1rem}.merit-page-head{margin-bottom:1.25rem}.merit-page-head h2{margin:.25rem 0}.merit-submit-button{box-shadow:0 9px 22px rgba(8,107,80,.2)}.merit-showcase{display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:1.25rem;align-items:stretch}.merit-left-column{display:grid;gap:1.25rem}.merit-page-v17 .card{border:1px solid #dce7e1;box-shadow:0 14px 34px rgba(22,58,46,.09)}.merit-score-card{display:grid;grid-template-columns:190px 1fr;gap:1rem;position:relative;overflow:hidden;padding:1.35rem;background:linear-gradient(145deg,#fff 55%,#eef8f3)}.merit-score-card:after{content:"";position:absolute;width:220px;height:220px;border:36px solid rgba(211,173,67,.08);border-radius:50%;right:-105px;top:-125px}.merit-member-mini{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:1rem .5rem;border-right:1px solid #e2ebe6}.merit-member-mini>img,.merit-member-mini>span{width:112px;height:112px;border-radius:50%;object-fit:cover;border:5px solid #fff;outline:4px solid var(--merit-green);box-shadow:0 8px 20px rgba(7,78,58,.16)}.merit-member-mini>span{display:grid;place-items:center;background:linear-gradient(135deg,#0b7b5d,#07523f);color:#fff;font-size:2rem;font-weight:900}.merit-member-mini strong,.merit-member-mini small{display:block}.merit-member-mini strong{line-height:1.2}.merit-member-mini small{color:var(--muted);margin-top:.2rem}.merit-gauge-wrap{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.merit-gauge-wrap h3{font-size:1.05rem;margin:.15rem 0 .8rem}.merit-gauge{--size:210px;width:var(--size);height:calc(var(--size)/2);overflow:hidden;position:relative}.merit-gauge:before{content:"";position:absolute;inset:0;border-radius:var(--size) var(--size) 0 0;background:conic-gradient(from 270deg at 50% 100%,var(--merit-green) 0 calc(var(--gauge)*.5%),#d7b64c calc(var(--gauge)*.5%) 50%,transparent 50%);filter:drop-shadow(0 5px 4px rgba(7,77,57,.13))}.merit-gauge:after{content:"";position:absolute;left:22px;right:22px;top:22px;height:calc(var(--size)/2 - 22px);border-radius:calc(var(--size) - 44px) calc(var(--size) - 44px) 0 0;background:#fff}.merit-gauge>div{position:absolute;z-index:2;inset:auto 0 2px;display:flex;flex-direction:column;align-items:center}.merit-gauge strong{font-size:3.25rem;line-height:1;color:var(--merit-green)}.merit-gauge span{font-size:.78rem;color:var(--muted)}.merit-gauge-wrap>.merit-tier{background:#edf8f3;color:var(--merit-deep);border:1px solid #cde7da;margin-top:.55rem}.merit-gauge-wrap>small{margin-top:.4rem;color:var(--muted)}.merit-mini-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e0e9e4;margin-top:.25rem;padding-top:1rem}.merit-mini-stats div{text-align:center;padding:.15rem .6rem;border-right:1px solid #e0e9e4}.merit-mini-stats div:last-child{border:0}.merit-mini-stats strong,.merit-mini-stats span{display:block}.merit-mini-stats strong{font-size:1.45rem;color:var(--merit-green)}.merit-mini-stats span{font-size:.76rem;color:var(--muted)}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.card-title-row h3{margin:.15rem 0}.card-title-row>strong{color:var(--merit-green);white-space:nowrap}.merit-donut-card{padding:1.4rem}.merit-donut-layout{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:1.4rem;margin-top:1.25rem}.merit-donut{width:205px;height:205px;border-radius:50%;position:relative;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04),0 9px 22px rgba(19,57,44,.1)}.merit-donut:after{content:"";position:absolute;inset:48px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #e7eeea}.merit-donut>div{position:absolute;z-index:1;inset:0;display:grid;place-content:center;text-align:center}.merit-donut strong,.merit-donut span{display:block}.merit-donut strong{font-size:1.85rem;color:var(--merit-green)}.merit-donut span{font-size:.72rem;color:var(--muted)}.merit-donut-legend{display:grid;gap:.58rem}.merit-donut-legend>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:.55rem;padding-bottom:.45rem;border-bottom:1px solid #edf1ef}.merit-donut-legend i{width:10px;height:10px;border-radius:50%}.merit-donut-legend span,.merit-donut-legend small{display:block}.merit-donut-legend span{font-size:.86rem;font-weight:700}.merit-donut-legend small{font-size:.7rem;color:var(--muted);font-weight:400}.merit-donut-legend strong{font-size:.85rem}.merit-timeline-card{padding:1.45rem;min-height:100%}.merit-count-pill{background:#eaf6f1;color:var(--merit-green);border-radius:999px;padding:.45rem .75rem;font-weight:800;font-size:.8rem}.merit-timeline{margin-top:1.2rem}.merit-timeline-section{display:grid;grid-template-columns:44px 1fr;gap:.75rem;position:relative;padding-bottom:1.5rem}.merit-timeline-section:not(:last-child):before{content:"";position:absolute;left:21px;top:43px;bottom:0;width:2px;background:#dfe8e3}.timeline-letter{position:relative;z-index:1;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--merit-green);color:#fff;font-weight:900;box-shadow:0 5px 13px rgba(8,107,80,.22)}.timeline-letter.gold{background:var(--merit-gold);color:#3d310d}.merit-timeline-section h4{margin:.45rem 0 .8rem;font-size:1.05rem}.timeline-list{border:1px solid #dfe7e3;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 7px 18px rgba(21,54,43,.07)}.timeline-list article{display:grid;grid-template-columns:28px 1fr auto;gap:.7rem;align-items:center;padding:.8rem 1rem;border-bottom:1px solid #e7ece9}.timeline-list article:last-child{border:0}.timeline-list strong,.timeline-list small,.timeline-list time,.timeline-list time b{display:block}.timeline-list strong{font-size:.88rem}.timeline-list small{font-size:.72rem;color:var(--muted);margin-top:.15rem}.timeline-list time{text-align:right;font-size:.72rem;color:var(--muted);white-space:nowrap}.timeline-list time b{color:var(--merit-green);font-size:.78rem;margin-top:.12rem}.timeline-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:.75rem}.timeline-icon.approved{background:var(--merit-green)}.timeline-icon.position{background:#2f80c9}.timeline-award{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff3bf;color:#8b6800;border:2px solid var(--merit-gold);font-size:1rem}.recognition-list article{grid-template-columns:34px 1fr}.recognition-list p{font-size:.78rem;margin:.3rem 0 0;color:#465b53}.timeline-empty{margin:0;padding:1rem;color:var(--muted);font-size:.86rem}.merit-empty{text-align:center;padding:2rem 1rem;color:var(--muted)}.merit-empty span,.merit-empty strong{display:block}.merit-empty span{font-size:2.4rem;color:#a9bdb4}.merit-full-history{margin-top:1.25rem;padding:0;overflow:hidden}.merit-full-history>summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.3rem;cursor:pointer;list-style:none}.merit-full-history>summary::-webkit-details-marker{display:none}.merit-full-history>summary span strong,.merit-full-history>summary span small{display:block}.merit-full-history>summary span small{color:var(--muted);font-weight:400;margin-top:.2rem}.merit-full-history>summary>b{background:#edf6f2;color:var(--merit-green);padding:.4rem .65rem;border-radius:999px}.merit-full-history[open]>summary{border-bottom:1px solid #dfe7e3}.merit-governance-note{margin:1rem 0 0;padding:.85rem 1rem;border-left:4px solid var(--merit-gold);background:#fffbec;color:#5f5638;border-radius:8px;font-size:.8rem}
@media(max-width:1050px){.merit-showcase{grid-template-columns:1fr}.merit-left-column{grid-template-columns:1fr 1fr}.merit-score-card{grid-template-columns:150px 1fr}.merit-member-mini>img,.merit-member-mini>span{width:90px;height:90px}.merit-donut-layout{grid-template-columns:170px 1fr}.merit-donut{width:165px;height:165px}.merit-donut:after{inset:38px}}
@media(max-width:760px){.merit-left-column{grid-template-columns:1fr}.merit-score-card{grid-template-columns:1fr}.merit-member-mini{flex-direction:row;text-align:left;border-right:0;border-bottom:1px solid #e2ebe6;padding:.4rem .2rem .9rem}.merit-member-mini>img,.merit-member-mini>span{width:72px;height:72px}.merit-page-head{align-items:flex-start;gap:.8rem}.merit-donut-layout{grid-template-columns:1fr}.merit-donut{margin:auto}.timeline-list article{grid-template-columns:26px 1fr}.timeline-list time{grid-column:2;text-align:left;display:flex;gap:.5rem}.merit-timeline-section{grid-template-columns:38px 1fr}.timeline-letter{width:37px;height:37px}.merit-timeline-section:not(:last-child):before{left:18px}.merit-mini-stats span{font-size:.68rem}}
.certificate-signer-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.certificate-signer-grid>section{padding:1.1rem;border:1px solid #d5e2dc;border-radius:13px;background:#f8fbf9}.certificate-signer-grid h3{margin-top:0;color:#075b43}.certificate-signer-grid label{margin-top:.75rem}@media(max-width:760px){.certificate-signer-grid{grid-template-columns:1fr}}
.merit-form>fieldset{min-width:0;margin:0;padding:0;border:0}.merit-form>fieldset:disabled{opacity:.78}.merit-form>fieldset:disabled input,.merit-form>fieldset:disabled select,.merit-form>fieldset:disabled textarea{background:#eef2f0;color:#53645e}

/* V26 laporan lanjutan */
.report-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
.report-filters .wide{grid-column:span 2}.report-filters .actions{grid-column:1/-1;display:flex;gap:.7rem;justify-content:flex-end}.table-wrap td small{display:block;color:var(--muted);margin-top:.2rem}
@media(max-width:900px){.report-filters{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.report-filters{grid-template-columns:1fr}.report-filters .wide{grid-column:auto}}

/* V28 kawalan capaian */
.access-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.access-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-top:1rem}.access-form{padding:1rem;border:1px solid var(--line);border-radius:14px;background:#f8fbf9}.access-form h3{margin-top:0}@media(max-width:900px){.access-stats{grid-template-columns:repeat(2,1fr)}.access-forms{grid-template-columns:1fr}}@media(max-width:520px){.access-stats{grid-template-columns:1fr}}
/* V28.3 — pusat notifikasi yang membezakan tugasan dan log audit */
.notification-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:18px}
.notification-task{display:grid;gap:7px;padding:18px;border:1px solid #cfe1d7;border-radius:14px;background:#f7fbf9;color:#143c31;text-decoration:none}
.notification-task:hover{border-color:#16805f;box-shadow:0 8px 20px rgba(15,91,68,.1)}
.notification-task span{font-size:1.45rem;font-weight:800;color:#087f5b}.notification-task b{font-size:.9rem;color:#087f5b}
.activity-state{display:inline-flex;align-items:center;margin:0 8px 5px 0;padding:6px 10px;border-radius:999px;font-size:.82rem;font-weight:800;white-space:nowrap}
.activity-action{background:#fff1c7;color:#765600}.activity-done{background:#dff7e8;color:#13683f}.activity-info{background:#e8eff7;color:#385067}
.button.small{padding:8px 11px;font-size:.84rem;min-height:auto}.notification-guide{border-top:5px solid #16805f}
@media(max-width:760px){.notification-task-grid{grid-template-columns:1fr}.notification-guide .notification-task{padding:14px}}

/* V29 — tab halaman dan pusat pentadbiran */
.page-tabs{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0 1.4rem;padding:.55rem;background:#e7f0ec;border:1px solid #cadbd3;border-radius:15px}
.page-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;border:2px solid transparent;border-radius:10px;color:#17483b;text-decoration:none;font-weight:800;background:#fff}
.page-tabs a:hover{border-color:#087f5b}.page-tabs a.active{background:#087f5b;color:#fff;box-shadow:0 5px 14px rgba(8,127,91,.22)}
.hub-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.hub-card{display:grid;gap:.45rem;text-decoration:none;color:#173029;border-left:6px solid #087f5b;transition:.18s ease}.hub-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(8,70,54,.13)}.hub-card strong{font-size:1.12rem}.hub-card span{color:var(--muted)}.hub-card b{color:#087f5b;margin-top:.35rem}
@media(max-width:700px){.page-tabs{display:grid;grid-template-columns:1fr 1fr}.hub-card-grid{grid-template-columns:1fr}}
