:root{color:#263238;background:#f4f6f8;--ink: #263238;--muted: #64748b;--line: #d8dee6;--line-soft: #e8edf2;--paper: #ffffff;--canvas: #f4f6f8;--soft: #eef1f4;--brand: #7567a8;--brand-2: #9184bd;--brand-soft: #f0edf8;--accent: #c58b52;--accent-soft: #faf3eb;--blue: #637fa8;--blue-soft: #edf2f8;--red: #b85463;--red-soft: #faecef;--shadow: 0 4px 14px rgba(38, 50, 56, .07);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--canvas)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app{min-height:100vh;display:grid;grid-template-columns:292px minmax(0,1fr)}.workspace{min-width:0;padding:28px}.sidebar{min-height:100vh;position:sticky;top:0;align-self:start;display:flex;flex-direction:column;padding:22px 18px;border-right:1px solid rgba(222,219,202,.9);background:#fffdf7e0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sidebar-brand{padding:8px 8px 18px;border-bottom:1px solid var(--line-soft)}.brand-mark{width:52px;height:52px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:var(--paper);box-shadow:0 10px 24px #1f5a491f}.brand-lockup{display:flex;align-items:center;gap:12px}.title{margin:0;font-size:21px;font-weight:760;letter-spacing:0}.page-title{margin:0;font-size:26px;font-weight:760;letter-spacing:0}.subtitle{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.side-nav{display:grid;gap:6px;padding:18px 0}.side-link{width:100%;min-height:42px;border:1px solid transparent;border-radius:10px;background:transparent;color:#50645a;display:flex;align-items:center;gap:10px;padding:10px 12px;font-weight:650;text-align:left}.side-link:hover{background:#f4f1e5;color:var(--ink)}.side-link.active{background:var(--brand);border-color:var(--brand);color:#fffdf7;box-shadow:0 12px 28px #1f5a492e}.sidebar-footer{margin-top:auto;display:grid;gap:10px;border-top:1px solid var(--line-soft);padding-top:14px}.copyright-card{display:grid;gap:3px;padding-top:2px;font-size:12px;color:var(--muted);line-height:1.35}.copyright-card strong{color:var(--ink);font-size:12px;font-weight:760}.copyright-card span{color:var(--muted);font-size:11.5px}.logout{color:var(--red)}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.page-intro{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:18px;padding:18px 20px;background:linear-gradient(135deg,#fffdf7f7,#eff4e8eb),radial-gradient(circle at 94% 18%,rgba(185,161,91,.16),transparent 28%);border:1px solid rgba(222,219,202,.9);border-radius:16px;box-shadow:var(--shadow)}.page-intro h3{margin:3px 0 5px;font-size:18px;letter-spacing:0}.page-intro p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;max-width:760px}.intro-kicker{color:var(--accent);font-size:11px;font-weight:800;text-transform:uppercase}.intro-metrics{display:flex;gap:10px;flex-shrink:0}.intro-metrics span{min-width:76px;display:grid;gap:1px;justify-items:center;padding:10px 12px;border-radius:12px;background:#fffdf7c7;border:1px solid var(--line-soft);color:var(--muted);font-size:11px}.intro-metrics strong{color:#173a31;font-size:18px}.tabs,.toolbar,.actions,.row-actions,.chip-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fffdf7c2;color:var(--muted);border-radius:999px;padding:7px 14px;font-size:13px;min-height:34px}.chip.active{background:var(--brand-soft);color:var(--brand);border-color:#1f5a493d;font-weight:700}.tab,.btn,.icon-btn{border:1px solid var(--line);background:#fffdf7e6;color:var(--ink);border-radius:9px;padding:8px 12px;min-height:36px;box-shadow:0 1px #ffffffbf inset;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .06s ease}.tab:not(.active):not(:disabled):hover,.btn:not(.primary):not(:disabled):hover,.icon-btn:not(:disabled):hover{background:#fff;border-color:var(--brand-2);box-shadow:0 6px 16px #282d2414}.tab:not(:disabled):active,.btn:not(:disabled):active,.icon-btn:not(:disabled):active{transform:translateY(1px);box-shadow:none}.btn.primary:not(:disabled):hover,.primary-action:not(:disabled):hover{filter:brightness(1.08)}.spin{animation:sakuna-spin .8s linear infinite}@keyframes sakuna-spin{to{transform:rotate(360deg)}}.tab.active,.btn.primary,.primary-action{background:var(--brand);border-color:var(--brand);color:#fffdf7;font-weight:700}.btn.compact{min-height:30px;padding:5px 10px;font-size:12px}.btn.danger{background:var(--red);border-color:var(--red);color:#fff}.btn.ghost{border-color:transparent;background:transparent;box-shadow:none}.icon-btn{display:inline-flex;align-items:center;gap:6px}.user-menu{position:relative}.user-trigger{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fffdf7f0;display:flex;align-items:center;gap:9px;padding:6px 10px 6px 7px;box-shadow:0 8px 20px #282d240f}.avatar{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-soft);color:var(--brand)}.user-copy{display:grid;gap:1px;text-align:left}.user-copy strong{font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy em{font-style:normal;color:var(--muted);font-size:11px}.user-popover{position:absolute;right:0;top:calc(100% + 8px);width:210px;z-index:8;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px #282d2424;padding:6px}.user-popover button{width:100%;border:0;background:transparent;border-radius:8px;padding:9px 10px;display:flex;gap:8px;align-items:center;text-align:left}.user-popover button:hover{background:#f5f2e7}.user-popover button.danger{color:var(--red)}.subtabs{display:flex;gap:8px;padding:5px;background:#fffdf7b8;border:1px solid var(--line);border-radius:13px;width:fit-content;flex-wrap:wrap}.subtab{border:0;background:transparent;color:var(--muted);border-radius:9px;padding:9px 13px;font-weight:720;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.side-link svg,.subtab svg,.icon-btn svg,.btn svg,.table-icon-btn svg,.user-popover svg{flex:0 0 auto;stroke-width:1.9}.side-link.active svg,.subtab.active svg{stroke-width:2.15}.subtab.active{background:var(--brand);color:#fffdf7;box-shadow:0 10px 24px #1f5a4929}.sop-tabs{width:min(520px,100%)}.sop-tabs .subtab{flex:1;min-width:160px}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0}.card,.panel{background:#fffdf7f0;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.card{padding:18px}.stat-label{color:var(--muted);font-size:12px;margin-bottom:7px}.stat-value{font-size:28px;font-weight:760;letter-spacing:0}.stat-value.amber{color:#806f48}.stat-value.green{color:var(--brand)}.stat-value.red{color:var(--red)}.panel{overflow:hidden}.panel-head{display:flex;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line-soft);align-items:center}.panel-title{margin:0;font-size:15px;font-weight:760}.panel-body{padding:18px}.table-wrap{overflow-x:auto}table{width:100%;min-width:640px;table-layout:fixed;border-collapse:collapse;font-size:12.5px}th,td{padding:11px 10px;text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:middle;overflow-wrap:anywhere}tbody tr{cursor:pointer;transition:background .15s ease}tbody tr:hover{background:#f8f5ea}tbody tr.returned-row{background:#fff4f1;box-shadow:inset 3px 0 0 var(--red)}tbody tr.returned-row:hover{background:#ffede8}th{color:var(--muted);font-size:12px;font-weight:700;background:#f8f6ed;position:sticky;top:0;z-index:1;height:54px}td{overflow-wrap:anywhere;vertical-align:top}th{overflow-wrap:normal;word-break:normal;white-space:normal;line-height:1.25}.sort-toggle{width:22px;height:28px;border:0;background:transparent;color:inherit;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:850;flex-shrink:0}.column-head.active .sort-toggle{color:var(--brand)}.column-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:center;min-width:0;min-height:32px;width:100%}.plain-column-head{display:flex;align-items:center;min-height:32px;min-width:0;width:100%}.column-label{min-width:0;white-space:normal;overflow-wrap:normal;line-height:1.25}.sort-state{color:var(--brand);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:0;flex-shrink:0}.filter-cell{position:relative;display:inline-flex}.column-menu-trigger{width:28px;height:28px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:2px;padding:0;flex-shrink:0}.column-menu-trigger:hover,.column-menu-trigger.active{background:var(--brand-soft);border-color:#1f5a4933;color:var(--brand)}.column-menu-trigger.active{background:var(--brand);border-color:var(--brand);color:#fffdf7;box-shadow:0 7px 16px #1f5a4933}.column-menu-trigger span{position:absolute;top:2px;right:2px;min-width:6px;width:6px;height:6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fffdf7;font-size:0;border:0}.filter-popover{position:fixed;width:320px;max-width:calc(100vw - 24px);z-index:40;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 60px #282d2429;padding:10px;color:var(--ink)}.filter-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:2px 2px 10px;border-bottom:1px solid var(--line-soft);margin-bottom:10px}.filter-title strong{color:var(--ink);font-size:13px}.filter-title span{color:var(--muted);font-size:11px;white-space:nowrap}.filter-search{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:7px 9px;background:#fffef8}.filter-search input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:13px}.filter-options{max-height:230px;overflow:auto;display:grid;gap:2px;padding:8px 0}.filter-list-head{display:grid;grid-template-columns:22px minmax(0,1fr) 58px;gap:8px;padding:10px 6px 2px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;border-bottom:1px solid var(--line-soft)}.filter-list-head span:last-child{text-align:right}.filter-option{display:grid;grid-template-columns:22px minmax(0,1fr) 58px;align-items:start;gap:8px;padding:7px 6px;border-radius:8px;font-size:12px;color:var(--ink)}.filter-option:hover{background:#f5f2e7}.filter-option:has(input:checked){background:var(--brand-soft);color:var(--brand)}.filter-option.empty-value{color:#806f48;background:#f7f4ec;border:1px dashed rgba(185,161,91,.45)}.filter-option span{white-space:normal;overflow-wrap:anywhere;line-height:1.35}.filter-option em{font-style:normal;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.filter-empty{padding:16px 8px;color:var(--muted);font-size:12px;text-align:center}.filter-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line-soft);padding-top:9px}.num{text-align:right;white-space:normal;font-variant-numeric:tabular-nums}td.num{min-width:136px;white-space:nowrap}.num .sort-head{text-align:right;justify-content:flex-end}.num .column-head{grid-template-columns:minmax(0,1fr) auto auto}.num .column-label,.numeric-body{text-align:right}.numeric-body .column-head,.numeric-body .column-label{text-align:left}.row-number-col,.row-number{width:48px;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.row-number-col .plain-column-head{justify-content:flex-end}.action-col .plain-column-head{justify-content:center}.action-col{width:58px;text-align:left}.dpa-no-col{width:48px;min-width:48px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.dpa-no-col .plain-column-head{justify-content:flex-end}.text-cell{line-height:1.42;min-width:120px;min-width:0}.wide-cell{min-width:220px;max-width:360px}.dpa-table .dpa-col-no{width:3.5%}.dpa-table .dpa-col-kegiatan{width:17%}.dpa-table .dpa-col-bidang{width:11%}.dpa-table .dpa-col-pptk{width:16%}.dpa-table .dpa-col-source{width:9%}.dpa-table .dpa-col-pagu{width:11.5%}.dpa-table .dpa-col-semester{width:14%}.dpa-table .dpa-col-action{width:5%}.dpa-table th{padding-left:8px;padding-right:8px}.dpa-table .column-head{grid-template-columns:minmax(0,1fr) 22px 20px;gap:4px}.dpa-table .column-menu-trigger{width:22px;height:26px;border-radius:7px}.dpa-table .sort-toggle{width:20px;height:26px}.dpa-table .column-label{font-size:11.5px;font-weight:780}.pagu-amount-cell{white-space:nowrap;font-weight:720;color:var(--ink);min-width:132px}.identity-stack{display:grid;gap:7px;min-width:0;max-width:100%;overflow:hidden}.identity-stack.compact{gap:3px}.identity-label,.identity-line span{display:block;color:var(--muted);font-size:10.5px;font-weight:780;line-height:1.15;text-transform:uppercase;letter-spacing:0}.identity-name{color:var(--ink);font-weight:680;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.identity-line strong{display:block;color:var(--ink);font-size:12px;font-weight:620;line-height:1.32}.identity-line strong{font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere}.nip-cell{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.source-fund-cell{color:var(--ink);font-size:12px;line-height:1.38;font-weight:680;white-space:nowrap}.bidang-cell{line-height:1.35}.cash-flow-note{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--line-soft);background:#fbf8ec}.cash-flow-note>div:first-child{display:grid;gap:3px}.cash-flow-note strong{color:var(--brand);font-size:12px;font-weight:820}.cash-flow-note span{color:var(--muted);font-size:12px;line-height:1.4}.cash-flow-steps{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.cash-flow-steps .badge{white-space:nowrap}.dpa-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#fffdf7c7,#faf7ed80)}.dpa-summary-card{display:grid;gap:5px;min-height:104px;align-content:start;border:1px solid rgba(159,140,95,.18);border-radius:12px;padding:12px;background:#fffdf7e6;box-shadow:0 10px 24px #282d240e}.dpa-summary-card.primary{background:#eef7f1;border-color:#1f5a4929}.dpa-summary-card.available{background:#f5f2fb;border-color:#bc852a33}.dpa-summary-card span{color:var(--muted);font-size:11px;font-weight:820;line-height:1.25;text-transform:uppercase;letter-spacing:0}.dpa-summary-card strong{color:var(--ink);font-size:18px;font-weight:820;line-height:1.2;font-variant-numeric:tabular-nums}.dpa-summary-card em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.35}.dpa-summary-card.summary-drilldown{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-color:#7567a83d;background:#f7f5fb;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.dpa-summary-card.summary-drilldown:hover{transform:translateY(-1px);border-color:var(--brand);box-shadow:0 8px 20px #7567a81f}.dpa-summary-card.summary-drilldown:focus-visible{outline:3px solid rgba(117,103,168,.2);outline-offset:2px}.dpa-summary-card.summary-drilldown small{color:var(--brand);font-size:11px;font-weight:800}.realization-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.realization-detail-summary>div{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:8px;background:#fff}.realization-detail-summary>div:nth-child(2){border-top-color:#2e7d32}.realization-detail-summary>div:nth-child(3){border-top-color:var(--accent)}.realization-detail-summary span{color:var(--muted);font-size:11px;font-weight:760;text-transform:uppercase}.realization-detail-summary strong{font-size:18px;font-variant-numeric:tabular-nums}.table-icon-btn{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fffdf7eb;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.table-icon-btn:hover{color:var(--brand);border-color:#1f5a4947;background:var(--brand-soft)}.config-table .config-col-no{width:52px}.config-table .config-col-action{width:62px}.bidang-table .bidang-col-name{width:88%}.pptk-table .pptk-col-name{width:25%}.pptk-table .pptk-col-nip{width:21%}.pptk-table .pptk-col-position{width:34%}.pptk-table .pptk-col-status{width:10%}.users-table .users-col-name{width:24%}.users-table .users-col-username,.users-table .users-col-role{width:18%}.users-table .users-col-bidang{width:24%}.users-table .users-col-status{width:10%}.sessions-table .sessions-col-user{width:24%}.sessions-table .sessions-col-time{width:16%}.sessions-table .sessions-col-where{width:13%}.sessions-table .sessions-col-device{width:19%}.sessions-table .sessions-col-status{width:10%}.strong-cell{color:var(--ink);font-weight:720}.nowrap-cell{white-space:nowrap}.mono-cell{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.role-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:#f2efe3;color:#43584f;font-size:12px;font-weight:760;line-height:1.2}.session-state{display:inline-flex;align-items:center;justify-content:center;min-width:82px;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:780;line-height:1.2}.session-state.active{background:var(--brand-soft);color:var(--brand)}.session-state.ended{background:#f2efe3;color:var(--muted)}.budget-cell{min-width:180px}.budget-cell-head{display:grid;gap:4px;justify-items:start;margin-bottom:7px}.budget-cell-head>span{color:var(--muted);font-size:12px;white-space:nowrap}.budget-lines{display:grid;gap:2px;color:var(--muted);font-size:12px;line-height:1.35}.budget-state{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:820}.budget-state:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.9}.budget-state.ok{color:#24704f}.budget-state.warning{color:#806f48}.budget-state.danger{color:#b5453b}.budget-state.neutral{color:#7b8179}.process-cell{min-width:110px;line-height:1.35}.status-cell{min-width:150px}.returned-meta{display:grid;gap:2px;margin-top:7px;color:var(--red);font-size:11.5px;line-height:1.3}.returned-meta strong{font-weight:800}.returned-meta span{color:#8d4c45}.table-wrap .badge{white-space:normal;line-height:1.2;max-width:190px}.muted{color:var(--muted)}.small{font-size:12px}.link{background:none;border:none;color:var(--brand);text-align:left;padding:0;font:inherit;cursor:pointer}.link:hover{text-decoration:underline}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:750;white-space:nowrap;border:1px solid transparent}.badge.green{background:#dcefe4;color:var(--brand);border-color:#1f5a4929}.badge.amber{background:#f3efe5;color:#7a611f;border-color:#b9a15b33}.badge.blue{background:#e3edf8;color:var(--blue);border-color:#3867a629}.badge.gray{background:var(--soft);color:var(--muted);border-color:#6f786f1f}.badge.red{background:#f8dfda;color:var(--red);border-color:#b5453b2e}.progress{height:7px;background:#ebe7d8;display:flex;border-radius:999px;overflow:hidden;margin:7px 0;min-width:180px}.semester-cell{min-width:190px}.semester-cell .icon-btn{min-height:28px;padding:6px 8px;font-size:11.5px;white-space:normal}.kas-status-block{display:grid;gap:5px;justify-items:start}.kas-status-block>span{color:var(--muted);font-size:10.5px;font-weight:780;line-height:1.1;text-transform:uppercase;white-space:nowrap}.semester-cell .badge{max-width:none;white-space:nowrap}.semester-cash-state{display:grid;gap:6px;padding:9px;border:1px solid var(--line-soft);border-radius:10px;background:#fffdf8}.semester-cash-state.belum{background:#f8f6ef}.semester-cash-state.diajukan{background:#f5f2fb;border-color:#b9a15b47}.semester-cash-state.tersedia{background:#eef7f1;border-color:#1f5a492e}.semester-cash-state strong{color:var(--ink);font-size:12px;font-weight:780;line-height:1.25}.semester-cash-state p,.semester-cash-state em{margin:0;color:var(--muted);font-size:11.3px;line-height:1.35}.semester-cash-state em{color:#6f6298;font-style:normal;font-weight:680}.cash-action{width:100%;max-width:100%;justify-content:center;text-align:center;line-height:1.15}.cash-doc-link{border:0;background:transparent;color:var(--brand);font-size:11.5px;font-weight:720;padding:0;text-align:left;text-decoration:underline;text-underline-offset:3px}.semester-budget-lines{display:grid;gap:4px;margin-top:8px}.semester-budget-lines span{display:flex;justify-content:space-between;gap:10px;align-items:baseline;color:var(--muted);font-size:11.5px;line-height:1.25}.semester-budget-lines em{font-style:normal;white-space:nowrap}.semester-budget-lines strong{color:var(--ink);font-size:11.5px;font-weight:760;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.progress .realized{background:var(--brand)}.progress .process{background:var(--accent)}.pagination{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;background:#fbf9f0}.page-pill{min-width:58px;text-align:center;color:var(--muted);font-size:12px}.field{display:grid;gap:6px}.field label{color:var(--muted);font-size:12px;font-weight:650}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:9px;padding:10px 11px;width:100%;background:#fffef8;color:var(--ink)}.field textarea{min-height:76px;line-height:1.45;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(31,90,73,.16);border-color:#1f5a497a}.password-field{position:relative;display:flex;align-items:center}.password-field input{padding-right:42px}.password-peek{position:absolute;right:7px;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.password-peek:hover{background:var(--brand-soft);color:var(--brand)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.upload-dropzone{min-height:74px;border:1px dashed rgba(31,90,73,.34);border-radius:12px;background:#fffef8;color:var(--brand);display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;font-size:13px;font-weight:720;text-align:center}.upload-dropzone input{display:none}.modal-backdrop{position:fixed;inset:0;background:#2228205c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:20}.drawer-backdrop{position:fixed;inset:0;background:#22282052;display:flex;justify-content:flex-end;z-index:24}.drawer{width:min(520px,100%);height:100vh;overflow:auto;background:var(--paper);border-left:1px solid var(--line);box-shadow:-24px 0 70px #2228202e;animation:drawer-in .18s ease-out}.drawer.wide{width:min(1180px,100%)}.drawer .modal-body{gap:18px;background:linear-gradient(180deg,#fffdf7,#fbf9ef)}.drawer-section{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fffdf7eb;box-shadow:0 10px 28px #282d240f}.section-title{color:var(--brand);font-size:12px;font-weight:820;text-transform:uppercase;letter-spacing:.02em;padding-bottom:8px;border-bottom:1px solid var(--line-soft)}.field.elevated{gap:7px}.field.elevated label{color:#43584f;font-size:12px;font-weight:780}.field.elevated input,.field.elevated select,.field.elevated textarea{background:#fff;border-color:#d8d2bd;box-shadow:0 1px #ffffffe6 inset,0 8px 20px #282d2409}.field-hint{color:var(--muted);font-size:12px;line-height:1.35;padding:0 2px}.field-note{color:var(--muted);font-size:11px;line-height:1.35}.document-upload-box{display:grid;gap:10px;padding:12px;border:1px solid #d8d2bd;border-radius:12px;background:#fff;box-shadow:0 8px 20px #282d2409}.document-current{display:flex;align-items:flex-start;gap:10px;min-width:0}.document-current svg{color:var(--brand);flex-shrink:0;margin-top:2px}.document-current div{display:grid;gap:3px;min-width:0}.document-current span{color:var(--muted);font-size:11px;font-weight:780;text-transform:uppercase}.document-current strong{color:var(--ink);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.document-current em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.35}.document-actions{display:flex;gap:8px;flex-wrap:wrap}.upload-btn{position:relative;overflow:hidden}.upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-inline{position:relative;overflow:hidden;cursor:pointer}.upload-inline input{position:absolute;inset:0;opacity:0;cursor:pointer}.spj-checklist-preview{display:grid;gap:10px;padding:14px;border:1px solid rgba(31,90,73,.16);border-radius:14px;background:#f4f9f1}.spj-checklist-preview ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.spj-checklist-preview li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:flex-start;color:#3f4d45;font-size:12.5px;line-height:1.4}.spj-checklist-preview li>span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#fffdf8;color:var(--brand);font-size:11px;font-weight:840}.spj-checklist-preview p{margin:1px 0 0}.evidence-upload-list{display:grid;gap:8px}.evidence-upload-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 9px;border:1px solid rgba(31,90,73,.12);border-radius:11px;background:#ffffffad}.evidence-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#fffdf8;color:var(--brand);font-size:11px;font-weight:840}.evidence-copy{min-width:0}.evidence-copy p{margin:0;color:#3f4d45;font-size:12.5px;line-height:1.35}.evidence-copy em{display:block;margin-top:3px;color:var(--muted);font-size:11.5px;font-style:normal;overflow-wrap:anywhere}@keyframes drawer-in{0%{transform:translate(36px);opacity:.72}to{transform:translate(0);opacity:1}}.modal{width:min(760px,100%);max-height:min(800px,92vh);overflow:auto;background:var(--paper);border-radius:16px;border:1px solid var(--line);box-shadow:0 30px 80px #22282038}.modal.slim{width:min(480px,100%)}.modal-head,.modal-body,.modal-foot{padding:18px}.modal-head,.modal-foot{display:flex;justify-content:flex-end;gap:12px;align-items:center}.modal-head{justify-content:space-between;border-bottom:1px solid var(--line-soft);align-items:flex-start}.modal-foot{border-top:1px solid var(--line-soft)}.modal-lead{color:var(--muted);font-size:13px;line-height:1.5;margin:4px 0 0}.modal-note{display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:12px;margin-top:4px}.alert{display:flex;gap:8px;padding:10px 12px;border-radius:10px;background:var(--accent-soft);color:#725d1f;font-size:13px;margin:10px 0}.alert.danger{background:var(--red-soft);color:var(--red)}.profile-grid{display:grid;gap:10px}.profile-grid div{display:grid;gap:4px;padding:12px;border:1px solid var(--line-soft);border-radius:10px;background:#fbf9f0}.profile-grid span{color:var(--muted);font-size:12px}.profile-grid strong{font-size:14px}.budget-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.budget-summary div{display:grid;gap:4px;padding:12px;border-radius:12px;background:#fbf9f0;border:1px solid var(--line-soft)}.budget-summary .budget-card.annual{background:#f7f3e3;border-color:#b9a15b47}.budget-summary .budget-card.semester{background:#eef4ed;border-color:#6f8f783d}.budget-summary .budget-card.available{background:#e5efe8;border-color:#1f5a4947;box-shadow:0 10px 26px #1f5a4914}.budget-summary .budget-card.basis{background:#f7f4ea;border-color:#dedbcaf2}.budget-summary span{color:var(--muted);font-size:12px}.budget-summary strong{font-size:14px;overflow-wrap:anywhere}.budget-summary em{color:var(--muted);font-size:11px;font-style:normal;line-height:1.3}.dppa-remaining-panel{display:grid;grid-template-columns:minmax(240px,1.35fr) repeat(5,minmax(118px,1fr));gap:10px;align-items:stretch;margin-top:12px;padding:12px;border:1px solid rgba(31,90,73,.18);border-radius:14px;background:linear-gradient(135deg,#f1f8f2,#fffdf6)}.dppa-remaining-main,.dppa-remaining-item{display:grid;gap:5px;align-content:center;min-width:0;padding:10px 12px;border-radius:11px;background:#ffffffb8}.dppa-remaining-main{border:1px solid rgba(31,90,73,.18)}.dppa-remaining-main span,.dppa-remaining-item span{color:var(--muted);font-size:11px;font-weight:820;line-height:1.25;text-transform:uppercase}.dppa-remaining-main strong,.dppa-remaining-item strong{color:var(--ink);font-weight:850;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}.dppa-remaining-main strong{color:var(--accent);font-size:18px}.dppa-remaining-item strong{font-size:13px}.semester-budget-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fffdf7;box-shadow:0 10px 28px #282d240d}.semester-budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.semester-budget{display:grid;gap:10px;padding:12px;border:1px solid var(--line-soft);border-radius:12px;background:#fbf9f0}.semester-budget.active{border-color:#1f5a4952;background:var(--brand-soft)}.semester-budget-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.semester-budget-head strong{font-size:13px}.semester-budget-head span{color:var(--muted);font-size:11px;text-align:right}.semester-budget dl{display:grid;gap:7px;margin:0}.semester-budget dl div{display:flex;justify-content:space-between;gap:10px}.semester-budget dt{color:var(--muted);font-size:12px}.semester-budget dd{margin:0;font-size:12px;font-weight:780;text-align:right;font-variant-numeric:tabular-nums}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff}.login-card{width:min(400px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 16px 38px #282d240f}.login-brand{display:grid;justify-items:center;gap:12px;justify-content:center;margin-bottom:24px;text-align:center}.login-mark{width:132px;max-width:68%;height:auto;display:block}.login-wordmark{width:310px;max-width:94%;height:auto;display:block;margin-top:0}.login-tagline{position:relative;margin:4px 0 0;max-width:100%;color:var(--brand);font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,ui-serif,serif;font-size:17px;font-weight:700;line-height:1.25;letter-spacing:.01em;white-space:nowrap}.login-tagline:after{content:"";display:block;width:54px;height:2px;margin:12px auto 0;border-radius:999px;background:linear-gradient(90deg,#b9a15b00,#b9a15bf2,#b9a15b00)}.login-card form{display:grid;gap:14px;margin-top:18px}.login-hint{margin-top:16px;font-size:12px;color:var(--muted);line-height:1.6}.stepper{display:flex;align-items:flex-start;overflow-x:auto;padding:4px 0}.step-node{display:flex;flex-direction:column;align-items:center;min-width:92px;text-align:center;gap:8px}.step-circle{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--soft);color:var(--muted);border:1px solid var(--line);flex-shrink:0}.step-circle.done{background:var(--brand);border-color:var(--brand);color:#fffdf7}.step-circle.current{background:var(--accent-soft);border-color:var(--accent);color:#6f6298}.step-circle.returned{background:var(--red-soft);border-color:var(--red);color:var(--red)}.step-name{font-size:13px;font-weight:700}.step-meta{font-size:11px;color:var(--muted)}.step-line{flex:1;height:2px;background:var(--line);margin:19px 4px 0;min-width:24px}.step-line.done{background:var(--brand)}.workflow-action-note{display:grid;gap:8px;margin-top:14px;padding:12px 14px;border:1px solid rgba(31,90,73,.14);border-radius:12px;background:#f8fbf4;color:#43584f;font-size:12px;line-height:1.4}.workflow-action-note strong{color:var(--brand);font-size:12px;font-weight:850}.workflow-action-note span{color:var(--ink)}.workflow-action-note dl{display:grid;gap:5px;margin:0}.workflow-action-note dl div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px}.workflow-action-note dt{color:var(--muted);font-weight:760}.workflow-action-note dd{margin:0;color:#3f4d45}.workflow-action-docs{display:grid;gap:3px;margin:0;padding-left:18px}.history-list{display:grid;gap:2px}.history-item{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-soft);font-size:13px}.history-item:last-child{border-bottom:none}.history-item .action{font-weight:700}.history-item.pending .action{color:#6f6298;font-weight:650}.history-item .note{color:var(--muted);font-size:12px;margin-top:2px}.history-item .when{color:var(--muted);white-space:nowrap;font-size:12px}.attachment-list{display:grid;gap:8px}.attachment-subhead{display:grid;gap:2px;margin:12px 0 8px}.attachment-subhead strong{color:var(--ink);font-size:12.5px;font-weight:820}.attachment-subhead span{color:var(--muted);font-size:12px;line-height:1.35}.spj-evidence-list{display:grid;gap:9px;margin-bottom:12px}.evidence-step-group{overflow:hidden;border:1px solid rgba(31,90,73,.14);border-radius:14px;background:#fffdf8}.evidence-step-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 13px;border-bottom:1px solid var(--line-soft);background:#f8fbf4}.evidence-step-head strong{display:block;color:var(--brand);font-size:12.5px;font-weight:850;line-height:1.25}.evidence-step-head span{display:block;margin-top:3px;color:#4f635a;font-size:12px;line-height:1.35}.evidence-step-head em{align-self:center;white-space:nowrap;color:var(--muted);font-size:11.5px;font-style:normal;font-weight:760}.evidence-step-body{display:grid;gap:8px;padding:10px}.spj-evidence-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px;border:1px solid #e3c7c1;border-radius:12px;background:#fff7f5}.spj-evidence-item.complete{border-color:#1f5a492e;background:#f4f9f1}.spj-evidence-copy{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:flex-start}.spj-evidence-copy>span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#fffdf8;color:var(--muted);font-size:11px;font-weight:840}.spj-evidence-item.complete .spj-evidence-copy>span{background:var(--brand);color:#fffdf8}.spj-evidence-copy strong{display:block;color:var(--ink);font-size:12.5px;line-height:1.35}.spj-evidence-copy small{display:block;margin-bottom:3px;color:var(--brand);font-size:10.5px;font-weight:820;line-height:1.2;text-transform:uppercase}.spj-evidence-copy em{display:block;margin-top:3px;color:var(--muted);font-size:11.5px;font-style:normal;overflow-wrap:anywhere}.spj-evidence-copy code,.attachment-item .name code{display:block;margin-top:4px;color:#6d776f;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10.5px;line-height:1.25;white-space:normal}.attachment-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fbf9f0}.attachment-item .name{display:flex;align-items:center;gap:8px;font-size:13px;min-width:0}.attachment-item .name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone{border:1px dashed #cfcab8;border-radius:12px;padding:26px;text-align:center;color:var(--muted);font-size:13px;cursor:pointer;display:grid;gap:8px;justify-items:center;background:#fbf9f0}.dropzone strong{color:var(--ink);font-size:13px}.dropzone span{max-width:360px;line-height:1.35}.dropzone.dragging{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.workflow{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding:16px}.pencairan-checklist{padding:0 16px 16px}.pencairan-checklist .checklist-card{background:#f8fbf4}.workflow-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.workflow.steps-7{grid-template-columns:repeat(4,minmax(0,1fr))}.workflow-identity{display:flex;flex-wrap:wrap;gap:8px;margin:7px 0 5px}.workflow-identity span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(31,90,73,.14);border-radius:999px;padding:5px 9px;background:#f4f9f1;color:#43584f;font-size:11.5px;line-height:1.2}.workflow-identity strong{color:var(--brand);font-weight:850}.workflow.steps-6{grid-template-columns:repeat(3,minmax(0,1fr))}.step{border:1px solid var(--line);border-radius:12px;display:grid;gap:9px;align-content:start;min-height:156px;padding:13px;background:#fffdf8;box-shadow:0 12px 28px #282d240a}.workflow-role-list,.workflow-role-grid{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.workflow-role-grid{margin:0}.workflow-role-grid.spacious{gap:8px}.workflow-step-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.workflow-step-top span{color:var(--muted);font-size:11px;font-weight:820;text-transform:uppercase}.workflow-step-meta{display:grid;gap:5px;margin-top:auto;color:var(--muted);font-size:12px;line-height:1.35}.workflow-step-meta span{font-weight:760;color:#596a61}.workflow-step-meta em{font-style:normal}.role-check{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:#fbf9f0;color:#43584f;font-size:11.5px;font-weight:740;cursor:pointer}.role-check.selected{border-color:#1f5a4947;background:var(--brand-soft);color:var(--brand)}.role-check input{width:13px;height:13px;accent-color:var(--brand)}.checklist-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;padding:16px}.pencairan-checklist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.checklist-card{display:grid;gap:12px;align-content:start;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fffdf8;box-shadow:0 12px 28px #282d240a}.checklist-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-bottom:10px;border-bottom:1px solid var(--line-soft)}.checklist-card-head strong{color:var(--ink);font-size:13px;line-height:1.3}.checklist-card-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.35}.checklist-card-head span{flex-shrink:0;border-radius:999px;padding:4px 8px;background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:820;white-space:nowrap}.checklist-items{display:grid;gap:8px;margin:0;padding:0;list-style:none}.checklist-items li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:flex-start;color:#3f4d45;font-size:12.5px;line-height:1.42}.checklist-items li>span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#f2efe3;color:var(--muted);font-size:11px;font-weight:820}.checklist-items p{margin:1px 0 0}.step.active{border-color:var(--accent);background:var(--accent-soft)}.step.done{border-color:var(--brand);background:var(--brand-soft)}.detail-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 16px 0}.returned-detail-banner{display:grid;gap:4px;margin:14px 16px 0;padding:12px 14px;border:1px solid rgba(181,69,59,.18);border-radius:12px;background:#fff4f1;color:var(--red);font-size:12px;line-height:1.35}.returned-detail-banner strong{font-weight:850}.returned-detail-banner span{color:#8d4c45}.detail-actions{padding:0 16px 16px;display:flex;gap:8px;flex-wrap:wrap}.mobile-nav-toggle,.mobile-nav-close,.mobile-nav-backdrop{display:none}@media(max-width:900px){.app{grid-template-columns:1fr}.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);flex-shrink:0}.mobile-nav-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;background:transparent;color:var(--ink);margin-left:auto}.mobile-nav-backdrop{display:block;position:fixed;inset:0;background:#14181473;z-index:45}.sidebar{position:fixed;top:0;left:0;height:100vh;width:min(300px,85vw);z-index:50;transform:translate(-100%);transition:transform .25s ease;border-right:1px solid var(--line);box-shadow:0 24px 60px #14181440}.sidebar.open{transform:translate(0)}.sidebar-brand{display:flex;align-items:flex-start}.side-nav{grid-template-columns:1fr}.sidebar-footer{grid-template-columns:1fr auto;align-items:center}.workflow.steps-7,.workflow.steps-6,.checklist-groups,.pencairan-checklist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.workspace{padding:16px}.topbar,.panel-head,.modal-head,.detail-header{align-items:stretch;flex-direction:column}.modal-foot{align-items:center;flex-direction:row;flex-wrap:wrap;justify-content:flex-end}.stats,.dpa-summary-grid,.dppa-remaining-panel,.workflow.steps-7,.workflow.steps-6,.checklist-groups,.pencairan-checklist-grid,.form-grid,.side-nav,.sidebar-footer,.spj-evidence-item,.evidence-step-head{grid-template-columns:1fr}.evidence-step-head em{justify-self:start}.evidence-upload-row{grid-template-columns:24px minmax(0,1fr)}.evidence-upload-row .upload-inline{grid-column:2;justify-self:start}.workflow-action-note dl div{grid-template-columns:1fr;gap:2px}.pagination,.page-intro{align-items:stretch;flex-direction:column}.intro-metrics{width:100%;overflow-x:auto}.user-trigger{width:100%;justify-content:space-between}.budget-summary,.semester-budget-grid{grid-template-columns:1fr}}.link-btn{background:none;border:none;color:var(--brand);font-weight:700;font-size:12px;padding:0;margin-left:8px;cursor:pointer;text-decoration:underline}.link-btn:hover{color:var(--accent)}.dppa-lines-table{table-layout:auto}.dppa-lines-table th:nth-child(5),.dppa-lines-table th:nth-child(6),.dppa-lines-table .money-cell{white-space:nowrap}.dppa-lines-table .money-cell{min-width:132px}.monthly-plan-bars{display:flex;align-items:flex-end;gap:6px;height:90px;padding:8px 4px 0;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.monthly-plan-bar{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;gap:4px}.monthly-plan-bar .bar-track{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.monthly-plan-bar .bar-fill{width:60%;min-height:2px;background:var(--brand-2);border-radius:3px 3px 0 0}.monthly-plan-bar span{font-size:10px;color:var(--muted)}.pagu-locked-hint{display:flex;align-items:center;gap:6px;color:var(--brand);font-size:11px;font-weight:700}.dashboard-grid{gap:16px}.dashboard-grid .stats{margin:0}.dashboard-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dashboard-budget-values,.sipd-cycle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}.dashboard-budget-values>div,.sipd-cycle-grid>div{display:grid;gap:5px;min-width:0;padding:13px;border:1px solid var(--line-soft);border-radius:7px;background:#f7f9fb}.dashboard-budget-values span,.sipd-cycle-grid span{color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase}.dashboard-budget-values strong{color:var(--ink);font-size:17px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sipd-cycle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sipd-cycle-grid>div{border-top:3px solid var(--blue);background:#fff}.sipd-cycle-grid>div:nth-child(2){border-top-color:#2e7d32}.sipd-cycle-grid>div:nth-child(3){border-top-color:var(--accent)}.sipd-cycle-grid>div:nth-child(4){border-top-color:var(--brand)}.sipd-cycle-grid strong{color:var(--ink);font-size:18px}.sipd-cycle-grid em{color:var(--muted);font-size:11px;font-style:normal;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sidebar{border-right-color:#d8dee6;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:3px 0 14px #2632380d}.brand-mark{border-color:#e3e7ec;background:#fff;box-shadow:0 4px 12px #26323814}.side-link{border-radius:6px;color:#455a64}.side-link:hover{background:#f2f4f7;color:#263238}.side-link.active{border-color:#8b7db5;background:#8b7db5;color:#fff;box-shadow:0 5px 12px #7567a82e}.workspace{background:#f4f6f8}.topbar{margin:-28px -28px 22px;padding:16px 28px;align-items:center;background:linear-gradient(90deg,#6f648f,#8276a6);border-bottom:3px solid #c5bae2;box-shadow:0 3px 10px #26323829}.topbar .page-title,.topbar .subtitle{color:#fff}.topbar .subtitle{opacity:.82}.topbar .icon-btn:not(.primary-action),.topbar .mobile-nav-toggle{border-color:#ffffff61;background:#ffffff1a;color:#fff;box-shadow:none}.topbar .icon-btn:not(.primary-action):hover,.topbar .mobile-nav-toggle:hover{border-color:#ffffffb8;background:#ffffff2e}.topbar .primary-action{border-color:#b5a8d7;background:#9a8cc2;color:#fff;box-shadow:none}.topbar .user-trigger{border-color:#ffffff8c;background:#fff;box-shadow:0 3px 10px #26323829}.page-intro{border-radius:8px;border-left:4px solid var(--blue);background:#fff;box-shadow:var(--shadow)}.intro-kicker{color:var(--brand)}.intro-metrics span,.card,.panel,.drawer-section,.semester-budget-panel{background:#fff}.card,.panel{border-radius:8px}.card{border-top:3px solid var(--blue)}.stats .card:nth-child(2){border-top-color:var(--accent)}.stats .card:nth-child(3){border-top-color:#2e7d32}.stats .card:nth-child(4){border-top-color:var(--brand)}th{background:#eef2f6;color:#455a64}tbody tr:hover,.user-popover button:hover,.filter-option:hover{background:#f3f7fb}.tab,.btn,.icon-btn,.chip,.subtabs{background:#fff}.chip.active,.semester-budget.active,.column-menu-trigger:hover,.column-menu-trigger.active:not(:focus){border-color:#7567a847}.field input,.field select,.field textarea,.filter-search,.upload-dropzone,.document-upload-box,.dropzone{background:#fff}.field input:focus,.field select:focus,.field textarea:focus{outline-color:#1976d229;border-color:#1976d29e}.modal-backdrop,.drawer-backdrop{background:#161e2675}.drawer .modal-body{background:#f7f9fb}.modal,.drawer,.user-popover,.filter-popover{background:#fff}.modal-head{border-top:4px solid var(--brand)}.section-title{color:var(--brand)}.badge.green,.semester-cash-state.tersedia{background:#e8f5e9;color:#2e7d32;border-color:#2e7d3233}.badge.amber,.semester-cash-state.diajukan{background:#f5f2fb;color:#6f6298;border-color:#7567a838}.badge.blue{background:var(--blue-soft);color:var(--blue);border-color:#1976d233}.badge.red,tbody tr.returned-row{background:var(--red-soft)}.login-shell{background:linear-gradient(180deg,#6f648f 0,#8276a6 170px,#f4f6f8 170px 100%)}.login-card{border-radius:8px;border-top:5px solid #c5bae2;box-shadow:0 12px 32px #26323829}.login-tagline{color:var(--brand)}.login-tagline:after{background:linear-gradient(90deg,transparent,#a99bcf,transparent)}@media(max-width:760px){.topbar{margin:-16px -16px 18px;padding:14px 16px}.dashboard-summary-grid,.dashboard-budget-values,.sipd-cycle-grid,.realization-detail-summary{grid-template-columns:1fr}}
