/* remove-mobile-spark-icon-v11 */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--body-bg);transition:background .25s,color .25s}a{color:inherit;text-decoration:none}img{max-width:100%}:root{--text:#111827;--muted:#647084;--body-bg:#dfe3e8;--surface:#ffffff;--surface2:#f6f8fb;--card:rgba(255,255,255,.92);--border:#e6eaf0;--shadow:0 24px 70px rgba(15,23,42,.13);--accent:#111318;--accentText:#ffffff;--glass:rgba(255,255,255,.82)}html.dark,html[data-theme="dark"]{--text:#eef2f7;--muted:#aeb8c9;--body-bg:#0f172a;--surface:#111827;--surface2:#1f2937;--card:rgba(17,24,39,.92);--border:#334155;--shadow:0 26px 75px rgba(0,0,0,.42);--accent:#f8fafc;--accentText:#0f172a;--glass:rgba(15,23,42,.82)}html.dark body,html[data-theme="dark"] body{color:var(--text)}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 7vw;background:var(--glass);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);box-shadow:0 10px 30px rgba(0,0,0,.06)}.brand{display:flex;align-items:center;gap:12px;font-weight:950;letter-spacing:-.02em}.brand img{width:42px;height:42px;border-radius:50%;object-fit:contain;object-position:center;background:#fff;box-shadow:0 4px 14px #0002;padding:3px}.nav{display:flex;align-items:center;gap:14px;font-weight:850}.nav a{opacity:.95}.nav a:hover{opacity:1}.nav form{margin:0}.nav button{border:0;background:transparent;color:var(--text);font-weight:850;cursor:pointer}.nav-btn{background:var(--accent);color:var(--accentText)!important;padding:10px 17px;border-radius:999px}.theme-toggle{display:inline-grid!important;place-items:center;width:42px;height:42px;border-radius:999px!important;border:1px solid var(--border)!important;background:var(--surface2)!important;color:var(--text)!important;font-size:18px!important;padding:0!important;box-shadow:0 8px 22px rgba(0,0,0,.08)}main{min-height:calc(100vh - 155px);padding:42px 0 0}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px 7vw;background:var(--glass);backdrop-filter:blur(16px);border-top:1px solid var(--border)}.site-footer b{display:block}.site-footer span{color:var(--muted)}.footer-links{display:flex;gap:16px;font-weight:850}.alert{max-width:1180px;margin:18px auto 0;padding:13px 16px;border-radius:16px;border:1px solid var(--border);background:var(--surface)}.success{background:#ddf9e8;color:#14532d}.error{background:#ffe2e2;color:#7f1d1d}.glass-card{background:var(--card);backdrop-filter:blur(18px);border:1px solid var(--border);box-shadow:var(--shadow)}.desktop-home{width:min(1240px,92vw);margin:0 auto 32px;display:grid;grid-template-columns:1.08fr .92fr;gap:32px;align-items:stretch}.hero-left,.hero-right{border-radius:34px;padding:44px;overflow:hidden}.top-kicker{display:inline-flex;align-items:center;width:max-content;background:var(--accent);color:var(--accentText);border-radius:999px;padding:9px 14px;font-weight:950;font-size:12px;letter-spacing:.02em;text-transform:uppercase}.top-kicker.soft{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.hero-logo{display:block;width:150px;height:150px;border-radius:50%;object-fit:contain;object-position:center;background:#fff;border:6px solid rgba(255,255,255,.95);box-shadow:0 14px 35px rgba(0,0,0,.20);margin:24px auto 18px;padding:12px}.hero-left h1{font-size:clamp(34px,4vw,56px);line-height:1.02;margin:10px 0 14px;letter-spacing:-.055em}.hero-bio{font-size:18px;line-height:1.7;color:var(--muted);max-width:680px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0}.info-grid div{background:var(--surface2);border:1px solid var(--border);border-radius:20px;padding:17px;display:grid;gap:5px}.info-grid span{font-size:25px}.info-grid b{font-size:14px}.info-grid small{font-size:13px;color:var(--muted);line-height:1.35}.social-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.social-actions a{padding:13px 17px;background:var(--accent);color:var(--accentText);border-radius:15px;font-weight:950}.social-actions a:nth-child(2){background:#2c2f35;color:#fff}.social-actions .outline{background:transparent;color:var(--text);border:1px solid var(--border)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{font-size:34px;line-height:1.05;margin:10px 0 0;letter-spacing:-.04em}.section-heading p{color:var(--muted);max-width:390px;margin:10px 0 0;line-height:1.45}.section-heading.center{display:block;text-align:center}.section-heading.center p{margin:10px auto 0;max-width:640px}.web-links{display:grid;gap:15px}.web-link-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.06)}.web-link-main{display:grid;grid-template-columns:68px 1fr 24px;align-items:center;gap:14px;padding:18px 20px;color:var(--text)}.web-link-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--surface2);font-size:32px}.web-link-icon img{width:58px;height:58px;border-radius:18px;object-fit:cover}.web-link-main strong{display:block;font-size:17px;letter-spacing:-.01em}.web-link-main small{display:block;color:var(--muted);margin-top:4px}.web-link-main b{font-size:30px;color:var(--muted)}.comments{border-top:1px solid var(--border);padding:11px 14px;text-align:left}.comments p{font-size:13px;margin:6px 0;color:var(--muted)}.comments form{display:flex;gap:8px}.comments input{flex:1;border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--surface);color:var(--text)}.comments button,.primary,button{border:0;border-radius:12px;padding:10px 14px;background:var(--accent);color:var(--accentText);font-weight:900;cursor:pointer}.web-comments{background:var(--surface2)}.feedback-public{display:block!important;width:min(1240px,92vw)!important;margin:0 auto 46px!important;border-radius:34px!important;padding:36px!important;background:var(--card)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow)!important}.feedback-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:24px}.feedback-card{display:flex;gap:13px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:18px;min-height:118px}.feedback-card p{margin:7px 0;color:var(--muted);letter-spacing:.08em;word-break:break-word}.feedback-card small{color:var(--muted)}.avatar-blur{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,#c7d2fe,#f5d0fe);font-weight:950;color:#111}.censored b{filter:blur(.25px)}.feedback-card.empty{display:block;grid-column:1/-1;text-align:center}.form-page{width:min(1050px,92vw);margin:0 auto 44px;display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}.form-intro,.form-page .form{border-radius:30px;padding:32px}.form-intro h1{font-size:42px;line-height:1.05;margin:16px 0 12px;letter-spacing:-.04em}.form-intro p{color:var(--muted);line-height:1.65}.privacy-note{margin-top:18px;padding:14px;border-radius:16px;background:var(--surface2);border:1px solid var(--border);font-weight:800}.panel{max-width:1100px;margin:0 auto 28px;padding:22px;background:var(--card);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.panel.small{max-width:560px}.form{display:grid;gap:14px}.form label{display:grid;gap:7px;font-weight:800}.form input,.form textarea,.form select,table input,table select{width:100%;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text)}.check{display:flex!important;align-items:center;gap:8px}.check input{width:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.box{border:1px solid var(--border);border-radius:16px;padding:15px;background:var(--surface2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.danger{background:#b42318!important;color:#fff!important}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.help-reset{margin-top:16px;padding:12px;border-radius:14px;background:var(--surface2);font-size:14px}.help-reset a{font-weight:900}.preview-line{display:flex;align-items:center;gap:10px;margin:8px 0}.preview-line img{width:56px;height:56px;object-fit:contain;object-position:center;border-radius:12px;border:1px solid var(--border);background:#fff;padding:4px}.preview-emoji{width:56px;height:56px;display:grid;place-items:center;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:28px}.admin-link-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.full{width:100%;margin-top:8px}.box form+form{margin-top:8px}.mobile-linktree{display:none}.spark{position:absolute;left:20px;top:20px;background:white;color:#111;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:26px}.logo{width:112px;height:112px;object-fit:contain;object-position:center;border-radius:50%;margin:75px auto 0;background:#fff;border:4px solid #fff;padding:8px;display:block;box-shadow:0 10px 26px rgba(0,0,0,.16)}.mobile-linktree h1{font-size:24px;margin:14px 0 8px}.info{font-weight:700;text-align:left;display:inline-block}.info p{margin:5px 0}.socials{display:flex;gap:26px;justify-content:center;margin:26px 0}.socials a{font-size:34px;color:var(--text);font-weight:900}.links{display:grid;gap:12px}.link-card{background:var(--surface);border-radius:12px;overflow:hidden;border:1px solid var(--border)}.link-main{display:grid;grid-template-columns:54px 1fr 20px;grid-template-rows:auto auto;align-items:center;color:var(--text);padding:10px 14px}.link-icon{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;font-size:30px}.link-icon img{width:44px;height:44px;object-fit:cover;border-radius:10px}.link-main strong{font-size:14px}.link-main small{font-size:12px;color:var(--muted)}.link-main b{grid-row:1/3;grid-column:3}.mobile-censored{margin-top:18px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px;text-align:left}.mobile-censored h3{margin:0 0 8px}.mobile-censored p{font-size:13px;color:var(--muted)}@media(max-width:980px){main{padding-top:0}.site-header{padding:11px 14px;gap:8px;align-items:center}.brand span{font-size:13px}.brand img{width:34px;height:34px}.nav{gap:9px;font-size:13px;overflow-x:auto;padding-bottom:3px}.nav-btn{padding:7px 10px}.theme-toggle{width:34px;height:34px!important;font-size:15px!important}.desktop-home,.feedback-public{display:none!important}.mobile-linktree{display:block;position:relative;width:100%;max-width:430px;min-height:100vh;margin:0 auto;padding:26px 14px 36px;border-radius:0 0 26px 26px;background:var(--card);box-shadow:10px 0 0 rgba(0,0,0,.42),0 4px 20px #0002;text-align:center}.site-footer{display:block;text-align:center;padding:20px 14px}.footer-links{justify-content:center;margin-top:10px;flex-wrap:wrap}.grid2,.form-page{grid-template-columns:1fr}.panel,.form-page{margin:14px}.table-wrap table{min-width:780px}.admin-link-cards{grid-template-columns:1fr}.form-intro h1{font-size:32px}}@media(min-width:981px) and (max-width:1160px){.desktop-home{grid-template-columns:1fr}.feedback-grid{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.admin-link-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* admin feedback full read/delete */
.feedback-admin-cards{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}
.feedback-admin-card{display:grid;gap:12px}
.feedback-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.feedback-admin-head small{display:block;color:var(--muted);margin-top:3px}
.status-pill{font-size:11px;font-weight:950;letter-spacing:.04em;padding:7px 10px;border-radius:999px;background:var(--accent);color:var(--accentText);white-space:nowrap}
.feedback-message-full{padding:14px;border-radius:14px;background:var(--surface);border:1px solid var(--border);line-height:1.6;white-space:pre-wrap;word-break:break-word}
/* feedback type + multi image upload v5 */
.feedback-image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;margin-top:4px}
.feedback-image-gallery a{display:block;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:0 8px 18px rgba(0,0,0,.06)}
.feedback-image-gallery img{width:100%;height:96px;object-fit:cover;display:block;transition:transform .18s ease}
.feedback-image-gallery a:hover img{transform:scale(1.04)}
.type-public{display:inline-block;margin-top:4px;padding:5px 9px;border-radius:999px;background:var(--surface2);border:1px solid var(--border);font-weight:800;color:var(--muted);letter-spacing:0!important}
.form input[type="file"]{padding:11px;background:var(--surface2);cursor:pointer}
.feedback-admin-card .muted{color:var(--muted)}
@media(max-width:680px){.feedback-image-gallery{grid-template-columns:repeat(3,1fr)}.feedback-image-gallery img{height:82px}}

/* production feedback page polish v6 */
.feedback-submit-page{width:min(1180px,92vw);margin:0 auto 56px;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.feedback-hero,.feedback-form{border-radius:34px;padding:34px;overflow:hidden;position:relative}
.feedback-hero:before{content:"";position:absolute;inset:-120px -90px auto auto;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.22),transparent 68%);pointer-events:none}
.feedback-hero-content{position:relative;z-index:1}
.feedback-hero h1{font-size:clamp(38px,4.6vw,64px);line-height:.98;letter-spacing:-.06em;margin:18px 0 16px}
.feedback-hero .lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:560px;margin:0 0 24px}
.trust-grid{display:grid;gap:13px;margin-top:24px}
.trust-grid div{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:13px;padding:16px;border-radius:20px;background:var(--surface2);border:1px solid var(--border)}
.trust-grid span{grid-row:1/3;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--surface);font-size:22px;border:1px solid var(--border)}
.trust-grid strong{font-size:15px;letter-spacing:-.01em}
.trust-grid small{color:var(--muted);line-height:1.45;margin-top:3px}
.privacy-copy{margin:22px 0 0;padding:14px 16px;border-radius:18px;background:rgba(16,185,129,.10);border:1px solid rgba(16,185,129,.22);color:var(--muted);line-height:1.55}
.form-header{margin-bottom:20px}.form-header h2{font-size:34px;line-height:1.05;letter-spacing:-.04em;margin:14px 0 8px}.form-header p{margin:0;color:var(--muted);line-height:1.55}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-help{font-size:13px;color:var(--muted);font-weight:600;line-height:1.45;margin-top:-2px}.submit-wide{width:100%;padding:15px 18px;border-radius:16px;font-size:16px}.feedback-form label{font-size:14px;letter-spacing:-.01em}.feedback-form input,.feedback-form textarea,.feedback-form select{margin-top:3px}.feedback-form textarea{resize:vertical;min-height:190px}
html.dark .privacy-copy,html[data-theme="dark"] .privacy-copy{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.18)}
@media(max-width:980px){.feedback-submit-page{grid-template-columns:1fr;margin:18px auto 34px}.feedback-hero,.feedback-form{border-radius:26px;padding:24px}.feedback-hero h1{font-size:38px}.feedback-hero .lead{font-size:16px}.field-grid{grid-template-columns:1fr}.trust-grid div{grid-template-columns:38px 1fr}.trust-grid span{width:38px;height:38px}}

/* feedback page layout hard fix v7 */
.feedback-submit-page{
  width:min(1180px,92vw)!important;
  margin:34px auto 64px!important;
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
  gap:28px!important;
  align-items:start!important;
}
.feedback-submit-page .glass-card,
.feedback-submit-page .feedback-hero,
.feedback-submit-page .feedback-form{
  background:var(--card)!important;
  border:1px solid var(--border)!important;
  box-shadow:var(--shadow)!important;
  border-radius:34px!important;
}
.feedback-hero,
.feedback-form{
  padding:34px!important;
}
.feedback-form{
  display:grid!important;
  gap:16px!important;
}
.feedback-form label{
  display:grid!important;
  gap:7px!important;
  font-weight:850!important;
  color:var(--text)!important;
}
.feedback-form input,
.feedback-form textarea,
.feedback-form select{
  width:100%!important;
  min-width:0!important;
  padding:13px 14px!important;
  border:1px solid var(--border)!important;
  border-radius:15px!important;
  background:var(--surface)!important;
  color:var(--text)!important;
  outline:none!important;
  font:inherit!important;
}
.feedback-form input:focus,
.feedback-form textarea:focus,
.feedback-form select:focus{
  border-color:#64748b!important;
  box-shadow:0 0 0 4px rgba(100,116,139,.14)!important;
}
.feedback-form textarea{
  resize:vertical!important;
  min-height:180px!important;
}
.feedback-form input[type=file]{
  background:var(--surface2)!important;
  cursor:pointer!important;
}
.feedback-form .field-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}
.feedback-form .submit-wide{
  width:100%!important;
  min-height:52px!important;
  border-radius:16px!important;
  font-size:16px!important;
}
.feedback-hero h1{
  font-size:clamp(38px,4.6vw,62px)!important;
  line-height:.98!important;
  letter-spacing:-.06em!important;
  margin:18px 0 16px!important;
}
.feedback-hero .lead,
.feedback-hero .privacy-copy,
.feedback-submit-page p{
  line-height:1.65!important;
}
.trust-grid{
  display:grid!important;
  gap:13px!important;
}
.trust-grid div{
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  grid-template-rows:auto auto!important;
  column-gap:13px!important;
  padding:16px!important;
  border-radius:20px!important;
  background:var(--surface2)!important;
  border:1px solid var(--border)!important;
}
.trust-grid span{
  grid-row:1/3!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
}
.privacy-copy{
  padding:14px 16px!important;
  border-radius:18px!important;
  background:rgba(16,185,129,.10)!important;
  border:1px solid rgba(16,185,129,.22)!important;
}
@media(max-width:980px){
  .feedback-submit-page{grid-template-columns:1fr!important;margin:18px auto 34px!important;width:min(680px,92vw)!important;}
  .feedback-hero,.feedback-form{padding:24px!important;border-radius:26px!important;}
  .feedback-form .field-grid{grid-template-columns:1fr!important;}
}


