:root{--pw-background: #f4f8fb;--pw-surface: #ffffff;--pw-surface-soft: #f8fafc;--pw-text: #0f172a;--pw-muted: #64748b;--pw-border: #dbe5f0;--pw-border-strong: #cdd8e5;--pw-primary: #1d5fd4;--pw-primary-strong: #184fb0;--pw-primary-soft: #e8efff;--pw-danger: #b91c1c;--pw-link: #334155;--pw-icon: #475569;--pw-chip-bg: #f4f8ff;--pw-chip-border: #d9e6fb;--pw-chip-text: #1e4297;--pw-table-head-bg: #f8fbff;--pw-table-border: #e6edf7;--pw-table-row-border: #edf2f8;--pw-table-row-hover: #f9fbff;--pw-input-focus: #9dbcf2;--pw-shadow-elev: 0 8px 24px rgba(15, 23, 42, .08);--pw-danger-soft-bg: #fff5f5;--pw-danger-soft-border: #f2d4d6;--pw-danger-soft-text: #9f1239;--pw-status-processed-bg: #e9f8ef;--pw-status-processed-text: #1d7a44;--pw-status-imported-bg: #edf2ff;--pw-status-imported-text: #2f52af;--pw-radius: 12px;--pw-sidebar-width: 16rem;--pw-sidebar-collapsed-width: 5.25rem}html.dark-style{--pw-background: #111827;--pw-surface: #1b2636;--pw-surface-soft: #223247;--pw-text: #e5edf7;--pw-muted: #9fb0c7;--pw-border: #344961;--pw-border-strong: #44607d;--pw-primary: #6ca8ff;--pw-primary-strong: #4e93f5;--pw-primary-soft: rgba(108, 168, 255, .18);--pw-danger: #ef6b73;--pw-link: #c7d4e4;--pw-icon: #9fb0c7;--pw-chip-bg: rgba(108, 168, 255, .14);--pw-chip-border: rgba(108, 168, 255, .28);--pw-chip-text: #aecdff;--pw-table-head-bg: #223247;--pw-table-border: #344961;--pw-table-row-border: #314459;--pw-table-row-hover: #26384f;--pw-input-focus: #6ca8ff;--pw-shadow-elev: 0 10px 28px rgba(0, 0, 0, .35);--pw-danger-soft-bg: rgba(239, 107, 115, .14);--pw-danger-soft-border: rgba(239, 107, 115, .28);--pw-danger-soft-text: #ff9ca3;--pw-status-processed-bg: rgba(52, 211, 153, .18);--pw-status-processed-text: #73e2b7;--pw-status-imported-bg: rgba(108, 168, 255, .2);--pw-status-imported-text: #b4d0ff}html,body{font-family:Inter,sans-serif;color:var(--pw-text);background:var(--pw-background)}body{letter-spacing:-.01em}.layout-wrapper,.layout-container,.layout-page,.content-wrapper{background:var(--pw-background)}.layout-menu{width:var(--pw-sidebar-width)!important;background:var(--pw-surface)!important;border-right:1px solid var(--pw-border)!important;box-shadow:none!important}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .layout-menu{width:var(--pw-sidebar-collapsed-width)!important}html.layout-menu-collapsed.layout-menu-hover .layout-menu{width:var(--pw-sidebar-width)!important}.layout-menu .menu-inner-shadow{display:none}.menu-vertical .app-brand{height:64px;margin:0;padding:0 .9rem;border-bottom:1px solid var(--pw-border);display:flex;align-items:center}.app-brand-link{display:flex;align-items:center;gap:.6rem}.app-brand-logo-icon{width:32px;height:32px;display:block;flex-shrink:0}.app-brand-logo-text{height:18px;width:112px;display:block;max-width:100%;object-fit:contain}.app-brand-mark{width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--pw-primary);color:#fff;box-shadow:0 8px 16px #1d5fd442}.app-brand-mark i{font-size:17px;line-height:1}.app-brand-title{font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--pw-text)}.app-brand-title .app-brand-tm{font-size:.56rem;vertical-align:top;margin-left:1px;color:var(--pw-muted)}.layout-menu-toggle{width:30px;height:30px;border-radius:8px;background:transparent!important;color:var(--pw-muted)!important}.layout-menu-toggle:hover{background:var(--pw-primary-soft)!important;color:var(--pw-primary)!important}.menu-inner{padding:.35rem!important}.menu-vertical .menu-header{margin-top:.35rem;margin-bottom:.1rem;padding:0 .62rem}.menu-vertical .menu-header .menu-header-text{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--pw-muted)}.menu-vertical .menu-item{margin:0}.menu-vertical .menu-link{min-height:28px;padding:.31rem .62rem;border-radius:9px;color:var(--pw-link);font-size:.88rem;gap:.55rem;line-height:1.2;transition:background-color .18s ease,color .18s ease}.menu-vertical .menu-item .menu-link{font-size:.9375rem;min-height:2rem}.menu-vertical .menu-inner>.menu-item .menu-link{margin:0rem 1rem}.menu-vertical .menu-link i{width:18px;min-width:18px;text-align:center;font-size:17px;color:var(--pw-icon)}.menu-vertical .menu-link .menu-icon-svg{width:16px;min-width:16px;height:16px;color:var(--pw-icon);flex-shrink:0}.menu-vertical .menu-link:hover{background:var(--pw-surface-soft);color:var(--pw-text)}.menu-vertical .menu-item.active>.menu-link,.menu-vertical .menu-item.open>.menu-link{background:var(--pw-primary-soft);color:var(--pw-text)}.menu-vertical .menu-item.active>.menu-link i,.menu-vertical .menu-item.open>.menu-link i{color:transparent}.menu-vertical .menu-item.active>.menu-link .menu-icon-svg,.menu-vertical .menu-item.open>.menu-link .menu-icon-svg{color:var(--pw-primary)}.menu-vertical .menu-sub{margin:.1rem 0 .2rem 2.4rem;padding:.12rem 0 .12rem 0rem;border-left:1px solid var(--pw-border)}.menu-vertical .menu-sub .menu-link{padding:.2rem .5rem;font-size:.81rem;min-height:24px}#layout-menu.menu-vertical .menu-sub .menu-link{padding-left:.5rem!important;padding-right:.5rem!important}#layout-menu.menu-vertical .menu-link,#layout-menu.menu-vertical .menu-link:hover,#layout-menu.menu-vertical .menu-link:focus{background-color:transparent!important}#layout-menu.menu-vertical .menu-item.active>.menu-link,#layout-menu.menu-vertical .menu-item.open>.menu-link{background-color:transparent!important}#layout-menu.menu-vertical .menu-sub>.menu-item.active>.menu-link{font-weight:600!important}.menu-vertical .menu-sub .menu-item{margin:0}.menu-vertical .menu-sub .menu-link i,.menu-vertical .menu-sub .menu-link .menu-icon-svg{display:none}.menu-bottom{border-top:1px solid var(--pw-border);margin-top:auto;padding:.85rem!important}.menu-bottom .avatar .avatar-initial{background:var(--pw-primary-soft)!important;color:var(--pw-primary)!important;font-weight:700}.menu-bottom .profile-name{font-size:.92rem;font-weight:600;color:var(--pw-text)}.menu-bottom .profile-role{font-size:.76rem;color:var(--pw-muted)}.menu-bottom .btn{border-radius:9px;min-height:34px;font-size:.84rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.menu-bottom .btn-primary{border-color:var(--pw-border);background:var(--pw-surface-soft);color:var(--pw-text)}.menu-bottom .btn-primary:hover{border-color:var(--pw-border-strong);background:var(--pw-surface-soft)}.menu-bottom .btn-danger{border-color:var(--pw-danger-soft-border);background:var(--pw-danger-soft-bg);color:var(--pw-danger-soft-text)}.menu-bottom .btn-danger:hover{border-color:var(--pw-danger-soft-border);background:var(--pw-danger-soft-bg)}.layout-navbar{border-bottom:1px solid var(--pw-border);background:var(--pw-surface)!important;box-shadow:none!important;min-height:64px}.layout-navbar.navbar-detached{width:auto;border-radius:0}.layout-navbar .navbar-toolbar{display:flex;align-items:center;gap:.65rem;flex:1 1 auto;min-width:0}.layout-navbar .navbar-nav-right{flex-basis:auto;width:auto}.layout-navbar .menu-trigger{width:30px;height:30px;border:1px solid transparent;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--pw-muted)}.layout-navbar .menu-trigger:hover{border-color:var(--pw-border);background:var(--pw-surface-soft);color:var(--pw-primary)}.layout-navbar .header-breadcrumb{font-size:.78rem;color:var(--pw-muted);margin-bottom:2px}.layout-navbar .header-title{font-size:.96rem;font-weight:600;color:var(--pw-text);line-height:1.2;white-space:nowrap;word-break:keep-all}.layout-navbar .credits-pill{border:1px solid var(--pw-border);background:var(--pw-surface-soft);border-radius:999px;padding:.24rem .65rem;font-size:.78rem;color:var(--pw-link);display:inline-flex;align-items:center;gap:.4rem}.layout-navbar .credits-pill i{color:var(--pw-primary)}.layout-navbar .buy-btn{border-radius:999px;font-size:.74rem;line-height:1;padding:.32rem .6rem}.content-wrapper>.container-fluid,.content-wrapper>.container-xxl{padding-top:1.2rem;padding-bottom:1.5rem}.scan-hub{display:flex;flex-direction:column;gap:1rem}.scan-hub-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.scan-hub-kicker{margin:0;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--pw-muted)}.scan-hub-title{margin:.15rem 0 0;font-size:1.75rem;line-height:1.2;font-weight:700;letter-spacing:-.03em;color:var(--pw-text)}.scan-hub-subtitle{margin:.45rem 0 0;color:var(--pw-muted);font-size:.94rem}.scan-hub-upload-btn{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}.scan-upload-card{border-color:var(--pw-border);background:linear-gradient(180deg,var(--pw-surface) 0%,var(--pw-surface-soft) 100%)}.scan-upload-header{display:flex;justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.9rem}.scan-upload-title{margin:0;font-size:1.05rem;font-weight:600}.scan-credits-pill{border:1px solid var(--pw-border);border-radius:999px;background:var(--pw-surface-soft);padding:.22rem .65rem;display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--pw-link)}.scan-credits-pill strong{color:var(--pw-primary);font-size:.82rem}.scan-upload-text{color:var(--pw-muted);font-size:.9rem}.scan-drop-area{border:1px dashed var(--pw-border-strong);border-radius:12px;background:var(--pw-surface-soft);padding:1.15rem;text-align:center;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.scan-drop-area.is-dragover{border-color:var(--pw-primary);background:var(--pw-primary-soft);transform:translateY(-1px)}.scan-drop-hero-icon{width:56px;height:56px;border-radius:999px;margin:0 auto .55rem;display:flex;align-items:center;justify-content:center;background:var(--pw-primary-soft)}.scan-drop-icon{font-size:1.35rem;color:var(--pw-primary);margin:0}.scan-drop-title{margin:0;font-size:.91rem;font-weight:600}.scan-drop-text{margin:.28rem auto .65rem;font-size:.82rem;color:var(--pw-muted);max-width:480px}.scan-drop-formats{margin:0 0 .85rem;font-size:.76rem;color:var(--pw-muted)}.scan-upload-status{margin-top:.8rem}.scan-list-card{border-color:var(--pw-border)}.scan-list-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.scan-list-title{margin:0;font-size:1.05rem;font-weight:600;color:var(--pw-text)}.scan-list-subtitle{margin:.32rem 0 0;color:var(--pw-muted);font-size:.85rem}.scan-list-controls{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.scan-search-input-wrap{position:relative;min-width:270px}.scan-search-input-wrap i{position:absolute;top:50%;left:.8rem;transform:translateY(-50%);color:var(--pw-muted);font-size:.78rem}.scan-search-input-wrap .form-control{padding-left:2.15rem;min-height:2.25rem;font-size:.88rem}#scanTypeFilter{min-width:170px;min-height:2.25rem;font-size:.88rem}#scanExportButton{min-height:2.25rem;display:inline-flex;align-items:center;gap:.4rem}.scan-table{margin-bottom:0}.scan-table thead th{background:var(--pw-table-head-bg);color:var(--pw-muted);border-bottom:1px solid var(--pw-table-border);text-transform:none;letter-spacing:0;font-size:.74rem;font-weight:600;white-space:nowrap}.scan-table tbody td{border-bottom-color:var(--pw-table-row-border);vertical-align:middle}.scan-table tbody tr:hover{background:var(--pw-table-row-hover)}.scan-id{font-family:Source Code Pro,Menlo,Consolas,monospace;font-size:.75rem;font-weight:600;color:var(--pw-primary)}.scan-name-cell{display:flex;align-items:center;gap:.7rem;min-width:220px}.scan-thumb-link{display:inline-flex;flex-shrink:0}.scan-thumb{width:38px;height:38px;border-radius:9px;object-fit:cover;border:1px solid var(--pw-border);background:var(--pw-surface)}.scan-name-title{font-size:.88rem;font-weight:600;color:var(--pw-text);text-decoration:none}.scan-name-title:hover{color:var(--pw-primary)}.scan-name-meta{font-size:.76rem;color:var(--pw-muted)}.scan-type-label{display:inline-flex;align-items:center;border:1px solid var(--pw-chip-border);background:var(--pw-chip-bg);border-radius:999px;padding:.12rem .5rem;font-size:.74rem;color:var(--pw-chip-text);white-space:nowrap}.scan-file-label-wrap{margin-top:.5rem}.scan-type-label.scan-file-label{gap:.35rem;padding:.26rem .72rem;font-size:.8rem}.scan-location-text{color:var(--pw-muted);font-size:.84rem;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem}.scan-location-text:hover{color:var(--pw-primary)}.scan-location-empty,.scan-date-text{color:var(--pw-muted);font-size:.84rem}.scan-status{display:inline-flex;align-items:center;border-radius:999px;padding:.16rem .56rem;font-size:.72rem;font-weight:600;line-height:1}.scan-status--processed{background:var(--pw-status-processed-bg);color:var(--pw-status-processed-text)}.scan-status--imported{background:var(--pw-status-imported-bg);color:var(--pw-status-imported-text)}.scan-action-toggle{border:1px solid var(--pw-border);border-radius:8px;color:var(--pw-link);background:var(--pw-surface);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center}.scan-action-toggle:hover{color:var(--pw-primary);border-color:var(--pw-border-strong);background:var(--pw-surface-soft)}.scan-action-menu{border:1px solid var(--pw-border);border-radius:10px;box-shadow:var(--pw-shadow-elev);background:var(--pw-surface);font-size:.84rem}.scan-action-menu .dropdown-item{display:flex;align-items:center;color:var(--pw-text)}.card{border:1px solid var(--pw-border);border-radius:var(--pw-radius);box-shadow:none}.card-header{border-bottom:1px solid var(--pw-border);background:var(--pw-surface)}.table:not(.table-dark)>:not(caption)>*>*{border-bottom-color:var(--pw-border)}.table thead th{color:var(--pw-muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.btn{border-radius:10px;font-weight:500}.btn-primary{background:var(--pw-primary);border-color:var(--pw-primary)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background:var(--pw-primary-strong)!important;border-color:var(--pw-primary-strong)!important}.btn-outline-info,.btn-outline-primary{border-color:var(--pw-border-strong);color:var(--pw-primary)}.btn-outline-info:hover,.btn-outline-primary:hover{background:var(--pw-primary-soft);border-color:var(--pw-border-strong);color:var(--pw-primary-strong)}.form-control,.form-select,.input-group-text{border-radius:10px;border-color:var(--pw-border)}.form-control:focus,.form-select:focus{border-color:var(--pw-input-focus);box-shadow:0 0 0 .2rem #1d5fd41f}.badge{font-weight:600}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .app-brand-title,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .app-brand-logo-text,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-header,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .profile-name,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .profile-role,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .btn-text,html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .mobile-only{display:none!important}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .app-brand-link{width:100%;justify-content:center}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .d-flex{justify-content:center}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .flex-grow-1{display:none!important}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .flex-shrink-0{margin-right:0!important;margin-inline-end:0!important}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom #avatar-parent{margin-inline-end:0!important}html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .menu-bottom .mt-2 .btn{padding-left:0;padding-right:0}@media (max-width: 1199.98px){.layout-menu{box-shadow:0 12px 28px #0f172a2e!important}.layout-menu-collapsed .menu-vertical .app-brand{padding-left:.9rem;padding-right:.9rem}.scan-hub-heading{flex-wrap:wrap}.scan-list-toolbar{flex-direction:column;align-items:stretch}}@media (max-width: 767.98px){.layout-navbar .header-breadcrumb{display:none}.layout-navbar .credits-pill{font-size:.72rem;padding:.22rem .5rem}.menu-bottom{padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}.desktop-only{display:none!important}.scan-hub-title{font-size:1.4rem}.scan-search-input-wrap{min-width:100%}#scanTypeFilter,#scanExportButton,.scan-list-controls{width:100%}#scanExportButton{justify-content:center}.scan-name-cell{min-width:180px}}
