.confirm-overlay{z-index:1000;background:#0f172a7a;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.confirm-dialog{background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:min(100%,430px);overflow:hidden;box-shadow:0 24px 60px #0f172a3d}.confirm-dialog-marker{background:#2563eb;height:5px}.confirm-dialog.danger .confirm-dialog-marker{background:#dc2626}.confirm-dialog.success .confirm-dialog-marker{background:#16a34a}.confirm-dialog-content{padding:22px 22px 6px}.confirm-dialog-content h2{color:#0f172a;margin:0;font-size:19px;line-height:1.25}.confirm-dialog-content p{color:#475569;margin:10px 0 0;font-size:14px;line-height:1.55}.confirm-dialog-actions{justify-content:flex-end;gap:10px;padding:18px 22px 22px;display:flex}.confirm-cancel-button,.confirm-action-button{cursor:pointer;border:none;border-radius:8px;min-height:42px;padding:10px 16px;font-weight:700}.confirm-cancel-button{color:#0f172a;background:#e2e8f0}.confirm-action-button{color:#fff;background:#2563eb}.confirm-dialog.danger .confirm-action-button{background:#dc2626}.confirm-dialog.success .confirm-action-button{background:#16a34a}.confirm-cancel-button:focus-visible,.confirm-action-button:focus-visible{outline-offset:2px;outline:3px solid #2563eb40}@media (width<=520px){.confirm-overlay{align-items:flex-end;padding:12px}.confirm-dialog{width:100%}.confirm-dialog-content{padding:20px 18px 6px}.confirm-dialog-actions{flex-direction:column-reverse;padding:16px 18px 18px}.confirm-cancel-button,.confirm-action-button{width:100%}}*{box-sizing:border-box}html{font-size:16px}body{background:#f8fafc;margin:0;font-family:Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font-family:inherit}select,select option{color:#0f172a;background-color:#fff}select option:checked,select option:hover{color:#1e40af;background-color:#dbeafe}.app-layout{--sidebar-visible-rail:18px;--brand-teal:#0f766e;--brand-teal-light:#14b8a6;--brand-blue:#1d4ed8;--brand-amber:#f59e0b;--brand-ink:#172033;--brand-surface:#ffffff1f;--brand-border:#ffffff2e;min-height:100vh;color:var(--brand-ink);background:linear-gradient(#0f172a09 1px,#0000 1px) 0 0/44px 44px,linear-gradient(90deg,#0f172a09 1px,#0000 1px) 0 0/44px 44px,linear-gradient(135deg,#f8fafc 0%,#eef6f3 52%,#f7efe1 100%);overflow-x:hidden}.app-sidebar{width:300px;height:auto;min-height:100dvh;max-height:none;background:linear-gradient(160deg, #0c635bfa, #0f4d70fa 48%, #1e3a8afa), var(--brand-teal);color:#fff;z-index:20;scrollbar-color:#ffffff5c transparent;scrollbar-width:thin;min-block-size:100dvh;transform:translateX(calc(-100% + var(--sidebar-visible-rail)));border-right:1px solid #ffffff29;flex-direction:column;transition:box-shadow .22s,transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden;box-shadow:18px 0 45px #0f172a29}.app-sidebar:hover,.app-sidebar:focus-within,.app-sidebar.show{transform:translate(0);box-shadow:24px 0 60px #0f172a47}.app-sidebar:before{content:"";pointer-events:none;opacity:1;background-color:#0000;background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px),linear-gradient(120deg,#0000 0 36%,#ffffff14 37%,#0000 40%),linear-gradient(120deg,#0000 0 64%,#ffffff0d 65%,#0000 68%),linear-gradient(#03071229,#03071233);background-position:0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:46px 46px,46px 46px,auto,auto;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;position:fixed;inset:0}.app-sidebar:after{content:"";width:var(--sidebar-visible-rail);background:linear-gradient(180deg, var(--brand-teal-light), var(--brand-blue));border-left:1px solid #ffffff3d;position:fixed;top:0;bottom:0;right:0}.app-sidebar:hover:after,.app-sidebar:focus-within:after,.app-sidebar.show:after{opacity:0;pointer-events:none}.sidebar-brand{z-index:1;border-bottom:1px solid var(--brand-border);align-items:center;gap:12px;padding:22px 18px 18px;display:flex;position:relative}.sidebar-logo{background:#fff;border-radius:10px;flex-shrink:0;width:44px;height:44px;overflow:hidden;box-shadow:0 14px 28px #0f172a3d}.sidebar-logo-image{object-fit:cover;width:100%;height:100%;display:block}.sidebar-brand h1{letter-spacing:0;text-shadow:0 1px 2px #0f172a3d;margin:0;font-size:19px}.sidebar-brand p{color:#ffffffc7;margin:4px 0 0;font-size:13px;line-height:1.35}.license-info{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1d3057;border:1px solid #ffffff2e;border-radius:8px;gap:4px;margin:14px 14px 18px;padding:13px 14px;display:grid;position:relative;box-shadow:0 14px 30px #0f172a1f}.license-info span{color:#ffffffc2;font-size:12px}.license-info strong{color:#f8fafc;font-size:15px}.sidebar-menu{z-index:1;overscroll-behavior:contain;scrollbar-color:#ffffff5c transparent;scrollbar-width:thin;flex:1;min-height:0;padding:0 12px 22px;position:relative;overflow-y:auto}.sidebar-group{margin-bottom:7px}.sidebar-group-toggle{color:#ffffffed;cursor:pointer;letter-spacing:.01em;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:40px;margin:3px 0;padding:10px 12px;font-size:13.2px;font-weight:800;transition:background .18s,color .18s;display:flex}.sidebar-group-label{align-items:center;gap:9px;min-width:0;display:inline-flex}.sidebar-group-trailing{flex:none;align-items:center;gap:8px;display:inline-flex}.sidebar-group-icon{color:#ffffffdb;filter:drop-shadow(0 1px 2px #0f172a33);background:#ffffff1a;border-radius:8px;flex:none;width:28px;height:28px;padding:5px;transition:background .18s,box-shadow .18s,color .18s,transform .18s;box-shadow:inset 0 0 0 1px #ffffff14}.sidebar-group-toggle:hover,.sidebar-group-toggle.active{color:#fff;background:#0a1d3057;box-shadow:inset 0 0 0 1px #ffffff14}.sidebar-group-toggle:hover .sidebar-group-icon,.sidebar-group-toggle.active .sidebar-group-icon{color:#fff;background:#ffffff29;transform:translateY(-1px);box-shadow:inset 0 0 0 1px #ffffff29}.sidebar-group-chevron{opacity:.8;border-bottom:2px solid;border-right:2px solid;flex-shrink:0;width:8px;height:8px;transition:opacity .18s,transform .18s;transform:rotate(-45deg)}.sidebar-group-toggle[aria-expanded=true] .sidebar-group-chevron{opacity:1;transform:rotate(45deg)}.sidebar-submenu{gap:4px;max-height:0;padding-left:12px;transition:max-height .24s;display:grid;position:relative;overflow:hidden}.sidebar-submenu:before{content:"";background:#ffffff42;width:1px;position:absolute;top:5px;bottom:5px;left:4px}.sidebar-submenu.open{max-height:1800px;padding-bottom:5px}.sidebar-link{color:#fffffff0;text-shadow:0 1px 2px #0f172a33;border-radius:8px;align-items:center;gap:8px;min-height:39px;padding:9px 12px;font-size:13.5px;font-weight:500;line-height:1.35;text-decoration:none;transition:background .18s,color .18s,transform .18s;display:flex;position:relative}.sidebar-link:before{content:"";background:#ffffff94;border-radius:999px;flex-shrink:0;width:6px;height:6px;margin-right:10px;transition:background .18s,transform .18s}.sidebar-link:hover{color:#fff;background:#0a1d3061;transform:translate(2px)}.sidebar-link.active{color:var(--brand-ink);background:#fffffff2;font-weight:700;box-shadow:0 14px 28px #0f172a2e}.sidebar-link.active:before{background:linear-gradient(135deg, var(--brand-teal-light), var(--brand-blue));transform:scale(1.2)}.sidebar-link-title{flex:1;min-width:0}.sidebar-badge{color:#fff;min-width:22px;text-shadow:none;background:#f97316;border:1px solid #fff6;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:4px 6px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.sidebar-group-badge{box-shadow:0 6px 14px #f9731647}.main-area{margin-left:var(--sidebar-visible-rail);min-width:0;min-height:100vh;overflow-x:hidden}.topbar{background:linear-gradient(120deg, #0f766ef7, #1d4ed8f2), var(--brand-teal);color:#fff;height:76px;padding:0 28px 0 calc(28px + var(--sidebar-visible-rail));z-index:10;border-bottom:1px solid #ffffff2e;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 16px 34px #0f172a21}.topbar h2{letter-spacing:0;margin:0;font-size:19px}.topbar p{color:#ffffffbd;margin:4px 0 0;font-size:13px}.hamburger{cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:none}.hamburger span{background:#fff;border-radius:999px;width:18px;height:2px;margin:2px 0;display:block}.logout-button{color:#fff;cursor:pointer;background:#ffffff21;border:1px solid #ffffff3d;border-radius:8px;padding:10px 16px;font-weight:700;transition:background .18s,transform .18s}.logout-button:hover{background:#ef4444eb;border-color:#ffffff38;transform:translateY(-1px)}.page-content{min-width:0;max-width:100vw;padding:100px 24px 24px;overflow-x:hidden}.mobile-backdrop{display:none}@media (width<=900px){.app-layout{--sidebar-visible-rail:0px}.app-sidebar{height:auto;min-height:100dvh;max-height:none;min-block-size:100dvh;width:min(300px,86vw);transition:all .2s;top:0;bottom:0;left:0;transform:translate(-100%)}.app-sidebar:after{display:none}.app-sidebar.show{transform:translate(0)}.main-area{margin-left:0}.hamburger{display:flex}.topbar{justify-content:flex-start;gap:14px;padding-left:26px}.logout-button{margin-left:auto}.mobile-backdrop{z-index:15;background:#0f172a8c;min-height:100dvh;display:block;position:fixed;inset:0}}@media (width<=520px){.topbar{padding:0 14px}.topbar h2{font-size:16px}.topbar p{font-size:12px}.logout-button{padding:9px 12px}.page-content{padding:92px 14px 14px}}@media print{@page{margin:10mm}.app-layout{background:#fff;min-height:auto}.app-sidebar,.topbar,.mobile-backdrop{display:none!important}.main-area{min-height:auto;margin-left:0}.page-content{padding:0}.page-content>[class$=-report-page],.page-content>.emergency-print-page{color:#000;gap:10px!important}.page-content>[class$=-report-page] .no-print,.page-content>[class$=-report-page] .print-button,.page-content>[class$=-report-page] .alert,.page-content>.emergency-print-page .no-print,.page-content>.emergency-print-page .print-button,.page-content>.emergency-print-page .alert{display:none!important}.page-content>[class$=-report-page] [class$=-report-header],.page-content>.emergency-print-page .emergency-print-header{break-inside:avoid;page-break-inside:avoid;align-items:flex-start!important}.page-content>[class$=-report-page] [class$=-report-header] h1,.page-content>.emergency-print-page .emergency-print-header h1{margin:0!important;font-size:20px!important}.page-content>[class$=-report-page] [class$=-report-header] p,.page-content>.emergency-print-page .emergency-print-header p,.page-content>[class$=-report-page] .table-header p,.page-content>.emergency-print-page .table-header p{display:none!important}.page-content>[class$=-report-page] .table-header,.page-content>.emergency-print-page .table-header{margin-bottom:8px!important}.page-content>[class$=-report-page] .filter-card,.page-content>[class$=-report-page] .summary-card,.page-content>[class$=-report-page] .report-table-card,.page-content>[class$=-report-page] .small-summary-grid>div,.page-content>[class$=-report-page] .print-title-card,.page-content>.emergency-print-page .filter-card,.page-content>.emergency-print-page .summary-card,.page-content>.emergency-print-page .report-table-card,.page-content>.emergency-print-page .small-summary-grid>div,.page-content>.emergency-print-page .print-title-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;background:#fff!important;border:1px solid #000!important;border-radius:0!important;padding:8px!important}.page-content>[class$=-report-page] .summary-grid,.page-content>[class$=-report-page] .small-summary-grid,.page-content>.emergency-print-page .summary-grid,.page-content>.emergency-print-page .small-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.page-content>[class$=-report-page] .summary-card strong,.page-content>[class$=-report-page] .small-summary-grid strong,.page-content>.emergency-print-page .summary-card strong,.page-content>.emergency-print-page .small-summary-grid strong{font-size:14px!important}.page-content>[class$=-report-page] .table-wrapper,.page-content>.emergency-print-page .table-wrapper{overflow:visible!important}.page-content>[class$=-report-page] table,.page-content>.emergency-print-page table{width:100%!important;min-width:0!important;font-size:10px!important}.page-content>[class$=-report-page] thead,.page-content>.emergency-print-page thead{display:table-header-group}.page-content>[class$=-report-page] th,.page-content>[class$=-report-page] td,.page-content>.emergency-print-page th,.page-content>.emergency-print-page td{white-space:normal!important;word-break:break-word!important;padding:5px!important;font-size:10px!important}.page-content>[class$=-report-page] tr,.page-content>[class$=-report-page] .summary-card,.page-content>[class$=-report-page] .small-summary-grid>div,.page-content>[class$=-report-page] .print-title-card,.page-content>.emergency-print-page tr,.page-content>.emergency-print-page .summary-card,.page-content>.emergency-print-page .small-summary-grid>div,.page-content>.emergency-print-page .print-title-card{break-inside:avoid;page-break-inside:avoid}}
