/* Final shared layout: loaded after the existing application themes. */
:root{--shell-sidebar:264px;--ink:#15364b;--line:#dfe7ee;--bg:#f4f7fa}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.5}
.app-shell{display:block;min-height:100dvh;width:100%;max-width:100%}
.app-shell,.app-shell *{box-sizing:border-box}
.app-shell>.main{margin-left:var(--shell-sidebar);width:calc(100% - var(--shell-sidebar));min-width:0;max-width:none}
.app-shell>.sidebar{position:fixed;inset:0 auto 0 0;width:var(--shell-sidebar);height:100dvh;transform:none;visibility:visible;display:flex;flex-direction:column;background:#0b2d43;color:#c2d2df;z-index:1100;overflow:hidden;border:0}
.app-shell .brand{padding:23px 18px;gap:12px;min-height:99px;flex-shrink:0;border-bottom:1px solid #ffffff12}
.app-shell .brand strong{font-size:15px;letter-spacing:.15px}.app-shell .brand small{font-size:11px;color:#a8bfce}.app-shell .brand img{width:36px;height:49px;object-fit:contain}
.app-shell .side-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 12px;scrollbar-width:thin;scrollbar-color:#426277 transparent}
.side-nav::-webkit-scrollbar{width:5px}.side-nav::-webkit-scrollbar-track{background:transparent}.side-nav::-webkit-scrollbar-thumb{background:#426277;border-radius:9px}
.app-shell .side-nav a{padding:12px 14px;margin:3px 0;min-height:46px;gap:12px;border:0;border-radius:9px;color:#b9cedc;font-size:13px;font-weight:600;box-shadow:none}
.app-shell .side-nav a:hover{background:#ffffff0d;color:white}.app-shell .side-nav a.active{background:#174b64;color:#fff;border:0;box-shadow:inset 3px 0 #48c1bb}
.app-shell .nav-icon{width:20px;height:20px;flex-shrink:0}.app-shell .topbar{min-height:76px;height:auto;padding:17px 28px;gap:16px;background:white;border-bottom:1px solid var(--line)}
.app-shell .top-title{min-width:0}.app-shell .top-title strong{font-size:16px;letter-spacing:0}.app-shell .userbox{margin-left:auto;gap:12px;min-width:0}.app-shell .user-meta{max-width:260px;font-size:12px}.app-shell .user-meta strong{font-size:12px}.app-shell .avatar-button{width:36px;height:36px;flex-shrink:0}
.app-shell .workspace{padding:28px;min-width:0;width:100%;max-width:1600px;margin:0 auto}.workspace>*{min-width:0;max-width:100%}
.app-shell h1{font-size:26px;line-height:1.25;letter-spacing:-.6px}.app-shell h2{font-size:18px}.app-shell h3{font-size:15px}.app-shell .page-head{margin-bottom:24px;gap:16px;flex-wrap:wrap}.app-shell .page-head p{margin-top:7px;font-size:13px}
.app-shell .panel{border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 15px #102b4010;overflow:hidden}.app-shell .panel-head{padding:20px 22px;gap:12px}.app-shell .panel-body{padding:22px}.app-shell .panel-head h2{font-size:16px}.app-shell .panel-head p{font-size:12px}
.app-shell .input,.app-shell .select,.app-shell .textarea{max-width:100%;min-width:0;font:inherit;font-size:14px;border-radius:9px}.app-shell .field{min-width:0}.app-shell .field label{font-size:13px;font-weight:600}.app-shell input[type=file]{max-width:100%}
.app-shell .btn{border-radius:9px;font-family:inherit;font-size:13px;white-space:normal}.app-shell .table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.app-shell .data-table{font-size:13px}.app-shell .data-table th{background:#f4f7fa;font-size:11px;letter-spacing:.2px}.app-shell .data-table td{padding:15px 16px}.app-shell .data-table td strong{font-weight:600}.app-shell .doc-item{font-size:14px}.app-shell .doc-item small{font-size:12px}
.app-shell .form-grid,.app-shell .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .form-grid>*,.app-shell .detail-grid>*,.app-shell .dashboard-bottom-grid>*,.app-shell .survey-workspace>*{min-width:0}.app-shell .tabs{max-width:100%;overflow-x:auto}.app-shell .badge{white-space:normal}.app-shell .mobile-only{display:none}.app-shell .sidebar-backdrop{display:none}
.progress-selector{margin-bottom:20px}.progress-selector .panel-body{display:flex;gap:16px;align-items:end}.progress-selector .field{flex:1}.progress-selector label{display:block;margin-bottom:8px}
.cert-progress-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(120deg,#10364b,#174f61);color:#fff;padding:28px;border-radius:15px;margin-bottom:28px}.cert-progress-summary .asset-code{color:#8fdbd3;letter-spacing:1px}.cert-progress-summary h2{color:white;margin:7px 0;font-size:23px}.cert-progress-summary p{color:#c1d6df;font-size:13px;margin:6px 0 14px}.cert-progress-summary .btn{background:#fff;color:#15364b;flex-shrink:0}
.cert-timeline{list-style:none;padding:0;margin:0}.cert-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:18px;position:relative;padding-bottom:18px}.cert-step:not(:last-child):before{content:"";position:absolute;left:20px;top:40px;bottom:-1px;width:2px;background:#dce5ec}.cert-step-marker{z-index:1;display:grid;place-items:center;width:42px;height:42px;margin-top:3px;background:#e8eef3;border:4px solid #f4f7fa;border-radius:50%;color:#7b8c9b;font-size:12px;font-weight:700}.is-done .cert-step-marker{background:#d9f2e9;color:#157755}.is-current .cert-step-marker{background:#0c827e;color:white}.cert-step-card{background:white;border:1px solid var(--line);border-radius:13px;padding:20px 24px}.is-current .cert-step-card{border-color:#56afa9;box-shadow:0 4px 20px #0b827e0d}.cert-step-card header{display:flex;justify-content:space-between;align-items:center;gap:12px}.cert-step-card h3{margin:0}.cert-step-state{font-size:11px;padding:4px 10px;background:#edf2f6;color:#647b8d;border-radius:20px;white-space:nowrap}.is-current .cert-step-state{background:#e2f5f2;color:#126f6a}.is-done .cert-step-state{background:#e9f5ee;color:#26734e}.cert-step-meta{display:flex;flex-wrap:wrap;gap:16px 36px;margin:18px 0 0}.cert-step-meta dt{font-size:11px;color:#7a8c99;margin-bottom:4px}.cert-step-meta dd{font-size:13px;margin:0}.cert-step-note{font-size:13px;color:#985b22;margin-bottom:0}
.sigeo-public .sigeo-flow{padding-top:55px;padding-bottom:55px}.sigeo-public .sigeo-flow ol{gap:16px;counter-reset:flow}.sigeo-public .sigeo-flow li{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:25px 20px;gap:20px;background:linear-gradient(145deg,#123b50,#0a2c41);border:1px solid #355266;border-radius:15px;min-width:0;box-shadow:0 8px 24px #00152122}.sigeo-public .sigeo-flow li+li:before{display:none}.sigeo-public .flow-number{border-radius:50%;width:42px;height:42px;background:#ffffff0b;color:#e5c579;border:1px solid #e5c57966;font-size:13px}.sigeo-public .sigeo-flow h3{font-size:14px;margin:0 0 8px}.sigeo-public .sigeo-flow p{font-size:12px;color:#adc7d6;line-height:1.6;margin:0}
@media(max-width:1200px){.app-shell .dashboard-bottom-grid,.app-shell .dashboard-chart-grid{grid-template-columns:minmax(0,1fr)}.app-shell .dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell .user-meta{max-width:180px}}
@media(max-width:1040px){.app-shell>.main{margin-left:0!important;width:100%!important}.app-shell>.sidebar{width:264px;max-width:85vw;transform:translateX(-100%);visibility:hidden;transition:transform .2s,visibility .2s}.app-shell>.sidebar.open{transform:translateX(0);visibility:visible}.app-shell .mobile-only{display:inline-flex;flex-shrink:0}.app-shell .sidebar-backdrop{position:fixed;inset:0;z-index:1090;background:#071b3280;border:0;width:100%;height:100dvh}.menu-open .app-shell .sidebar-backdrop{display:block}body.menu-open{overflow:hidden}.app-shell .workspace{padding:22px}.app-shell .profile-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.app-shell .topbar{padding:12px 16px;gap:10px;min-height:66px}.app-shell .top-title strong{font-size:14px}.app-shell .user-meta{display:none}.app-shell .userbox{gap:8px}.app-shell .workspace{padding:18px 14px}.app-shell h1{font-size:23px}.app-shell .panel-body,.app-shell .panel-head{padding:17px}.app-shell .form-grid,.app-shell .detail-grid,.app-shell .survey-workspace,.app-shell .survey-bottom-grid,.app-shell .survey-control-panel,.app-shell .application-ready-grid,.app-shell .map-main-grid{grid-template-columns:minmax(0,1fr)}.app-shell .map-main-grid{height:auto}.app-shell .dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .form-actions{flex-wrap:wrap}.app-shell .form-actions>*{max-width:100%}.app-shell .full{grid-column:1/-1}.app-shell .survey-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-selector .panel-body{flex-wrap:wrap}.progress-selector .field{flex-basis:100%}.cert-progress-summary{padding:22px;align-items:flex-start;flex-direction:column}.cert-step{gap:10px;grid-template-columns:36px minmax(0,1fr)}.cert-step-marker{width:36px;height:36px}.cert-step:not(:last-child):before{left:17px}.cert-step-card{padding:17px}.cert-step-card header{align-items:flex-start;flex-direction:column;gap:8px}.cert-step-meta{gap:12px;flex-direction:column}.sigeo-public .sigeo-flow li{flex-direction:row;gap:18px;padding:21px}.sigeo-public .flow-number{flex-shrink:0}.sigeo-public .sigeo-flow ol{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.app-shell>.sidebar{transition:none}}

.app-shell .certification-case{margin-bottom:22px}.app-shell .certification-case>.panel-head{background:#eef5f7;border-bottom:1px solid #dce7ec}.app-shell .certification-case .detail-grid{gap:26px;margin-top:22px}.app-shell .certification-case .detail-grid>div{padding:20px;border:1px solid #e1e9ef;border-radius:12px}.app-shell .package-status{padding:14px;border-radius:9px;font-size:12px;line-height:1.7;background:#f3f7fa}.app-shell .package-status strong,.app-shell .package-status span{display:block}.app-shell .package-status strong{margin-bottom:7px}.app-shell .package-status.incomplete{background:#fff8ec;color:#875d20}.app-shell .filters{flex-wrap:wrap;max-width:100%}.app-shell .filters>*{min-width:0;max-width:100%}
/* Alur aset September 2026 */
.flow-focus{padding:18px 22px;background:#eaf4f3;border:1px solid #c6e2dc;border-radius:15px;margin-bottom:18px;color:#153b4a}
.flow-focus p{margin:7px 0 0}.verification-cards{display:grid;gap:12px;padding:18px}.verify-card{border:1px solid #dce7eb;border-radius:14px;padding:18px;display:grid;grid-template-columns:minmax(200px,1.2fr) minmax(120px,.5fr) minmax(260px,1.4fr);align-items:center;gap:16px;background:#fff}.verify-card-info{display:grid;gap:7px}.verify-card-info .btn{justify-self:start}.verify-card small{display:block}.verify-actions{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.verify-actions form:last-child{display:flex;gap:8px;flex:1;min-width:250px}.verify-actions .input{min-width:120px;flex:1}.boundary-status{background:#eaf4f3;color:#0d4a59;padding:10px 16px;border-radius:12px;font-weight:700;position:absolute;z-index:500;left:16px;bottom:18px;max-width:calc(100% - 32px);box-shadow:0 8px 20px #0d315426}.survey-map-wrap{position:relative}.document-checklist-shell .doc-item{border:1px solid #dce7eb;border-radius:14px;box-shadow:0 3px 12px #102e4308}.document-checklist-shell .doc-item.uploaded{border-color:#9ecfc5;background:#f8fcfb}.requirement-row{border:1px solid #dce7eb;border-radius:12px;padding:12px 16px;background:#fff}
@media(max-width:850px){.verify-card{grid-template-columns:1fr}.verification-cards{padding:12px}.verify-actions form:last-child{min-width:100%}.verify-actions .input{min-width:0}}
.embedded-delineation{margin-top:20px}.embedded-delineation .survey-page-head{display:none}.embedded-delineation .survey-map{min-height:440px}.embedded-delineation .survey-workspace{margin-top:0}
