/* SIAGA Modern Theme - Paris Athaya */
:root {
  --siaga-primary:#5b3df5;
  --siaga-primary-dark:#31206f;
  --siaga-accent:#12c2a3;
  --siaga-bg:#f4f7fb;
  --siaga-text:#1f2937;
  --siaga-muted:#6b7280;
  --siaga-card:#ffffff;
  --siaga-border:rgba(17,24,39,.08);
}
html, body { min-height:100%; }
body.siaga-modern,
body.login-modern {
  font-family: "Inter", "Nunito", "Source Sans Pro", Arial, sans-serif;
  color: var(--siaga-text);
  background:
    radial-gradient(circle at 10% 10%, rgba(91,61,245,.11), transparent 28%),
    radial-gradient(circle at 90% 0%, rgba(18,194,163,.12), transparent 30%),
    var(--siaga-bg);
}
body.siaga-modern { padding-right:0!important; }
.siaga-navbar {
  background: rgba(255,255,255,.86)!important;
  backdrop-filter: blur(18px);
  border-bottom: 1px solid var(--siaga-border);
  box-shadow: 0 14px 40px rgba(31,41,55,.06);
}
.siaga-navbar .nav-link { color:#374151!important; }
.siaga-sidebar {
  background: linear-gradient(180deg, #20174c 0%, #322378 52%, #131827 100%)!important;
  box-shadow: 12px 0 40px rgba(17,24,39,.18)!important;
}
.siaga-sidebar .brand-link {
  border-bottom: 1px solid rgba(255,255,255,.09)!important;
  background: rgba(255,255,255,.04);
}
.siaga-sidebar .brand-text { font-weight:800!important; letter-spacing:.04em; }
.siaga-sidebar .user-panel { border-bottom:1px solid rgba(255,255,255,.1)!important; }
.siaga-sidebar .nav-sidebar .nav-link {
  border-radius:16px;
  margin:4px 8px;
  color:rgba(255,255,255,.76)!important;
  transition: all .18s ease;
}
.siaga-sidebar .nav-sidebar .nav-link:hover,
.siaga-sidebar .nav-sidebar .nav-link.active {
  background: rgba(255,255,255,.14)!important;
  color:#fff!important;
  transform: translateX(2px);
}
.content-wrapper {
  background: transparent!important;
}
.siaga-page-hero {
  margin: 12px auto 0;
  padding: 22px 26px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(91,61,245,.95), rgba(18,194,163,.86));
  color:#fff;
  box-shadow: 0 22px 50px rgba(91,61,245,.22);
  overflow:hidden;
  position:relative;
}
.siaga-page-hero:before {
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  right:-80px;
  top:-110px;
  background:rgba(255,255,255,.16);
}
.siaga-page-hero h1 { font-size:1.35rem; font-weight:800; margin:0; }
.siaga-page-hero p { margin:.35rem 0 0; opacity:.88; }
.card,
.modal-content {
  border:0!important;
  border-radius:22px!important;
  box-shadow: 0 18px 45px rgba(31,41,55,.08)!important;
}
.card-header,
.modal-header {
  border-bottom:1px solid var(--siaga-border)!important;
  background: rgba(255,255,255,.72)!important;
  border-radius:22px 22px 0 0!important;
  font-weight:800;
}
.btn { border-radius:14px!important; font-weight:700; }
.btn-primary,
.btn-success {
  border:0!important;
  background: linear-gradient(135deg, var(--siaga-primary), var(--siaga-accent))!important;
  box-shadow:0 12px 28px rgba(91,61,245,.22);
}
.btn-danger { border:0!important; background:linear-gradient(135deg,#ef4444,#f97316)!important; }
.form-control, .custom-select, select.form-control {
  border-radius:14px!important;
  border:1px solid rgba(31,41,55,.12)!important;
  min-height:42px;
}
.form-control:focus, .custom-select:focus, select.form-control:focus {
  border-color:rgba(91,61,245,.55)!important;
  box-shadow:0 0 0 .2rem rgba(91,61,245,.12)!important;
}
.main-footer {
  border-top:1px solid var(--siaga-border)!important;
  background:rgba(255,255,255,.74)!important;
  backdrop-filter: blur(14px);
}
::-webkit-scrollbar { width:8px; height:8px; }
::-webkit-scrollbar-track { background:rgba(31,41,55,.06); border-radius:8px; }
::-webkit-scrollbar-thumb { background:rgba(91,61,245,.35); border-radius:8px; }
::-webkit-scrollbar-thumb:hover { background:rgba(91,61,245,.55); }

/* Login */
.login-modern { overflow-x:hidden; }
.login-shell { min-height:100vh; display:flex; align-items:stretch; }
.login-visual {
  flex:1.15;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(32,23,76,.96), rgba(91,61,245,.9)),
    url('../img/paris.png') center/cover no-repeat;
}
.login-visual:before,
.login-visual:after {
  content:""; position:absolute; border-radius:999px; background:rgba(255,255,255,.12);
}
.login-visual:before { width:420px; height:420px; left:-120px; bottom:-160px; }
.login-visual:after { width:280px; height:280px; right:-90px; top:-70px; }
.login-brand { position:relative; z-index:2; max-width:640px; }
.login-brand img { width:118px; height:118px; object-fit:contain; filter:drop-shadow(0 18px 26px rgba(0,0,0,.25)); }
.login-brand h1 { font-size:clamp(2rem, 4vw, 4.25rem); font-weight:900; line-height:1.03; margin:26px 0 16px; letter-spacing:-.04em; }
.login-brand p { font-size:1.08rem; opacity:.86; max-width:520px; }
.login-badges { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.login-badge { padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(10px); font-weight:700; }
.login-panel { flex:.85; display:flex; align-items:center; justify-content:center; padding:42px 28px; }
.login-card { width:100%; max-width:430px; background:rgba(255,255,255,.82); backdrop-filter:blur(18px); border:1px solid rgba(255,255,255,.7); border-radius:32px; box-shadow:0 28px 70px rgba(31,41,55,.16); padding:38px; }
.login-card h3 { font-weight:900; letter-spacing:-.02em; margin-bottom:8px; }
.login-card .subtitle { color:var(--siaga-muted); margin-bottom:28px; }
.login-input { position:relative; margin-bottom:16px; }
.login-input i { position:absolute; left:16px; top:50%; transform:translateY(-50%); color:var(--siaga-primary); }
.login-input .form-control { padding-left:46px; height:50px; border-radius:18px!important; background:#fff; }
.login-submit { height:50px; border-radius:18px!important; font-size:1rem; }
@media (max-width: 900px) {
  .login-shell { display:block; }
  .login-visual { min-height:38vh; padding:34px 24px; }
  .login-panel { padding:24px 18px; }
}

/* === SIAGA Quiet Luxury Residential 2026 === */
:root{
  --siaga-primary:#21372f;
  --siaga-primary-dark:#16251f;
  --siaga-accent:#b8a47a;
  --siaga-bg:#f5f3ee;
  --siaga-card:#fffdf8;
  --siaga-text:#1f2924;
  --siaga-muted:#7b817d;
  --siaga-border:rgba(33,55,47,.11);
  --siaga-shadow:0 18px 48px rgba(39,48,42,.08);
  --siaga-shadow-soft:0 8px 24px rgba(39,48,42,.055);
}
body.siaga-modern,body.login-modern{
  font-family:Inter,"Nunito","Source Sans Pro",Arial,sans-serif;
  background:linear-gradient(180deg,#f8f7f3 0%,#f3f0e9 100%);
  color:var(--siaga-text);
}
.siaga-navbar{
  background:rgba(250,249,246,.92)!important;
  border-bottom:1px solid rgba(33,55,47,.08);
  box-shadow:none!important;
  backdrop-filter:blur(18px);
}
.siaga-navbar .nav-link{color:#34433c!important}.siaga-navbar .nav-link:hover{color:#111d18!important}
.siaga-sidebar{
  background:linear-gradient(180deg,#182720 0%,#20342b 56%,#142019 100%)!important;
  box-shadow:8px 0 32px rgba(22,37,31,.13)!important;
}
.siaga-sidebar .brand-link{height:68px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)!important;background:transparent!important}
.siaga-sidebar .brand-image{box-shadow:none!important;background:#f7f4ec;padding:2px}
.siaga-sidebar .brand-text{font-size:1rem;font-weight:700!important;letter-spacing:.14em;text-transform:uppercase}
.siaga-sidebar .nav-sidebar .nav-link{border-radius:12px;margin:3px 8px;padding:.72rem .85rem;color:rgba(255,255,255,.72)!important}
.siaga-sidebar .nav-sidebar .nav-link:hover,.siaga-sidebar .nav-sidebar .nav-link.active{background:rgba(255,255,255,.105)!important;color:#fff!important;transform:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.siaga-sidebar .nav-icon{font-size:.95rem!important;color:#d7c9aa}.siaga-sidebar .user-panel .info a{color:#fff!important}.siaga-sidebar .user-panel small{color:rgba(255,255,255,.55)}
.content-wrapper{background:transparent!important;min-height:calc(100vh - 57px)!important}.content{padding-bottom:92px!important}
.siaga-page-hero{
  margin:12px auto 4px;padding:20px 24px;border-radius:22px;
  background:linear-gradient(135deg,#21372f 0%,#314d41 72%,#6e745d 100%);color:#fff;
  box-shadow:0 16px 38px rgba(33,55,47,.15);min-height:104px;display:flex;flex-direction:column;justify-content:center
}
.siaga-page-hero:before{width:240px;height:240px;right:-60px;top:-120px;background:rgba(255,255,255,.055)}
.siaga-page-hero:after{content:"";position:absolute;width:120px;height:120px;right:110px;bottom:-80px;border:1px solid rgba(255,255,255,.11);border-radius:50%}
.siaga-page-hero h1{font-size:clamp(1.35rem,2vw,1.8rem);font-weight:700;letter-spacing:-.025em}.siaga-page-hero p{opacity:.7;font-size:.94rem}
.card,.modal-content{border:1px solid var(--siaga-border)!important;border-radius:20px!important;box-shadow:var(--siaga-shadow-soft)!important;background:rgba(255,253,248,.96)!important}
.card-header,.modal-header{border-bottom:1px solid var(--siaga-border)!important;background:transparent!important;border-radius:20px 20px 0 0!important;padding:1rem 1.2rem}
.card-title{font-weight:700!important;letter-spacing:-.015em}.modal-title{font-weight:700}
.btn{border-radius:12px!important;font-weight:650;letter-spacing:.01em}.btn-primary,.btn-success{border:1px solid #21372f!important;background:#21372f!important;box-shadow:none!important}.btn-primary:hover,.btn-success:hover{background:#172820!important}.btn-danger{background:#a65349!important;border-color:#a65349!important}.btn-info{background:#62796f!important;border-color:#62796f!important}
.form-control,.custom-select,select.form-control{border-radius:12px!important;border:1px solid rgba(33,55,47,.14)!important;min-height:44px;background:#fff!important;color:#25322c}
.form-control:focus,.custom-select:focus,select.form-control:focus{border-color:#7a8d82!important;box-shadow:0 0 0 .18rem rgba(33,55,47,.08)!important}
label{font-weight:650;color:#445149;font-size:.92rem}.table{color:#334139}.table thead th{border-bottom:1px solid rgba(33,55,47,.12)!important;border-top:0!important;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:#7b817d}.table td{vertical-align:middle;border-top:1px solid rgba(33,55,47,.075)!important}
.dataTables_wrapper .dataTables_filter input{border-radius:10px!important;border:1px solid rgba(33,55,47,.15)!important;padding:.35rem .65rem}.page-item.active .page-link{background:#21372f!important;border-color:#21372f!important}.page-link{color:#415a4e}
.main-footer{background:transparent!important;border-top:0!important;color:#8b908c;font-size:.88rem;padding-bottom:80px}

/* dashboard */
.premium-container{max-width:1480px;padding-bottom:24px}.dashboard-welcome{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.dashboard-welcome h2{font-weight:700;letter-spacing:-.035em;margin:0;color:#1e2c25}.dashboard-welcome p{margin:.35rem 0 0;color:#7b817d}.eyebrow{display:block;font-size:.68rem;font-weight:800;letter-spacing:.16em;color:#a08d66;margin-bottom:.35rem}.premium-kpi-row{margin-left:-7px;margin-right:-7px}.premium-kpi-row>[class*="col-"]{padding-left:7px;padding-right:7px;margin-bottom:14px}.premium-kpi{height:100%;min-height:118px;background:rgba(255,253,248,.96);border:1px solid var(--siaga-border);border-radius:18px;box-shadow:var(--siaga-shadow-soft);padding:18px;display:flex;align-items:center;gap:14px}.kpi-icon{width:44px;height:44px;border-radius:14px;background:#edf0ea;color:#385448;display:flex;align-items:center;justify-content:center;font-size:1.05rem}.premium-kpi small{display:block;color:#8a8e8a;font-size:.76rem;text-transform:uppercase;letter-spacing:.07em}.premium-kpi strong{display:block;font-size:1.7rem;line-height:1.1;margin-top:3px;color:#1f2d27;font-weight:700}.premium-card{overflow:hidden}.premium-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.premium-action{display:block;padding:18px;border-radius:16px;background:#fff;border:1px solid rgba(33,55,47,.09);color:#25342d!important;text-decoration:none!important;transition:.18s ease}.premium-action:hover{transform:translateY(-2px);box-shadow:var(--siaga-shadow-soft);border-color:rgba(33,55,47,.18)}.premium-action i{display:block;width:38px;height:38px;border-radius:12px;background:#eef1eb;color:#385448;text-align:center;line-height:38px;margin-bottom:12px}.premium-action b{display:block;font-size:.98rem}.premium-action small{display:block;color:#858b87;margin-top:4px;line-height:1.35}

/* resident services */
.resident-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#f6f2e8,#fbfaf7);border:1px solid rgba(145,126,86,.14);padding:26px;border-radius:22px}.resident-intro h2{font-size:clamp(1.55rem,3vw,2.35rem);font-weight:700;letter-spacing:-.045em;max-width:760px;margin:0;color:#1f2d27}.resident-intro p{max-width:780px;color:#777e79;margin:.7rem 0 0}.premium-btn{background:#21372f!important;border-color:#21372f!important;color:#fff!important;box-shadow:none!important;white-space:nowrap}.service-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.service-tile{border:1px solid var(--siaga-border);background:#fffdf8;border-radius:18px;padding:18px;text-align:left;cursor:pointer;color:#26362e;transition:.18s ease}.service-tile:hover{transform:translateY(-2px);box-shadow:var(--siaga-shadow-soft)}.service-tile span{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#edf0ea;border-radius:13px;color:#3b5549;margin-bottom:14px}.service-tile b,.service-tile small{display:block}.service-tile small{color:#8b908d;margin-top:4px}.premium-list-item{display:flex;align-items:flex-start;gap:14px;padding:17px 20px;border-top:1px solid rgba(33,55,47,.075)}.premium-list-item:first-child{border-top:0}.list-icon{flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:#eff1ec;color:#3a5548;display:flex;align-items:center;justify-content:center}.list-main{min-width:0;flex:1}.list-main>small{display:block;color:#8b908d;margin-top:4px}.list-main p{margin:.6rem 0 0;color:#59635e}.gap-8{gap:8px}.service-kind,.status-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.68rem;font-weight:700}.service-kind{background:#f0ede5;color:#74664a}.status-pill{background:#ecefeb;color:#5e6862}.status-disetujui,.status-selesai{background:#e5f0e9;color:#47705b}.status-diproses{background:#f4eddc;color:#876c32}.status-dibatalkan{background:#f4e4e2;color:#98564f}.inline-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.inline-meta span{font-size:.78rem;color:#66716b;background:#f3f4f1;border-radius:8px;padding:5px 8px}.inline-meta i{margin-right:6px}.premium-empty{text-align:center;padding:58px 20px;color:#949994}.premium-empty i{display:block;font-size:1.8rem;margin-bottom:12px;color:#b2ab9b}.premium-empty b,.premium-empty span{display:block}.premium-alert{border-radius:14px;border:1px solid rgba(174,135,51,.18)}
.kind-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.kind-selector label{margin:0;cursor:pointer}.kind-selector input{display:none}.kind-selector span{display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;min-height:48px;border:1px solid rgba(33,55,47,.13);border-radius:12px;background:#fff;color:#657069;font-size:.84rem;padding:7px}.kind-selector input:checked+span{background:#21372f;color:#fff;border-color:#21372f}.premium-label{text-transform:uppercase;font-size:.7rem;letter-spacing:.08em;color:#8d8f89}.premium-modal .modal-body{padding:1.25rem 1.4rem}.premium-modal .modal-footer{border-top:1px solid var(--siaga-border)}

/* long forms: calmer progressive disclosure */
#frm_warga .card.card-outline{border:1px solid rgba(33,55,47,.10)!important;margin-bottom:10px!important;box-shadow:none!important;overflow:hidden}#frm_warga .card.card-outline>.card-header{cursor:pointer;padding:.95rem 1rem!important}#frm_warga .card.card-outline>.card-header:after{content:"\f078";font-family:"Font Awesome 5 Free";font-weight:900;float:right;color:#9b9f9c;transition:.2s}#frm_warga .card.card-outline.collapsed-section>.card-header:after{transform:rotate(-90deg)}#frm_warga .card.card-outline.collapsed-section>.card-body{display:none}#frm_warga .card.card-outline:first-of-type>.card-body{display:block}.modal-xl{max-width:1040px}.modal-body.form{background:#f7f6f2}.modal-footer{border-top:1px solid rgba(33,55,47,.08)}

/* mobile bottom navigation */
.siaga-bottom-nav{display:none}.bottom-more-sheet{display:none}
@media(max-width:991.98px){
 body.siaga-modern{font-size:15px}.main-sidebar{display:none!important}.content-wrapper,.main-header,.main-footer{margin-left:0!important}.main-header{position:sticky;top:0;z-index:1030}.main-header [data-widget="pushmenu"]{display:none}.content-header{padding:8px 8px 0}.content{padding:6px 8px 92px!important}.siaga-page-hero{border-radius:18px;padding:18px 18px;min-height:92px}.siaga-page-hero p{font-size:.84rem}.main-footer{display:none}.siaga-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:10px;right:10px;bottom:10px;z-index:1045;background:rgba(252,251,247,.94);border:1px solid rgba(33,55,47,.11);border-radius:20px;padding:7px 5px calc(7px + env(safe-area-inset-bottom));box-shadow:0 18px 48px rgba(31,42,36,.18);backdrop-filter:blur(18px)}.siaga-bottom-nav a,.siaga-bottom-nav button{border:0;background:transparent;color:#7c837e;text-align:center;text-decoration:none!important;padding:4px 2px;font-size:.66rem;font-weight:650}.siaga-bottom-nav i{display:block;font-size:1.08rem;margin-bottom:3px}.siaga-bottom-nav .active{color:#21372f}.siaga-bottom-nav .primary-bottom i{width:35px;height:35px;line-height:35px;border-radius:12px;background:#21372f;color:#fff;margin:-10px auto 3px}.bottom-more-sheet{position:fixed;display:block;z-index:1060;left:10px;right:10px;bottom:88px;background:#fffdf9;border:1px solid var(--siaga-border);border-radius:20px;box-shadow:0 24px 60px rgba(31,42,36,.22);padding:10px;transform:translateY(20px);opacity:0;visibility:hidden;transition:.18s}.bottom-more-sheet.show{transform:none;opacity:1;visibility:visible}.bottom-more-sheet a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;color:#314038;text-decoration:none}.bottom-more-sheet a:hover{background:#f3f2ed}.bottom-more-sheet i{width:24px;text-align:center;color:#806f4d}.premium-action-grid,.service-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.resident-intro{align-items:flex-start;flex-direction:column}.premium-container{padding-left:4px;padding-right:4px}.kind-selector{grid-template-columns:repeat(2,1fr)}.modal-dialog{margin:.65rem}.modal-content{border-radius:18px!important}.dashboard-welcome{align-items:flex-start;flex-direction:column}.table-responsive{border-radius:14px}
}
@media(max-width:575.98px){.premium-kpi{min-height:104px;padding:14px;gap:10px}.kpi-icon{width:38px;height:38px}.premium-kpi strong{font-size:1.45rem}.premium-action-grid,.service-shortcuts{grid-template-columns:1fr 1fr}.premium-action,.service-tile{padding:14px}.resident-intro{padding:20px}.premium-list-item{padding:14px 12px}.list-icon{width:36px;height:36px;flex-basis:36px}.login-card{padding:26px 22px!important}}

/* premium login */
.login-shell{background:#f3f0e9}.login-visual{background:linear-gradient(135deg,rgba(24,39,32,.96),rgba(43,68,57,.91)),url('../img/paris.png') center/cover no-repeat}.login-visual:before,.login-visual:after{background:transparent;border:1px solid rgba(255,255,255,.09)}.login-brand h1{font-weight:700;letter-spacing:-.05em}.login-brand p{opacity:.72}.login-badge{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.09);font-weight:600}.login-panel{background:#f7f5f0}.login-card{background:#fffdf9;border:1px solid rgba(33,55,47,.09);box-shadow:0 30px 70px rgba(33,55,47,.10);border-radius:26px}.login-card h3{font-weight:700}.login-input i{color:#75684c}.login-submit{background:#21372f!important}