/* admin feedback detail page v8 */
body.modal-open{overflow:hidden}.admin-feedback-page{width:min(1240px,92vw);margin:34px auto 64px;display:grid;gap:20px}.admin-feedback-hero{border-radius:34px;padding:32px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.admin-feedback-hero h1{font-size:clamp(34px,4vw,56px);letter-spacing:-.055em;line-height:1;margin:14px 0 10px}.admin-feedback-hero p{color:var(--muted);line-height:1.65;max-width:680px}.feedback-summary-cards{display:grid;grid-template-columns:repeat(3,110px);gap:12px}.feedback-summary-cards div{background:var(--surface2);border:1px solid var(--border);border-radius:20px;padding:18px;text-align:center}.feedback-summary-cards b{display:block;font-size:28px;letter-spacing:-.04em}.feedback-summary-cards span{font-size:12px;color:var(--muted);font-weight:850}.admin-feedback-toolbar{display:flex;gap:12px;justify-content:flex-end;align-items:center}.outline-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:14px;padding:10px 14px;font-weight:900;cursor:pointer}.admin-feedback-list{display:grid;gap:14px}.admin-feedback-row{border-radius:26px;padding:18px;display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,1.1fr) auto;gap:18px;align-items:center}.row-main-info{display:flex;gap:14px;align-items:center}.row-main-info h3{margin:0 0 4px;font-size:18px}.row-main-info p{margin:0;color:var(--muted);font-size:13px;word-break:break-word}.row-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.row-meta span{font-size:12px;font-weight:850;color:var(--muted);padding:6px 9px;border-radius:999px;background:var(--surface2);border:1px solid var(--border)}.row-message-preview{line-height:1.55;color:var(--muted);background:var(--surface2);border:1px solid var(--border);border-radius:18px;padding:14px}.row-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}.small-danger{padding:10px 12px!important}.status-dibaca{background:#2563eb!important;color:white!important}.status-selesai{background:#16a34a!important;color:white!important}.modal-backdrop,.image-zoom-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(2,6,23,.72);backdrop-filter:blur(10px);display:none;padding:24px;overflow:auto}.modal-backdrop.is-open,.image-zoom-backdrop.is-open{display:flex}.feedback-detail-modal{width:min(1040px,96vw);margin:auto;border-radius:30px;padding:28px;max-height:92vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:18px}.modal-head h2{margin:12px 0 6px;font-size:34px;letter-spacing:-.04em}.modal-head p{margin:0;color:var(--muted)}.modal-close{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:28px;line-height:1;display:grid;place-items:center;cursor:pointer}.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.detail-message-box{background:var(--surface2);border:1px solid var(--border);border-radius:22px;padding:20px}.detail-message-box h3,.detail-gallery-wrap h3{margin:0 0 12px}.detail-message-box p{white-space:pre-wrap;line-height:1.75;margin:0;word-break:break-word}.detail-status-form{background:var(--surface2);border:1px solid var(--border);border-radius:22px;padding:18px}.detail-gallery-wrap{margin-top:20px}.detail-image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.zoom-thumb{border:1px solid var(--border);background:var(--surface);border-radius:18px;overflow:hidden;padding:0;aspect-ratio:1/1;cursor:zoom-in;box-shadow:0 12px 28px rgba(0,0,0,.08)}.zoom-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.zoom-thumb:hover img{transform:scale(1.06)}.empty-gallery,.empty-feedback-admin{padding:28px;border-radius:22px;background:var(--surface2);border:1px dashed var(--border);color:var(--muted)}.modal-foot{border-top:1px solid var(--border);margin-top:20px;padding-top:18px;display:flex;justify-content:space-between;gap:12px;align-items:center}.image-zoom-backdrop{align-items:center;justify-content:center;cursor:zoom-out}.image-zoom-backdrop img{max-width:min(96vw,1300px);max-height:90vh;border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.6);object-fit:contain;background:#fff}.image-zoom-close{position:fixed;right:24px;top:24px;z-index:1002}.danger{background:#dc2626!important;color:#fff!important}.admin-feedback-page .primary{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:980px){.admin-feedback-hero{grid-template-columns:1fr}.feedback-summary-cards{grid-template-columns:repeat(3,1fr)}.admin-feedback-row{grid-template-columns:1fr}.row-actions{justify-content:flex-start}.detail-grid{grid-template-columns:1fr}.modal-backdrop,.image-zoom-backdrop{padding:14px}.feedback-detail-modal{padding:20px;border-radius:24px}.modal-head h2{font-size:26px}.admin-feedback-toolbar{justify-content:flex-start;flex-wrap:wrap}.detail-image-gallery{grid-template-columns:repeat(2,1fr)}}

/* responsive all devices fix v9 */
.mobile-menu-btn{display:none;border:1px solid var(--border);background:var(--surface);color:var(--text);width:44px;height:44px;border-radius:14px;font-size:24px;font-weight:950;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.site-header{min-height:68px}.brand{min-width:0}.brand span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{min-width:0}.nav a,.nav button{white-space:nowrap}.nav form button{font:inherit}
@media (min-width:1280px){.desktop-home,.admin-feedback-page,.feedback-submit-page{max-width:1280px}.desktop-home{grid-template-columns:1fr 1fr}.hero-left,.hero-right{min-height:520px}}
@media (max-width:1180px){.site-header{padding:12px 4vw}.site-footer{padding:24px 4vw}.desktop-home{width:min(1000px,94vw);grid-template-columns:1fr;gap:22px}.hero-left,.hero-right{padding:34px}.admin-feedback-page{width:min(1000px,94vw)}.feedback-submit-page{width:min(1000px,94vw)!important}}
@media (max-width:860px){body{background-attachment:scroll!important}.site-header{position:sticky;top:0;padding:10px 14px;align-items:center}.brand img{width:38px;height:38px}.brand span{font-size:14px;max-width:52vw}.mobile-menu-btn{display:grid;place-items:center;flex:0 0 auto}.nav{position:absolute;left:12px;right:12px;top:calc(100% + 8px);display:none;flex-direction:column;align-items:stretch;gap:8px;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:22px;box-shadow:0 22px 60px rgba(15,23,42,.24);backdrop-filter:blur(18px);z-index:99}.nav.is-open{display:flex}.nav a,.nav form button,.nav-btn{width:100%;display:flex;justify-content:center;align-items:center;text-align:center;padding:12px 14px;border-radius:14px;background:var(--surface2);border:1px solid var(--border);color:var(--text)!important}.nav form{width:100%}.nav form button{background:var(--surface2)!important}.nav .theme-toggle{width:100%!important;height:44px!important;border-radius:14px!important;background:var(--accent)!important;color:var(--accentText)!important}.site-footer{flex-direction:column;align-items:flex-start}.footer-links{flex-wrap:wrap}main{padding-top:22px}.desktop-home{width:min(640px,92vw);margin:0 auto 24px;display:grid;grid-template-columns:1fr;gap:18px}.hero-left,.hero-right{padding:24px;border-radius:28px}.hero-logo{width:120px;height:120px;margin:10px auto 16px;padding:9px}.hero-left h1{font-size:clamp(30px,9vw,42px);text-align:center;word-break:break-word}.hero-bio{text-align:center;font-size:15px}.info-grid{grid-template-columns:1fr;gap:10px}.social-actions{justify-content:center}.section-heading{display:block;text-align:left}.section-heading h2{font-size:28px}.web-link-card{border-radius:22px}.web-link-main{gap:12px}.link-thumb{width:54px;height:54px}.feedback-submit-page{width:min(640px,92vw)!important;margin:18px auto 34px!important;grid-template-columns:1fr!important;gap:18px!important}.feedback-hero,.feedback-form{padding:24px!important;border-radius:28px!important}.feedback-hero h1{font-size:clamp(34px,11vw,48px)!important}.field-grid,.feedback-form .field-grid{grid-template-columns:1fr!important}.admin-feedback-page{width:min(640px,92vw);margin:18px auto 34px}.admin-feedback-hero{grid-template-columns:1fr;padding:24px;border-radius:28px}.admin-feedback-hero h1{font-size:clamp(34px,10vw,46px)}.feedback-summary-cards{grid-template-columns:repeat(3,1fr);gap:10px}.feedback-summary-cards div{padding:14px 8px}.feedback-summary-cards b{font-size:24px}.admin-feedback-toolbar{justify-content:stretch}.admin-feedback-toolbar .outline-btn,.admin-feedback-toolbar .primary{width:100%}.admin-feedback-row{grid-template-columns:1fr;padding:16px}.row-actions{justify-content:stretch}.row-actions .outline-btn,.row-actions form,.row-actions form button{width:100%}.detail-grid{grid-template-columns:1fr}.modal-backdrop,.image-zoom-backdrop{padding:12px}.feedback-detail-modal{padding:18px;border-radius:24px}.modal-head{align-items:center}.modal-head h2{font-size:24px}.detail-image-gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width:430px){.site-header{padding:9px 10px}.brand span{max-width:46vw;font-size:13px}.desktop-home,.feedback-submit-page,.admin-feedback-page{width:94vw!important}.hero-left,.hero-right,.feedback-hero,.feedback-form,.admin-feedback-hero{padding:20px!important;border-radius:24px!important}.top-kicker{font-size:11px}.hero-logo{width:106px;height:106px}.info-grid div{padding:14px}.social-actions a{width:100%;text-align:center}.web-link-main{padding:14px}.link-text strong{font-size:14px}.feedback-summary-cards{grid-template-columns:1fr 1fr 1fr}.feedback-summary-cards div{border-radius:16px}.row-main-info{align-items:flex-start}.modal-foot{flex-direction:column;align-items:stretch}.modal-foot .outline-btn,.modal-foot form,.modal-foot button{width:100%}}


/* keep background image visible in dark mode + cleaner mobile menu v10 */
html.dark .nav,html[data-theme="dark"] .nav{background:rgba(15,23,42,.92);}
html.dark .site-header,html[data-theme="dark"] .site-header,html.dark .site-footer,html[data-theme="dark"] .site-footer{background:rgba(15,23,42,.78);}
html.dark .glass-card,html[data-theme="dark"] .glass-card{background:rgba(17,24,39,.88);}
html.dark .feedback-public,html[data-theme="dark"] .feedback-public{background:rgba(17,24,39,.90)!important;}
@media(max-width:860px){
  html.dark .nav.is-open,html[data-theme="dark"] .nav.is-open{background:rgba(15,23,42,.96);}
  html.dark .nav a,html[data-theme="dark"] .nav a,html.dark .nav form button,html[data-theme="dark"] .nav form button{background:rgba(30,41,59,.92)!important;color:#eef2f7!important;}
  html.dark .nav .theme-toggle,html[data-theme="dark"] .nav .theme-toggle{background:#f8fafc!important;color:#0f172a!important;}
}

/* remove white star icon on mobile linktree */
.spark{display:none!important}
.mobile-linktree .logo{margin-top:36px!important}


/* background contrast fix v12: background image stays visible in dark/light mode */
body.has-bg-image{background-blend-mode:normal!important;}
body.has-bg-image .site-header,
body.has-bg-image .site-footer{background:rgba(255,255,255,.76)!important;backdrop-filter:blur(18px) saturate(135%)!important;}
body.has-bg-image .glass-card,
body.has-bg-image .feedback-public,
body.has-bg-image .panel,
body.has-bg-image .feedback-hero,
body.has-bg-image .feedback-form,
body.has-bg-image .admin-feedback-hero,
body.has-bg-image .admin-feedback-row,
body.has-bg-image .feedback-detail-modal{background:rgba(255,255,255,.84)!important;backdrop-filter:blur(18px) saturate(135%)!important;}
body.has-bg-image .web-link-card,
body.has-bg-image .feedback-card,
body.has-bg-image .link-card,
body.has-bg-image .mobile-censored,
body.has-bg-image .info-grid div,
body.has-bg-image .box,
body.has-bg-image .trust-grid div{background:rgba(248,250,252,.82)!important;backdrop-filter:blur(10px)!important;}
html.dark body.has-bg-image,
html[data-theme="dark"] body.has-bg-image{background-color:#0f172a!important;}
html.dark body.has-bg-image .site-header,
html[data-theme="dark"] body.has-bg-image .site-header,
html.dark body.has-bg-image .site-footer,
html[data-theme="dark"] body.has-bg-image .site-footer{background:rgba(15,23,42,.72)!important;border-color:rgba(148,163,184,.22)!important;}
html.dark body.has-bg-image .glass-card,
html[data-theme="dark"] body.has-bg-image .glass-card,
html.dark body.has-bg-image .feedback-public,
html[data-theme="dark"] body.has-bg-image .feedback-public,
html.dark body.has-bg-image .panel,
html[data-theme="dark"] body.has-bg-image .panel,
html.dark body.has-bg-image .feedback-hero,
html[data-theme="dark"] body.has-bg-image .feedback-hero,
html.dark body.has-bg-image .feedback-form,
html[data-theme="dark"] body.has-bg-image .feedback-form,
html.dark body.has-bg-image .admin-feedback-hero,
html[data-theme="dark"] body.has-bg-image .admin-feedback-hero,
html.dark body.has-bg-image .admin-feedback-row,
html[data-theme="dark"] body.has-bg-image .admin-feedback-row,
html.dark body.has-bg-image .feedback-detail-modal,
html[data-theme="dark"] body.has-bg-image .feedback-detail-modal{background:rgba(15,23,42,.68)!important;border-color:rgba(148,163,184,.24)!important;backdrop-filter:blur(16px) saturate(130%)!important;}
html.dark body.has-bg-image .web-link-card,
html[data-theme="dark"] body.has-bg-image .web-link-card,
html.dark body.has-bg-image .feedback-card,
html[data-theme="dark"] body.has-bg-image .feedback-card,
html.dark body.has-bg-image .link-card,
html[data-theme="dark"] body.has-bg-image .link-card,
html.dark body.has-bg-image .mobile-censored,
html[data-theme="dark"] body.has-bg-image .mobile-censored,
html.dark body.has-bg-image .info-grid div,
html[data-theme="dark"] body.has-bg-image .info-grid div,
html.dark body.has-bg-image .box,
html[data-theme="dark"] body.has-bg-image .box,
html.dark body.has-bg-image .trust-grid div,
html[data-theme="dark"] body.has-bg-image .trust-grid div{background:rgba(30,41,59,.64)!important;border-color:rgba(148,163,184,.22)!important;backdrop-filter:blur(12px)!important;}
html.dark body.has-bg-image .mobile-linktree,
html[data-theme="dark"] body.has-bg-image .mobile-linktree{background:rgba(15,23,42,.66)!important;backdrop-filter:blur(14px) saturate(130%)!important;box-shadow:none!important;}
body.no-bg-image .site-header,body.no-bg-image .site-footer{background:var(--glass)!important;}
body.no-bg-image .glass-card,body.no-bg-image .feedback-public,body.no-bg-image .panel{background:var(--card)!important;}
html.dark body.no-bg-image .site-header,html[data-theme="dark"] body.no-bg-image .site-header,html.dark body.no-bg-image .site-footer,html[data-theme="dark"] body.no-bg-image .site-footer{background:#0f172a!important;}
html.dark body.no-bg-image .glass-card,html[data-theme="dark"] body.no-bg-image .glass-card,html.dark body.no-bg-image .feedback-public,html[data-theme="dark"] body.no-bg-image .feedback-public,html.dark body.no-bg-image .panel,html[data-theme="dark"] body.no-bg-image .panel{background:#111827!important;}
@media(max-width:980px){
  body.has-bg-image .mobile-linktree{background:rgba(255,255,255,.78)!important;backdrop-filter:blur(14px) saturate(130%)!important;}
  html.dark body.has-bg-image .mobile-linktree,html[data-theme="dark"] body.has-bg-image .mobile-linktree{background:rgba(15,23,42,.66)!important;}
}
@media(max-width:860px){
  html.dark body.has-bg-image .nav.is-open,html[data-theme="dark"] body.has-bg-image .nav.is-open{background:rgba(15,23,42,.78)!important;}
  body.has-bg-image .nav.is-open{background:rgba(255,255,255,.82)!important;}
}

/* login-required feedback form v13 */
.identity-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px;
  border:1px solid var(--border);
  border-radius:18px;
  background:rgba(248,250,252,.86);
  margin-bottom:16px;
}
.identity-avatar{
  width:52px;
  height:52px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:20px;
  color:#111827;
  background:linear-gradient(135deg,#ffffff,#e0e7ff);
  border:1px solid var(--border);
  flex:0 0 auto;
}
.identity-card span,.identity-card small{display:block;color:var(--muted);font-size:13px;line-height:1.45}
.identity-card strong{display:block;font-size:16px;line-height:1.3;color:var(--text)}
.auth-required-page{max-width:980px;margin:0 auto;padding:70px 18px 90px;display:block}
.auth-required-card{max-width:820px;margin:0 auto}
.auth-required-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:22px}
.ghost-link{font-weight:900;text-decoration:none;color:var(--muted);padding:12px 14px}
html.dark .identity-card,html[data-theme="dark"] .identity-card{background:rgba(30,41,59,.72);border-color:rgba(148,163,184,.28)}
html.dark .identity-avatar,html[data-theme="dark"] .identity-avatar{background:linear-gradient(135deg,#1e293b,#334155);color:#f8fafc;border-color:rgba(148,163,184,.25)}
html.dark body.has-bg-image .identity-card,html[data-theme="dark"] body.has-bg-image .identity-card{background:rgba(30,41,59,.64)!important;border-color:rgba(148,163,184,.24)!important}
@media(max-width:720px){
  .auth-required-page{padding:34px 14px 70px}
  .auth-required-actions{flex-direction:column;align-items:stretch}
  .auth-required-actions a{width:100%;text-align:center;justify-content:center}
  .identity-card{align-items:flex-start;padding:14px;border-radius:16px}
}

/* username size fix v13 */
.hero-left h1{
  font-size:clamp(28px,2.7vw,40px)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  max-width:100%!important;
}
@media (min-width:1200px){
  .hero-left h1{font-size:38px!important;}
}
@media (max-width:860px){
  .hero-left h1,.mobile-linktree h1{
    font-size:clamp(22px,6.2vw,28px)!important;
    line-height:1.18!important;
    letter-spacing:-.025em!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
}
@media (max-width:430px){
  .hero-left h1,.mobile-linktree h1{
    font-size:24px!important;
  }
}

/* username center position fix v14 */
.hero-left{
  text-align:center!important;
}
.hero-left .top-kicker{
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-left h1{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:720px!important;
}
.hero-left .hero-bio{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.info-grid{
  text-align:left!important;
}
.social-actions{
  justify-content:center!important;
}
@media (max-width:860px){
  .hero-left h1,.mobile-linktree h1{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .mobile-linktree .info{text-align:left!important;}
}


/* profile info alignment fix v15 */
.hero-left{
  text-align:left!important;
}
.hero-left .top-kicker{
  margin-left:0!important;
  margin-right:0!important;
}
.hero-left .hero-logo{
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-left h1{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-left .hero-bio{
  text-align:left!important;
  margin:0 0 14px!important;
  max-width:none!important;
}
.hero-quick-info{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 18px;
  margin:18px 0 22px;
  color:var(--muted);
  font-size:16px;
  line-height:1.55;
  text-align:left;
}
.hero-quick-info span{
  display:flex;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}
.hero-quick-info b{
  font-weight:700;
  color:var(--muted);
  overflow-wrap:anywhere;
}
.info-grid{
  margin-top:16px!important;
}
@media (max-width:860px){
  .hero-left .top-kicker{margin-left:0!important;margin-right:0!important;}
  .hero-quick-info{grid-template-columns:1fr;font-size:14px;gap:8px;margin:16px 0 18px;}
  .hero-left .hero-bio{text-align:left!important;}
}


/* profile layout alignment fix v16 - force left badge + clean 2-column info */
.hero-left{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  text-align:left!important;
}
.hero-left .top-kicker{
  align-self:flex-start!important;
  margin:0 0 22px 0!important;
}
.hero-left .hero-logo{
  align-self:center!important;
  margin:0 auto 18px auto!important;
}
.hero-left h1{
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  margin:0 auto 14px auto!important;
  overflow-wrap:anywhere!important;
}
.hero-left .hero-bio{
  width:100%!important;
  text-align:left!important;
  margin:0 0 18px 0!important;
}
.hero-quick-info{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 16px!important;
  margin:0 0 22px 0!important;
  text-align:left!important;
  justify-items:stretch!important;
  align-items:start!important;
}
.hero-quick-info span{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:9px!important;
  min-width:0!important;
  line-height:1.5!important;
  text-align:left!important;
}
.hero-quick-info b{
  display:block!important;
  color:var(--muted)!important;
  font-weight:700!important;
  text-align:left!important;
  overflow-wrap:anywhere!important;
}
.info-grid{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  text-align:left!important;
  margin-top:0!important;
}
.info-grid div{text-align:left!important;align-items:flex-start!important;}
.social-actions{justify-content:flex-start!important;}
@media (max-width:860px){
  .hero-left .top-kicker{align-self:flex-start!important;margin-bottom:18px!important;}
  .hero-quick-info,.info-grid{grid-template-columns:1fr!important;}
  .social-actions{justify-content:stretch!important;}
}


/* no double profile info fix v17 */
.hero-quick-info{display:none!important;}
.hero-left{align-items:stretch!important;text-align:left!important;}
.hero-left .top-kicker{align-self:flex-start!important;margin:0 0 22px 0!important;}
.hero-left .hero-logo{align-self:center!important;margin:0 auto 18px!important;}
.hero-left h1{text-align:center!important;margin:0 auto 20px!important;}
.info-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0 0 26px!important;text-align:left!important;}
.info-grid div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;min-height:112px;}
.social-actions{justify-content:flex-start!important;margin-top:0!important;}
@media(max-width:860px){
  .hero-left .top-kicker{align-self:flex-start!important;}
  .info-grid{grid-template-columns:1fr!important;}
  .social-actions{justify-content:stretch!important;}
}


/* no double profile info fix v18 - final clean profile block */
.hero-profile-clean .hero-quick-info,
.hero-profile-clean .profile-meta,
.hero-profile-clean .hero-meta,
.hero-profile-clean .hero-info,
.hero-profile-clean .profile-info-line,
.hero-profile-clean .profile-summary,
.hero-profile-clean > .info:not(.only-profile-info){
  display:none!important;
}
.hero-profile-clean{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  text-align:left!important;
}
.hero-profile-clean > .top-kicker{
  align-self:flex-start!important;
  margin:0 0 22px!important;
}
.hero-profile-clean > .hero-logo{
  align-self:center!important;
  margin:0 auto 18px!important;
}
.hero-profile-clean > h1{
  width:100%!important;
  text-align:center!important;
  margin:0 auto 22px!important;
  font-size:clamp(28px,2.7vw,40px)!important;
  line-height:1.12!important;
  overflow-wrap:anywhere!important;
}
.hero-profile-clean > .hero-bio{
  text-align:left!important;
  margin:0 0 18px!important;
}
.hero-profile-clean .only-profile-info{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  margin:0 0 26px!important;
  text-align:left!important;
}
.hero-profile-clean .only-profile-info > div{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  text-align:left!important;
  min-height:112px!important;
}
.hero-profile-clean .only-profile-info small,
.hero-profile-clean .only-profile-info b{
  text-align:left!important;
}
.hero-profile-clean .social-actions{
  justify-content:flex-start!important;
}
@media(max-width:860px){
  .hero-profile-clean .only-profile-info{grid-template-columns:1fr!important;}
  .hero-profile-clean .social-actions{justify-content:stretch!important;}
}


/* auth buttons side-by-side fix v19 */
.auth-required-actions{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
  margin-top:22px!important;
}
.auth-action-row{
  display:flex!important;
  flex-direction:row!important;
  gap:12px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  width:100%!important;
}
.auth-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:12px 18px!important;
  border-radius:14px!important;
  font-weight:950!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  flex:1 1 0!important;
  text-align:center!important;
  line-height:1.15!important;
}
.auth-btn-primary{
  background:#fff!important;
  color:#0f172a!important;
  border:1px solid #fff!important;
  box-shadow:0 12px 28px rgba(15,23,42,.14)!important;
}
.auth-btn-outline{
  background:rgba(15,23,42,.28)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.28)!important;
}
html:not(.dark) .auth-btn-outline, html:not([data-theme="dark"]) .auth-btn-outline{
  color:var(--text)!important;
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
}
.auth-back-link{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:2px!important;
}
@media(max-width:430px){
  .auth-action-row{gap:9px!important;}
  .auth-btn{min-height:44px!important;padding:10px 12px!important;font-size:13px!important;border-radius:12px!important;}
}

/* login required action box fix v20 */
.login-required-box{
  width:100%!important;
  margin-top:22px!important;
  padding:16px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(15,23,42,.42)!important;
  box-shadow:0 18px 46px rgba(2,6,23,.16)!important;
  backdrop-filter:blur(12px)!important;
}
.login-required-box-head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:14px!important;
}
.login-required-icon{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.1)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  flex:0 0 42px!important;
}
.login-required-box-head strong{
  display:block!important;
  font-size:16px!important;
  line-height:1.2!important;
  color:#fff!important;
  font-weight:950!important;
}
.login-required-box-head small{
  display:block!important;
  margin-top:4px!important;
  color:rgba(226,232,240,.78)!important;
  font-weight:700!important;
  line-height:1.35!important;
}
.login-required-box .auth-required-actions{margin-top:0!important;}
html:not(.dark) .login-required-box,
html:not([data-theme="dark"]) .login-required-box{
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(15,23,42,.1)!important;
}
html:not(.dark) .login-required-box-head strong,
html:not([data-theme="dark"]) .login-required-box-head strong{color:var(--text)!important;}
html:not(.dark) .login-required-box-head small,
html:not([data-theme="dark"]) .login-required-box-head small{color:var(--muted)!important;}
html:not(.dark) .login-required-icon,
html:not([data-theme="dark"]) .login-required-icon{
  background:rgba(15,23,42,.06)!important;
  border-color:rgba(15,23,42,.1)!important;
}
@media(max-width:560px){
  .login-required-box{padding:14px!important;border-radius:20px!important;}
  .login-required-box-head{align-items:flex-start!important;}
  .login-required-box-head strong{font-size:15px!important;}
  .login-required-box-head small{font-size:12px!important;}
}

/* login required right side box fix v21 */
.auth-required-sidebox-page{
  width:min(1180px,92vw)!important;
  max-width:1180px!important;
  margin:0 auto 70px!important;
  padding:64px 0 88px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,0.92fr)!important;
  gap:28px!important;
  align-items:stretch!important;
}
.auth-required-sidebox-page .auth-required-card,
.auth-required-sidebox-page .login-required-side-card{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
}
.login-required-side-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:100%!important;
  padding:38px!important;
}
.login-required-side-card .side-card-icon{
  width:64px!important;
  height:64px!important;
  border-radius:22px!important;
  display:grid!important;
  place-items:center!important;
  margin:22px 0 16px!important;
  font-size:28px!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.login-required-side-card h2{
  margin:0 0 12px!important;
  font-size:clamp(30px,3vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  color:var(--text)!important;
}
.login-required-side-card p{
  color:var(--muted)!important;
  font-size:16px!important;
  line-height:1.7!important;
  margin:0 0 18px!important;
}
.side-login-benefits{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  margin:8px 0 18px!important;
}
.side-login-benefits div{
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  gap:12px!important;
  align-items:center!important;
  padding:14px!important;
  border-radius:18px!important;
  background:var(--surface2)!important;
  border:1px solid var(--border)!important;
}
.side-login-benefits span{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.1)!important;
  grid-row:span 2!important;
}
.side-login-benefits b,
.side-login-benefits small{display:block!important;}
.side-login-benefits b{font-weight:950!important;color:var(--text)!important;}
.side-login-benefits small{color:var(--muted)!important;line-height:1.35!important;}
.side-login-box{margin-top:auto!important;}
html:not(.dark) .login-required-side-card .side-card-icon,
html:not([data-theme="dark"]) .login-required-side-card .side-card-icon{
  background:rgba(15,23,42,.06)!important;
  border-color:rgba(15,23,42,.1)!important;
}
@media(max-width:980px){
  .auth-required-sidebox-page{
    grid-template-columns:1fr!important;
    width:min(680px,92vw)!important;
    padding:28px 0 70px!important;
    gap:18px!important;
  }
  .login-required-side-card{padding:24px!important;border-radius:28px!important;}
  .login-required-side-card h2{font-size:clamp(28px,8vw,38px)!important;}
}
@media(max-width:480px){
  .auth-required-sidebox-page{width:94vw!important;padding-top:18px!important;}
  .login-required-side-card{padding:20px!important;border-radius:24px!important;}
  .login-required-side-card .side-card-icon{width:54px!important;height:54px!important;border-radius:18px!important;font-size:24px!important;}
  .auth-action-row{grid-template-columns:1fr 1fr!important;display:grid!important;gap:10px!important;}
  .auth-btn{min-width:0!important;white-space:normal!important;}
}

/* clear login/register choice cards fix v22 */
.login-choice-panel{
  padding:20px!important;
  border-radius:26px!important;
  background:rgba(15,23,42,.58)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}
.login-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  margin-top:18px!important;
}
.login-choice-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:156px!important;
  padding:16px!important;
  border-radius:20px!important;
  text-decoration:none!important;
  overflow:hidden!important;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease!important;
}
.login-choice-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 42px rgba(2,6,23,.24)!important;
}
.login-choice-login{
  background:#ffffff!important;
  color:#0f172a!important;
  border:1px solid rgba(255,255,255,.88)!important;
}
.login-choice-register{
  background:rgba(255,255,255,.06)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.choice-icon{
  width:38px!important;
  height:38px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  margin-bottom:12px!important;
  background:rgba(15,23,42,.08)!important;
  border:1px solid rgba(15,23,42,.08)!important;
}
.login-choice-register .choice-icon{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.12)!important;
}
.choice-title{
  display:block!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:950!important;
  margin-bottom:5px!important;
}
.choice-desc{
  display:block!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  font-weight:700!important;
  opacity:.72!important;
  margin-bottom:14px!important;
}
.choice-button{
  margin-top:auto!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
.login-choice-login .choice-button{
  color:#ffffff!important;
  background:#0f172a!important;
}
.login-choice-register .choice-button{
  color:#0f172a!important;
  background:#ffffff!important;
}
.login-choice-panel .auth-back-link{
  margin-top:14px!important;
  display:inline-flex!important;
}
html:not(.dark) .login-choice-panel,
html:not([data-theme="dark"]) .login-choice-panel{
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(15,23,42,.10)!important;
}
html:not(.dark) .login-choice-register,
html:not([data-theme="dark"]) .login-choice-register{
  color:#0f172a!important;
  background:rgba(15,23,42,.04)!important;
  border:1px solid rgba(15,23,42,.12)!important;
}
html:not(.dark) .login-choice-register .choice-icon,
html:not([data-theme="dark"]) .login-choice-register .choice-icon{
  background:rgba(15,23,42,.06)!important;
  border-color:rgba(15,23,42,.08)!important;
}
@media(max-width:520px){
  .login-choice-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .login-choice-card{min-height:auto!important;padding:15px!important;}
  .choice-button{min-height:44px!important;}
}


/* login/register real button box fix v23 */
.login-choice-box-v23{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
}
.login-choice-box-v23 .login-choice-intro{
  display:flex!important;
  gap:14px!important;
  align-items:flex-start!important;
}
.login-choice-lock{
  width:52px!important;
  height:52px!important;
  border-radius:18px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  font-size:24px!important;
  flex:0 0 auto!important;
}
.login-choice-box-v23 h2{
  margin:0 0 8px!important;
  font-size:clamp(26px,2.4vw,38px)!important;
  line-height:1.08!important;
}
.login-choice-box-v23 p{
  margin:0!important;
  line-height:1.65!important;
}
.login-choice-mainbox{
  padding:20px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 18px 50px rgba(2,6,23,.18)!important;
}
.login-choice-titleline{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  margin-bottom:16px!important;
}
.login-choice-titleline strong{
  color:#fff!important;
  font-size:18px!important;
  font-weight:950!important;
}
.login-choice-titleline small{
  color:rgba(255,255,255,.72)!important;
  font-size:13px!important;
  line-height:1.45!important;
}
.login-choice-buttons-v23{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
  width:100%!important;
}
.login-choice-bigbtn{
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  min-height:86px!important;
  padding:16px!important;
  border-radius:20px!important;
  text-decoration:none!important;
  border:1px solid rgba(255,255,255,.18)!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
}
.login-choice-bigbtn:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.22)!important;
}
.btn-login-v23{
  background:#fff!important;
  color:#0f172a!important;
  border-color:#fff!important;
}
.btn-register-v23{
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.20)!important;
}
.bigbtn-icon{
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  background:rgba(15,23,42,.08)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  font-size:22px!important;
}
.btn-register-v23 .bigbtn-icon{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.12)!important;
}
.bigbtn-text{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  min-width:0!important;
}
.bigbtn-text b{
  display:block!important;
  font-size:16px!important;
  line-height:1.15!important;
  font-weight:950!important;
  white-space:normal!important;
}
.bigbtn-text small{
  display:block!important;
  font-size:12.5px!important;
  line-height:1.25!important;
  opacity:.72!important;
  font-weight:800!important;
}
.login-choice-note-v23{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
}
.login-choice-note-v23>div{
  padding:14px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  column-gap:10px!important;
  row-gap:2px!important;
}
.login-choice-note-v23 span{grid-row:1 / span 2!important;}
.login-choice-note-v23 b{color:#fff!important;font-size:14px!important;}
.login-choice-note-v23 small{color:rgba(255,255,255,.72)!important;font-size:12px!important;line-height:1.35!important;}
html:not(.dark) .login-choice-mainbox,
html:not([data-theme="dark"]) .login-choice-mainbox{
  background:rgba(255,255,255,.90)!important;
  border-color:rgba(15,23,42,.10)!important;
}
html:not(.dark) .login-choice-titleline strong,
html:not([data-theme="dark"]) .login-choice-titleline strong{color:#0f172a!important;}
html:not(.dark) .login-choice-titleline small,
html:not([data-theme="dark"]) .login-choice-titleline small{color:#64748b!important;}
html:not(.dark) .btn-register-v23,
html:not([data-theme="dark"]) .btn-register-v23{
  background:#0f172a!important;
  color:#fff!important;
  border-color:#0f172a!important;
}
html:not(.dark) .login-choice-note-v23>div,
html:not([data-theme="dark"]) .login-choice-note-v23>div{
  background:rgba(15,23,42,.04)!important;
  border-color:rgba(15,23,42,.10)!important;
}
html:not(.dark) .login-choice-note-v23 b,
html:not([data-theme="dark"]) .login-choice-note-v23 b{color:#0f172a!important;}
html:not(.dark) .login-choice-note-v23 small,
html:not([data-theme="dark"]) .login-choice-note-v23 small{color:#64748b!important;}
@media(max-width:720px){
  .login-choice-box-v23 .login-choice-intro{flex-direction:column!important;}
  .login-choice-buttons-v23{grid-template-columns:1fr!important;}
  .login-choice-note-v23{grid-template-columns:1fr!important;}
  .login-choice-bigbtn{min-height:76px!important;}
}

/* header spacing fix v24 */
@media (min-width:861px){
  .site-header{
    padding-left:clamp(28px,7vw,128px)!important;
    padding-right:clamp(28px,7vw,128px)!important;
  }
  .nav{
    gap:22px!important;
    align-items:center!important;
  }
  .nav a,
  .nav form button{
    padding:8px 2px!important;
    line-height:1.2!important;
  }
  .nav .nav-btn{
    padding:12px 24px!important;
    margin-left:2px!important;
  }
  .theme-toggle{
    margin-left:6px!important;
    flex:0 0 44px!important;
  }
}
@media (min-width:861px) and (max-width:1120px){
  .nav{gap:16px!important;font-size:14px!important;}
  .nav .nav-btn{padding:10px 20px!important;}
}

/* Private feedback two-way chat session v26 */
.my-feedback-panel{min-width:0}.my-feedback-card{border:1px solid rgba(100,116,139,.18);border-radius:24px;padding:18px;margin-top:16px;background:rgba(255,255,255,.82);box-shadow:0 14px 40px rgba(15,23,42,.08)}.my-feedback-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.my-feedback-head h3{margin:0;font-size:18px}.my-feedback-head p{margin:6px 0 0;color:#64748b}.feedback-chat-box{margin-top:22px;border:1px solid rgba(100,116,139,.22);border-radius:24px;padding:18px;background:linear-gradient(180deg,rgba(248,250,252,.9),rgba(255,255,255,.74))}.chat-headline{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.chat-headline h3,.chat-headline h2{margin:0 0 5px}.chat-headline p{margin:0;color:#64748b}.session-pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.session-pill.open{background:#dcfce7;color:#166534}.session-pill.closed{background:#fee2e2;color:#991b1b}.chat-thread{display:flex;flex-direction:column;gap:12px;max-height:340px;overflow:auto;padding:8px;border-radius:18px;background:rgba(241,245,249,.72)}.chat-thread.compact{max-height:280px}.chat-bubble{max-width:82%;padding:12px 14px;border-radius:18px;border:1px solid rgba(100,116,139,.18);box-shadow:0 8px 20px rgba(15,23,42,.05)}.chat-bubble.from-sender{align-self:flex-start;background:#fff}.chat-bubble.from-admin{align-self:flex-end;background:#111827;color:#fff}.chat-bubble.from-admin .chat-meta span{color:#cbd5e1}.chat-bubble p{margin:8px 0 0;white-space:pre-wrap;line-height:1.5}.chat-meta{display:flex;gap:10px;justify-content:space-between;align-items:center;font-size:12px}.chat-meta span{color:#64748b}.chat-reply-form{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:14px}.chat-reply-form textarea{width:100%;min-height:82px;border-radius:16px;border:1px solid rgba(100,116,139,.28);padding:13px 14px;resize:vertical;background:#fff;color:#0f172a}.closed-note{padding:14px;border-radius:16px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;margin-top:12px}.chat-modal{max-width:1050px}.chat-modal .detail-grid{grid-template-columns:1.1fr .9fr}
[data-theme="dark"] .my-feedback-card,[data-theme="dark"] .feedback-chat-box{background:rgba(15,23,42,.82);border-color:rgba(148,163,184,.25)}[data-theme="dark"] .chat-thread{background:rgba(2,6,23,.5)}[data-theme="dark"] .chat-bubble.from-sender{background:#0f172a;color:#e5e7eb}[data-theme="dark"] .chat-reply-form textarea{background:#0f172a;color:#e5e7eb;border-color:rgba(148,163,184,.3)}[data-theme="dark"] .closed-note{background:rgba(124,45,18,.3);border-color:rgba(251,146,60,.35);color:#fed7aa}
@media(max-width:900px){.dashboard-page{grid-template-columns:1fr}.chat-reply-form{grid-template-columns:1fr}.chat-bubble{max-width:95%}.chat-headline,.my-feedback-head{flex-direction:column}.chat-modal .detail-grid{grid-template-columns:1fr}}

/* v27 security code for protected sender types */
.security-code-field{display:none;position:relative}
.security-code-field input{letter-spacing:.18em;font-weight:900}
.security-code-field::before{content:'🔒';position:absolute;right:16px;top:43px;opacity:.65;pointer-events:none}
html.dark .security-code-field input,html[data-theme="dark"] .security-code-field input{background:rgba(15,23,42,.92)!important;color:#eef2f7!important;border-color:#475569!important}

/* v28: readonly login email + admin managed secret codes */
.readonly-field,
.feedback-form input.readonly-field{
  opacity:.82;
  cursor:not-allowed;
  background:rgba(148,163,184,.12)!important;
  border-style:dashed!important;
}
.security-code-admin-box{margin-bottom:22px}
.security-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.security-code-grid input{font-weight:900;letter-spacing:.12em}
@media(max-width:860px){.security-code-grid{grid-template-columns:1fr}}


/* V29: pisahkan riwayat kritik & saran dari dashboard */
.dashboard-page{display:grid;gap:24px;align-items:start;justify-content:center;padding:48px 18px 70px;}
.dashboard-page .panel.small{max-width:620px;width:min(620px,100%);margin:0 auto;}
.dashboard-note-panel{width:min(620px,100%);margin:0 auto;padding:28px;}
.action-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px;}
.primary.small-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:16px;padding:12px 18px;font-weight:800;}
.split-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.history-btn{white-space:nowrap;margin-top:8px;}
.feedback-history-page{min-height:calc(100vh - 160px);padding:52px 18px 80px;display:flex;justify-content:center;}
.history-panel{width:min(1040px,100%);padding:32px;}
.compact-actions{margin-top:0;justify-content:flex-end;}
.history-images{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 8px;}
.history-images a{display:block;width:86px;height:86px;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:rgba(255,255,255,.08);}
.history-images img{width:100%;height:100%;object-fit:cover;display:block;transition:.2s ease;}
.history-images a:hover img{transform:scale(1.08);}
@media(max-width:760px){
  .split-header{display:block;}
  .history-btn{margin-top:14px;width:100%;justify-content:center;}
  .chat-headline{display:block;}
  .compact-actions{justify-content:flex-start;margin-top:16px;}
  .feedback-history-page{padding:26px 12px 56px;}
  .history-panel{padding:20px;}
}

/* v32 bypass tipe pengirim */
.bypass-checks{display:grid;gap:6px;min-width:210px}
.mini-check{font-size:12px;margin:0;display:flex;align-items:center;gap:6px;line-height:1.2}
.mini-check input{width:auto;min-width:auto}
.users-bypass-wrap table td{vertical-align:top}
.security-code-field input::placeholder{letter-spacing:1px}


/* Admin create user form */
.admin-create-user-box{margin:18px 0 22px;padding:22px;border-radius:22px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.22)}
.admin-create-user-box h3{margin:0 0 6px;font-size:22px}
.admin-create-user-form{display:grid;gap:16px;margin-top:16px}
.admin-create-user-form .grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-create-user-form label{display:grid;gap:8px;font-weight:800}
.admin-create-user-form input,.admin-create-user-form select{width:100%;box-sizing:border-box}
.create-bypass-area{display:grid;gap:8px}
.create-bypass-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}
@media(max-width:780px){.admin-create-user-form .grid2,.create-bypass-checks{grid-template-columns:1fr}}
body{font-family:Inter,system-ui,Arial,sans-serif;margin:0;background:#f7fafc;color:#172033}.top{background:#0f766e;color:white}.wrap{max-width:1180px;margin:auto;padding:18px}.nav{display:flex;gap:14px;align-items:center;justify-content:space-between}.nav a{color:inherit;text-decoration:none;font-weight:700}.brand{display:flex;gap:12px;align-items:center}.logo{width:48px;height:48px;border-radius:14px;background:white;color:#0f766e;display:grid;place-items:center;font-weight:900}.btn{display:inline-block;border:0;background:#0f766e;color:white;padding:10px 14px;border-radius:12px;text-decoration:none;font-weight:700;cursor:pointer}.btn.secondary{background:#e2e8f0;color:#172033}.btn.danger{background:#dc2626}.card{background:white;border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(15,23,42,.08);margin:14px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;padding:44px 0}.hero img,.thumb{width:100%;height:240px;object-fit:cover;border-radius:20px;background:#dbeafe}.muted{color:#64748b}.pill{display:inline-block;background:#ccfbf1;color:#115e59;padding:6px 10px;border-radius:999px;font-size:12px;margin:2px}.status{font-weight:800;text-transform:uppercase}.pending{color:#b45309}.approved{color:#15803d}.rejected{color:#b91c1c}input,select,textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:12px;padding:10px;margin:6px 0 12px;background:white}label{font-weight:700}table{width:100%;border-collapse:collapse;background:white;border-radius:14px;overflow:hidden}th,td{border-bottom:1px solid #e2e8f0;text-align:left;padding:10px;vertical-align:top}.actions{display:flex;gap:8px;flex-wrap:wrap}.footer{background:#0f172a;color:white;margin-top:40px}.editor{min-height:180px;border:1px solid #cbd5e1;border-radius:12px;padding:12px;background:white}.sheet td{border:1px solid #cbd5e1}.sheet input{border:0;margin:0;border-radius:0} @media(max-width:800px){.hero{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}}
/* Program KKN polished layout v39 */
.program-page{width:min(1180px,92vw);margin:0 auto 48px;display:grid;gap:26px}.program-hero{display:grid;grid-template-columns:1.02fr .98fr;gap:28px;align-items:center;border-radius:34px;padding:34px;overflow:hidden}.program-hero-copy h1{font-size:clamp(38px,4.5vw,66px);line-height:.98;letter-spacing:-.06em;margin:24px 0 18px;max-width:780px}.program-hero-copy p{font-size:18px;line-height:1.8;color:var(--muted);max-width:620px;margin:0 0 24px}.program-actions{display:flex;flex-wrap:wrap;gap:12px}.program-actions .primary,.program-actions .outline-btn,.program-section .primary,.program-section .outline-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 20px;font-weight:950;border:1px solid var(--border)}.program-actions .primary,.program-section .primary{background:var(--accent);color:var(--accentText)}.program-actions .outline-btn,.program-section .outline-btn{background:var(--surface2);color:var(--text)}.program-hero-media{position:relative;min-height:420px;border-radius:28px;overflow:hidden;background:var(--surface2);box-shadow:inset 0 0 0 1px var(--border)}.program-hero-media img{width:100%;height:100%;min-height:420px;object-fit:cover;display:block}.program-floating-card{position:absolute;left:22px;right:22px;bottom:22px;padding:16px 18px;border-radius:22px;background:rgba(15,23,42,.78);color:#fff;backdrop-filter:blur(14px);display:flex;justify-content:space-between;gap:12px;align-items:center}.program-floating-card span{color:#d9e1ee}.program-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.program-stats .glass-card{border-radius:24px;padding:24px;text-align:center}.program-stats b{display:block;font-size:38px;letter-spacing:-.04em}.program-stats span{color:var(--muted);font-weight:800}.program-section{border-radius:34px;padding:32px;overflow:hidden}.program-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.program-section-head h2{font-size:clamp(30px,3vw,44px);line-height:1;margin:14px 0 0;letter-spacing:-.04em}.program-section-head p{max-width:440px;color:var(--muted);line-height:1.6;margin:0;text-align:right}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program-card{display:block;border:1px solid var(--border);background:var(--surface);border-radius:26px;overflow:hidden;box-shadow:0 16px 42px rgba(15,23,42,.08);transition:transform .18s ease, box-shadow .18s ease}.program-card:hover{transform:translateY(-3px);box-shadow:0 20px 50px rgba(15,23,42,.14)}.program-card-thumb{width:100%;height:210px;object-fit:cover;display:block;background:var(--surface2)}.program-card-body{padding:18px}.program-badge{display:inline-flex;max-width:100%;padding:7px 11px;border-radius:999px;background:var(--surface2);border:1px solid var(--border);font-size:12px;font-weight:950;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-card h3{font-size:20px;line-height:1.2;margin:14px 0 8px;letter-spacing:-.025em}.program-card p{color:var(--muted);margin:0 0 8px;line-height:1.45}.program-card small{color:var(--muted);font-weight:800}.role-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.role-column{border:1px solid var(--border);background:var(--surface);border-radius:26px;padding:20px}.role-column h3{margin:0 0 14px;font-size:18px;letter-spacing:-.02em}.role-item{padding:14px;border-radius:18px;background:var(--surface2);border:1px solid var(--border);margin-bottom:10px}.role-item b{display:block;margin-bottom:4px}.role-item span{color:var(--muted);line-height:1.5}.program-empty{grid-column:1/-1;border:1px dashed var(--border);background:var(--surface2);border-radius:24px;padding:26px;text-align:center;color:var(--muted)}.program-empty b{display:block;color:var(--text);margin-bottom:6px}.program-empty p{margin:0;color:var(--muted)}html.dark .program-card,html[data-theme="dark"] .program-card,html.dark .role-column,html[data-theme="dark"] .role-column{background:rgba(15,23,42,.68);border-color:rgba(148,163,184,.24)}html.dark .program-card-body,html[data-theme="dark"] .program-card-body{color:#eef2f7}@media(max-width:1080px){.program-hero{grid-template-columns:1fr}.program-hero-media,.program-hero-media img{min-height:340px}.program-grid,.role-columns{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.program-page{width:92vw;gap:18px}.program-hero,.program-section{border-radius:28px;padding:22px}.program-hero-copy h1{font-size:clamp(36px,12vw,48px)}.program-hero-copy p{font-size:16px}.program-actions a{width:100%}.program-stats{grid-template-columns:1fr}.program-section-head{display:block}.program-section-head p{text-align:left;margin-top:10px}.program-grid,.role-columns{grid-template-columns:1fr}.program-card-thumb{height:220px}.program-floating-card{display:block}.program-floating-card b,.program-floating-card span{display:block}}

/* v40 role lengkap: checkbox role KKN lebih rapi di tabel admin */
.kkn-role-checks{max-height:190px;overflow:auto;padding:8px;border:1px solid rgba(148,163,184,.25);border-radius:16px;background:rgba(15,23,42,.25)}
.kkn-role-checks .mini-check{display:block;margin:3px 0;line-height:1.25}
.users-bypass-wrap table th:nth-child(5), .users-bypass-wrap table td:nth-child(5){min-width:260px}
@media(max-width:900px){.users-bypass-wrap{overflow-x:auto}.users-bypass-wrap table{min-width:980px}}

/* v44 kegiatan: tombol ubah status + alasan approved/tolak */
.kkn-page-shell{width:min(1180px,94vw);margin:42px auto 72px;}
.kkn-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px;}
.kkn-page-head h1{font-size:clamp(34px,3vw,48px);line-height:1;margin:12px 0 10px;letter-spacing:-.04em;}
.kkn-page-head p{margin:0;color:var(--muted,#64748b);max-width:720px;line-height:1.55;}
.kkn-eyebrow{display:inline-flex;border:1px solid rgba(148,163,184,.32);background:rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;font-weight:950;font-size:12px;text-transform:uppercase;letter-spacing:.04em;}
.alert-success{border:1px solid rgba(34,197,94,.35);background:rgba(34,197,94,.12);color:#16a34a;border-radius:16px;padding:14px 16px;margin-bottom:18px;font-weight:800;}
.kkn-table-card{border:1px solid rgba(148,163,184,.28);border-radius:26px;overflow:hidden;background:rgba(255,255,255,.88);box-shadow:0 18px 50px rgba(15,23,42,.08);}
.kkn-table{width:100%;border-collapse:collapse;background:transparent;}
.kkn-table th{padding:16px 18px;background:rgba(15,23,42,.05);font-size:13px;text-transform:uppercase;letter-spacing:.04em;}
.kkn-table td{padding:18px;border-bottom:1px solid rgba(148,163,184,.20);vertical-align:top;}
.kkn-table tr:last-child td{border-bottom:0;}
.kkn-title-link{color:inherit;text-decoration:none;}
.kkn-title-link b{font-size:18px;}
.kkn-table small{display:block;color:var(--muted,#64748b);margin-top:5px;line-height:1.35;}
.kkn-note{border:1px solid rgba(148,163,184,.28);background:rgba(148,163,184,.10);border-radius:14px;padding:10px 12px;line-height:1.45;white-space:pre-wrap;}
.status-form{display:grid;grid-template-columns:150px minmax(230px,1fr) auto;gap:10px;align-items:start;min-width:520px;}
.status-form select,.status-form textarea{margin:0;width:100%;}
.status-form textarea{min-height:52px;resize:vertical;}
.btn.btn-small{padding:11px 14px;border-radius:14px;white-space:nowrap;}
.empty-cell{text-align:center;color:var(--muted,#64748b);font-weight:800;padding:30px!important;}
.pagination-wrap{margin-top:18px;}
.activity-detail-card{max-width:960px;margin:0 auto;padding:28px!important;}
.activity-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px;}
.activity-detail-head h1{margin:12px 0 8px;font-size:clamp(32px,4vw,52px);letter-spacing:-.04em;line-height:1;}
.activity-detail-head p{color:var(--muted,#64748b);margin:0;}
.activity-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.detail-section{margin-top:24px;padding-top:20px;border-top:1px solid rgba(148,163,184,.22);}
.detail-section h3{margin:0 0 10px;font-size:20px;}
.detail-note{margin:14px 0 8px;}
.approve-box form{display:grid;gap:10px;}
.approve-box select,.approve-box textarea{margin:0;}
.approve-box textarea{min-height:100px;}
html.dark .kkn-table-card,html[data-theme="dark"] .kkn-table-card{background:rgba(15,23,42,.78);border-color:rgba(148,163,184,.25);}
html.dark .kkn-table th,html[data-theme="dark"] .kkn-table th{background:rgba(2,6,23,.35);}
html.dark .kkn-note,html[data-theme="dark"] .kkn-note{background:rgba(15,23,42,.65);border-color:rgba(148,163,184,.25);}
@media(max-width:900px){.kkn-page-head,.activity-detail-head{display:block}.kkn-page-head .btn{margin-top:14px}.kkn-table-card{overflow-x:auto}.kkn-table{min-width:900px}.status-form{grid-template-columns:1fr;min-width:280px}.activity-badges{justify-content:flex-start;margin-top:12px}}

/* v46 CRUD polish */
.action-stack{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn-danger,.danger{background:#ef4444!important;color:#fff!important;border-color:#ef4444!important}.btn-secondary,.secondary{background:#e5e7eb!important;color:#111827!important}.btn-small{padding:8px 12px!important;font-size:.86rem!important;border-radius:12px!important}.form-grid-pro{display:grid;gap:14px}.form-grid-pro input,.form-grid-pro select,.form-grid-pro textarea,.kkn-table input,.kkn-table select,.kkn-table textarea{border:1px solid rgba(148,163,184,.35);border-radius:12px;padding:10px 12px;max-width:100%}.kkn-table textarea{min-height:70px}.kkn-table-card{overflow:auto}.activity-badges form,.action-stack form{display:inline}.detail-section{margin-top:18px;padding-top:18px;border-top:1px solid rgba(148,163,184,.25)}html.dark .btn-secondary,html[data-theme="dark"] .btn-secondary,html.dark .secondary,html[data-theme="dark"] .secondary{background:#1e293b!important;color:#f8fafc!important;border-color:#334155!important}html.dark .form-grid-pro input,html.dark .form-grid-pro select,html.dark .form-grid-pro textarea,html.dark .kkn-table input,html.dark .kkn-table select,html.dark .kkn-table textarea,html[data-theme="dark"] .form-grid-pro input,html[data-theme="dark"] .form-grid-pro select,html[data-theme="dark"] .form-grid-pro textarea,html[data-theme="dark"] .kkn-table input,html[data-theme="dark"] .kkn-table select,html[data-theme="dark"] .kkn-table textarea{background:#0f172a;color:#f8fafc;border-color:#334155}@media(max-width:860px){.kkn-table,.kkn-table tbody,.kkn-table tr,.kkn-table td{display:block}.kkn-table thead{display:none}.kkn-table tr{padding:12px;border-bottom:1px solid rgba(148,163,184,.25)}.kkn-table td{padding:8px 0}.kkn-table td:before{content:attr(data-label);display:block;font-weight:800;margin-bottom:5px}.action-stack{margin-top:6px}}

/* v51 activity visibility statuses */
.status.approved_private{color:#f59e0b!important}
.status.approved_public,.status.approved{color:#16a34a!important}
.status.approved_schedule{color:#38bdf8!important}
.status.rejected{color:#ef4444!important}
.status.pending{color:#f59e0b!important}
.kkn-table select option{color:#111827;background:#fff}

/* v52 dark mode hard fix: finance, secretary, activities, tables, forms */
html.dark body,
html[data-theme="dark"] body{
  background-color:#0f172a!important;
  color:#eef2f7!important;
}
html.dark main,
html[data-theme="dark"] main{
  color:#eef2f7!important;
}
html.dark .card,
html[data-theme="dark"] .card,
html.dark .panel,
html[data-theme="dark"] .panel,
html.dark .kkn-table-card,
html[data-theme="dark"] .kkn-table-card,
html.dark .form-grid-pro,
html[data-theme="dark"] .form-grid-pro,
html.dark .box,
html[data-theme="dark"] .box,
html.dark .program-card,
html[data-theme="dark"] .program-card,
html.dark .role-column,
html[data-theme="dark"] .role-column{
  background:rgba(15,23,42,.84)!important;
  color:#eef2f7!important;
  border:1px solid rgba(148,163,184,.26)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.28)!important;
}
html.dark .card h1,
html.dark .card h2,
html.dark .card h3,
html.dark .card h4,
html.dark .card label,
html.dark .card p,
html.dark .panel h1,
html.dark .panel h2,
html.dark .panel h3,
html.dark .panel h4,
html.dark .panel label,
html.dark .form-grid-pro h1,
html.dark .form-grid-pro h2,
html.dark .form-grid-pro h3,
html.dark .form-grid-pro h4,
html.dark .form-grid-pro label,
html.dark .kkn-table-card h1,
html.dark .kkn-table-card h2,
html.dark .kkn-table-card h3,
html.dark .kkn-table-card h4,
html.dark .kkn-table-card label,
html[data-theme="dark"] .card h1,
html[data-theme="dark"] .card h2,
html[data-theme="dark"] .card h3,
html[data-theme="dark"] .card h4,
html[data-theme="dark"] .card label,
html[data-theme="dark"] .card p,
html[data-theme="dark"] .panel h1,
html[data-theme="dark"] .panel h2,
html[data-theme="dark"] .panel h3,
html[data-theme="dark"] .panel h4,
html[data-theme="dark"] .panel label,
html[data-theme="dark"] .form-grid-pro h1,
html[data-theme="dark"] .form-grid-pro h2,
html[data-theme="dark"] .form-grid-pro h3,
html[data-theme="dark"] .form-grid-pro h4,
html[data-theme="dark"] .form-grid-pro label,
html[data-theme="dark"] .kkn-table-card h1,
html[data-theme="dark"] .kkn-table-card h2,
html[data-theme="dark"] .kkn-table-card h3,
html[data-theme="dark"] .kkn-table-card h4,
html[data-theme="dark"] .kkn-table-card label{
  color:#eef2f7!important;
}
html.dark .muted,
html.dark small,
html.dark .kkn-page-head p,
html.dark .program-card p,
html.dark .program-card small,
html[data-theme="dark"] .muted,
html[data-theme="dark"] small,
html[data-theme="dark"] .kkn-page-head p,
html[data-theme="dark"] .program-card p,
html[data-theme="dark"] .program-card small{
  color:#aab6c8!important;
}
html.dark input,
html.dark select,
html.dark textarea,
html.dark .editor,
html.dark .form input,
html.dark .form textarea,
html.dark .form select,
html.dark table input,
html.dark table select,
html.dark table textarea,
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .editor,
html[data-theme="dark"] .form input,
html[data-theme="dark"] .form textarea,
html[data-theme="dark"] .form select,
html[data-theme="dark"] table input,
html[data-theme="dark"] table select,
html[data-theme="dark"] table textarea{
  background:#0b1220!important;
  color:#f8fafc!important;
  border-color:#334155!important;
  caret-color:#f8fafc!important;
}
html.dark input::placeholder,
html.dark textarea::placeholder,
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{
  color:#94a3b8!important;
  opacity:.85!important;
}
html.dark select option,
html[data-theme="dark"] select option{
  background:#0b1220!important;
  color:#f8fafc!important;
}
html.dark table,
html[data-theme="dark"] table{
  background:transparent!important;
  color:#eef2f7!important;
}
html.dark th,
html[data-theme="dark"] th{
  background:rgba(2,6,23,.45)!important;
  color:#eef2f7!important;
  border-color:rgba(148,163,184,.24)!important;
}
html.dark td,
html[data-theme="dark"] td{
  color:#eef2f7!important;
  border-color:rgba(148,163,184,.22)!important;
}
html.dark .kkn-note,
html[data-theme="dark"] .kkn-note{
  background:rgba(2,6,23,.38)!important;
  color:#cbd5e1!important;
  border-color:rgba(148,163,184,.24)!important;
}
html.dark .btn.secondary,
html.dark .btn-secondary,
html.dark .secondary,
html[data-theme="dark"] .btn.secondary,
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .secondary{
  background:#1e293b!important;
  color:#f8fafc!important;
  border-color:#334155!important;
}
html.dark .btn,
html[data-theme="dark"] .btn{
  box-shadow:none!important;
}
html.dark .site-header,
html[data-theme="dark"] .site-header,
html.dark .site-footer,
html[data-theme="dark"] .site-footer{
  color:#eef2f7!important;
}

/* v61 - UI/UX lebih mudah + tutorial pengguna */
.easy-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:22px auto;padding:28px;border-radius:28px;background:rgba(255,255,255,.88);border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 50px rgba(15,23,42,.12);backdrop-filter:blur(14px)}
.easy-hero h1{margin:8px 0 10px;font-size:clamp(30px,4vw,50px);line-height:1.04;letter-spacing:-.045em;color:#0f172a}.easy-hero p{max-width:760px;margin:0;color:#475569;line-height:1.75}.eyebrow{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;background:#e0f2fe;color:#0369a1;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:11px 16px;font-weight:900;text-decoration:none;border:1px solid rgba(15,23,42,.12)}.btn.primary{background:#2563eb;color:#fff!important}.btn.secondary{background:#fff;color:#0f172a!important}.easy-help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0 22px}.easy-help-card{padding:18px;border-radius:20px;background:rgba(255,255,255,.9);border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 28px rgba(15,23,42,.08)}.easy-help-card b{display:block;color:#0f172a;margin-bottom:6px}.easy-help-card span{color:#64748b;line-height:1.55}.category-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 24px}.category-tabs a{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.86);border:1px solid rgba(15,23,42,.10);font-weight:800;color:#334155;text-decoration:none}.category-tabs a.active,.category-tabs a:hover{background:#2563eb;color:#fff}.tutorial-page{width:min(1180px,92vw);margin:0 auto 50px}.tutorial-list{display:grid;gap:20px}.tutorial-card{padding:24px;border-radius:28px;background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 50px rgba(15,23,42,.10)}.tutorial-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.tutorial-card h2{margin:10px 0 8px;color:#0f172a;font-size:clamp(22px,2.6vw,34px);letter-spacing:-.03em}.tutorial-card p{color:#475569;line-height:1.65}.badge-soft,.audience-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.badge-soft{background:#ecfeff;color:#0e7490}.audience-pill{background:#f1f5f9;color:#334155;white-space:nowrap}.tutorial-image{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;margin:12px 0}.tutorial-image img{width:100%;max-height:430px;object-fit:contain;border-radius:22px;background:#f8fafc;border:1px solid rgba(15,23,42,.10)}.tutorial-video{width:100%;max-height:460px;border-radius:22px;background:#020617;margin:12px 0}.tutorial-video.small{max-height:220px}.tutorial-steps{display:grid;gap:8px;margin-top:14px;padding:18px;border-radius:20px;background:#f8fafc;border:1px solid rgba(15,23,42,.08)}.tutorial-steps p{margin:0;color:#0f172a;font-weight:700}.admin-tutorial-page{width:min(1200px,92vw);margin:24px auto 50px}.admin-easy-hero{margin-top:0}.tutorial-admin-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tutorial-admin-head{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:16px;background:#f8fafc;border:1px solid rgba(15,23,42,.08)}.tutorial-admin-head span{color:#64748b;font-size:13px}.tutorial-admin-form textarea,.tutorial-admin-item textarea{min-height:150px}
html.dark .easy-hero,html[data-theme="dark"] .easy-hero,html.dark .easy-help-card,html[data-theme="dark"] .easy-help-card,html.dark .tutorial-card,html[data-theme="dark"] .tutorial-card,html.dark .category-tabs a,html[data-theme="dark"] .category-tabs a{background:rgba(15,23,42,.88)!important;border-color:rgba(148,163,184,.22)!important;box-shadow:0 18px 50px rgba(0,0,0,.28)!important}html.dark .easy-hero h1,html[data-theme="dark"] .easy-hero h1,html.dark .easy-help-card b,html[data-theme="dark"] .easy-help-card b,html.dark .tutorial-card h2,html[data-theme="dark"] .tutorial-card h2,html.dark .tutorial-steps p,html[data-theme="dark"] .tutorial-steps p{color:#f8fafc!important}html.dark .easy-hero p,html[data-theme="dark"] .easy-hero p,html.dark .easy-help-card span,html[data-theme="dark"] .easy-help-card span,html.dark .tutorial-card p,html[data-theme="dark"] .tutorial-card p{color:#cbd5e1!important}html.dark .tutorial-steps,html[data-theme="dark"] .tutorial-steps,html.dark .tutorial-admin-head,html[data-theme="dark"] .tutorial-admin-head{background:rgba(30,41,59,.85)!important;border-color:rgba(148,163,184,.22)!important}html.dark .category-tabs a.active,html[data-theme="dark"] .category-tabs a.active,html.dark .category-tabs a:hover,html[data-theme="dark"] .category-tabs a:hover{background:#60a5fa!important;color:#0f172a!important}@media(max-width:860px){.easy-hero{display:block;padding:22px}.easy-hero .btn{margin-top:16px;width:100%}.easy-help-grid,.tutorial-admin-list{grid-template-columns:1fr}.tutorial-card-head{display:block}.audience-pill{margin-top:8px}.tutorial-page,.admin-tutorial-page{width:92vw}}

/* v62 - Dashboard admin dipisah dengan sidebar kiri + footer bawah */
.admin-shell-v62{width:min(1500px,94vw);margin:28px auto 50px;display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}.admin-sidebar-v62{position:sticky;top:86px;min-height:calc(100vh - 110px);border-radius:28px;padding:18px;background:rgba(255,255,255,.88);border:1px solid rgba(15,23,42,.10);box-shadow:0 20px 60px rgba(15,23,42,.12);backdrop-filter:blur(16px)}.admin-brand-v62{display:flex;align-items:center;gap:12px;padding:12px;border-radius:20px;background:rgba(248,250,252,.85);border:1px solid rgba(15,23,42,.08);margin-bottom:14px}.admin-brand-logo-v62{width:48px;height:48px;border-radius:999px;background:#fff;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(15,23,42,.10);box-shadow:0 8px 22px rgba(15,23,42,.10)}.admin-brand-logo-v62 img{width:100%;height:100%;object-fit:contain;padding:4px}.admin-brand-v62 b{display:block;color:#0f172a;font-weight:950}.admin-brand-v62 small{color:#64748b;font-weight:800}.admin-menu-v62{display:grid;gap:8px}.admin-menu-v62 a{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;text-decoration:none;padding:12px;border-radius:18px;color:#334155;border:1px solid transparent;transition:.18s ease;background:transparent}.admin-menu-v62 a:hover,.admin-menu-v62 a.active{background:#0f172a;color:#fff;border-color:rgba(59,130,246,.45);transform:translateY(-1px)}.admin-menu-v62 a span{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:rgba(15,23,42,.06)}.admin-menu-v62 a.active span,.admin-menu-v62 a:hover span{background:rgba(255,255,255,.12)}.admin-menu-v62 b{display:block;font-weight:950}.admin-menu-v62 small{display:block;font-size:12px;line-height:1.35;color:#64748b}.admin-menu-v62 a.active small,.admin-menu-v62 a:hover small{color:#cbd5e1}.admin-sidebar-help-v62{margin-top:16px;padding:16px;border-radius:20px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.admin-sidebar-help-v62 b{display:block;margin-bottom:6px}.admin-sidebar-help-v62 p{margin:0 0 10px;line-height:1.55}.admin-sidebar-help-v62 a{font-weight:900;color:#1d4ed8}.admin-main-v62{min-width:0}.admin-page-header-v62{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;border-radius:30px;padding:30px;margin-bottom:20px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(241,245,249,.86));border:1px solid rgba(15,23,42,.10);box-shadow:0 20px 60px rgba(15,23,42,.12);backdrop-filter:blur(16px)}.admin-page-header-v62 h1{margin:10px 0 8px;font-size:clamp(30px,4vw,50px);letter-spacing:-.05em;color:#0f172a;line-height:1}.admin-page-header-v62 p{max-width:720px;margin:0;color:#64748b;line-height:1.65}.admin-header-actions-v62{display:flex;gap:10px;flex-wrap:wrap}.admin-card-v62{border-radius:28px;padding:24px;margin-bottom:20px;background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.10);box-shadow:0 18px 50px rgba(15,23,42,.10);backdrop-filter:blur(15px)}.admin-card-v62 h2{margin:0 0 10px;color:#0f172a;font-size:clamp(24px,2.8vw,34px);letter-spacing:-.035em}.admin-card-v62 h3{color:#0f172a}.admin-stat-grid-v62{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.admin-stat-card-v62{text-decoration:none;border-radius:24px;padding:20px;background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.10);box-shadow:0 12px 35px rgba(15,23,42,.10);color:#0f172a}.admin-stat-card-v62 span{font-size:26px}.admin-stat-card-v62 b{display:block;font-size:34px;margin:8px 0 2px;letter-spacing:-.03em}.admin-stat-card-v62 small{color:#64748b;font-weight:900}.admin-quick-grid-v62{display:flex;gap:10px;flex-wrap:wrap}.admin-guide-v62 ol{margin:0;padding-left:22px;color:#334155;line-height:1.85}.admin-form-grid-v62{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-form-grid-v62.two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-v62 label{font-weight:900;color:#0f172a}.admin-card-grid-v62{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-mini-card-v62{height:max-content}.admin-footer-v62{display:flex;justify-content:space-between;gap:14px;margin-top:24px;padding:18px 22px;border-radius:24px;background:rgba(15,23,42,.92);color:#cbd5e1;border:1px solid rgba(148,163,184,.20)}.admin-footer-v62 span:first-child{font-weight:950;color:#fff}.alert.success{padding:14px 16px;border-radius:18px;background:#dcfce7;color:#166534;border:1px solid #86efac;margin-bottom:16px;font-weight:800}.alert.danger{padding:14px 16px;border-radius:18px;background:#fee2e2;color:#991b1b;border:1px solid #fecaca;margin-bottom:16px;font-weight:800}
html.dark .admin-sidebar-v62,html[data-theme="dark"] .admin-sidebar-v62,html.dark .admin-page-header-v62,html[data-theme="dark"] .admin-page-header-v62,html.dark .admin-card-v62,html[data-theme="dark"] .admin-card-v62,html.dark .admin-stat-card-v62,html[data-theme="dark"] .admin-stat-card-v62{background:rgba(15,23,42,.88)!important;border-color:rgba(148,163,184,.22)!important;box-shadow:0 22px 60px rgba(0,0,0,.28)!important}html.dark .admin-brand-v62,html[data-theme="dark"] .admin-brand-v62{background:rgba(30,41,59,.82)!important;border-color:rgba(148,163,184,.20)!important}html.dark .admin-brand-v62 b,html.dark .admin-page-header-v62 h1,html.dark .admin-card-v62 h2,html.dark .admin-card-v62 h3,html.dark .admin-stat-card-v62,html.dark .admin-form-v62 label,html[data-theme="dark"] .admin-brand-v62 b,html[data-theme="dark"] .admin-page-header-v62 h1,html[data-theme="dark"] .admin-card-v62 h2,html[data-theme="dark"] .admin-card-v62 h3,html[data-theme="dark"] .admin-stat-card-v62,html[data-theme="dark"] .admin-form-v62 label{color:#f8fafc!important}html.dark .admin-page-header-v62 p,html.dark .admin-brand-v62 small,html.dark .admin-stat-card-v62 small,html.dark .admin-guide-v62 ol,html[data-theme="dark"] .admin-page-header-v62 p,html[data-theme="dark"] .admin-brand-v62 small,html[data-theme="dark"] .admin-stat-card-v62 small,html[data-theme="dark"] .admin-guide-v62 ol{color:#cbd5e1!important}html.dark .admin-sidebar-help-v62,html[data-theme="dark"] .admin-sidebar-help-v62{background:rgba(30,41,59,.75)!important;color:#dbeafe!important;border-color:rgba(96,165,250,.32)!important}html.dark .admin-menu-v62 a,html[data-theme="dark"] .admin-menu-v62 a{color:#dbeafe}html.dark .admin-menu-v62 a.active,html.dark .admin-menu-v62 a:hover,html[data-theme="dark"] .admin-menu-v62 a.active,html[data-theme="dark"] .admin-menu-v62 a:hover{background:#2563eb!important;color:#fff!important}@media(max-width:1100px){.admin-shell-v62{grid-template-columns:1fr}.admin-sidebar-v62{position:relative;top:auto;min-height:auto}.admin-menu-v62{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page-header-v62{display:block}.admin-header-actions-v62{margin-top:16px}.admin-stat-grid-v62{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid-v62,.admin-form-grid-v62.two,.admin-card-grid-v62{grid-template-columns:1fr}}@media(max-width:640px){.admin-shell-v62{width:92vw;margin-top:18px}.admin-menu-v62{grid-template-columns:1fr}.admin-page-header-v62,.admin-card-v62{padding:20px;border-radius:22px}.admin-stat-grid-v62{grid-template-columns:1fr}.admin-footer-v62{display:block}.admin-footer-v62 span{display:block;margin:5px 0}}

/* v71 - Perkap, Acara, Konsumsi mudah dipakai */
.compact-page{max-width:1180px;margin:0 auto;padding:54px 20px;}
.compact-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;border:1px solid rgba(148,163,184,.22);border-radius:28px;padding:28px;background:rgba(15,23,42,.52);margin-bottom:22px;}
.compact-hero h1{font-size:clamp(32px,5vw,54px);margin:12px 0 8px;line-height:1.02;}
.card{border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:24px;background:rgba(15,23,42,.62);margin-bottom:20px;}
.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.grid-form label,.mini-form label{display:flex;flex-direction:column;gap:8px;font-weight:800;}
.grid-form .full{grid-column:1/-1;}
.grid-form input,.grid-form select,.grid-form textarea,.mini-form input,.mini-form select,.mini-form textarea{width:100%;border:1px solid rgba(148,163,184,.35);background:#0f172a;color:#fff;border-radius:14px;padding:12px 14px;}
.responsive-table{overflow-x:auto;}
.data-table{width:100%;border-collapse:collapse;min-width:920px;}
.data-table th,.data-table td{padding:14px;border-bottom:1px solid rgba(148,163,184,.2);text-align:left;vertical-align:top;}
.status-badge{display:inline-block;border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px;background:#334155;}
.status-selesai{background:#14532d;color:#bbf7d0}.status-proses{background:#1d4ed8;color:#dbeafe}.status-batal{background:#7f1d1d;color:#fee2e2}.status-pending{background:#78350f;color:#fde68a}
.detail-box,.edit-box{border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:10px;background:rgba(15,23,42,.45);}
.detail-box summary,.edit-box summary{cursor:pointer;font-weight:900;}
.mini-form{display:grid;gap:10px;margin-top:10px;min-width:260px;}
.action-cell{display:flex;flex-direction:column;gap:10px;}
.empty-cell{text-align:center;color:#94a3b8;padding:28px!important;}
@media(max-width:760px){.compact-hero{flex-direction:column;align-items:flex-start}.grid-form{grid-template-columns:1fr}.compact-page{padding:28px 14px}}
/* v102 multi jabatan admin */
.admin-card-head-row-v102{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.role-extra-box-v102{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}
.inline-edit-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.inline-edit-row input,.inline-edit-row select{max-width:220px}
@media(max-width:760px){.inline-edit-row{display:grid;grid-template-columns:1fr}.inline-edit-row input,.inline-edit-row select{max-width:100%}.admin-card-head-row-v102{align-items:flex-start}}

/* v104: Tambah/Hapus Jabatan dinamis di admin user */
.role-extra-box-v104{display:flex;flex-direction:column;gap:10px}
.role-repeater-v104{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.role-repeater-list-v104{display:flex;flex-direction:column;gap:10px}
.role-repeater-row-v104{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:center}
.role-repeater-row-v104 select{width:100%}
.danger-soft{border-color:rgba(239,68,68,.35)!important;color:#fecaca!important;background:rgba(239,68,68,.10)!important}
@media(max-width:780px){.role-repeater-row-v104{grid-template-columns:1fr}.role-repeater-row-v104 .btn{width:100%}}

/* v106 - UI rapi halaman Jabatan, Struktur & Pilar */
.roles-page-v106{padding:42px 18px 80px;min-height:calc(100vh - 160px)}
.roles-shell-v106{width:min(1180px,94vw);margin:0 auto;display:grid;gap:22px}
.roles-hero-v106,.roles-card-v106{background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.22);box-shadow:0 20px 60px rgba(0,0,0,.18);border-radius:28px;color:#f8fafc}
.roles-hero-v106{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:30px}
.roles-badge-v106{display:inline-flex;align-items:center;border-radius:999px;padding:8px 13px;background:#e0f2fe;color:#0369a1;font-size:12px;font-weight:950;letter-spacing:.03em;margin-bottom:14px}
.roles-hero-v106 h1{font-size:clamp(34px,4.5vw,56px);line-height:1.02;letter-spacing:-.05em;margin:0 0 12px;color:#f8fafc}
.roles-hero-v106 p,.roles-card-v106 p{margin:0;color:#cbd5e1;line-height:1.7}
.roles-hero-actions-v106{display:flex;gap:10px;flex-wrap:wrap}
.roles-grid-v106{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:start}
.roles-card-v106{padding:24px}
.roles-card-head-v106{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.roles-icon-v106{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:rgba(59,130,246,.18);color:#bfdbfe;font-weight:950;flex:0 0 auto}
.roles-card-v106 h2{margin:0 0 6px;color:#f8fafc;font-size:clamp(24px,3vw,34px);letter-spacing:-.035em}
.roles-form-v106,.role-edit-form-v106{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.roles-form-v106 label,.role-edit-form-v106 label{display:grid;gap:7px;color:#f8fafc;font-weight:900}
.roles-form-v106 label span,.role-edit-form-v106 label span{font-size:13px;color:#dbeafe}
.roles-form-v106 .full,.role-edit-form-v106 .full{grid-column:1/-1}
.roles-form-v106 input,.roles-form-v106 select,.role-edit-form-v106 input,.role-edit-form-v106 select{width:100%;min-height:48px;border-radius:14px;border:1px solid rgba(148,163,184,.30);background:#0b1220;color:#f8fafc;padding:11px 14px;outline:none}
.roles-form-v106 input:focus,.roles-form-v106 select:focus,.role-edit-form-v106 input:focus,.role-edit-form-v106 select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.15)}
.roles-actions-v106,.role-action-row-v106{display:flex;gap:10px;align-items:center;justify-content:flex-start}
.roles-mini-list-v106{display:grid;gap:12px}
.roles-mini-list-v106 div{padding:14px;border-radius:18px;background:rgba(30,41,59,.72);border:1px solid rgba(148,163,184,.18)}
.roles-mini-list-v106 b{display:block;color:#f8fafc;margin-bottom:5px}.roles-mini-list-v106 span{display:block;color:#cbd5e1;line-height:1.55}
.roles-section-head-v106{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:16px}
.roles-section-head-v106 h2{margin:0 0 6px;color:#f8fafc;font-size:clamp(26px,3vw,38px)}
.roles-list-v106{display:grid;gap:14px}
.role-item-v106{display:grid;grid-template-columns:310px minmax(0,1fr);gap:18px;padding:18px;border:1px solid rgba(148,163,184,.18);border-radius:22px;background:rgba(2,6,23,.24)}
.role-meta-v106{padding:16px;border-radius:18px;background:rgba(30,41,59,.55);border:1px solid rgba(148,163,184,.14)}
.role-meta-v106 h3{margin:10px 0 8px;color:#fff;font-size:22px;letter-spacing:-.02em}
.role-meta-v106 small{display:inline-flex;margin-top:12px;color:#bfdbfe;font-weight:900}
.role-type-v106{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950;background:#1e3a8a;color:#dbeafe}.role-type-v106.pillar{background:#115e59;color:#ccfbf1}.role-type-v106.system{background:#3f3f46;color:#f4f4f5}
.role-edit-v106{display:grid;gap:12px;align-content:start}
.role-delete-v106{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.role-locked-v106{display:inline-flex;padding:10px 12px;border-radius:14px;background:rgba(148,163,184,.10);border:1px solid rgba(148,163,184,.18);color:#cbd5e1;font-size:13px;line-height:1.45}
.empty-v106{padding:24px;border-radius:20px;background:rgba(30,41,59,.55);border:1px dashed rgba(148,163,184,.30);color:#cbd5e1;text-align:center;font-weight:900}
html:not(.dark) .roles-hero-v106,html:not(.dark) .roles-card-v106{background:rgba(255,255,255,.94);color:#0f172a;border-color:rgba(15,23,42,.10);box-shadow:0 20px 60px rgba(15,23,42,.10)}
html:not(.dark) .roles-hero-v106 h1,html:not(.dark) .roles-card-v106 h2,html:not(.dark) .role-meta-v106 h3,html:not(.dark) .roles-mini-list-v106 b{color:#0f172a}html:not(.dark) .roles-hero-v106 p,html:not(.dark) .roles-card-v106 p,html:not(.dark) .roles-mini-list-v106 span{color:#475569}html:not(.dark) .role-item-v106,html:not(.dark) .role-meta-v106,html:not(.dark) .roles-mini-list-v106 div{background:#f8fafc;border-color:rgba(15,23,42,.10)}html:not(.dark) .roles-form-v106 label,html:not(.dark) .role-edit-form-v106 label{color:#0f172a}html:not(.dark) .roles-form-v106 label span,html:not(.dark) .role-edit-form-v106 label span{color:#334155}html:not(.dark) .roles-form-v106 input,html:not(.dark) .roles-form-v106 select,html:not(.dark) .role-edit-form-v106 input,html:not(.dark) .role-edit-form-v106 select{background:#fff;color:#0f172a;border-color:#cbd5e1}
@media(max-width:980px){.roles-hero-v106,.roles-section-head-v106{display:block}.roles-hero-actions-v106{margin-top:16px}.roles-grid-v106,.role-item-v106{grid-template-columns:1fr}.roles-form-v106,.role-edit-form-v106{grid-template-columns:1fr}.roles-page-v106{padding:24px 12px 60px}.roles-card-v106,.roles-hero-v106{padding:20px;border-radius:22px}}

/* v113 backup: prevent mobile page zoom/overflow; keep only structure scrollable */
@media(max-width:720px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .program-page-v41{width:92vw!important;max-width:92vw!important;min-width:0!important;overflow-x:hidden!important;margin-left:auto!important;margin-right:auto!important;}
  .program-hero-v41,.program-section-v41,.program-media-v41,.program-grid-v41,.program-stats-v41,.schedule-grid-v45,.schedule-calendar-v55{max-width:100%!important;min-width:0!important;overflow-wrap:break-word!important;}
  .program-hero-v41{display:grid!important;grid-template-columns:minmax(0,1fr)!important;padding:18px!important;gap:18px!important;overflow:hidden!important;}
  .program-title-v41{max-width:100%!important;font-size:clamp(26px,7.4vw,34px)!important;line-height:1.12!important;letter-spacing:-.035em!important;overflow-wrap:break-word!important;word-break:normal!important;white-space:normal!important;}
  .program-desc-v41{max-width:100%!important;font-size:14px!important;line-height:1.62!important;overflow-wrap:break-word!important;}
  .program-actions-v41{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .program-actions-v41 .program-btn-v41{width:100%!important;min-height:46px!important;white-space:normal!important;text-align:center!important;color:#0f172a!important;}
  .program-actions-v41 .program-btn-v41.secondary{color:#f8fafc!important;}
  .program-media-v41,.program-media-v41 img{height:220px!important;min-height:220px!important;}
  .program-float-v41{left:12px!important;right:12px!important;bottom:12px!important;display:block!important;max-width:calc(100% - 24px)!important;}
  .program-float-v41 b,.program-float-v41 span{display:block!important;white-space:normal!important;overflow-wrap:break-word!important;}
  .program-section-v41{padding:18px!important;overflow:hidden!important;}
  .org-chart-classic-v110{max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;margin-left:0!important;margin-right:0!important;contain:layout paint!important;overscroll-behavior-inline:contain!important;}
  .org-tree-classic-v110{flex:0 0 920px!important;width:920px!important;min-width:920px!important;max-width:none!important;}
}

/* v114: struktur dan pilar di layar kecil diperkecil agar pas di dalam kolom/card hitam */
@media(max-width:720px){
  .org-chart-classic-v110{
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    max-width:100%!important;
    padding:14px 0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .org-tree-classic-v110{
    width:920px!important;
    min-width:920px!important;
    max-width:none!important;
    transform:none!important;
    transform-origin:top center!important;
    zoom:.34!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
@media(min-width:391px) and (max-width:430px){.org-tree-classic-v110{zoom:.37!important;}}
@media(min-width:431px) and (max-width:520px){.org-tree-classic-v110{zoom:.44!important;}}
@media(min-width:521px) and (max-width:720px){.org-tree-classic-v110{zoom:.58!important;}}

/* v116 - Mobile card layout untuk Akun, Role & Pilar di admin */
@media (max-width: 820px){
  .admin-card-v62:has(.users-bypass-wrap){
    padding:16px!important;
    overflow:hidden!important;
  }
  .users-bypass-wrap{
    overflow:visible!important;
    width:100%!important;
  }
  .users-bypass-wrap table,
  .users-bypass-wrap tbody,
  .users-bypass-wrap tr,
  .users-bypass-wrap td{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .users-bypass-wrap table{
    border:0!important;
    background:transparent!important;
  }
  .users-bypass-wrap tr:first-child{
    display:none!important;
  }
  .users-bypass-wrap tr{
    margin:0 0 18px!important;
    padding:16px!important;
    border:1px solid rgba(148,163,184,.22)!important;
    border-radius:22px!important;
    background:rgba(15,23,42,.72)!important;
    box-shadow:0 14px 38px rgba(0,0,0,.18)!important;
  }
  .users-bypass-wrap td{
    border:0!important;
    padding:10px 0!important;
  }
  .users-bypass-wrap td::before{
    display:block!important;
    margin:0 0 7px!important;
    color:#cbd5e1!important;
    font-size:12px!important;
    font-weight:950!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  .users-bypass-wrap td:nth-child(1)::before{content:'Nama';}
  .users-bypass-wrap td:nth-child(2)::before{content:'Email';}
  .users-bypass-wrap td:nth-child(3)::before{content:'Role / Jabatan';}
  .users-bypass-wrap td:nth-child(4)::before{content:'Password Baru';}
  .users-bypass-wrap td:nth-child(5)::before{content:'Bypass Tipe Pengirim';}
  .users-bypass-wrap td:nth-child(6)::before{content:'Aksi';}
  .users-bypass-wrap input,
  .users-bypass-wrap select,
  .users-bypass-wrap textarea,
  .users-bypass-wrap button,
  .users-bypass-wrap .btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .users-bypass-wrap input,
  .users-bypass-wrap select{
    min-height:48px!important;
  }
  .users-bypass-wrap .role-extra-box-v102,
  .users-bypass-wrap .role-extra-box-v104{
    width:100%!important;
    max-width:100%!important;
    margin-top:12px!important;
    padding-top:12px!important;
  }
  .users-bypass-wrap .role-extra-box-v102 b,
  .users-bypass-wrap .role-extra-box-v104 b{
    display:block!important;
    margin-bottom:4px!important;
  }
  .users-bypass-wrap .role-extra-box-v102 small,
  .users-bypass-wrap .role-extra-box-v104 small{
    display:block!important;
    line-height:1.5!important;
  }
  .users-bypass-wrap .role-repeater-row-v104{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .users-bypass-wrap .bypass-checks,
  .users-bypass-wrap .pillar-checks-inline{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .users-bypass-wrap label.check,
  .users-bypass-wrap .mini-check{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    padding:8px 0!important;
  }
  .users-bypass-wrap label.check input[type='checkbox'],
  .users-bypass-wrap .mini-check input[type='checkbox']{
    width:auto!important;
    min-height:0!important;
    flex:0 0 auto!important;
  }
  .users-bypass-wrap td:last-child{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .users-bypass-wrap .inline-form{
    display:none!important;
  }
  .admin-card-head-row-v102{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .admin-card-head-row-v102 .btn{
    width:100%!important;
  }
  body .admin-mobile-toggle-v90,
  #adminMobileToggle{
    position:fixed!important;
    top:calc(env(safe-area-inset-top, 0px) + 12px)!important;
    left:14px!important;
    z-index:9999!important;
  }
}


/* v113 fixed admin mobile menu: tombol hamburger diam di viewport, tidak ikut scroll */
@media(max-width:1120px){
  html body #adminMobileToggle.admin-mobile-toggle-v90,
  body .admin-mobile-toggle-v90{
    display:flex!important;
    position:fixed!important;
    top:calc(env(safe-area-inset-top, 0px) + 12px)!important;
    left:12px!important;
    right:auto!important;
    bottom:auto!important;
    z-index:2147483647!important;
    transform:none!important;
    margin:0!important;
  }
}

/* v119 - Fix halaman Absen Rapat mobile: teks tidak kepotong di HP */
@media(max-width:720px){
  main{padding-left:0!important;padding-right:0!important;overflow-x:hidden!important;}
  .panel.glass-card,
  section.panel.glass-card{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:20px!important;
    border-radius:24px!important;
    overflow:visible!important;
  }
  .panel.glass-card .section-heading{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-items:start!important;
  }
  .panel.glass-card .section-heading > div,
  .panel.glass-card .section-heading p,
  .panel.glass-card .section-heading h1{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    white-space:normal!important;
  }
  .panel.glass-card .section-heading h1{
    font-size:clamp(28px,8.3vw,36px)!important;
    line-height:1.22!important;
    letter-spacing:-.035em!important;
    margin:12px 0 10px!important;
  }
  .panel.glass-card .section-heading p{
    font-size:15px!important;
    line-height:1.56!important;
    margin:0!important;
  }
  .panel.glass-card .section-heading .primary,
  .panel.glass-card .section-heading a.primary{
    width:max-content!important;
    max-width:100%!important;
    justify-self:start!important;
    white-space:normal!important;
    line-height:1.2!important;
    text-align:center!important;
  }
  .panel.glass-card .box,
  .panel.glass-card .form,
  .panel.glass-card .table-wrap{
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:break-word!important;
  }
  .panel.glass-card .grid2{grid-template-columns:1fr!important;}
}


/* v132 - Fix kontras halaman Kegiatan & Tugas: tulisan jelas di atas background foto */
body.has-bg-image .kkn-page-shell{
  position:relative;
  z-index:1;
}
body.has-bg-image .kkn-page-shell::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:rgba(255,255,255,.30);
  z-index:-1;
}
html.dark body.has-bg-image .kkn-page-shell::before,
html[data-theme="dark"] body.has-bg-image .kkn-page-shell::before{
  background:rgba(2,6,23,.34);
}
.kkn-page-head{
  align-items:center!important;
}
.kkn-page-head h1{
  color:#0f172a!important;
  font-weight:950!important;
  text-shadow:0 2px 12px rgba(255,255,255,.55)!important;
}
.kkn-page-head p{
  color:#334155!important;
  font-weight:750!important;
  text-shadow:0 1px 10px rgba(255,255,255,.55)!important;
}
.kkn-eyebrow{
  background:rgba(255,255,255,.76)!important;
  color:#0f172a!important;
  border-color:rgba(255,255,255,.58)!important;
  box-shadow:0 8px 20px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(10px)!important;
}
.kkn-table-card{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.18)!important;
  backdrop-filter:blur(12px) saturate(145%)!important;
}
.kkn-table th{
  background:rgba(248,250,252,.96)!important;
  color:#0f172a!important;
  font-weight:950!important;
}
.kkn-table td{
  color:#1e293b!important;
  font-weight:650!important;
}
.kkn-table td b,
.kkn-title-link b{
  color:#0f172a!important;
  font-weight:950!important;
}
.kkn-table small{
  color:#475569!important;
  font-weight:700!important;
}
.empty-cell{
  color:#475569!important;
  font-weight:950!important;
  font-size:16px!important;
}
.kkn-note{
  color:#1e293b!important;
  background:rgba(241,245,249,.92)!important;
  font-weight:700!important;
}
html.dark .kkn-page-head h1,
html[data-theme="dark"] .kkn-page-head h1{
  color:#ffffff!important;
  text-shadow:0 2px 16px rgba(0,0,0,.55)!important;
}
html.dark .kkn-page-head p,
html[data-theme="dark"] .kkn-page-head p{
  color:#dbeafe!important;
  font-weight:750!important;
  text-shadow:0 2px 14px rgba(0,0,0,.55)!important;
}
html.dark .kkn-eyebrow,
html[data-theme="dark"] .kkn-eyebrow{
  background:rgba(15,23,42,.84)!important;
  color:#f8fafc!important;
  border-color:rgba(148,163,184,.35)!important;
}
html.dark .kkn-table-card,
html[data-theme="dark"] .kkn-table-card{
  background:rgba(15,23,42,.90)!important;
  border-color:rgba(148,163,184,.32)!important;
}
html.dark .kkn-table th,
html[data-theme="dark"] .kkn-table th{
  background:rgba(30,41,59,.96)!important;
  color:#f8fafc!important;
}
html.dark .kkn-table td,
html[data-theme="dark"] .kkn-table td{
  color:#e2e8f0!important;
}
html.dark .kkn-table td b,
html.dark .kkn-title-link b,
html[data-theme="dark"] .kkn-table td b,
html[data-theme="dark"] .kkn-title-link b{
  color:#ffffff!important;
}
html.dark .kkn-table small,
html[data-theme="dark"] .kkn-table small,
html.dark .empty-cell,
html[data-theme="dark"] .empty-cell{
  color:#cbd5e1!important;
}
html.dark .kkn-note,
html[data-theme="dark"] .kkn-note{
  color:#e2e8f0!important;
  background:rgba(30,41,59,.92)!important;
}
@media(max-width:900px){
  .kkn-page-shell{margin-top:24px!important;margin-bottom:44px!important;}
  .kkn-page-head{display:block!important;}
  .kkn-page-head .btn{margin-top:16px!important;}
  .kkn-page-head h1{font-size:clamp(32px,9vw,44px)!important;line-height:1.08!important;}
  .kkn-page-head p{font-size:15px!important;line-height:1.55!important;}
}

/* v133 - Semua fitur Menu KKN dibuat seragam seperti halaman Kegiatan/Tugas */
body.has-bg-image main{
  position:relative;
}
body.has-bg-image main::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg, rgba(255,255,255,.40), rgba(255,255,255,.24), rgba(255,255,255,.40));
  z-index:0;
}
body.has-bg-image main > *{
  position:relative;
  z-index:1;
}
html.dark body.has-bg-image main::before,
html[data-theme="dark"] body.has-bg-image main::before{
  background:linear-gradient(90deg, rgba(2,6,23,.48), rgba(2,6,23,.32), rgba(2,6,23,.48));
}

/* Semua panel fitur dibuat satu bahasa desain */
.panel.glass-card,
.panel,
.kkn-page-shell{
  width:min(1180px,94vw)!important;
  margin:42px auto 72px!important;
}
.panel.glass-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  padding:0!important;
}
.section-heading,
.kkn-page-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin-bottom:22px!important;
}
.section-heading h1,
.kkn-page-head h1,
.panel h1{
  color:#0f172a!important;
  font-size:clamp(36px,3.2vw,54px)!important;
  line-height:1.04!important;
  margin:12px 0 8px!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
  text-shadow:0 2px 14px rgba(255,255,255,.58)!important;
}
.section-heading h2,
.panel h2,
.box h2{
  color:#0f172a!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
.section-heading p,
.kkn-page-head p,
.panel p.muted,
.panel .muted{
  color:#334155!important;
  font-weight:750!important;
  line-height:1.6!important;
  text-shadow:0 1px 10px rgba(255,255,255,.50)!important;
}
.top-kicker.soft,
.kkn-eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  background:rgba(255,255,255,.78)!important;
  color:#0f172a!important;
  border:1px solid rgba(255,255,255,.62)!important;
  border-radius:999px!important;
  padding:8px 14px!important;
  font-weight:950!important;
  font-size:12px!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  box-shadow:0 8px 22px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(12px) saturate(145%)!important;
}

/* Card isi, tabel, rekap, dan form dibuat putih solid/glass */
.kkn-table-card,
.panel .box,
.panel .table-wrap,
.panel form.form,
.form-page .form,
.form-intro,
.card,
.content-card{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:26px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.16)!important;
  backdrop-filter:blur(12px) saturate(145%)!important;
}
.panel .box,
.panel form.form{
  padding:18px!important;
}
.panel .cards .box{
  min-height:112px!important;
}
.table-wrap,
.kkn-table-card{
  overflow:auto!important;
}
.panel table,
.kkn-table{
  width:100%!important;
  border-collapse:collapse!important;
  background:transparent!important;
}
.panel table th,
.kkn-table th{
  background:rgba(248,250,252,.97)!important;
  color:#0f172a!important;
  font-size:13px!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  font-weight:950!important;
  padding:16px 18px!important;
  border-bottom:1px solid rgba(148,163,184,.24)!important;
}
.panel table td,
.kkn-table td{
  color:#1e293b!important;
  font-weight:650!important;
  padding:16px 18px!important;
  border-bottom:1px solid rgba(148,163,184,.20)!important;
  vertical-align:top!important;
}
.panel table tr:last-child td,
.kkn-table tr:last-child td{
  border-bottom:0!important;
}
.panel table td b,
.kkn-table td b,
.panel b{
  color:#0f172a!important;
  font-weight:950!important;
}
.panel small,
.panel table small,
.kkn-table small{
  color:#475569!important;
  font-weight:700!important;
  line-height:1.4!important;
}
.panel .cards{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:14px!important;
}
.panel input,
.panel select,
.panel textarea,
.kkn-table input,
.kkn-table select,
.kkn-table textarea{
  background:rgba(255,255,255,.96)!important;
  color:#0f172a!important;
  border:1px solid rgba(148,163,184,.38)!important;
  border-radius:14px!important;
  font-weight:700!important;
}

/* Tombol */
.primary,
.btn,
button.primary,
a.primary,
.panel button:not(.modal-close),
.kkn-page-head .btn{
  border:0!important;
  background:linear-gradient(135deg,#0f766e,#0891b2)!important;
  color:#ffffff!important;
  border-radius:16px!important;
  padding:12px 18px!important;
  font-weight:950!important;
  box-shadow:0 14px 28px rgba(15,118,110,.22)!important;
  text-decoration:none!important;
}
.secondary,
.btn-secondary,
a.secondary{
  background:rgba(255,255,255,.88)!important;
  color:#0f172a!important;
  border:1px solid rgba(148,163,184,.34)!important;
  box-shadow:0 12px 24px rgba(15,23,42,.08)!important;
}
.danger,
.btn-danger{
  background:linear-gradient(135deg,#dc2626,#ef4444)!important;
  color:#fff!important;
}
.empty-cell,
.panel td.muted,
.panel .empty-text{
  color:#475569!important;
  font-weight:950!important;
  text-align:center!important;
}

/* Modal tetap terbaca */
.modal-card{
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  color:#0f172a!important;
  border-radius:28px!important;
  box-shadow:0 35px 100px rgba(0,0,0,.35)!important;
}
.modal-card h2,
.modal-card p,
.modal-card label{
  color:#0f172a!important;
}
.modal-card .muted{
  color:#475569!important;
}

/* Dark mode seragam */
html.dark .section-heading h1,
html.dark .kkn-page-head h1,
html.dark .panel h1,
html[data-theme="dark"] .section-heading h1,
html[data-theme="dark"] .kkn-page-head h1,
html[data-theme="dark"] .panel h1{
  color:#ffffff!important;
  text-shadow:0 2px 18px rgba(0,0,0,.65)!important;
}
html.dark .section-heading h2,
html.dark .panel h2,
html.dark .box h2,
html[data-theme="dark"] .section-heading h2,
html[data-theme="dark"] .panel h2,
html[data-theme="dark"] .box h2{
  color:#f8fafc!important;
}
html.dark .section-heading p,
html.dark .kkn-page-head p,
html.dark .panel p.muted,
html.dark .panel .muted,
html[data-theme="dark"] .section-heading p,
html[data-theme="dark"] .kkn-page-head p,
html[data-theme="dark"] .panel p.muted,
html[data-theme="dark"] .panel .muted{
  color:#dbeafe!important;
  text-shadow:0 2px 14px rgba(0,0,0,.65)!important;
}
html.dark .top-kicker.soft,
html.dark .kkn-eyebrow,
html[data-theme="dark"] .top-kicker.soft,
html[data-theme="dark"] .kkn-eyebrow{
  background:rgba(15,23,42,.86)!important;
  color:#f8fafc!important;
  border-color:rgba(148,163,184,.36)!important;
}
html.dark .kkn-table-card,
html.dark .panel .box,
html.dark .panel .table-wrap,
html.dark .panel form.form,
html.dark .form-page .form,
html.dark .form-intro,
html.dark .card,
html.dark .content-card,
html[data-theme="dark"] .kkn-table-card,
html[data-theme="dark"] .panel .box,
html[data-theme="dark"] .panel .table-wrap,
html[data-theme="dark"] .panel form.form,
html[data-theme="dark"] .form-page .form,
html[data-theme="dark"] .form-intro,
html[data-theme="dark"] .card,
html[data-theme="dark"] .content-card{
  background:rgba(15,23,42,.90)!important;
  border-color:rgba(148,163,184,.28)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.35)!important;
}
html.dark .panel table th,
html.dark .kkn-table th,
html[data-theme="dark"] .panel table th,
html[data-theme="dark"] .kkn-table th{
  background:rgba(30,41,59,.97)!important;
  color:#f8fafc!important;
}
html.dark .panel table td,
html.dark .kkn-table td,
html[data-theme="dark"] .panel table td,
html[data-theme="dark"] .kkn-table td{
  color:#e2e8f0!important;
  border-color:rgba(148,163,184,.20)!important;
}
html.dark .panel table td b,
html.dark .kkn-table td b,
html.dark .panel b,
html[data-theme="dark"] .panel table td b,
html[data-theme="dark"] .kkn-table td b,
html[data-theme="dark"] .panel b{
  color:#ffffff!important;
}
html.dark .panel small,
html.dark .panel table small,
html.dark .kkn-table small,
html[data-theme="dark"] .panel small,
html[data-theme="dark"] .panel table small,
html[data-theme="dark"] .kkn-table small{
  color:#cbd5e1!important;
}
html.dark .panel input,
html.dark .panel select,
html.dark .panel textarea,
html[data-theme="dark"] .panel input,
html[data-theme="dark"] .panel select,
html[data-theme="dark"] .panel textarea{
  background:rgba(2,6,23,.78)!important;
  color:#f8fafc!important;
  border-color:rgba(148,163,184,.35)!important;
}
html.dark .modal-card,
html[data-theme="dark"] .modal-card{
  background:rgba(15,23,42,.96)!important;
  border-color:rgba(148,163,184,.32)!important;
  color:#f8fafc!important;
}
html.dark .modal-card h2,
html.dark .modal-card p,
html.dark .modal-card label,
html[data-theme="dark"] .modal-card h2,
html[data-theme="dark"] .modal-card p,
html[data-theme="dark"] .modal-card label{
  color:#f8fafc!important;
}
html.dark .modal-card .muted,
html[data-theme="dark"] .modal-card .muted{
  color:#cbd5e1!important;
}

/* Mobile: semua fitur tetap rapi */
@media(max-width:900px){
  .panel.glass-card,.panel,.kkn-page-shell{width:92vw!important;margin:24px auto 44px!important;}
  .section-heading,.kkn-page-head{display:block!important;}
  .section-heading .primary,.section-heading .btn,.kkn-page-head .btn{margin-top:14px!important;width:auto!important;}
  .section-heading h1,.kkn-page-head h1,.panel h1{font-size:clamp(32px,9vw,44px)!important;}
  .panel .table-wrap,.kkn-table-card{border-radius:22px!important;}
  .panel table{min-width:760px;}
  .panel .cards{grid-template-columns:1fr!important;}
}

/* v134 - Kondisikan semua kotak fitur: tidak ada panel putih besar, tiap bagian jadi card rapi */
body.has-bg-image .panel.glass-card,
body.has-bg-image section.panel.glass-card,
html.dark body.has-bg-image .panel.glass-card,
html.dark body.has-bg-image section.panel.glass-card,
html[data-theme="dark"] body.has-bg-image .panel.glass-card,
html[data-theme="dark"] body.has-bg-image section.panel.glass-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  padding:0!important;
}
body.has-bg-image .panel.glass-card > .section-heading,
body.has-bg-image section.panel.glass-card > .section-heading{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
  margin-bottom:22px!important;
}
.panel.glass-card > .section-heading > div{
  max-width:760px!important;
}
.panel.glass-card > .section-heading p{
  max-width:720px!important;
}
.panel.glass-card .cards{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
  align-items:stretch!important;
  margin:18px 0 20px!important;
}
.panel.glass-card .cards .box{
  min-height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:6px!important;
}
.panel.glass-card .box,
.panel.glass-card .table-wrap,
.panel.glass-card .empty,
.panel.glass-card form.form,
.panel.glass-card form.form-grid{
  background:rgba(255,255,255,.95)!important;
  border:1px solid rgba(255,255,255,.74)!important;
  border-radius:24px!important;
  box-shadow:0 20px 55px rgba(15,23,42,.14)!important;
  backdrop-filter:blur(13px) saturate(145%)!important;
}
.panel.glass-card .empty{
  padding:22px!important;
  color:#0f172a!important;
}
.panel.glass-card .empty p{
  margin:8px 0 0!important;
}
.panel.glass-card .box .section-heading{
  margin-bottom:12px!important;
}
.panel.glass-card .box .section-heading > div{
  max-width:100%!important;
}
.panel.glass-card .box .section-heading p{
  max-width:100%!important;
}
.panel.glass-card h1{
  font-size:clamp(36px,4.4vw,58px)!important;
}
.panel.glass-card .box h2{
  font-size:clamp(22px,2.3vw,30px)!important;
  line-height:1.1!important;
}
.panel.glass-card .badge,
.badge{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(14,165,164,.12)!important;
  color:#0f766e!important;
  border:1px solid rgba(14,165,164,.18)!important;
  font-weight:950!important;
  font-size:12px!important;
  line-height:1.15!important;
}
.panel.glass-card .alert{
  max-width:100%!important;
  margin:14px 0 0!important;
  border-radius:18px!important;
  background:rgba(255,251,235,.95)!important;
  color:#92400e!important;
  font-weight:850!important;
}
html.dark body.has-bg-image .panel.glass-card .box,
html.dark body.has-bg-image .panel.glass-card .table-wrap,
html.dark body.has-bg-image .panel.glass-card .empty,
html.dark body.has-bg-image .panel.glass-card form.form,
html.dark body.has-bg-image .panel.glass-card form.form-grid,
html[data-theme="dark"] body.has-bg-image .panel.glass-card .box,
html[data-theme="dark"] body.has-bg-image .panel.glass-card .table-wrap,
html[data-theme="dark"] body.has-bg-image .panel.glass-card .empty,
html[data-theme="dark"] body.has-bg-image .panel.glass-card form.form,
html[data-theme="dark"] body.has-bg-image .panel.glass-card form.form-grid{
  background:rgba(15,23,42,.91)!important;
  border-color:rgba(148,163,184,.30)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.38)!important;
}
html.dark .panel.glass-card .empty,
html[data-theme="dark"] .panel.glass-card .empty{
  color:#f8fafc!important;
}
html.dark .panel.glass-card .badge,
html.dark .badge,
html[data-theme="dark"] .panel.glass-card .badge,
html[data-theme="dark"] .badge{
  background:rgba(45,212,191,.14)!important;
  color:#99f6e4!important;
  border-color:rgba(45,212,191,.22)!important;
}
html.dark .panel.glass-card .alert,
html[data-theme="dark"] .panel.glass-card .alert{
  background:rgba(120,53,15,.40)!important;
  color:#fde68a!important;
  border-color:rgba(245,158,11,.24)!important;
}
@media(max-width:900px){
  .panel.glass-card > .section-heading,
  .section-heading,
  .kkn-page-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-items:start!important;
  }
  .panel.glass-card .cards{
    grid-template-columns:1fr!important;
  }
  .panel.glass-card .box,
  .panel.glass-card .table-wrap,
  .panel.glass-card .empty,
  .panel.glass-card form.form-grid{
    border-radius:22px!important;
  }
}


/* v159 - FIX semua tombol aksi/edit bisa ditekan */
/* Pastikan overlay background tidak menutup tombol/link */
body.has-bg-image main::before,
body.has-bg-image .kkn-page-shell::before,
.pdd-preview-backdrop{
  pointer-events:none!important;
}
.pdd-preview-modal.is-open .pdd-preview-backdrop{
  pointer-events:auto!important;
}

/* Semua tombol aksi dibuat di layer atas dan benar-benar clickable */
a.btn, button.btn,
a.primary, button.primary,
a.secondary, button.secondary,
a.danger, button.danger,
.btn, .primary, .secondary, .danger,
.action-stack a, .action-stack button,
.row-actions a, .row-actions button,
.committee-row-actions-v72 a, .committee-row-actions-v72 button,
.committee-btn-v72,
.cash-btn,
.pulang-btn-v49,
.pdd-preview-btn,
.pdd-action-btn,
.panel a[href], .panel button,
.kkn-table a[href], .kkn-table button,
.table-wrap a[href], .table-wrap button{
  position:relative!important;
  z-index:50!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}

/* Area aksi jangan ketutup konten card */
.action-stack,
.row-actions,
.committee-row-actions-v72,
.activity-badges,
.panel td[data-label*="Aksi"],
.panel td[data-label*="Detail"],
.kkn-table td[data-label*="Aksi"],
.kkn-table td[data-label*="Detail"]{
  position:relative!important;
  z-index:45!important;
  pointer-events:auto!important;
}

/* Modal hash dan modal JS harus muncul saat dibuka */
.modal-backdrop:target,
.modal-backdrop.is-open{
  display:flex!important;
  z-index:2147483000!important;
}
.modal-card{
  position:relative!important;
  z-index:2147483001!important;
  pointer-events:auto!important;
}

/* Panel edit inline divisi/perkap/acara/konsumsi saat dibuka */
.committee-detail-panel-v72.is-open,
.committee-edit-open-v159{
  display:block!important;
}

/* =========================================================
   v162/v163 - RESPONSIVE TABLE & LIST FIX SEMUA FITUR
   Tujuan: tabel/list aman di HP, tablet, desktop, PC, Mac, iPhone.
   ========================================================= */
:root{
  --v162-table-bg: rgba(15,23,42,.78);
  --v162-row-bg: rgba(15,23,42,.62);
  --v162-row-border: rgba(148,163,184,.24);
  --v162-head-bg: rgba(30,41,59,.82);
  --v162-card-radius: 22px;
}
html:not(.dark), html:not([data-theme="dark"]){
  --v162-table-bg: rgba(255,255,255,.88);
  --v162-row-bg: rgba(255,255,255,.76);
  --v162-row-border: rgba(148,163,184,.28);
  --v162-head-bg: rgba(248,250,252,.92);
}

/* wrapper tabel selalu scroll aman di layar kecil */
.table-wrap,
.responsive-table,
.admin-table-wrap,
.report-table-wrap,
.pdd-results-table,
.pdd-table-wrap,
.cash-table-wrap,
.attendance-table-wrap,
.meeting-table-wrap,
.duty-table-wrap,
.activity-table-wrap,
.task-table-wrap,
.secretary-table-wrap,
.finance-table-wrap,
.perkap-table-wrap,
.acara-table-wrap,
.konsumsi-table-wrap,
.panel:has(table),
.glass-card:has(table),
.box:has(table),
.admin-card-v62:has(table){
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-x:contain!important;
  border-radius:var(--v162-card-radius)!important;
  scrollbar-width:thin!important;
}

/* tabel desktop tetap rapi */
table{
  width:100%!important;
  max-width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  table-layout:auto!important;
}
th,td{
  vertical-align:middle!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
th{
  white-space:nowrap!important;
  position:relative!important;
}
td img, td video, td iframe, td object, td embed{
  max-width:100%!important;
  height:auto!important;
}
td video{max-height:260px!important;border-radius:14px!important;}
td iframe,td object,td embed{min-height:220px!important;border-radius:14px!important;}

/* tombol di tabel/list tidak ketumpuk dan mudah ditekan */
td .primary, td button, td .btn, td a,
.row-actions a,.row-actions button,
.table-actions a,.table-actions button,
.action-buttons a,.action-buttons button{
  position:relative!important;
  z-index:8!important;
  min-height:38px!important;
  margin:3px 4px 3px 0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  white-space:nowrap!important;
}

/* grid/list card biar tidak maksa 3-6 kolom di layar kecil */
.cards,
.feedback-grid,
.info-grid,
.trust-grid,
.feedback-summary-cards,
.admin-stats-v62,
.stats-grid,
.summary-grid,
.module-grid,
.report-grid,
.pdd-stats-grid,
.pdd-card-grid,
.kkn-feature-grid,
.grid2,
.grid3,
.grid4{
  max-width:100%!important;
}

/* desktop lebar: nyaman */
@media (min-width:1280px){
  .panel,.glass-card,.feedback-public,.admin-card-v62{max-width:min(1280px,92vw)!important;}
  table th, table td{padding:14px 16px!important;}
}

/* laptop/tablet landscape */
@media (max-width:1180px){
  .panel,.glass-card,.feedback-public,.admin-card-v62{width:min(1000px,94vw)!important;max-width:94vw!important;}
  table{min-width:760px!important;}
  .grid2,.grid3,.grid4,.summary-grid,.pdd-stats-grid,.pdd-card-grid,.module-grid,.report-grid,.kkn-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* tablet/HP: tabel jadi card-list agar tidak kepotong */
@media (max-width:760px){
  body{overflow-x:hidden!important;}
  main{max-width:100vw!important;overflow-x:hidden!important;}
  .panel,.glass-card,.feedback-public,.admin-card-v62,.box{
    width:94vw!important;
    max-width:94vw!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:16px!important;
    border-radius:22px!important;
  }

  /* ubah tabel umum menjadi kartu per baris */
  .table-wrap table,
  .responsive-table table,
  .panel table,
  .glass-card table,
  .box table,
  .admin-card-v62 table{
    min-width:0!important;
    width:100%!important;
    display:block!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .table-wrap thead,
  .responsive-table thead,
  .panel table thead,
  .glass-card table thead,
  .box table thead,
  .admin-card-v62 table thead{
    display:none!important;
  }
  .table-wrap tbody,
  .responsive-table tbody,
  .panel table tbody,
  .glass-card table tbody,
  .box table tbody,
  .admin-card-v62 table tbody{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
  }
  .table-wrap tr,
  .responsive-table tr,
  .panel table tr,
  .glass-card table tr,
  .box table tr,
  .admin-card-v62 table tr{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    background:var(--v162-row-bg)!important;
    border:1px solid var(--v162-row-border)!important;
    border-radius:18px!important;
    padding:12px!important;
    overflow:hidden!important;
    box-shadow:0 12px 32px rgba(2,6,23,.12)!important;
  }
  .table-wrap td,
  .responsive-table td,
  .panel table td,
  .glass-card table td,
  .box table td,
  .admin-card-v62 table td{
    display:grid!important;
    grid-template-columns:minmax(94px,36%) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    padding:10px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(148,163,184,.16)!important;
    color:inherit!important;
  }
  .table-wrap td:last-child,
  .responsive-table td:last-child,
  .panel table td:last-child,
  .glass-card table td:last-child,
  .box table td:last-child,
  .admin-card-v62 table td:last-child{border-bottom:0!important;}

  /* label otomatis memakai urutan kolom umum di semua fitur */
  td::before{
    content:"Data";
    font-weight:950!important;
    color:#93c5fd!important;
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.03em!important;
    line-height:1.35!important;
  }
  html:not(.dark) td::before{color:#2563eb!important;}
  td:nth-child(1)::before{content:"Judul / Nama";}
  td:nth-child(2)::before{content:"Keterangan";}
  td:nth-child(3)::before{content:"Divisi / Status";}
  td:nth-child(4)::before{content:"Waktu / Tanggal";}
  td:nth-child(5)::before{content:"File / Drive";}
  td:nth-child(6)::before{content:"Catatan";}
  td:nth-child(7)::before{content:"Aksi";}
  td:nth-child(8)::before{content:"Detail";}
  td:nth-child(9)::before{content:"Info";}
  td[colspan]::before{display:none!important;content:""!important;}
  td[colspan]{display:block!important;text-align:center!important;padding:18px!important;}

  /* form & filter responsif */
  .form,.field-grid,.grid2,.grid3,.grid4,
  .summary-grid,.pdd-stats-grid,.pdd-card-grid,.module-grid,.report-grid,.kkn-feature-grid,
  .feedback-summary-cards,.cards,.info-grid,.trust-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  input,select,textarea,button,.primary,.btn,.outline-btn{
    max-width:100%!important;
  }
  .section-heading,.admin-page-header-v62,.modal-head{
    display:block!important;
  }

  /* area aksi jadi tombol rapi full width di HP */
  td .primary, td button, td .btn, td a,
  .row-actions a,.row-actions button,
  .table-actions a,.table-actions button,
  .action-buttons a,.action-buttons button{
    width:100%!important;
    margin:4px 0!important;
    min-height:42px!important;
  }
  td form,.row-actions form,.table-actions form,.action-buttons form{width:100%!important;}

  /* preview media dalam kartu */
  td img{max-height:220px!important;object-fit:contain!important;border-radius:14px!important;}
  td video{width:100%!important;max-height:240px!important;}
  td iframe,td object,td embed{width:100%!important;min-height:260px!important;}
}

/* iPhone kecil */
@media (max-width:430px){
  .panel,.glass-card,.feedback-public,.admin-card-v62,.box{width:95vw!important;max-width:95vw!important;padding:13px!important;border-radius:18px!important;}
  .table-wrap td,
  .responsive-table td,
  .panel table td,
  .glass-card table td,
  .box table td,
  .admin-card-v62 table td{
    grid-template-columns:1fr!important;
    gap:5px!important;
    font-size:13px!important;
  }
  td::before{font-size:11px!important;}
  .top-kicker,.page-badge,.badge{max-width:100%!important;white-space:normal!important;}
  h1{font-size:clamp(26px,10vw,38px)!important;line-height:1.08!important;}
  h2{font-size:clamp(22px,8vw,30px)!important;line-height:1.1!important;}
}

/* mode print / large desktop safety */
@media (min-width:1600px){
  .panel,.glass-card,.feedback-public,.admin-card-v62{max-width:1360px!important;}
}

/* =========================================================
   v164 - Tombol link/share setiap fitur KKN
   ========================================================= */
.share-float-v164{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  z-index:99980!important;
  border:1px solid rgba(45,212,191,.45)!important;
  background:linear-gradient(135deg,#0891b2,#0f766e)!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:13px 17px!important;
  font-weight:950!important;
  box-shadow:0 18px 44px rgba(8,145,178,.35)!important;
  cursor:pointer!important;
  letter-spacing:.01em!important;
}
.share-float-v164:hover{transform:translateY(-2px);filter:brightness(1.05);}
.share-modal-v164{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  background:rgba(2,6,23,.68)!important;
  backdrop-filter:blur(12px)!important;
}
.share-modal-v164.is-open{display:flex!important;}
.share-modal-card-v164{
  width:min(1040px,96vw)!important;
  max-height:min(86dvh,820px)!important;
  overflow:auto!important;
  border-radius:28px!important;
  background:rgba(15,23,42,.96)!important;
  color:#f8fafc!important;
  border:1px solid rgba(148,163,184,.28)!important;
  box-shadow:0 35px 90px rgba(0,0,0,.55)!important;
  padding:20px!important;
}
html:not(.dark) .share-modal-card-v164{
  background:rgba(255,255,255,.98)!important;
  color:#0f172a!important;
  box-shadow:0 35px 90px rgba(15,23,42,.28)!important;
}
.share-modal-head-v164{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:14px!important;
}
.share-modal-head-v164 h2{margin:5px 0 4px!important;font-size:clamp(24px,4vw,38px)!important;line-height:1.05!important;}
.share-modal-head-v164 p{margin:0!important;color:#cbd5e1!important;font-weight:700!important;}
html:not(.dark) .share-modal-head-v164 p{color:#475569!important;}
.share-kicker-v164{
  display:inline-flex!important;align-items:center!important;border-radius:999px!important;padding:7px 12px!important;
  background:rgba(20,184,166,.17)!important;border:1px solid rgba(45,212,191,.28)!important;color:#5eead4!important;font-weight:950!important;font-size:12px!important;
}
html:not(.dark) .share-kicker-v164{color:#0f766e!important;background:rgba(20,184,166,.12)!important;}
.share-close-v164{
  width:44px!important;height:44px!important;border-radius:16px!important;border:1px solid rgba(148,163,184,.24)!important;
  background:rgba(148,163,184,.12)!important;color:inherit!important;font-size:30px!important;font-weight:900!important;cursor:pointer!important;line-height:1!important;
}
.share-search-v164 input{
  width:100%!important;border-radius:17px!important;border:1px solid rgba(148,163,184,.28)!important;
  background:rgba(2,6,23,.35)!important;color:inherit!important;padding:14px 16px!important;font-weight:850!important;margin-bottom:14px!important;
}
html:not(.dark) .share-search-v164 input{background:#f8fafc!important;}
.share-list-v164{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
.share-item-v164{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  border:1px solid rgba(148,163,184,.24)!important;
  background:rgba(30,41,59,.68)!important;
  border-radius:20px!important;
  padding:14px!important;
}
html:not(.dark) .share-item-v164{background:rgba(248,250,252,.95)!important;}
.share-item-main-v164{min-width:0!important;display:grid!important;gap:5px!important;}
.share-item-main-v164 b{font-size:17px!important;font-weight:950!important;color:inherit!important;}
.share-item-main-v164 span{font-size:13px!important;font-weight:800!important;color:#93c5fd!important;}
html:not(.dark) .share-item-main-v164 span{color:#2563eb!important;}
.share-item-main-v164 code{
  display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:11px!important;color:#cbd5e1!important;background:rgba(2,6,23,.28)!important;border-radius:10px!important;padding:6px 8px!important;
}
html:not(.dark) .share-item-main-v164 code{color:#334155!important;background:rgba(15,23,42,.06)!important;}
.share-actions-v164{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.share-actions-v164 a,.share-actions-v164 button{
  border:0!important;border-radius:999px!important;padding:9px 11px!important;min-height:38px!important;
  background:#0e7490!important;color:#fff!important;font-weight:950!important;text-decoration:none!important;cursor:pointer!important;font-size:12px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
.share-actions-v164 button{background:#2563eb!important;}
.share-actions-v164 a:nth-child(3){background:#16a34a!important;}
.share-toast-v164{
  position:sticky!important;bottom:8px!important;display:none!important;margin-top:12px!important;background:#16a34a!important;color:#fff!important;border-radius:14px!important;padding:11px 14px!important;font-weight:900!important;text-align:center!important;
}
.share-toast-v164.is-show{display:block!important;}
@media(max-width:860px){
  .share-float-v164{right:12px!important;bottom:12px!important;padding:11px 14px!important;font-size:13px!important;}
  .share-modal-v164{align-items:flex-end!important;padding:10px!important;}
  .share-modal-card-v164{width:100%!important;max-height:88dvh!important;border-radius:24px 24px 18px 18px!important;padding:14px!important;}
  .share-list-v164{grid-template-columns:1fr!important;}
  .share-item-v164{grid-template-columns:1fr!important;}
  .share-actions-v164{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;width:100%!important;}
  .share-actions-v164 a,.share-actions-v164 button{width:100%!important;}
}
@media(max-width:420px){.share-actions-v164{grid-template-columns:1fr!important;}.share-modal-head-v164{gap:10px!important}.share-close-v164{width:40px!important;height:40px!important}}


/* v166 - detail popup untuk tulisan panjang di tabel/list semua fitur */
.kkn-detail-inline{display:grid;gap:8px;align-items:start}.kkn-detail-preview{display:block;line-height:1.45}.kkn-detail-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px;width:max-content!important;min-width:92px;max-width:100%;padding:8px 12px!important;border:1px solid rgba(20,184,166,.45)!important;border-radius:999px!important;background:linear-gradient(135deg,#0f766e,#14b8a6)!important;color:#fff!important;font-weight:900!important;font-size:12px!important;cursor:pointer!important;position:relative!important;z-index:35!important;box-shadow:0 10px 24px rgba(20,184,166,.18)!important}.kkn-detail-btn:hover{filter:brightness(1.06)}.kkn-detail-modal{display:none;position:fixed;inset:0;z-index:2147483646;align-items:center;justify-content:center;padding:18px}.kkn-detail-modal.is-open{display:flex}.kkn-detail-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.82);backdrop-filter:blur(10px)}.kkn-detail-dialog{position:relative;width:min(780px,96vw);max-height:88vh;overflow:hidden;border-radius:24px;border:1px solid rgba(148,163,184,.25);background:var(--surface,#0f172a);color:var(--text,#fff);box-shadow:0 28px 90px rgba(0,0,0,.50)}.kkn-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid rgba(148,163,184,.22)}.kkn-detail-head h3{margin:4px 0 0;font-size:22px;line-height:1.2}.kkn-detail-body{padding:20px;max-height:64vh;overflow:auto;white-space:pre-wrap;line-height:1.75;font-weight:650;overflow-wrap:anywhere}.kkn-detail-close{position:relative!important;z-index:2!important}.kkn-row-actions,.kkn-mini-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.kkn-mini-actions{margin-top:8px}@media(max-width:700px){.kkn-detail-modal{padding:10px}.kkn-detail-dialog{border-radius:18px;max-height:94vh}.kkn-detail-head{padding:14px}.kkn-detail-head h3{font-size:18px}.kkn-detail-body{padding:14px;max-height:72vh;font-size:14px}.kkn-detail-btn{width:100%!important;min-height:40px!important}}


/* v167 - tombol detail dibuat kolom aksi yang jelas */
table th:last-child, table td:last-child{vertical-align:top;}
.kkn-row-actions .kkn-detail-btn{margin:2px 0;}
@media(max-width:700px){.kkn-row-actions{width:100%;}.kkn-row-actions .kkn-detail-btn{width:100%!important;display:flex!important;}}

/* =========================================================
   v176 - FIX TOTAL RESPONSIVE PANDUAN + TUTORIAL CARD
   Masalah: role/audience yang panjang membuat judul menjadi vertikal
   dan tab kategori melebar di HP/tablet/desktop.
   ========================================================= */
html,body{max-width:100%!important;overflow-x:hidden!important;}
*,*::before,*::after{box-sizing:border-box!important;}

/* Wrapper halaman panduan jangan pernah melebar keluar viewport */
.tutorial-page,
.simple-page:has(.tutorial-card),
.simple-page:has(.category-tabs){
  width:min(1120px,calc(100vw - 24px))!important;
  max-width:calc(100vw - 24px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:visible!important;
}

/* Hero panduan aman untuk semua layar */
.tutorial-page .easy-hero{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  display:block!important;
}
.tutorial-page .easy-hero h1,
.tutorial-page .easy-hero p,
.tutorial-card h2,
.tutorial-card p,
.tutorial-steps p{
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
}

/* Penyebab tulisan vertikal: kolom audience auto terlalu panjang.
   Sekarang audience/role selalu turun di bawah judul, bukan menekan judul. */
.tutorial-card-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.tutorial-card-head > div{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.audience-pill,
.tutorial-card-head .audience-pill{
  justify-self:start!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.45!important;
  text-align:left!important;
}

/* Tab kategori panduan jangan jadi scrollbar panjang, dibuat wrap rapi */
.tutorial-page .category-tabs,
.category-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  padding:4px 0 12px!important;
  margin:14px 0 20px!important;
}
.tutorial-page .category-tabs a,
.category-tabs a{
  flex:0 1 auto!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-align:center!important;
  line-height:1.2!important;
}

/* Search dan role note panduan */
.tutorial-search-box,
.role-visible-note{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.tutorial-search-box{
  grid-template-columns:minmax(0,1fr)!important;
}
.tutorial-search-box input{min-width:0!important;max-width:100%!important;}
.role-visible-note span{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;}

/* Card tutorial/list responsif */
.tutorial-list{width:100%!important;max-width:100%!important;min-width:0!important;}
.tutorial-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.tutorial-steps{width:100%!important;max-width:100%!important;min-width:0!important;}

/* Jadwal KKN Umum: target role yang panjang dibuat wrap, bukan memanjang */
.schedule-v175,
.schedule-table-card-v175{
  width:100%!important;
  max-width:calc(100vw - 24px)!important;
  overflow:hidden!important;
}
.schedule-chip-v175{
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.35!important;
}
.schedule-table-v175 td,
.schedule-table-v175 th{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

/* Link Fitur popup juga dibuat aman kalau ada teks role panjang */
.share-modal-card-v164,
.share-modal-head-v164,
.share-list-v164,
.share-item-v164,
.share-item-main-v164{
  max-width:100%!important;
  min-width:0!important;
}
.share-modal-head-v164{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;}
.share-modal-head-v164 h2,
.share-modal-head-v164 p,
.share-item-main-v164 b,
.share-item-main-v164 span{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

@media(max-width:900px){
  .tutorial-page,
  .simple-page:has(.tutorial-card),
  .simple-page:has(.category-tabs){
    width:calc(100vw - 18px)!important;
    max-width:calc(100vw - 18px)!important;
  }
  .tutorial-page .easy-help-grid{grid-template-columns:1fr!important;}
  .tutorial-page .easy-hero{padding:18px!important;border-radius:22px!important;}
  .tutorial-card{padding:16px!important;border-radius:22px!important;}
  .tutorial-page .category-tabs a,.category-tabs a{font-size:12.5px!important;padding:8px 10px!important;}
  .schedule-v175{padding-left:10px!important;padding-right:10px!important;max-width:100vw!important;}
  .schedule-table-card-v175{max-width:calc(100vw - 20px)!important;}
}

@media(max-width:480px){
  .tutorial-page,
  .simple-page:has(.tutorial-card),
  .simple-page:has(.category-tabs){
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
  }
  .tutorial-page .easy-hero h1{font-size:clamp(28px,11vw,38px)!important;line-height:1.08!important;}
  .tutorial-card h2{font-size:clamp(22px,8vw,30px)!important;line-height:1.12!important;}
  .audience-pill{font-size:10.5px!important;padding:6px 9px!important;}
  .tutorial-page .category-tabs{gap:6px!important;}
  .tutorial-page .category-tabs a,.category-tabs a{font-size:11.5px!important;padding:7px 9px!important;}
}

/* v180 kerja sama sponsor/kolaborasi */
.badge.ok{background:rgba(16,185,129,.16)!important;color:#6ee7b7!important;border:1px solid rgba(16,185,129,.35)!important;}
.badge.danger{background:rgba(239,68,68,.16)!important;color:#fecaca!important;border:1px solid rgba(239,68,68,.35)!important;}
.btn-mini.danger{background:rgba(239,68,68,.18)!important;color:#fecaca!important;border-color:rgba(239,68,68,.35)!important;}
.form-card label{display:grid;gap:7px;font-weight:850;margin-bottom:14px;}
.form-card input,.form-card select,.form-card textarea{width:100%;}
@media(max-width:760px){.responsive-grid-v162[style]{grid-template-columns:1fr!important;}.feature-hero-v134{align-items:flex-start!important}.feature-hero-v134 .primary{width:100%;justify-content:center}}


/* v181 fix UI posisi kerja sama/sponsor di HP, tablet, desktop */
.collab-page-v181{
  width:min(1180px, calc(100vw - 32px))!important;
  max-width:min(1180px, calc(100vw - 32px))!important;
  margin:0 auto!important;
  padding:64px 0 56px!important;
  box-sizing:border-box!important;
  position:relative!important;
  overflow:visible!important;
}
.collab-page-v181 *{box-sizing:border-box!important;}
.collab-hero-v181{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 18px!important;
  padding:26px!important;
  border-radius:28px!important;
  background:rgba(15,23,42,.78)!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(14px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:center!important;
}
.collab-hero-v181 h1{
  margin:14px 0 10px!important;
  font-size:clamp(32px, 5vw, 56px)!important;
  line-height:1.05!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  color:#fff!important;
}
.collab-hero-v181 p{
  max-width:820px!important;
  margin:0!important;
  color:#e2e8f0!important;
  line-height:1.65!important;
  overflow-wrap:anywhere!important;
}
.collab-add-v181{
  white-space:normal!important;
  text-align:center!important;
  justify-content:center!important;
  min-width:190px!important;
}
.collab-stats-v181{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:0 0 18px!important;
}
.collab-stats-v181 .stat-card{
  min-width:0!important;
  padding:18px!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:rgba(15,23,42,.78)!important;
  border:1px solid rgba(148,163,184,.22)!important;
}
.collab-stats-v181 b,
.collab-stats-v181 strong{
  display:block!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.collab-filter-v181{
  width:100%!important;
  max-width:100%!important;
  margin:18px 0!important;
  display:grid!important;
  grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) minmax(150px,1fr) minmax(150px,1fr) auto!important;
  gap:10px!important;
  align-items:end!important;
}
.collab-filter-v181 input,
.collab-filter-v181 select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
.collab-filter-btn-v181{width:100%!important;min-width:92px!important;justify-content:center!important;}
.collab-table-card-v181{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:rgba(15,23,42,.78)!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.20)!important;
}
.collab-table-card-v181 table{width:100%!important;table-layout:auto!important;}
.collab-table-card-v181 th,
.collab-table-card-v181 td{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  white-space:normal!important;
}
.collab-form-card-v181{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:24px!important;
  border-radius:28px!important;
  background:rgba(15,23,42,.80)!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.22)!important;
}
.collab-form-grid-v181{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  max-width:100%!important;
}
.collab-form-card-v181 label,
.collab-form-card-v181 input,
.collab-form-card-v181 select,
.collab-form-card-v181 textarea{
  max-width:100%!important;
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:980px){
  .collab-page-v181{width:min(100%, calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;padding:34px 0 42px!important;}
  .collab-hero-v181{grid-template-columns:1fr!important;padding:22px!important;border-radius:24px!important;}
  .collab-add-v181{width:100%!important;min-width:0!important;}
  .collab-stats-v181{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .collab-filter-v181{grid-template-columns:1fr 1fr!important;}
  .collab-filter-btn-v181{grid-column:1/-1!important;}
  .collab-form-grid-v181{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  .collab-page-v181{width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important;padding:22px 0 34px!important;}
  .collab-hero-v181{padding:18px!important;border-radius:22px!important;gap:14px!important;}
  .collab-hero-v181 h1{font-size:clamp(30px,10vw,42px)!important;}
  .collab-hero-v181 p{font-size:14px!important;line-height:1.55!important;}
  .collab-stats-v181{grid-template-columns:1fr!important;gap:10px!important;}
  .collab-filter-v181{grid-template-columns:1fr!important;gap:9px!important;}
  .collab-filter-v181 input,.collab-filter-v181 select,.collab-filter-v181 button{height:auto!important;min-height:46px!important;}
  .collab-table-card-v181{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important;}
  .collab-table-card-v181 table,
  .collab-table-card-v181 thead,
  .collab-table-card-v181 tbody,
  .collab-table-card-v181 th,
  .collab-table-card-v181 td,
  .collab-table-card-v181 tr{display:block!important;width:100%!important;max-width:100%!important;}
  .collab-table-card-v181 thead{display:none!important;}
  .collab-table-card-v181 tr{
    margin:0 0 14px!important;
    padding:14px!important;
    border-radius:22px!important;
    background:rgba(15,23,42,.84)!important;
    border:1px solid rgba(148,163,184,.22)!important;
    box-shadow:0 14px 34px rgba(0,0,0,.20)!important;
  }
  .collab-table-card-v181 td{
    border:0!important;
    border-bottom:1px solid rgba(148,163,184,.16)!important;
    padding:10px 0!important;
    display:grid!important;
    grid-template-columns:minmax(95px,.75fr) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
  }
  .collab-table-card-v181 td:last-child{border-bottom:0!important;}
  .collab-table-card-v181 td::before{
    content:attr(data-label)!important;
    color:#94a3b8!important;
    font-weight:900!important;
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  .collab-table-card-v181 .action-cell-v162{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;}
  .collab-table-card-v181 .action-cell-v162::before{width:100%!important;flex:0 0 100%!important;}
  .collab-table-card-v181 .btn-mini,
  .collab-table-card-v181 button,
  .collab-table-card-v181 a{max-width:100%!important;white-space:normal!important;}
  .collab-form-card-v181{padding:18px!important;border-radius:22px!important;}
}
@media(max-width:380px){
  .collab-page-v181{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;}
  .collab-table-card-v181 td{grid-template-columns:1fr!important;gap:5px!important;}
}


/* v182 kerjasama: fallback global responsive fix */
.collab-page-v182{width:min(1120px,calc(100vw - 28px))!important;max-width:min(1120px,calc(100vw - 28px))!important;margin:0 auto!important;padding:clamp(18px,4vw,58px) 0 56px!important;box-sizing:border-box!important;position:relative!important;overflow:visible!important;}
.collab-page-v182,.collab-page-v182 *{box-sizing:border-box!important;max-width:100%;}
.collab-hero-v182{width:100%!important;margin:0 0 16px!important;padding:clamp(18px,3vw,28px)!important;display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:16px!important;align-items:start!important;border-radius:26px!important;background:rgba(15,23,42,.86)!important;border:1px solid rgba(148,163,184,.28)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important;backdrop-filter:blur(16px)!important;}
.collab-hero-v182 h1{font-size:clamp(30px,5vw,52px)!important;line-height:1.05!important;margin:12px 0 10px!important;color:#fff!important;letter-spacing:-.03em!important;word-break:normal!important;overflow-wrap:break-word!important;}
.collab-hero-v182 p{max-width:760px!important;margin:0!important;color:#e5edf8!important;font-size:clamp(14px,1.7vw,16px)!important;line-height:1.55!important;word-break:normal!important;overflow-wrap:break-word!important;}
.collab-add-v182{min-width:190px!important;width:auto!important;white-space:nowrap!important;align-self:center!important;text-align:center!important;justify-content:center!important;}
.collab-stats-v182{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;width:100%!important;margin:0 0 16px!important;}
.collab-stats-v182 .stat-card{min-height:96px!important;padding:18px!important;border-radius:22px!important;background:rgba(15,23,42,.84)!important;border:1px solid rgba(148,163,184,.26)!important;overflow:hidden!important;}
.collab-filter-v182{display:grid!important;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(145px,1fr)) minmax(110px,.65fr)!important;gap:10px!important;width:100%!important;margin:0 0 16px!important;padding:14px!important;border-radius:22px!important;background:rgba(15,23,42,.84)!important;border:1px solid rgba(20,184,166,.24)!important;}
.collab-filter-v182 input,.collab-filter-v182 select,.collab-filter-v182 button{width:100%!important;min-width:0!important;min-height:44px!important;border-radius:14px!important;}
.collab-table-card-v182{width:100%!important;overflow:hidden!important;border-radius:24px!important;background:rgba(15,23,42,.86)!important;border:1px solid rgba(148,163,184,.26)!important;}
.collab-table-card-v182 table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;}
.collab-table-card-v182 th,.collab-table-card-v182 td{padding:14px 12px!important;vertical-align:middle!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;color:#f8fafc!important;}
.collab-table-card-v182 th{font-size:12px!important;text-transform:uppercase!important;letter-spacing:.03em!important;color:#dbeafe!important;background:rgba(30,41,59,.72)!important;}
@media(max-width:1024px){.collab-page-v182{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;padding-top:28px!important}.collab-hero-v182{grid-template-columns:1fr!important}.collab-add-v182{width:100%!important;white-space:normal!important}.collab-stats-v182{grid-template-columns:repeat(2,minmax(0,1fr))!important}.collab-filter-v182{grid-template-columns:1fr 1fr!important}.collab-filter-v182 button{grid-column:1/-1!important}}
@media(max-width:640px){.collab-page-v182{width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important;padding:16px 0 32px!important;margin:0 auto!important}.collab-hero-v182{padding:16px!important;border-radius:22px!important;margin-bottom:12px!important}.collab-hero-v182 h1{font-size:clamp(28px,9.5vw,38px)!important;line-height:1.08!important}.collab-hero-v182 p{font-size:13.5px!important;line-height:1.48!important}.collab-stats-v182{grid-template-columns:1fr 1fr!important;gap:8px!important}.collab-stats-v182 .stat-card{min-height:82px!important;padding:12px!important;border-radius:16px!important}.collab-filter-v182{grid-template-columns:1fr!important;padding:12px!important;border-radius:18px!important;gap:8px!important}.collab-table-card-v182{background:transparent!important;border:0!important;border-radius:0!important;overflow:visible!important}.collab-table-card-v182 table,.collab-table-card-v182 thead,.collab-table-card-v182 tbody,.collab-table-card-v182 tr,.collab-table-card-v182 th,.collab-table-card-v182 td{display:block!important;width:100%!important;max-width:100%!important}.collab-table-card-v182 thead{display:none!important}.collab-table-card-v182 tr{margin:0 0 12px!important;padding:14px!important;border-radius:20px!important;background:rgba(15,23,42,.90)!important;border:1px solid rgba(148,163,184,.25)!important;box-shadow:0 14px 30px rgba(0,0,0,.22)!important}.collab-table-card-v182 td{display:grid!important;grid-template-columns:105px minmax(0,1fr)!important;gap:8px!important;padding:9px 0!important;border:0!important;border-bottom:1px solid rgba(148,163,184,.14)!important}.collab-table-card-v182 td:last-child{border-bottom:0!important}.collab-table-card-v182 td:before{content:attr(data-label)!important;color:#93c5fd!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.04em!important}.collab-table-card-v182 .action-cell-v162{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.collab-table-card-v182 .action-cell-v162 form{display:block!important;width:100%!important}.collab-table-card-v182 .btn-mini,.collab-table-card-v182 .btn-detail-v167{width:100%!important;white-space:normal!important}}
@media(max-width:380px){.collab-stats-v182{grid-template-columns:1fr!important}.collab-table-card-v182 td{grid-template-columns:1fr!important;gap:4px!important}}


/* ===============================
   V183 - FIX TULISAN TERLIHAT JELAS
   Semua halaman fitur yang punya table/list dibuat kontras di light/dark mode
   =============================== */
html, body{overflow-x:hidden!important;}
body{background-attachment:fixed!important;}

/* Paksa halaman fitur gelap/glass tetap terbaca walau mode terang */
.schedule-v175,
.collab-page-v182,
.pdd-page,
.notulen-page,
.report-page,
.attendance-page,
.picket-page{
  width:min(1180px,94vw)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Jadwal KKN Umum: sebelumnya table putih tapi teks putih/pudar */
.schedule-v175{color:#f8fafc!important;}
.schedule-table-card-v175{
  background:rgba(15,23,42,.94)!important;
  border:1px solid rgba(148,163,184,.35)!important;
  overflow:hidden!important;
}
.schedule-table-v175,
.schedule-table-v175 tbody,
.schedule-table-v175 tr{
  background:transparent!important;
}
.schedule-table-v175 th{
  background:rgba(30,41,59,.95)!important;
  color:#ffffff!important;
  font-weight:950!important;
}
.schedule-table-v175 td{
  background:rgba(15,23,42,.82)!important;
  color:#f8fafc!important;
  font-weight:800!important;
}
.schedule-table-v175 td b,
.schedule-table-v175 td strong,
.schedule-table-v175 a,
.schedule-title-v175,
.schedule-desc-v175,
.schedule-filter-v175 label,
.schedule-muted-v175{
  color:#f8fafc!important;
}
.schedule-filter-v175 input,
.schedule-filter-v175 select{
  background:rgba(2,6,23,.82)!important;
  color:#fff!important;
  border-color:rgba(148,163,184,.55)!important;
}
.schedule-filter-v175 input::placeholder{color:#cbd5e1!important;opacity:1!important;}

/* Kas KKN: mode terang tetap gelap jelas, tidak pucat */
.cash-shell{color:#0f172a!important;}
.cash-card,
.cash-hero{
  background:rgba(255,255,255,.96)!important;
  color:#0f172a!important;
  border:1px solid rgba(148,163,184,.30)!important;
  box-shadow:0 18px 55px rgba(15,23,42,.16)!important;
}
.cash-card h1,.cash-card h2,.cash-card h3,.cash-hero h1,.cash-hero h2,.cash-hero h3,
.cash-card b,.cash-hero b,.cash-card strong,.cash-hero strong{color:#0f172a!important;}
.cash-card p,.cash-hero p,.cash-card small,.cash-hero small{color:#334155!important;}
.cash-table,
.cash-table tbody,
.cash-table tr{background:transparent!important;}
.cash-table th{
  color:#0f172a!important;
  background:rgba(226,232,240,.95)!important;
  font-weight:950!important;
}
.cash-table td{
  color:#0f172a!important;
  background:rgba(248,250,252,.96)!important;
  font-weight:750!important;
}
.cash-table td b,.cash-table td strong{color:#0f172a!important;}
.cash-table td small{color:#475569!important;}
.cash-form-inline input,
.cash-form-inline select,
.cash-form-inline textarea{
  background:#fff!important;
  color:#0f172a!important;
  border-color:#cbd5e1!important;
}
.cash-form-inline input::placeholder{color:#64748b!important;opacity:1!important;}
.cash-badge.pending{color:#92400e!important;background:#fef3c7!important;border:1px solid #fde68a!important;}
.cash-badge.paid{color:#166534!important;background:#dcfce7!important;border:1px solid #bbf7d0!important;}
.cash-badge.izin{color:#6b21a8!important;background:#f3e8ff!important;border:1px solid #e9d5ff!important;}
.cash-badge{color:#1d4ed8!important;background:#dbeafe!important;border:1px solid #bfdbfe!important;}

/* Saat dark mode, kas tetap dark dan teks putih */
html.dark .cash-shell,html[data-theme="dark"] .cash-shell{color:#f8fafc!important;}
html.dark .cash-card,html.dark .cash-hero,
html[data-theme="dark"] .cash-card,html[data-theme="dark"] .cash-hero{
  background:rgba(15,23,42,.90)!important;color:#f8fafc!important;border-color:rgba(148,163,184,.25)!important;
}
html.dark .cash-card h1,html.dark .cash-card h2,html.dark .cash-card h3,html.dark .cash-card b,html.dark .cash-card strong,html.dark .cash-hero h1,html.dark .cash-hero p,
html[data-theme="dark"] .cash-card h1,html[data-theme="dark"] .cash-card h2,html[data-theme="dark"] .cash-card h3,html[data-theme="dark"] .cash-card b,html[data-theme="dark"] .cash-card strong,html[data-theme="dark"] .cash-hero h1,html[data-theme="dark"] .cash-hero p{color:#f8fafc!important;}
html.dark .cash-table th,html[data-theme="dark"] .cash-table th{background:rgba(30,41,59,.95)!important;color:#f8fafc!important;}
html.dark .cash-table td,html[data-theme="dark"] .cash-table td{background:rgba(30,41,59,.65)!important;color:#f8fafc!important;}
html.dark .cash-table td small,html[data-theme="dark"] .cash-table td small{color:#cbd5e1!important;}
html.dark .cash-form-inline input,html.dark .cash-form-inline select,html.dark .cash-form-inline textarea,
html[data-theme="dark"] .cash-form-inline input,html[data-theme="dark"] .cash-form-inline select,html[data-theme="dark"] .cash-form-inline textarea{background:#020617!important;color:#fff!important;border-color:#334155!important;}

/* Semua table umum: jangan pakai teks pudar */
.kkn-table th,.kkn-table td,
.responsive-table th,.responsive-table td,
table th, table td{font-weight:750;}
html:not(.dark) table th{color:#0f172a;}
html:not(.dark) table td{color:#0f172a;}
html.dark table th,html.dark table td,html[data-theme="dark"] table th,html[data-theme="dark"] table td{color:#f8fafc;}

/* Badge/label jangan terlalu pucat */
.pill,.badge,.cash-badge,.schedule-chip-v175{font-weight:950!important;}

/* Responsive table/card di HP: label dan isi jelas */
@media(max-width:860px){
  .schedule-table-v175 tr,
  .cash-table tr,
  .kkn-table tr{border-radius:18px!important;overflow:hidden!important;}
  .schedule-table-v175 td,
  .cash-table td,
  .kkn-table td{display:block!important;width:100%!important;min-width:0!important;word-break:normal!important;overflow-wrap:anywhere!important;}
  .schedule-table-v175 td:before,
  .cash-table td:before,
  .kkn-table td:before{display:block!important;margin-bottom:6px!important;color:#60a5fa!important;font-weight:950!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.04em!important;}
  .cash-table{min-width:0!important;border-spacing:0 12px!important;}
  .cash-table thead{display:none!important;}
  .cash-table tr{display:block!important;background:rgba(248,250,252,.96)!important;border:1px solid rgba(148,163,184,.35)!important;margin-bottom:12px!important;padding:12px!important;}
  html.dark .cash-table tr,html[data-theme="dark"] .cash-table tr{background:rgba(15,23,42,.82)!important;}
  .cash-table td{border:0!important;border-radius:0!important;background:transparent!important;padding:8px 0!important;}
  .cash-form-inline{display:grid!important;grid-template-columns:1fr!important;width:100%!important;}
  .cash-form-inline .cash-btn,.cash-form-inline button{width:100%!important;}
}

/* Light mode header/hero pages: kalau foto terang, tambah shadow agar tulisan tidak hilang */
.schedule-title-v175,
.collab-title-v182,
.program-hero-copy h1,
.kkn-page-head h1{
  text-shadow:0 3px 16px rgba(0,0,0,.45)!important;
}




/* =========================================================
   v184 - FIX LIGHT MODE: kartu publik jangan hitam sendiri
   Saat mode terang, semua panel halaman publik dibuat putih/terang.
   Dark mode tetap memakai warna gelap lama.
   ========================================================= */
html:not(.dark) .program-hero-v41,
html:not(.dark) .program-section-v41,
html:not(.dark) .stat-v41,
html:not(.dark) .program-card-v41,
html:not(.dark) .schedule-card-v45,
html:not(.dark) .schedule-date-group-v55,
html:not(.dark) .schedule-item-v45,
html:not(.dark) .schedule-event-v55,
html:not(.dark) .empty-v41,
html:not(.dark) .empty-v49,
html:not(.dark) .pulang-card-v49,
html:not(.dark) .pulang-item-v49,
html:not(.dark) .org-node-v57,
html:not(.dark) .org-node-v57.main,
html:not(.dark) .org-node-v57.pillar{
  background:rgba(255,255,255,.88)!important;
  color:#0f172a!important;
  border-color:rgba(15,23,42,.10)!important;
  box-shadow:0 18px 55px rgba(15,23,42,.12)!important;
}
html:not(.dark) .program-hero-v41,
html:not(.dark) .program-section-v41,
html:not(.dark) .pulang-card-v49{
  backdrop-filter:blur(18px)!important;
}
html:not(.dark) .program-title-v41,
html:not(.dark) .program-head-v41 h2,
html:not(.dark) .program-card-body-v41 h3,
html:not(.dark) .schedule-card-v45 h3,
html:not(.dark) .schedule-date-title-v55,
html:not(.dark) .schedule-event-v55 h3,
html:not(.dark) .schedule-item-v45 b,
html:not(.dark) .pulang-head-v49 h1,
html:not(.dark) .pulang-item-v49 b,
html:not(.dark) .org-node-v57,
html:not(.dark) .org-node-v57 b,
html:not(.dark) .stat-v41 b{
  color:#0f172a!important;
}
html:not(.dark) .program-desc-v41,
html:not(.dark) .program-head-v41 p,
html:not(.dark) .program-card-body-v41 p,
html:not(.dark) .program-card-body-v41 small,
html:not(.dark) .schedule-item-v45 span,
html:not(.dark) .schedule-item-v45 small,
html:not(.dark) .schedule-date-title-v55 span,
html:not(.dark) .schedule-safe-note-v56,
html:not(.dark) .pulang-head-v49 p,
html:not(.dark) .pulang-meta-v49,
html:not(.dark) .pulang-note-v49,
html:not(.dark) .org-node-v57 span,
html:not(.dark) .stat-v41 span,
html:not(.dark) .empty-v41 p{
  color:#334155!important;
}
html:not(.dark) .program-kicker-v41,
html:not(.dark) .badge-v41,
html:not(.dark) .pulang-badge-v49,
html:not(.dark) .org-section-title-v57{
  background:rgba(255,255,255,.72)!important;
  color:#0f172a!important;
  border:1px solid rgba(15,23,42,.14)!important;
}
html:not(.dark) .program-btn-v41{
  background:#0f172a!important;
  color:#ffffff!important;
  border-color:rgba(15,23,42,.10)!important;
}
html:not(.dark) .program-btn-v41.secondary{
  background:#ffffff!important;
  color:#0f172a!important;
  border:1px solid rgba(15,23,42,.16)!important;
}
html:not(.dark) .program-float-v41{
  background:rgba(255,255,255,.88)!important;
  color:#0f172a!important;
  border:1px solid rgba(15,23,42,.10)!important;
}
html:not(.dark) .program-float-v41 span{color:#334155!important;}
html:not(.dark) .program-media-v41{background:#e2e8f0!important;border-color:rgba(15,23,42,.10)!important;}
html:not(.dark) .program-media-v41 img{filter:saturate(1.04) contrast(1.02)!important;}
html:not(.dark) .schedule-member-v45{background:rgba(14,165,233,.14)!important;color:#075985!important;border:1px solid rgba(14,165,233,.20)!important;}
html:not(.dark) .org-node-v57.admin{
  background:linear-gradient(135deg,#2563eb,#0ea5e9)!important;
  color:#fff!important;
}
html:not(.dark) .org-node-v57.admin b, html:not(.dark) .org-node-v57.admin span{color:#fff!important;}
html:not(.dark) .program-page-v41{color:#0f172a!important;}
html:not(.dark) .schedule-date-group-v55,
html:not(.dark) .schedule-card-v45,
html:not(.dark) .program-section-v41{
  background:rgba(255,255,255,.90)!important;
}
@media(max-width:720px){
  html:not(.dark) .program-hero-v41,
  html:not(.dark) .program-section-v41,
  html:not(.dark) .stat-v41{
    background:rgba(255,255,255,.92)!important;
  }
}

