@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root{--access-radius:8px;--access-control-radius:6px;--brand-primary:#00408c;--brand-primary-500:#1c4f8c;--brand-primary-300:#6d8fc1;--brand-primary-soft:#e0e9f5;--brand-primary-dark:#183f87;--neutral-50:#f1f4f8;--neutral-100:#e8ebef;--neutral-200:#d3dbe7;--neutral-300:#a9b7cd;--neutral-400:#8496b2;--neutral-500:#71819a;--neutral-600:#4c5867;--neutral-700:#39424e;--neutral-800:#2c3035;--neutral-900:#1d1d1d;--neutral-grey-50:#f8f8f8;--neutral-grey-100:#efefef;--neutral-grey-200:#e8e8e8;--neutral-grey-300:#cfcfcf;--neutral-grey-400:#b5b5b5;--neutral-grey-500:#9c9c9c;--neutral-grey-600:#696969;--neutral-grey-700:#4f4f4f;--neutral-grey-800:#363636;--neutral-grey-900:#1d1d1d;--color-primary:var(--brand-primary);--color-primary-hover:var(--brand-primary-500);--color-primary-light:var(--brand-primary-soft);--color-primary-dark:var(--brand-primary-dark);--color-primary-on-soft:var(--brand-primary);--color-primary-solid:var(--brand-primary);--color-primary-solid-hover:var(--brand-primary-500);--color-link:#155ca8;--color-link-hover:#00408c;--color-success:#10b981;--color-success-light:#d1fae5;--color-success-on-soft:#047857;--color-success-solid:#047857;--color-success-solid-hover:#065f46;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-warning-on-soft:#92400e;--color-danger:#ef4444;--color-danger-light:#fee2e2;--color-danger-on-soft:#b91c1c;--color-danger-solid:#b91c1c;--color-danger-solid-hover:#991b1b;--color-info:#2a4e88;--color-info-light:#e0e9f5;--color-info-on-soft:#2a4e88;--bg-primary:#ffffff;--bg-secondary:var(--neutral-50);--bg-tertiary:var(--neutral-100);--bg-elevated:#ffffff;--bg-overlay:rgba(29,29,29,0.34);--text-primary:var(--neutral-900);--text-secondary:var(--neutral-600);--text-tertiary:var(--neutral-500);--text-inverse:#ffffff;--border-color:var(--neutral-200);--border-color-hover:var(--neutral-300);--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--space-4xl:64px;--font-family-brand:"Bw Modelica","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-family-accent:"Gotham","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-family:var(--font-family-brand);--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.625rem;--font-size-3xl:2.125rem;--font-size-4xl:2.75rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--radius-xl:32px;--radius-full:9999px;--shadow-sm:0 2px 8px rgba(24,63,135,0.06);--shadow-md:0 12px 30px rgba(24,63,135,0.08);--shadow-lg:0 18px 48px rgba(24,63,135,0.12);--shadow-xl:0 28px 64px rgba(24,63,135,0.16);--shadow-glow:0 0 20px rgba(0,64,140,0.12);--sidebar-width:260px;--sidebar-collapsed:72px;--header-height:64px;--shell-topbar-height:72px;--content-max-width:1200px;--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease}[data-theme=dark]{color-scheme:dark;--color-primary:#6d8fc1;--color-primary-hover:#a9b7cd;--color-primary-light:rgba(109,143,193,0.18);--color-primary-dark:#e0e9f5;--color-primary-on-soft:#a9b7cd;--color-primary-solid:#1c4f8c;--color-primary-solid-hover:#2a5f9f;--color-link:#7db3ff;--color-link-hover:#b5d3ff;--color-success-light:rgba(16,185,129,0.15);--color-success-on-soft:#34d399;--color-warning-light:rgba(245,158,11,0.15);--color-warning-on-soft:#fbbf24;--color-danger-light:rgba(239,68,68,0.15);--color-danger-on-soft:#fca5a5;--color-info-light:rgba(42,78,136,0.15);--color-info-on-soft:#a9b7cd;--bg-primary:#191a23;--bg-secondary:#191a23;--bg-tertiary:#262830;--bg-elevated:#21232e;--bg-overlay:rgba(0,0,0,0.56);--text-primary:#ffffff;--text-secondary:#c0c6d0;--text-tertiary:#9aa1b2;--text-inverse:#ffffff;--border-color:#2f313a;--border-color-hover:#535a6c;--shadow-sm:0 2px 8px rgba(0,0,0,0.18);--shadow-md:0 12px 30px rgba(0,0,0,0.22);--shadow-lg:0 18px 48px rgba(0,0,0,0.28);--shadow-xl:0 28px 64px rgba(0,0,0,0.36);--shadow-glow:0 0 20px rgba(109,143,193,0.18)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-secondary);min-height:100vh;overflow-x:hidden}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;border:2px solid transparent;border-radius:72px;cursor:pointer;transition:all var(--transition-base);min-height:50px;min-width:48px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.btn:active:not(:disabled):after,.btn[aria-disabled=true]:active:after{opacity:.1}.btn-primary{background:var(--color-primary-solid);color:var(--text-inverse);box-shadow:0 14px 30px rgba(0,64,140,.18)}.btn-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-solid-hover);transform:translateY(-1px);box-shadow:0 18px 36px rgba(28,79,140,.2)}.btn-primary:active:not(:disabled):not([aria-disabled=true]){transform:translateY(0)}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-color);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--color-primary-hover);color:var(--color-primary-dark);background:var(--color-primary-light)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-light);color:var(--color-primary-dark)}.btn-danger{background:var(--color-danger-solid);color:var(--text-inverse)}.btn-danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-danger-solid-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg),0 0 20px rgba(239,68,68,.3)}.btn-success{background:var(--color-success-solid);color:var(--text-inverse)}.btn-success:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-success-solid-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg),0 0 20px rgba(16,185,129,.3)}.btn-sm{padding:0 20px;font-size:var(--font-size-sm);min-height:40px}.btn-lg{padding:0 28px;font-size:var(--font-size-lg);min-height:60px}.btn-icon{padding:var(--space-md);min-width:48px;width:48px}.action-icon-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.action-icon-button{width:46px;height:46px;min-width:46px;border-radius:14px;border:1px solid #d5dde8;background:linear-gradient(180deg,#ffffff,#f4f7fb);color:#435167;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(10,22,40,.12);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.action-icon-button:hover{transform:translateY(-1px);border-color:#bfcad9;color:#334155;box-shadow:0 10px 20px rgba(10,22,40,.16)}.action-icon-button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(109,143,193,.18),0 10px 20px rgba(10,22,40,.16)}.action-icon-button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.action-icon-button__icon{display:inline-flex;width:20px;height:20px}.action-icon-button__icon svg{width:100%;height:100%}.action-icon-button-danger{background:linear-gradient(180deg,#fff7f6,#ffefee);border-color:#efc1bc;color:#c24134}.action-icon-button-danger:hover{border-color:#e4a39b;color:#a72d23}.btn:disabled,.btn[aria-disabled=true]{opacity:.46;cursor:not-allowed;transform:none!important;box-shadow:none!important;pointer-events:none}.btn-primary:disabled,.btn-primary[aria-disabled=true]{background:color-mix(in srgb,var(--color-primary) 54%,#93a8c7);color:rgba(255,255,255,.78)}.btn-secondary:disabled,.btn-secondary[aria-disabled=true]{background:color-mix(in srgb,var(--bg-elevated) 86%,#6f7f96);border-color:color-mix(in srgb,var(--border-color) 78%,#7f8da2);color:rgba(232,235,239,.72)}.btn-ghost:disabled,.btn-ghost[aria-disabled=true]{background:transparent;color:rgba(169,183,205,.7)}.btn-danger:disabled,.btn-danger[aria-disabled=true],.btn-success:disabled,.btn-success[aria-disabled=true]{filter:saturate(.45) brightness(.95)}.card{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--color-primary)}.card-glass{background:rgba(255,255,255,.7);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .card-glass{background:color-mix(in srgb,var(--bg-elevated) 82%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 86%,transparent)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-color)}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.form-group{margin-bottom:var(--space-xl)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-md) var(--space-lg);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast);min-height:48px;outline:none;-webkit-appearance:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input::placeholder{color:var(--text-tertiary)}.form-textarea{min-height:100px;resize:vertical}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px;cursor:pointer}.session-offering-type-select option{color:var(--text-primary);background-color:var(--bg-primary);font-weight:var(--font-weight-normal)}.session-offering-type-select[data-offering-type=PERSEMBAHAN]{color:#ffffff;background-color:#2833db;border-color:#2833db;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.session-offering-type-select[data-offering-type=PERSEMBAHAN]:focus{border-color:#2833db;box-shadow:0 0 0 3px rgba(40,51,219,.24)}.session-offering-type-select[data-offering-type=PERPULUHAN]{color:#000000;background-color:#f8d74e;border-color:#f8d74e;font-weight:var(--font-weight-bold);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.session-offering-type-select[data-offering-type=PERPULUHAN]:focus{border-color:#f8d74e;box-shadow:0 0 0 3px rgba(248,215,78,.3)}.form-error{color:var(--color-danger);font-size:var(--font-size-sm)}.form-error,.form-hint{margin-top:var(--space-xs)}.form-hint{color:var(--text-tertiary)}.badge,.form-hint{font-size:var(--font-size-xs)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-family:var(--font-family);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full);white-space:nowrap}.badge-draft{background:var(--color-warning-light);color:var(--color-warning-on-soft)}.badge-approved,.badge-submitted{background:var(--color-success-light);color:var(--color-success-on-soft)}.badge-rejected{background:var(--color-danger-light);color:var(--color-danger-on-soft)}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);background:var(--bg-tertiary);white-space:nowrap}.table td,.table th{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color)}.table td{font-size:var(--font-size-sm);vertical-align:middle}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--color-primary-light)}.table tbody tr:last-child td{border-bottom:none}.modal-overlay{position:fixed;inset:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-xl);animation:fadeIn var(--transition-fast)}.modal-content{background:var(--bg-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:slideUp var(--transition-base)}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color)}.modal-body,.modal-header{padding:var(--space-xl)}.modal-footer{align-items:center;justify-content:flex-end;padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--border-color)}.modal-footer,.toast-container{display:flex;gap:var(--space-md)}.toast-container{position:fixed;top:var(--space-xl);right:var(--space-xl);z-index:2000;flex-direction:column}.toast{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);animation:slideInRight var(--transition-base);min-width:320px;max-width:480px}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-danger)}.toast-warning{border-left:4px solid var(--color-warning)}.toast-info{border-left:4px solid var(--color-info)}.spinner{display:inline-block;width:24px;height:24px;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}.spinner-lg{width:48px;height:48px;border-width:4px}.app-layout{min-height:100vh;background:linear-gradient(180deg,var(--bg-primary) 0,var(--bg-secondary) 100%)}.app-shell{min-height:100vh;min-width:0;margin-left:var(--sidebar-width);display:flex;flex-direction:column;transition:margin-left var(--transition-base);background:linear-gradient(180deg,var(--bg-primary) 0,var(--bg-secondary) 220px)}.app-layout.sidebar-collapsed .app-shell{margin-left:var(--sidebar-collapsed)}.app-layout.shell-compact .app-shell,.app-layout.shell-compact.sidebar-collapsed .app-shell{margin-left:0}.sidebar{width:var(--sidebar-width);background:var(--bg-elevated);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:width var(--transition-base),transform var(--transition-base);overflow:hidden;box-shadow:18px 0 48px rgba(24,63,135,.08)}[data-theme=dark] .sidebar{background:var(--bg-primary);box-shadow:18px 0 48px rgba(0,0,0,.16)}.app-layout.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}.app-layout.shell-compact .sidebar{width:min(82vw,320px);transform:translateX(-100%)}.app-layout.shell-compact .sidebar.open{transform:translateX(0)}.sidebar-brand{display:flex;align-items:center;gap:14px;min-height:92px;padding:18px var(--space-xl);border-bottom:1px solid var(--border-color)}.sidebar-brand-mark{width:60px;height:60px;border-radius:16px;background:linear-gradient(180deg,#ffffff,#eef3fa);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 12px 26px rgba(3,10,20,.22);border:1px solid rgba(211,219,231,.9)}.sidebar-brand-mark svg{width:22px;height:22px}.sidebar-brand-logo{width:44px;height:44px;object-fit:contain}.sidebar-brand-copy{min-width:0;display:flex;flex-direction:column;justify-content:center}.sidebar-brand-line{font-size:1.8rem;font-weight:800;letter-spacing:-.08em;text-transform:uppercase;color:#f8fafc;line-height:.9}.sidebar-brand-line-accent{color:#ffffff;opacity:.96}.sidebar-nav{flex:1 1;padding:var(--space-lg) var(--space-md);overflow-y:auto}.sidebar-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);padding:var(--space-md) var(--space-md) var(--space-sm);margin-top:var(--space-lg)}.sidebar-section-title:first-child{margin-top:0}.nav-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-md);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);min-height:48px;text-decoration:none;border:1px solid transparent;background:transparent;width:100%;text-align:left}.nav-item:hover{background:rgba(0,64,140,.06);border-color:rgba(0,64,140,.12);color:var(--color-primary-dark)}.nav-item.active{background:var(--color-primary-light);border-color:rgba(0,64,140,.14);color:var(--color-primary-dark);font-weight:var(--font-weight-semibold);box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}.nav-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-item-icon,.nav-item-icon svg{width:18px;height:18px}.app-layout.sidebar-collapsed .sidebar .nav-item-label,.app-layout.sidebar-collapsed .sidebar .sidebar-brand-copy,.app-layout.sidebar-collapsed .sidebar .sidebar-section-title{display:none}.app-layout.sidebar-collapsed .sidebar .sidebar-brand{justify-content:center;padding-left:var(--space-md);padding-right:var(--space-md)}.app-layout.sidebar-collapsed .sidebar .nav-item{justify-content:center;padding-left:var(--space-sm);padding-right:var(--space-sm)}.shell-topbar{height:var(--shell-topbar-height);position:sticky;top:0;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:0 var(--space-xl);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 10px 30px rgba(24,63,135,.05)}[data-theme=dark] .shell-topbar{background:var(--bg-primary);box-shadow:0 10px 30px rgba(0,0,0,.14)}.shell-topbar-left,.shell-topbar-right{display:flex;align-items:center;gap:var(--space-md)}.shell-topbar-left{min-width:0;flex:1 1}.app-layout.shell-compact .shell-topbar{padding:0 var(--space-lg);gap:var(--space-sm)}.app-layout.shell-compact .shell-topbar-right{gap:var(--space-sm)}.app-layout.shell-compact .shell-site-picker{width:100%;min-width:0}.app-layout.shell-compact .shell-account-menu{width:min(280px,calc(100vw - 32px))}.shell-icon-btn{width:44px;height:44px;min-width:44px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.shell-icon-btn:hover{background:var(--color-primary-light);border-color:rgba(0,64,140,.18);color:var(--color-primary-dark)}.shell-icon{display:inline-flex;width:18px;height:18px}.shell-icon svg{width:100%;height:100%}.shell-site-picker{width:min(100%,300px)}.shell-select{width:100%;min-height:44px;padding:0 42px 0 16px;border-radius:14px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371819a' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.shell-select:focus{border-color:rgba(0,64,140,.28);box-shadow:0 0 0 3px rgba(0,64,140,.12)}.shell-select-compact{width:80px;min-width:80px}.language-select{position:relative;flex:0 0 auto}.language-select-trigger{min-width:94px;min-height:52px;padding:0 12px;display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:8px;border-radius:18px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font:inherit;cursor:pointer;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.language-select-trigger:hover{background:var(--color-primary-light);border-color:rgba(0,64,140,.18)}.language-select-trigger:focus-visible,.language-select.is-open .language-select-trigger{border-color:rgba(45,103,190,.72);box-shadow:0 0 0 4px rgba(45,103,190,.2)}.language-select-flag{width:22px;display:inline-flex;align-items:center;justify-content:center;font-size:19px;line-height:1}.language-select-code{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1;letter-spacing:.02em}.language-select-chevron{width:18px;height:18px;color:var(--text-tertiary);transition:transform var(--transition-fast)}.language-select.is-open .language-select-chevron{transform:rotate(180deg)}.language-select-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:30;width:156px;max-height:min(380px,calc(100vh - var(--shell-topbar-height) - 24px));overflow-y:auto;padding:8px;border-radius:16px;border:1px solid var(--border-color);background:var(--bg-elevated);box-shadow:var(--shadow-lg)}.language-select-option{width:100%;min-height:44px;padding:0 10px;display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:10px;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;outline:none;transition:color var(--transition-fast),background var(--transition-fast)}.language-select-option:focus-visible,.language-select-option:hover{background:var(--bg-secondary);color:var(--text-primary)}.language-select-option.is-selected{color:var(--text-primary)}.language-select-option-label{min-width:0}.language-select-check{width:18px;height:18px;color:var(--color-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.searchable-church-select{position:relative;width:100%;min-width:0}.searchable-church-select-trigger{width:100%;min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:10px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:left;outline:none;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.searchable-church-select-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchable-church-select-trigger>span.is-placeholder{color:var(--text-tertiary)}.searchable-church-select-trigger:hover:not(:disabled){border-color:var(--border-color-hover);background:color-mix(in srgb,var(--bg-secondary) 58%,var(--bg-primary))}.searchable-church-select-trigger:focus-visible,.searchable-church-select-trigger[aria-expanded=true]{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,64,140,.1)}.searchable-church-select-trigger:disabled{cursor:not-allowed;opacity:.66;background:var(--bg-secondary)}.searchable-church-select-caret,.searchable-church-select-leading{color:var(--text-tertiary)}.searchable-church-select-caret{transition:transform var(--transition-fast)}.searchable-church-select-trigger[aria-expanded=true] .searchable-church-select-caret{transform:rotate(180deg)}.searchable-church-select--shell .searchable-church-select-trigger{min-height:44px;padding:0 14px;border-radius:var(--radius-md);font-weight:var(--font-weight-medium)}.searchable-church-select--filter .searchable-church-select-trigger{min-height:44px;padding:0 12px;border-radius:var(--access-control-radius)}.searchable-church-select--form .searchable-church-select-trigger{min-height:48px;padding:0 var(--space-lg);border-width:2px;border-radius:var(--radius-md);font-size:var(--font-size-base)}.searchable-church-select-menu{position:fixed;z-index:320;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-xl)}.searchable-church-select-search{position:relative;flex:0 0 auto;padding:12px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.searchable-church-select-search>svg{position:absolute;left:24px;top:50%;color:var(--text-tertiary);pointer-events:none;transform:translateY(-50%)}.searchable-church-select-search input{width:100%;min-height:42px;padding:0 12px 0 38px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);outline:none}.searchable-church-select-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,64,140,.1)}.searchable-church-select-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:6px;scrollbar-width:thin}.searchable-church-select-group+.searchable-church-select-group,.searchable-church-select-options+.searchable-church-select-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--border-color)}.searchable-church-select-group-label{padding:6px 10px 4px;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:0}.searchable-church-select-option.searchable-church-select-group-option{min-height:36px;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.searchable-church-select-option.searchable-church-select-group-option:not(.is-selected){background:color-mix(in srgb,var(--bg-secondary) 70%,transparent)}.searchable-church-select-option{width:100%;min-height:40px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:8px 10px;border:0;border-radius:var(--access-control-radius);background:transparent;color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:left;cursor:pointer}.searchable-church-select-option>svg{color:transparent}.searchable-church-select-option:focus-visible,.searchable-church-select-option:hover{background:var(--bg-secondary);outline:none}.searchable-church-select-option.is-selected{background:var(--color-primary-light);color:var(--color-primary-dark)}.searchable-church-select-option.is-selected>svg{color:var(--color-primary)}.searchable-church-select-empty{padding:var(--space-xl) var(--space-lg);color:var(--text-tertiary);font-size:var(--font-size-sm);text-align:center}.shell-account{position:relative}.shell-account-trigger{min-height:52px;padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-sm);border-radius:18px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);display:inline-flex;align-items:center;gap:var(--space-md);cursor:pointer;transition:all var(--transition-fast)}.shell-account-trigger:hover,.shell-account.open .shell-account-trigger{background:var(--color-primary-light);border-color:rgba(0,64,140,.18)}.shell-account-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary-dark);display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex-shrink:0}.shell-account-meta{min-width:0;text-align:left}.shell-account-name{display:block;max-width:180px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.shell-account-role{display:block;margin-top:2px;font-size:var(--font-size-xs)}.shell-account-caret,.shell-account-role{color:var(--text-tertiary)}.shell-account-menu{position:absolute;top:calc(100% + 10px);right:0;width:260px;padding:var(--space-md);border-radius:18px;border:1px solid var(--border-color);background:var(--bg-elevated);box-shadow:var(--shadow-lg)}.shell-account-menu-header{padding:var(--space-sm) var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-color);margin-bottom:var(--space-sm)}.shell-account-menu-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.shell-account-menu-email,.shell-account-menu-role{margin-top:4px;font-size:var(--font-size-xs);color:var(--text-tertiary)}.shell-account-menu-item{width:100%;min-height:44px;padding:0 var(--space-md);border-radius:12px;border:none;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;gap:var(--space-sm);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.shell-account-menu-item:hover{background:var(--color-primary-light);color:var(--color-primary-dark)}.shell-overlay{z-index:98}.main-content{flex:1 1;min-height:100vh;min-width:0}.main-header{height:var(--header-height);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-xl);position:sticky;top:var(--shell-topbar-height);z-index:50;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(24,63,135,.04)}[data-theme=dark] .main-header{background:var(--bg-primary);box-shadow:0 8px 24px rgba(0,0,0,.12)}.main-header-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);overflow-wrap:anywhere}.main-header-actions{display:flex;align-items:center;gap:var(--space-md);min-width:0}.page-content{padding:var(--space-xl);max-width:var(--content-max-width);margin:0 auto}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-xl);margin-bottom:var(--space-2xl)}.range-pill-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.range-pill{appearance:none;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;min-height:44px;padding:0 var(--space-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all .2s ease}.range-pill:hover{border-color:var(--color-primary);color:var(--text-primary)}.range-pill.active{background:rgba(28,79,140,.18);border-color:var(--color-primary);color:var(--color-primary-on-soft);box-shadow:inset 0 0 0 1px rgba(28,79,140,.22)}.dashboard-date-filter{padding:var(--space-md) var(--space-lg)}.dashboard-date-filter-toolbar{display:grid;grid-template-columns:1fr;align-items:end;gap:var(--space-md)}.dashboard-date-presets{min-width:0;overflow-x:auto;flex-wrap:nowrap;gap:6px;padding-bottom:2px}.dashboard-date-presets .range-pill{min-height:32px;padding:0 var(--space-md);font-size:var(--font-size-xs);white-space:nowrap}.dashboard-date-filter-field{gap:var(--space-xs)}.dashboard-date-filter-field .form-label{margin-bottom:0;font-size:.7rem}.dashboard-date-filter-field .form-input{min-width:0;min-height:42px;padding:8px var(--space-md);border-width:1px;font-size:var(--font-size-sm)}.dashboard-date-filter-actions{display:flex;align-items:flex-end}.dashboard-date-filter-actions .btn{width:100%;min-height:42px;padding:0 var(--space-lg);font-size:var(--font-size-sm)}@media (min-width:768px){.dashboard-date-filter-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content}.dashboard-date-presets{grid-column:1/-1}.dashboard-date-filter-actions .btn{width:auto}}@media (min-width:1280px){.dashboard-date-filter-toolbar{grid-template-columns:max-content minmax(150px,1fr) minmax(150px,1fr) max-content}.dashboard-date-presets{grid-column:auto}}.filter-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);align-items:end}.filter-group{display:flex;flex-direction:column;gap:var(--space-sm);min-width:0}.filter-group-actions{justify-content:flex-end}.compact-date-filter,.session-date-filter{display:grid;gap:var(--space-sm);padding:var(--space-md) var(--space-lg)}.compact-date-filter-controls,.session-date-filter-controls{border-top:0;padding-top:0;gap:var(--space-md)}.compact-date-filter-controls .filter-group,.session-date-filter-controls .filter-group{gap:var(--space-xs)}.compact-date-filter-controls .form-label,.session-date-filter-controls .form-label{margin-bottom:0;font-size:.7rem}.compact-date-filter-controls .form-input,.session-date-filter-controls .form-input{min-height:42px;padding:8px var(--space-md);border-width:1px;font-size:var(--font-size-sm)}.compact-date-filter-actions,.session-date-filter-actions{display:flex;align-items:flex-end;flex-direction:row;flex-wrap:nowrap;gap:var(--space-sm)}.compact-date-filter-actions .btn,.session-date-filter-actions .btn{min-height:42px;padding:0 var(--space-lg);font-size:var(--font-size-sm)}.session-detail-header .main-header-actions{gap:var(--space-sm)}.session-detail-header-action{min-height:44px;padding-inline:var(--space-md)}.session-list-actions{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.session-list-actions .btn{min-width:0;padding-inline:var(--space-sm);font-size:var(--font-size-xs)}@media (min-width:1025px){.compact-date-filter-controls,.session-date-filter-controls{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) max-content}.compact-date-filter-actions,.session-date-filter-actions{grid-column:auto}}.audit-filter-bar{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr);gap:var(--space-lg);align-items:end}.audit-table-detail{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-width:260px}.audit-detail-modal{max-width:760px}.audit-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);margin:0 0 var(--space-xl)}.audit-detail-meta div{min-width:0}.audit-detail-meta dt{margin-bottom:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.audit-detail-meta dd{margin:0;overflow-wrap:anywhere}.audit-detail-sections{display:grid;gap:var(--space-lg)}.audit-detail-sections section{min-width:0}.audit-detail-sections h3{margin-bottom:var(--space-sm);font-size:var(--font-size-sm)}.audit-detail-sections pre{max-height:280px;margin:0;overflow:auto;padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--font-size-xs);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.dashboard-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl)}.dashboard-warning-section{margin-bottom:var(--space-xl)}.dashboard-warning-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-md)}.dashboard-warning-heading{display:flex;align-items:center;gap:var(--space-sm);color:var(--text-primary)}.dashboard-warning-heading svg{color:var(--color-warning);flex-shrink:0}.dashboard-warning-heading h2{font-size:var(--font-size-lg);line-height:var(--line-height-tight)}.dashboard-warning-section-header p{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-sm)}.dashboard-warning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}.dashboard-warning-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:316px;padding:var(--space-lg);overflow:hidden;border-radius:var(--access-radius);box-shadow:var(--shadow-sm)}.dashboard-warning-card:before{position:absolute;top:0;right:0;left:0;height:3px;background:var(--warning-accent);content:""}.dashboard-warning-card.is-danger{--warning-accent:var(--color-danger);--warning-soft:var(--color-danger-light)}.dashboard-warning-card.is-warning{--warning-accent:var(--color-warning);--warning-soft:var(--color-warning-light)}.dashboard-warning-card.is-info{--warning-accent:var(--color-info);--warning-soft:var(--color-info-light)}.dashboard-warning-card-header{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-md);align-items:start}.dashboard-warning-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--access-radius);background:var(--warning-soft);color:var(--warning-accent)}.dashboard-warning-card-header h3{margin:0;font-size:var(--font-size-base);line-height:var(--line-height-tight)}.dashboard-warning-card-header p{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.dashboard-warning-metric{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);min-height:62px;margin:var(--space-lg) 0 var(--space-md)}.dashboard-warning-metric>div{display:flex;align-items:baseline;gap:var(--space-sm);min-width:0}.dashboard-warning-metric strong{color:var(--text-primary);font-size:var(--font-size-3xl);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-warning-metric span{color:var(--text-secondary);font-size:var(--font-size-sm)}.dashboard-warning-metric .dashboard-warning-total{color:var(--text-primary);font-weight:var(--font-weight-semibold);text-align:right;overflow-wrap:anywhere}.dashboard-warning-churches{flex:1 1;max-height:176px;overflow-y:auto;border-top:1px solid var(--border-color);scrollbar-width:thin}.dashboard-warning-church-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);align-items:center;min-height:48px;padding:var(--space-sm) 0;border-bottom:1px solid var(--border-color)}.dashboard-warning-church-row>span{min-width:0;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);overflow-wrap:anywhere}.dashboard-warning-church-row small{max-width:132px;color:var(--text-secondary);font-size:var(--font-size-xs);text-align:right;overflow-wrap:anywhere}.dashboard-warning-empty{min-height:72px;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);color:var(--color-success);font-size:var(--font-size-sm)}.dashboard-warning-card-loading{justify-content:space-between;gap:var(--space-lg)}.dashboard-chart-card{min-width:0}@media (max-width:1080px){.dashboard-warning-grid{grid-template-columns:1fr}.dashboard-warning-card{min-height:0}.dashboard-warning-churches{max-height:220px}}.dashboard-chart-header{gap:var(--space-md)}.dashboard-chart-tabs{margin-bottom:0;border:none;flex-shrink:0}.dashboard-chart-panel{min-height:240px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:var(--font-size-sm);min-width:0}.dashboard-trend-panel{overflow:hidden}.dashboard-trend-chart{position:relative;width:100%;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-sm)}.dashboard-trend-svg-wrap{position:relative;min-height:0}.dashboard-trend-hit-area{cursor:pointer}.dashboard-trend-tooltip{position:absolute;z-index:2;min-width:164px;max-width:220px;padding:var(--space-md);border-radius:var(--radius-md);border:1px solid rgba(122,162,247,.22);background:rgba(10,20,38,.96);box-shadow:0 18px 36px rgba(0,0,0,.32);pointer-events:none}.dashboard-trend-tooltip-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-sm)}.dashboard-trend-tooltip-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);font-size:var(--font-size-xs);color:var(--text-secondary)}.dashboard-trend-tooltip-row+.dashboard-trend-tooltip-row{margin-top:4px}.dashboard-trend-tooltip-row strong{color:var(--text-primary);font-weight:var(--font-weight-semibold);text-align:right}.dashboard-trend-axis{position:relative;min-height:20px}.dashboard-trend-axis-label{position:absolute;bottom:0;transform:translateX(-50%);font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap}.dashboard-monthly-panel{min-height:460px;padding:var(--space-lg);align-items:stretch;justify-content:stretch}.dashboard-monthly-chart{min-height:400px;grid-template-rows:minmax(300px,1fr) auto auto}.dashboard-trend-grid-line{stroke:var(--border-color);stroke-width:1;opacity:.65;vector-effect:non-scaling-stroke}.dashboard-trend-y-label{fill:var(--text-tertiary);font-size:11px}.dashboard-monthly-legend{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.dashboard-monthly-legend-item{display:inline-flex;align-items:center;gap:var(--space-sm);min-width:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.dashboard-monthly-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.dashboard-donut{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-xl)}.dashboard-donut svg{width:min(180px,100%);height:auto;flex-shrink:0}.dashboard-donut-legend{display:flex;flex-direction:column;gap:var(--space-sm);min-width:0}.dashboard-donut-legend-item{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm)}.dashboard-donut-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.dashboard-donut-label{color:var(--text-secondary);min-width:0}.dashboard-donut-value{margin-left:auto;font-weight:var(--font-weight-semibold)}.metric-card{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bg-elevated) 0,var(--bg-primary) 100%);container-type:inline-size}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.metric-card-primary:before{background:linear-gradient(90deg,var(--color-primary),var(--color-info))}.metric-card-success:before{background:linear-gradient(90deg,var(--color-success),#34d399)}.metric-card-warning:before{background:linear-gradient(90deg,var(--color-warning),#fbbf24)}.metric-card-danger:before{background:linear-gradient(90deg,var(--color-danger),#f87171)}.metric-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:var(--space-sm) 0;min-width:0;line-height:1.05}.metric-value-currency{font-size:clamp(1rem,7vw,2.5rem);font-size:clamp(1rem,11cqw,2.5rem);letter-spacing:-.055em;white-space:nowrap;overflow:hidden;text-overflow:clip;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.metric-trend{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-top:var(--space-sm)}.metric-trend-up{color:var(--color-success)}.metric-trend-down{color:var(--color-danger)}.signature-pad-wrapper{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);background:linear-gradient(180deg,var(--bg-elevated),var(--bg-primary));box-shadow:var(--shadow-sm)}.signature-pad-wrapper.is-disabled{opacity:.72}.signature-pad-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.signature-pad-wrapper.is-signed{border-color:color-mix(in srgb,var(--color-success) 50%,var(--border-color))}.signature-pad-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.signature-pad-hint{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.signature-pad-status{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--space-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.03em;white-space:nowrap;border:1px solid transparent}.signature-pad-status.is-empty{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-color)}.signature-pad-status.is-signed{background:var(--color-success-light);color:var(--color-success-on-soft);border-color:color-mix(in srgb,var(--color-success) 38%,transparent)}.signature-canvas-shell{position:relative;padding:var(--space-sm);border-radius:var(--radius-lg);background:radial-gradient(circle at top left,rgba(59,130,246,.09),transparent 34%),linear-gradient(180deg,transparent calc(100% - 40px),rgba(30,64,175,.14) calc(100% - 40px),rgba(30,64,175,.14) calc(100% - 38px),transparent calc(100% - 38px)),linear-gradient(180deg,#ffffff,#f8fafc);border:1px solid color-mix(in srgb,var(--border-color) 80%,#ffffff);overflow:hidden}.signature-canvas-shell.is-empty:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 0),linear-gradient(180deg,rgba(37,99,235,.04) 1px,transparent 0);background-size:24px 24px;pointer-events:none}.signature-canvas-guide{position:absolute;inset:0;z-index:1;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-lg)}.signature-canvas-guide-text{color:color-mix(in srgb,var(--text-secondary) 92%,#ffffff);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.28);border-radius:var(--radius-full);padding:6px 12px;box-shadow:var(--shadow-sm)}.signature-canvas-guide-line{width:min(72%,320px);height:1px;background:linear-gradient(90deg,transparent,rgba(37,99,235,.3),transparent)}.signature-canvas{border-radius:var(--radius-md);cursor:crosshair;touch-action:none;background:white;width:100%;position:relative;z-index:2}.signature-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-top:var(--space-md)}.signature-actions-group{display:inline-flex;align-items:center;gap:var(--space-sm)}.signature-pad-footnote{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);max-width:460px}.session-denomination-group{display:flex;flex-direction:column;gap:var(--space-sm)}.session-denomination-group+.session-denomination-group{margin-top:var(--space-lg)}.session-denomination-group-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.recap-section{background:linear-gradient(135deg,var(--color-primary-light),var(--bg-elevated));border-radius:var(--radius-lg);padding:var(--space-xl);border:1px solid var(--border-color);container-type:inline-size}[data-theme=dark] .recap-section{background:linear-gradient(135deg,rgba(99,102,241,.08),var(--bg-elevated))}.recap-total{display:block;max-width:100%;font-size:clamp(1.45rem,3vw,2.75rem);font-size:clamp(1.45rem,10cqw,2.75rem);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-.055em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recap-additional-currency-totals{display:grid;gap:6px;margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.recap-additional-currency-total{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);min-width:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.recap-additional-currency-total span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recap-additional-currency-total strong{flex:0 0 auto;color:var(--text-primary);font-size:var(--font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.additional-currency-inline-list{display:grid;gap:2px;margin-top:4px;color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.additional-currency-inline-list small{display:block;font:inherit;line-height:1.35;white-space:nowrap}.additional-currency-summary-block{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.additional-currency-summary-block h2{margin:0 0 var(--space-sm);color:var(--text-primary);font-size:var(--font-size-sm)}.additional-currency-summary-list{display:grid;gap:var(--space-sm)}.additional-currency-summary-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);color:var(--text-secondary);font-size:var(--font-size-xs)}.additional-currency-summary-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.additional-currency-summary-list strong{flex:0 0 auto;color:var(--text-primary);font-size:var(--font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recap-category{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) 0;border-bottom:1px solid var(--border-color)}.recap-category:last-child{border-bottom:none}.session-layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--space-xl);align-items:start}.session-layout-grid>*{min-width:0}.session-workspace-page{padding-top:var(--space-lg)}.session-recap-column{position:sticky;top:calc(var(--header-height) + var(--space-xl));min-width:0}.session-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);align-items:start}.session-form-grid>*{min-width:0}.session-date-label-row{position:relative;display:flex;align-items:center;width:max-content;max-width:100%;gap:6px;margin-bottom:var(--space-sm)}.session-date-label-row .form-label{margin-bottom:0}.session-date-lock-tooltip{display:inline-flex}.session-date-lock-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;border-radius:var(--radius-full);outline:0;background:transparent;color:var(--text-tertiary);cursor:help}.session-date-lock-tooltip-trigger:focus-visible,.session-date-lock-tooltip-trigger:hover{background:var(--color-primary-light);color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.session-date-lock-tooltip-content{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:max-content;max-width:min(280px,calc(100vw - 80px));padding:7px 10px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-lg);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.45;text-transform:none;letter-spacing:normal;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast);pointer-events:none}.session-date-lock-tooltip:focus-within .session-date-lock-tooltip-content,.session-date-lock-tooltip:hover .session-date-lock-tooltip-content{opacity:1;visibility:visible;transform:translateY(0)}.session-notes-attachment-grid{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-lg);align-items:start}.session-payment-notes-field .form-textarea{height:132px;min-height:132px;resize:vertical}.session-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);align-items:start}.session-denomination-card,.session-details-card,.session-signature-card{overflow:hidden}.session-details-card{container-name:session-details;container-type:inline-size}@container session-details (min-width: 840px){.session-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr)}}@container session-details (min-width: 1080px){.session-form-grid.session-form-grid-special-event{grid-template-columns:minmax(150px,170px) minmax(220px,1.15fr) minmax(190px,1fr) minmax(260px,1.35fr) minmax(112px,130px);gap:var(--space-md)}}.session-item-grid{display:grid;grid-template-columns:minmax(0,1fr) 100px auto;gap:var(--space-md);align-items:end}.session-detail-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}.session-detail-notes{width:100%;min-width:0}.session-detail-readonly-field{min-width:0;margin-bottom:0}.session-detail-notes .form-textarea,.session-detail-readonly-field .form-input{border-width:1px;background:var(--bg-secondary);cursor:text}.session-detail-readonly-field .session-detail-offering-type[data-offering-type=PERSEMBAHAN]{color:#ffffff;background-color:#2833db;border-color:#2833db}.session-detail-readonly-field .session-detail-offering-type[data-offering-type=PERPULUHAN]{color:#000000;background-color:#f8d74e;border-color:#f8d74e;font-weight:var(--font-weight-bold)}.session-detail-notes-content{height:132px;min-height:132px;line-height:1.6;resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere}.session-denomination-list{display:flex;flex-direction:column;gap:var(--space-sm)}.session-denomination-list-compact{display:grid;gap:var(--space-sm)}.session-denomination-list-compact,.session-denomination-list-compact.session-denomination-list-fixed{grid-template-columns:repeat(4,minmax(0,1fr))}.session-denomination-list-fixed .session-denomination-subtotal{justify-content:flex-end}.session-denomination-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.session-denomination-card-header h2{margin:0 0 var(--space-xs);font-size:var(--font-size-lg)}.session-denomination-card-header p{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.session-additional-currency-card{overflow:hidden}.session-additional-currency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-sm)}.session-additional-currency-empty{padding:var(--space-lg);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);text-align:center}.session-additional-currency-tile{display:flex;flex-direction:column;gap:var(--space-sm);min-width:0;padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.session-additional-currency-tile.is-active{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success-light) 72%,var(--bg-secondary));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success) 16%,transparent)}.session-additional-currency-tile.is-invalid{border-color:var(--color-danger);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-danger) 14%,transparent)}.session-additional-currency-title{min-width:0;overflow:hidden;color:var(--text-primary);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.session-denomination-tile{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);min-width:0;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);transition:all .15s ease}.session-denomination-tile.is-active{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success-light) 72%,var(--bg-secondary));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success) 16%,transparent)}.session-denomination-tile.is-active .session-denomination-input-field input,.session-denomination-tile.is-active .session-denomination-quantity-field{border-color:color-mix(in srgb,var(--color-success) 60%,var(--border-color));background:color-mix(in srgb,var(--color-success-light) 45%,var(--bg-elevated))}.session-denomination-tile.is-invalid{border-color:var(--color-danger);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-danger) 14%,transparent)}.session-denomination-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:32px;min-width:0}.session-denomination-controls{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-sm);align-items:center}.session-denomination-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.session-denomination-remove{flex:0 0 auto;color:var(--text-secondary)}.session-denomination-remove:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-light)}.session-denomination-fields{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(88px,.65fr);gap:var(--space-sm)}.session-denomination-input-field{display:flex;flex-direction:column;gap:6px;min-width:0}.session-denomination-input-field span{color:var(--text-secondary);font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.session-denomination-input-field input,.session-denomination-input-field select{width:100%;min-width:0;min-height:48px;padding:0 var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:0;background:var(--bg-elevated);color:var(--text-primary);font-size:1.05rem;font-weight:var(--font-weight-bold)}.session-denomination-input-field input{text-align:right}.session-denomination-input-field select{appearance:none;padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,var(--text-secondary) 50%),linear-gradient(135deg,var(--text-secondary) 50%,transparent 50%);background-position:calc(100% - 16px) 20px,calc(100% - 11px) 20px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.session-denomination-input-field input:focus,.session-denomination-input-field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.session-quantity-button{appearance:none;border:1px solid var(--border-color);background:var(--bg-elevated);color:var(--text-primary);border-radius:var(--radius-md);min-height:56px;padding:0;font-size:1.5rem;font-weight:var(--font-weight-semibold);line-height:1;transition:all .15s ease}.session-quantity-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:rgba(28,79,140,.08)}.session-quantity-button:disabled{opacity:.45;cursor:not-allowed}.session-denomination-count{appearance:none;min-height:48px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;gap:8px;padding:0 var(--space-sm);color:inherit;transition:all .15s ease}.session-denomination-count:hover{border-color:var(--color-primary);color:var(--color-primary);background:rgba(28,79,140,.08)}.session-denomination-count-value{font-size:1.125rem;font-weight:var(--font-weight-bold);color:var(--text-primary)}.session-denomination-count-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--font-weight-semibold);transform:translateY(-5px);display:inline-block}.session-denomination-quantity-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-sm);min-height:48px;padding:0 var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-elevated)}.session-denomination-quantity-field span{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--font-weight-semibold)}.session-denomination-quantity-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font-size:1.125rem;font-weight:var(--font-weight-bold);text-align:right}.session-denomination-subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);min-height:22px;color:var(--text-secondary);font-size:var(--font-size-xs)}.session-denomination-subtotal strong{color:var(--text-primary);font-size:var(--font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.session-denomination-errors{margin:0;padding-left:var(--space-lg);color:var(--color-danger);font-size:var(--font-size-xs)}.session-denomination-empty{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary)}.session-denomination-empty p{margin:0}.session-attachment-preview{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-sm);padding:var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);font-size:var(--font-size-sm)}.session-attachment-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-signature-upload-list{display:grid;gap:0}.session-signature-upload{display:grid;gap:var(--space-md);padding:var(--space-lg) 0;border-top:1px solid var(--border-color)}.session-signature-upload>.form-group{margin-bottom:0}.session-signature-upload:first-child{padding-top:0;border-top:0}.session-signature-upload:last-child{padding-bottom:0}.session-signature-upload-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.session-evidence-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:var(--space-xs);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary)}.session-evidence-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:0 var(--space-sm);border:1px solid transparent;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--text-secondary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.session-evidence-tab:hover{border-color:var(--border-color);color:var(--text-primary)}.session-evidence-tab.is-active{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary-on-soft)}.session-evidence-tab.is-complete{border-color:color-mix(in srgb,var(--color-success) 45%,var(--border-color));background:var(--color-success-light);color:var(--color-success-on-soft)}.session-evidence-tab.is-active.is-complete{border-color:var(--color-success);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success) 18%,transparent)}.session-evidence-tab-check{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:var(--color-success-solid);color:#ffffff}.session-evidence-panel{margin-top:var(--space-md)}.session-evidence-panel .session-signature-upload{padding:0;border-top:0}.session-evidence-panel .session-camera-evidence{max-width:none;margin-top:0;padding-top:0;border-top:0}.session-evidence-panel .camera-capture-status,.session-evidence-panel .signature-pad-status{display:none}.session-signature-card .signature-pad-wrapper{padding:var(--space-md)}.session-signature-card .signature-pad-header{align-items:center;margin-bottom:var(--space-sm)}.session-signature-card .signature-pad-status{min-height:28px;padding:0 10px;letter-spacing:0}.session-signature-card .signature-canvas-shell{padding:var(--space-xs)}.session-signature-card .signature-actions{margin-top:var(--space-sm)}.camera-capture{display:grid;gap:var(--space-md);min-width:0;padding:var(--space-lg);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary)}.camera-capture-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:24px}.camera-capture-status{display:inline-flex;align-items:center;gap:6px;color:var(--color-success);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.camera-capture-empty,.camera-capture-live{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary)}.camera-capture-preview{position:relative;display:grid;place-items:center;width:100%;min-height:120px;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff}.camera-capture-video{width:100%;height:100%;display:block;object-fit:cover;background:#0f172a}.camera-capture-preview img{display:block;width:100%;height:auto;object-fit:contain;background:#fff}.camera-capture-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-lg);color:var(--text-secondary);text-align:center;font-size:var(--font-size-sm)}.camera-capture-loading{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:rgba(15,23,42,.72);font-size:var(--font-size-sm)}.camera-capture-error{color:var(--color-danger);font-size:var(--font-size-sm);line-height:1.45}.camera-capture-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.camera-check-page{max-width:1120px}.camera-check-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:var(--space-xl);align-items:start}.camera-check-layout .card{min-width:0}.camera-check-section-heading{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-lg)}.camera-check-section-heading>svg{flex:0 0 auto;width:22px;height:22px;color:var(--color-primary)}.camera-check-section-heading h2{margin:0;font-size:var(--font-size-lg)}.camera-check-section-heading p{margin:var(--space-xs) 0 0;color:var(--text-secondary);line-height:1.5}.camera-check-status-list{display:grid;gap:var(--space-md)}.camera-check-status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:44px;padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.camera-check-status-row:last-child{padding-bottom:0;border-bottom:0}.camera-check-badge,.camera-check-status-name{display:inline-flex;align-items:center;gap:var(--space-xs)}.camera-check-badge svg,.camera-check-status-name svg{flex:0 0 auto;width:17px;height:17px}.camera-check-badge,.camera-check-status-name{color:var(--text-secondary)}.camera-check-badge{border-radius:999px;padding:7px 10px;background:var(--bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:right}.camera-check-badge.success,.camera-check-result.success{color:var(--color-success)}.camera-check-badge.danger,.camera-check-result.danger{color:var(--color-danger)}.camera-check-preview{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#020617}.camera-check-video{display:block;width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}.camera-check-preview-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.72)}.camera-check-preview-placeholder>svg{width:48px;height:48px}.camera-check-result{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs) var(--space-md);margin-top:var(--space-md);color:var(--text-secondary);line-height:1.5}.camera-check-code{color:var(--text-secondary);font-size:var(--font-size-sm)}.camera-check-code code{color:inherit}.camera-check-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)}.camera-check-actions .btn{min-height:44px}.camera-check-privacy{margin:var(--space-md) 0 0;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.5}.camera-check-troubleshooting{grid-column:1/-1}.camera-check-troubleshooting ul{display:grid;gap:var(--space-sm);margin:0;padding-left:1.25rem;color:var(--text-secondary);line-height:1.55}@media (max-width:820px){.camera-check-layout{grid-template-columns:1fr}.camera-check-troubleshooting{grid-column:auto}}@media (max-width:560px){.camera-check-header{min-height:var(--header-height);height:auto;padding-top:var(--space-md);padding-bottom:var(--space-md)}.camera-check-status-row{align-items:flex-start;flex-direction:column;gap:var(--space-sm)}.camera-check-actions .btn{width:100%}}body.camera-capture-open{overflow:hidden;overscroll-behavior:none}.camera-capture-fullscreen{position:fixed;z-index:3000;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#020617;color:#ffffff;isolation:isolate}.camera-capture-fullscreen-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:calc(var(--space-md) + env(safe-area-inset-top)) calc(var(--space-lg) + env(safe-area-inset-right)) var(--space-md) calc(var(--space-lg) + env(safe-area-inset-left));background:rgb(2 6 23/94%)}.camera-capture-fullscreen-heading{display:grid;gap:3px;min-width:0}.camera-capture-fullscreen-heading strong{font-size:var(--font-size-lg);line-height:1.25}.camera-capture-fullscreen-close{display:inline-grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid rgb(255 255 255/24%);border-radius:50%;background:rgb(255 255 255/10%);color:#ffffff;cursor:pointer}.camera-capture-fullscreen-close:focus-visible,.camera-capture-fullscreen-close:hover{border-color:rgb(255 255 255/55%);background:rgb(255 255 255/18%)}.camera-capture-live-fullscreen{width:100%;height:100%;min-height:0;aspect-ratio:auto;border:0;border-radius:0;background:#000000}.camera-capture-live-fullscreen .camera-capture-video{object-fit:contain;transform:scaleX(-1)}.camera-capture-review-fullscreen{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0;overflow:auto;padding:var(--space-md);background:#000000}.camera-capture-review-canvas{display:block;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--radius-md);background:#ffffff}.camera-capture-fullscreen-footer{display:grid;justify-items:center;gap:var(--space-sm);padding:var(--space-md) calc(var(--space-lg) + env(safe-area-inset-right)) calc(var(--space-md) + env(safe-area-inset-bottom)) calc(var(--space-lg) + env(safe-area-inset-left));background:rgb(2 6 23/94%)}.camera-capture-fullscreen-error{max-width:720px;color:#fca5a5;font-size:var(--font-size-sm);line-height:1.4;text-align:center}.camera-capture-fullscreen-action{min-width:min(240px,100%);min-height:52px;justify-content:center}.camera-capture-review-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-sm)}.camera-capture-review-actions .btn{min-height:44px;justify-content:center}@media (orientation:landscape) and (max-height:600px){.camera-capture-fullscreen-header{padding-top:calc(var(--space-sm) + env(safe-area-inset-top));padding-bottom:var(--space-sm)}.camera-capture-fullscreen-footer{padding-top:var(--space-sm);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom))}.camera-capture-fullscreen-action{min-height:44px}}.session-signature-detail-evidence{display:grid;grid-template-columns:minmax(0,520px);gap:var(--space-lg);margin-top:var(--space-lg)}.session-camera-evidence,.session-detail-camera-evidence{margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--border-color)}.session-camera-evidence .camera-capture,.session-detail-camera-evidence{max-width:520px}.session-signature-detail-item{min-width:0}.session-signature-detail-media{position:relative;width:100%;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff}.session-signature-detail-media.is-signature{height:180px}.session-signature-detail-media.is-photo{min-height:120px;aspect-ratio:auto}.session-signature-detail-media.is-photo .protected-attachment-preview-image{height:auto}.session-evidence-preview-button{display:block;padding:0;color:var(--text-primary);cursor:zoom-in;font:inherit}.protected-attachment-preview-image{display:block;width:100%;height:100%;object-fit:contain}.protected-attachment-preview-state{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-sm);width:100%;height:100%;min-height:120px;padding:var(--space-md);color:var(--text-secondary);font-size:var(--font-size-xs);text-align:center}.protected-attachment-preview-state.is-error{color:var(--color-danger-light)}.session-protected-photo-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-sm);width:100%;height:100%;padding:var(--space-lg);background:var(--bg-tertiary);color:var(--text-secondary);text-align:center;word-break:break-word}.session-detail-evidence-tabs{display:grid;margin-bottom:var(--space-md)}.session-detail-evidence-list{display:flex;flex-direction:column;gap:0}.session-detail-evidence-entry,.session-detail-evidence-entry.is-empty{display:none}.session-detail-evidence-entry.is-active{display:block}.session-detail-signature-card{padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary)}.session-detail-evidence-entry.session-detail-camera-evidence{max-width:none;margin-top:0;padding-top:0;border-top:0}.session-detail-evidence-empty{display:none}.session-detail-evidence-card .session-detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.session-detail-evidence-card .session-signature-detail-evidence{margin-top:var(--space-md)}.session-autosave-status{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:32px;color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.session-autosave-status.is-saved{color:var(--color-success)}.session-autosave-status.is-error{color:var(--color-warning)}.session-autosave-spinner{animation:spin .8s linear infinite}.session-mobile-actions{display:none}.session-mobile-actions .session-autosave-status{grid-column:1/-1;justify-content:center}.empty-state{text-align:center;padding:var(--space-4xl) var(--space-xl)}.empty-state-icon{width:80px;height:80px;margin:0 auto var(--space-xl);border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl)}.empty-state-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm)}.empty-state-description{color:var(--text-secondary);margin-bottom:var(--space-xl)}.access-denied-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-md)}.tabs{display:flex;gap:var(--space-xs);border-bottom:2px solid var(--border-color);margin-bottom:var(--space-xl);overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);background:none;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap;transition:all var(--transition-fast);min-height:44px;font-family:var(--font-family)}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-xl);background:linear-gradient(135deg,#1e1b4b,#312e81 30%,#3730a3 60%,#4338ca)}[data-theme=dark] .login-page{background:var(--bg-secondary)}.login-card{width:100%;max-width:420px;padding:var(--space-3xl);background:rgba(255,255,255,.95);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl),0 0 60px rgba(99,102,241,.15);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.login-language-select{position:relative;z-index:2;display:flex;justify-content:flex-end;margin-bottom:var(--space-lg)}[data-theme=dark] .login-card{background:color-mix(in srgb,var(--bg-elevated) 95%,transparent)}.login-logo{text-align:center;margin-bottom:var(--space-2xl)}.login-logo-icon{width:64px;height:64px;border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffff,#eef3fa);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg);border:1px solid rgba(211,219,231,.9);box-shadow:0 12px 26px rgba(3,10,20,.18)}.login-logo-image{width:48px;height:48px;object-fit:contain}.login-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-sm)}.login-auto-redirect,.login-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm)}.login-auto-redirect{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);min-height:48px;line-height:1.35;text-align:center}.login-auto-redirect .spinner{width:20px;height:20px;flex:0 0 20px;border-width:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp var(--transition-base)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--border-color) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease infinite;border-radius:var(--radius-md)}.page-skeleton{min-width:0}.page-skeleton-title{width:clamp(140px,22vw,220px);height:28px}.page-skeleton-section-title{width:min(190px,58%);height:20px}.page-skeleton-copy{width:min(420px,72%);height:12px;margin-top:var(--space-sm)}.page-skeleton-caption{width:min(150px,48%);height:12px}.page-skeleton-label{width:min(88px,56%);height:12px}.page-skeleton-value{width:min(170px,82%);height:16px}.page-skeleton-control{width:100%;height:44px}.page-skeleton-textarea{width:100%;height:112px}.page-skeleton-action{width:112px;max-width:100%;height:44px;border-radius:var(--radius-lg)}.page-skeleton-icon-button{width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius-lg)}.page-skeleton-status{width:84px;height:28px;border-radius:var(--radius-full)}.page-skeleton-preset-row{min-width:0}.page-skeleton-preset{width:92px;height:40px;flex:0 0 92px;border-radius:var(--radius-full)}.page-skeleton-inline-heading{display:flex;align-items:center;gap:var(--space-sm)}.page-skeleton-icon{width:34px;height:34px;flex:0 0 34px;border-radius:50%}.page-skeleton-empty-icon{width:64px;height:64px;margin:0 auto var(--space-lg);border-radius:50%}.page-skeleton-warning-title{width:58%;height:18px}.page-skeleton-warning-value{width:34%;height:42px}.page-skeleton-warning-list{display:grid;gap:var(--space-sm)}.page-skeleton-list-line{width:100%;height:34px}.page-skeleton-chart{width:100%;height:100%;min-height:280px}.page-skeleton-field{min-width:0;margin-bottom:0}.page-skeleton-cell{width:min(150px,82%);height:14px}.page-skeleton-cell.is-short{width:44px}.page-skeleton-cell.is-total{width:112px;margin-left:auto}.page-skeleton-total{width:min(220px,84%);height:42px;margin-top:var(--space-sm)}.page-skeleton-denomination-label{width:56%;height:18px}.page-skeleton-denomination-input{width:100%;height:64px;margin-top:var(--space-md)}.page-skeleton-evidence-tab{width:78px;height:38px;flex:1 1;border-radius:var(--radius-lg)}.page-skeleton-evidence-media{width:100%;height:220px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none;background-position:0 0}}.app-loading-skeleton{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);background:var(--bg-primary)}.app-loading-sidebar{min-height:100vh;padding:var(--space-lg);border-right:1px solid var(--border-color);background:var(--bg-secondary)}.app-loading-logo{width:72px;height:72px;border-radius:var(--radius-lg)}.app-loading-nav{display:grid;gap:var(--space-md);margin-top:var(--space-3xl)}.app-loading-nav-item{width:82%;height:38px;border-radius:var(--radius-md)}.app-loading-main{min-width:0}.app-loading-topbar{min-height:var(--shell-topbar-height);padding:var(--space-md) var(--space-xl);display:grid;grid-template-columns:auto minmax(180px,360px) 1fr;align-items:center;gap:var(--space-md);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.app-loading-menu{width:44px}.app-loading-church,.app-loading-menu{height:44px;border-radius:var(--radius-md)}.app-loading-profile{justify-self:end;width:190px;height:44px;border-radius:var(--radius-full)}.page-skeleton-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg)}.page-skeleton-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:var(--space-md)}.page-skeleton-row{min-height:54px;padding:var(--space-md) 0;display:grid;grid-template-columns:1.5fr repeat(2,minmax(100px,1fr));align-items:center;gap:var(--space-lg);border-top:1px solid var(--border-color)}.page-skeleton-cell-wide{width:min(240px,86%);height:14px}@media (max-width:1024px){.app-loading-skeleton{display:block}.app-loading-sidebar{display:none}}@media (max-width:767px){.app-loading-topbar{grid-template-columns:auto minmax(0,1fr) auto;padding-inline:var(--space-md)}.app-loading-profile{width:44px}.page-skeleton-header{align-items:flex-start}.page-skeleton-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.page-skeleton-filter .page-skeleton-action{grid-column:1/-1;width:100%}.page-skeleton-row{grid-template-columns:repeat(2,minmax(0,1fr))}.page-skeleton-row .page-skeleton-cell-wide{grid-column:1/-1}.page-skeleton-title{width:min(150px,52vw);height:24px}.main-header-actions .page-skeleton-action{width:88px;height:40px}.page-skeleton-copy{width:82%}.page-skeleton-chart{min-height:220px}.page-skeleton-evidence-media{height:180px}.app-layout.sidebar-collapsed .app-shell,.app-shell{margin-left:0}.sidebar{width:min(82vw,300px);transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.shell-topbar{padding:0 var(--space-lg)}.shell-topbar,.shell-topbar-right{gap:var(--space-sm)}.language-select-trigger{min-width:84px;padding-inline:10px;gap:6px}.shell-site-picker{width:100%;min-width:0}.shell-account-caret,.shell-account-meta{display:none}.shell-account-trigger{min-width:52px;padding-right:var(--space-sm)}.shell-account-menu{width:min(260px,calc(100vw - 32px))}.page-content{padding:var(--space-lg)}.main-header{height:auto;min-height:var(--header-height);flex-wrap:wrap;gap:var(--space-sm) var(--space-md);padding-top:10px;padding-bottom:10px}.main-header>*{min-width:0}.main-header-actions{max-width:100%;flex-wrap:wrap;justify-content:flex-end}.deposit-recap-list-header,.session-list-header{flex-wrap:nowrap;gap:var(--space-sm)}.deposit-recap-list-header .main-header-title,.session-list-header .main-header-title{flex:1 1 auto;overflow:hidden;font-size:clamp(.9rem,4.8vw,var(--font-size-xl));line-height:1.15;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap}.deposit-recap-list-header .main-header-actions,.session-list-header .main-header-actions{flex:0 0 auto;flex-wrap:nowrap}.deposit-recap-list-new-button,.session-list-new-button{min-width:0;min-height:44px;padding:0 var(--space-sm);gap:4px;font-size:clamp(.68rem,2.8vw,.82rem);white-space:nowrap}.deposit-recap-list-new-button svg{width:14px;height:14px}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.dashboard-date-filter{padding-inline:var(--space-md)}.dashboard-date-filter-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.dashboard-date-filter-actions,.dashboard-date-presets{grid-column:1/-1}.dashboard-date-filter-field .form-input{min-height:44px;padding-inline:var(--space-sm);font-size:clamp(.75rem,3.4vw,var(--font-size-sm))}.dashboard-date-filter-actions .btn{min-height:44px}.filter-bar{grid-template-columns:1fr}.compact-date-filter,.session-date-filter{padding-inline:var(--space-md)}.compact-date-filter-controls,.session-date-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.compact-date-filter-controls .form-input,.session-date-filter-controls .form-input{min-width:0;min-height:44px;padding-inline:var(--space-sm);font-size:clamp(.75rem,3.4vw,var(--font-size-sm))}.compact-date-filter-actions,.session-date-filter-actions{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.compact-date-filter-actions .btn,.session-date-filter-actions .btn{width:100%;min-width:0;min-height:44px;height:auto;padding:8px var(--space-sm);font-size:.7rem;line-height:1.2;white-space:normal}.audit-detail-meta,.audit-filter-bar{grid-template-columns:1fr}.mobile-card-table-surface{border:0;background:transparent;padding:0;box-shadow:none}.mobile-card-table{overflow:visible}.mobile-card-table .table{display:block;min-width:0}.mobile-card-table .table thead{display:none}.mobile-card-table .table tbody{display:block}.mobile-card-table .table tbody tr{display:block;border-bottom:1px solid var(--border-color)}.mobile-card-table .table tbody tr:last-child{border-bottom:0}.mobile-card-table .table td{display:block;min-width:0;padding:10px var(--space-lg);border-bottom:0;overflow-wrap:anywhere;white-space:normal}.mobile-card-table .table td[data-label]{display:grid;grid-template-columns:minmax(96px,.7fr) minmax(0,1.3fr);align-items:start;gap:var(--space-md)}.mobile-card-table .table td[data-label]:before{content:attr(data-label);color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.04em;line-height:1.4;text-align:left;text-transform:uppercase}.mobile-card-table .table td>*{min-width:0;max-width:100%}.mobile-card-table .table td[data-label]>*{grid-column:2}.mobile-card-table .table .mobile-card-table-empty{display:block;padding:0}.mobile-card-table .table .mobile-card-table-empty:before{display:none}.mobile-card-table .empty-state{padding:var(--space-2xl) var(--space-lg)!important}.deposit-give-document-list .table tbody tr,.deposit-recap-list .table tbody tr,.deposit-review-list .table tbody tr,.session-list .table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--space-sm)}.deposit-give-document-list .table td,.deposit-give-document-list .table td[data-label],.deposit-recap-list .table td,.deposit-recap-list .table td[data-label],.deposit-review-list .table td,.deposit-review-list .table td[data-label],.session-list .table td,.session-list .table td[data-label]{display:flex;min-width:0;padding:var(--space-sm);flex-direction:column;align-items:flex-start;gap:4px;font-size:var(--font-size-sm);line-height:1.4;text-align:left!important}.deposit-give-document-list .table .deposit-recap-give-notes-cell{grid-column:1/-1}.mobile-card-table.deposit-give-document-list .table{min-width:0}.deposit-give-document-list .table td[data-label]>*,.deposit-recap-list .table td[data-label]>*,.deposit-review-list .table td[data-label]>*,.session-list .table td[data-label]>*{grid-column:auto}.deposit-give-document-list .table .mobile-card-table-empty,.deposit-recap-list .table .mobile-card-table-empty,.deposit-review-list .table .mobile-card-table-empty,.session-list .table .mobile-card-table-empty{grid-column:1/-1}.mobile-card-table-embedded{max-height:none;border:0;border-radius:0}.mobile-card-table-embedded .table tbody tr{border-bottom:1px solid var(--border-color)}.mobile-card-table-embedded .deposit-recap-checkbox-column{width:auto;min-width:0;text-align:left}.settings-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.settings-tabs .tab{display:flex;align-items:center;justify-content:center;min-width:0;padding:var(--space-sm);gap:6px;line-height:1.25;text-align:center;white-space:normal}.settings-tabs .tab svg{flex:0 0 auto}.access-denied-actions{width:min(100%,320px);margin-left:auto;margin-right:auto}.access-denied-actions .btn{flex:1 1 140px}.range-pill-group{overflow-x:auto;flex-wrap:nowrap;padding-bottom:var(--space-xs)}.dashboard-chart-grid{grid-template-columns:1fr;gap:var(--space-lg)}.dashboard-chart-header{align-items:flex-start;flex-direction:column}.dashboard-chart-tabs{width:100%;overflow-x:auto}.dashboard-chart-panel{min-height:220px}.dashboard-monthly-panel{min-height:400px;padding:var(--space-md)}.dashboard-monthly-chart{min-height:360px;grid-template-rows:minmax(270px,1fr) auto auto}.dashboard-monthly-legend{gap:var(--space-sm) var(--space-md)}.dashboard-donut{flex-direction:column;align-items:center;gap:var(--space-lg)}.dashboard-donut-legend{width:100%}.session-layout-grid{grid-template-columns:1fr;gap:var(--space-lg)}.session-recap-column{position:static;top:auto;order:0}.session-detail-meta-grid,.session-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.session-details-card .form-input,.session-details-card .form-select{padding-left:var(--space-sm);font-size:var(--font-size-sm)}.session-details-card .form-input{padding-right:var(--space-sm)}.session-details-card .form-select{padding-right:28px;background-position:right 8px center}.session-details-card .searchable-church-select--form .searchable-church-select-trigger{grid-template-columns:16px minmax(0,1fr) 14px;gap:6px;min-height:48px;padding:6px 8px;font-size:var(--font-size-sm);line-height:1.2}.session-details-card .searchable-church-select--form .searchable-church-select-trigger>span{overflow-wrap:anywhere;white-space:normal}.session-detail-meta-grid .session-detail-readonly-field .form-input{padding-right:var(--space-sm);padding-left:var(--space-sm);font-size:.8125rem}.session-notes-attachment-grid{display:contents}.session-notes-attachment-grid .session-other-attachment-field{min-width:0;order:1}.session-notes-attachment-grid .session-payment-notes-field{grid-column:1/-1;order:2}.session-details-card .session-other-attachment-field .form-input{padding:8px;font-size:var(--font-size-xs)}.session-detail-supplemental-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-lg)}.session-detail-supplemental-grid>.mt-lg{margin-top:0}.session-detail-supplemental-grid .session-detail-notes{grid-column:1/-1}.session-detail-attachment{min-width:0}.session-detail-attachment a{display:block;overflow-wrap:anywhere;font-size:var(--font-size-sm)}.session-detail-evidence-card .session-detail-meta-grid,.session-extra-grid,.session-item-grid{grid-template-columns:1fr}.session-additional-currency-grid,.session-denomination-list-compact,.session-denomination-list-compact.session-denomination-list-fixed{grid-template-columns:repeat(2,minmax(0,1fr))}.session-denomination-card-header,.session-denomination-empty{align-items:stretch;flex-direction:column}.session-denomination-card-header .btn,.session-denomination-empty .btn{width:100%}.session-quantity-button{min-height:60px;font-size:1.25rem}.session-denomination-quantity-field{min-height:52px}.session-denomination-tile{padding:var(--space-sm)}.session-denomination-fields{grid-template-columns:minmax(0,1.15fr) minmax(56px,.85fr);gap:6px}.session-denomination-input-field{gap:4px}.session-denomination-input-field span{font-size:8px;letter-spacing:.04em}.session-denomination-input-field input,.session-denomination-input-field select{min-height:44px;padding-inline:6px;font-size:clamp(.72rem,3.5vw,.9rem)}.session-denomination-input-field select{padding-right:22px;background-position:calc(100% - 12px) 18px,calc(100% - 7px) 18px}.signature-actions,.signature-pad-header{flex-direction:column;align-items:stretch}.signature-actions-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.signature-pad-status{align-self:flex-start}.signature-pad-footnote{font-size:var(--font-size-xs)}.signature-canvas-guide{padding:var(--space-md)}.signature-canvas-guide-text{font-size:var(--font-size-xs)}.session-signature-card{padding:var(--space-lg)}.session-signature-upload{gap:var(--space-sm);padding:var(--space-lg) 0}.session-signature-upload>.form-group .form-label{margin-bottom:6px;font-size:var(--font-size-xs)}.session-signature-upload>.form-group .form-input{min-height:44px;padding:8px var(--space-md)}.session-signature-card .signature-pad-wrapper{padding:var(--space-sm)}.session-signature-card .signature-actions,.session-signature-card .signature-pad-header{flex-direction:row;align-items:center}.session-signature-card .signature-pad-header{flex-wrap:wrap;gap:6px var(--space-sm)}.session-evidence-tab{gap:var(--space-xs);padding:0 6px;font-size:var(--font-size-xs)}.session-evidence-tab-check{flex-basis:16px;width:16px;height:16px}.session-signature-detail-evidence{grid-template-columns:1fr}.session-detail-evidence-tabs{display:grid;margin-bottom:var(--space-md)}.session-detail-evidence-list{gap:0}.session-detail-evidence-entry,.session-detail-evidence-entry.is-empty{display:none}.session-detail-evidence-entry.is-active{display:block}.session-detail-signature-card{padding:var(--space-md)}.session-detail-evidence-entry.session-detail-camera-evidence{max-width:none;margin-top:0;padding-top:0;border-top:0}.session-detail-evidence-empty{display:none}.camera-capture-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.camera-capture-actions .btn:only-child{grid-column:1/-1}.session-header-actions{display:none}.session-denomination-count{min-height:60px}.session-mobile-actions{position:static;bottom:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-xl);padding:var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.session-mobile-actions .btn{width:100%}.recap-section{padding:var(--space-lg)}.recap-total{font-size:clamp(1.35rem,12cqw,2.1rem)}.modal-content{max-width:100%;margin:var(--space-lg);max-height:85vh}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}}@media (min-width:768px) and (max-width:1023px){.shell-topbar{padding:0 var(--space-lg)}.shell-account-meta{max-width:132px}.dashboard-chart-grid,.session-layout-grid{grid-template-columns:1fr}.session-recap-column{position:static;top:auto}.session-item-grid{grid-template-columns:minmax(0,1fr) 120px auto}.session-additional-currency-grid,.session-denomination-list-compact,.session-detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.session-denomination-list-compact.session-denomination-list-fixed{grid-template-columns:repeat(4,minmax(0,1fr))}.session-mobile-actions{position:static;bottom:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-xl);padding:var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.session-mobile-actions .btn{width:100%}.session-signature-card{margin-top:var(--space-lg)}}@media (min-width:768px) and (max-width:1024px){.main-header{padding:0 var(--space-lg)}.page-content{padding:var(--space-lg)}.metrics-grid{gap:var(--space-lg)}.filter-bar,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-filter-bar{grid-template-columns:1fr}.filter-group-actions{grid-column:1/-1}.shell-account-meta{max-width:112px}.shell-account-trigger{padding-right:var(--space-sm)}}@media (min-width:768px) and (max-width:834px) and (orientation:portrait){.session-denomination-list-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.session-denomination-list-compact.session-denomination-list-fixed{grid-template-columns:repeat(4,minmax(0,1fr))}.session-denomination-tile{padding:10px;gap:8px}.session-denomination-label{font-size:.95rem}.session-denomination-controls{grid-template-columns:34px minmax(0,1fr);gap:6px}.session-denomination-count,.session-denomination-quantity-field,.session-quantity-button{min-height:38px}.session-denomination-count-value{font-size:.95rem}.session-denomination-count-label{font-size:8px}.session-denomination-quantity-field input{font-size:.95rem}}@media (min-width:1024px) and (max-width:1366px) and (pointer:coarse){.page-content{padding:var(--space-xl)}.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-group-actions{grid-column:1/-1}.dashboard-chart-grid,.session-layout-grid{grid-template-columns:1fr}.session-layout-grid{gap:var(--space-lg)}.session-recap-column{position:static;top:auto}.session-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.session-header-actions{display:none}.session-mobile-actions{position:static;bottom:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin-top:var(--space-xl);padding:var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-sm)}.session-mobile-actions .btn{width:100%}}@media (min-width:1024px){.session-workspace-page .alert{margin-bottom:var(--space-lg)}.session-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr)}.session-details-card .form-group .form-hint{margin-top:6px;font-size:var(--font-size-xs)}.session-details-card .form-textarea{min-height:52px;resize:vertical}.session-details-card .session-detail-notes-content,.session-details-card .session-payment-notes-field .form-textarea{min-height:132px}.session-denomination-list-compact{gap:10px}.session-denomination-list-compact,.session-denomination-list-compact.session-denomination-list-fixed{grid-template-columns:repeat(4,minmax(0,1fr))}.session-denomination-tile{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;padding:12px}.session-denomination-head{min-height:0}.session-denomination-label{font-size:1rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-denomination-controls{width:100%;min-width:0;grid-template-columns:40px minmax(0,1fr);gap:8px}.session-quantity-button{min-height:40px;font-size:.95rem}.session-denomination-count,.session-denomination-quantity-field{min-height:40px;min-width:0;gap:4px;padding:0 8px}.session-denomination-count-value{font-size:.95rem}.session-denomination-count-label{font-size:9px;transform:translateY(-4px)}.session-signature-card .signature-pad-wrapper{padding:var(--space-md)}.session-signature-card .signature-pad-header{margin-bottom:var(--space-sm)}.session-signature-card .signature-pad-footnote,.session-signature-card .signature-pad-hint{font-size:var(--font-size-xs)}.session-signature-card .signature-canvas-guide{padding:var(--space-md)}.shell-topbar{padding-left:var(--space-xl);padding-right:var(--space-xl)}.page-content{max-width:none}}@media (min-width:1280px){.page-content{padding:var(--space-xl)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.hidden{display:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-loader{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-2xl)}.page-loader-inner{text-align:center}.alert{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.alert-danger{background:var(--color-danger-light);color:var(--color-danger-on-soft)}.alert-warning{background:var(--color-warning-light);color:var(--color-warning-on-soft)}.alert-success{background:var(--color-success-light);color:var(--color-success-on-soft)}.alert-info{background:var(--color-info-light);color:var(--color-info-on-soft)}.divider-text{display:flex;align-items:center;gap:var(--space-md);margin:var(--space-md) 0}.divider-text:after,.divider-text:before{content:"";flex:1 1;height:1px;background:var(--border-color)}.divider-text span{white-space:nowrap}.divider-text span,.main-header-subtitle{font-size:var(--font-size-xs);color:var(--text-tertiary)}.main-header-subtitle{display:block;margin-top:3px}.access-page{min-width:0}.access-panel{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-elevated);box-shadow:0 1px 3px rgba(29,29,29,.06)}.access-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color)}.access-panel-header h2{font-size:var(--font-size-base);letter-spacing:0}.access-panel-header p{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-sm)}.access-search{position:relative;display:flex;align-items:center;width:min(100%,320px);color:var(--text-tertiary)}.access-search>svg{position:absolute;left:12px;pointer-events:none}.access-field input,.access-field select,.access-field textarea,.access-search input{width:100%;min-height:44px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);outline:none;background:var(--bg-primary);color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.access-search input{padding:0 12px 0 38px}.access-field input:focus,.access-field select:focus,.access-field textarea:focus,.access-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,64,140,.1)}.access-field input,.access-field select{padding:0 12px}.access-field textarea{min-height:88px;padding:10px 12px;resize:vertical}.access-field input:disabled,.access-field select:disabled,.access-field textarea:disabled{background:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.access-button,.access-icon-button{appearance:none;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.access-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap}.access-button:hover:not(:disabled),.access-icon-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.access-button-primary{border-color:var(--color-primary-solid);background:var(--color-primary-solid);color:#ffffff}.access-button-primary:hover:not(:disabled){border-color:var(--color-primary-solid-hover);background:var(--color-primary-solid-hover);color:#ffffff}.access-button-danger{border-color:var(--color-danger-solid);background:var(--color-danger-solid);color:#ffffff}.access-button-danger:hover:not(:disabled){border-color:var(--color-danger-solid-hover);background:var(--color-danger-solid-hover);color:#ffffff}.access-button:disabled,.access-icon-button:disabled{opacity:.48;cursor:not-allowed}.access-icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px}.access-icon-button-danger{border-color:rgba(239,68,68,.26);color:var(--color-danger)}.access-icon-button-danger:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger-light);color:var(--color-danger)}.access-role-list{display:flex;flex-direction:column}.access-role-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--space-md);align-items:start;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color)}.access-role-row:last-child{border-bottom:0}.access-role-row.is-inactive{opacity:.66}.access-role-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--access-control-radius);background:var(--color-primary-light);color:var(--color-primary-on-soft)}.access-role-content{min-width:0}.access-role-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg)}.access-role-title-row h3{font-size:var(--font-size-base);letter-spacing:0}.access-role-name-link{color:var(--color-primary);text-decoration:none;text-underline-offset:3px}.access-role-name-link:hover{text-decoration:underline}.access-role-name-link:focus-visible{border-radius:4px;outline:2px solid var(--color-primary);outline-offset:3px}.access-role-title-row p{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-sm)}.access-permission-chips,.access-role-badges,.access-role-meta,.access-row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.access-role-badges{justify-content:flex-end}.access-role-meta{margin-top:10px;color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.access-role-meta span+span:before{content:"/";margin-right:8px;color:var(--text-tertiary)}.access-permission-chips{margin-top:12px}.access-chip,.access-permission-chip{display:inline-flex;align-items:center;min-height:26px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-secondary);color:var(--text-secondary);font-size:.7rem;font-weight:var(--font-weight-bold);line-height:1.2;letter-spacing:0}.access-chip{padding:0 8px}.access-permission-chip{max-width:210px;padding:4px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-chip-blue{border-color:rgba(0,64,140,.18);background:var(--color-primary-light);color:var(--color-primary-on-soft)}.access-chip-danger{border-color:rgba(239,68,68,.22);background:var(--color-danger-light);color:var(--color-danger-on-soft)}.access-row-actions{flex-wrap:nowrap}.access-info-banner,.access-inline-error{margin:var(--space-lg) var(--space-xl) 0;padding:10px 12px;border-radius:var(--access-control-radius);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.access-inline-error{border:1px solid rgba(239,68,68,.26);background:var(--color-danger-light);color:var(--color-danger-on-soft)}.access-info-banner{border:1px solid rgba(0,64,140,.18);background:var(--color-primary-light);color:var(--color-primary-dark)}.access-list-skeleton{display:grid}.access-list-skeleton span{height:112px;border-bottom:1px solid var(--border-color);background:linear-gradient(90deg,var(--bg-secondary),var(--bg-tertiary),var(--bg-secondary));background-size:220% 100%;animation:shimmer 1.4s linear infinite}.access-empty{padding:40px var(--space-xl);color:var(--text-secondary);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.access-modal-overlay{position:fixed;inset:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(16,25,35,.44);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.access-modal{display:flex;flex-direction:column;width:min(760px,100%);max-height:calc(100vh - 40px);overflow:hidden;border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-elevated);box-shadow:var(--shadow-xl)}.access-modal-footer,.access-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg) var(--space-xl);background:var(--bg-elevated)}.access-modal-header{border-bottom:1px solid var(--border-color)}.access-field>span,.access-modal-header span{display:block;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:0}.access-modal-header h2{margin-top:3px;font-size:var(--font-size-lg);letter-spacing:0}.access-modal-body{overflow-y:auto;padding:0 var(--space-xl) var(--space-xl)}.access-modal-body>.access-info-banner,.access-modal-body>.access-inline-error{margin-left:0;margin-right:0}.access-modal-footer{border-top:1px solid var(--border-color)}.access-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:var(--space-lg)}.access-field,.access-form-grid{display:grid;margin-top:var(--space-lg)}.access-field{gap:7px}.access-form-grid .access-field{margin-top:0}.access-permission-editor{margin-top:var(--space-xl);border-top:1px solid var(--border-color);padding-top:var(--space-lg)}.role-assignable-grid,.role-policy-empty,.role-region-picker,.role-scope-picker{margin-top:var(--space-lg)}.role-scope-mode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.role-scope-mode>label{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:44px;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-align:center}.role-scope-mode>label.is-selected{border-color:rgba(0,64,140,.44);background:color-mix(in srgb,var(--color-primary-light) 46%,var(--bg-primary));color:var(--color-primary-on-soft)}.role-scope-mode>label:has(input:disabled){cursor:default;opacity:.62}.role-scope-mode input{position:absolute;width:1px;height:1px;opacity:0}.role-scope-mode>label:focus-within{outline:2px solid color-mix(in srgb,var(--color-primary) 55%,transparent);outline-offset:2px}.role-assignable-grid,.role-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.role-assignable-grid>label,.role-region-grid>label{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);cursor:pointer}.role-assignable-grid>label.is-selected,.role-region-grid>label.is-selected{border-color:rgba(0,64,140,.44);background:color-mix(in srgb,var(--color-primary-light) 46%,var(--bg-primary))}.role-assignable-grid input,.role-region-grid input{width:17px;height:17px}.role-assignable-grid small,.role-assignable-grid strong,.role-region-grid small,.role-region-grid strong{display:block}.role-assignable-grid strong,.role-region-grid strong{font-size:var(--font-size-sm)}.role-assignable-grid small,.role-region-grid small{margin-top:3px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.access-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg)}.access-section-heading h3{font-size:var(--font-size-base);letter-spacing:0}.access-section-heading p{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-sm)}.access-section-heading>span{display:flex;align-items:center;justify-content:center;min-width:36px;height:30px;border-radius:var(--access-control-radius);background:var(--color-primary-light);color:var(--color-primary-on-soft);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.access-permission-group{margin-top:var(--space-lg)}.access-permission-group h4{margin-bottom:8px;color:var(--text-secondary);font-size:var(--font-size-xs);letter-spacing:0}.access-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.access-permission-grid>label{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:start;min-height:72px;padding:11px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);cursor:pointer}.access-permission-grid>label.is-selected{border-color:rgba(0,64,140,.42);background:color-mix(in srgb,var(--color-primary-light) 46%,var(--bg-primary))}.access-permission-grid input{width:17px;height:17px;margin-top:2px}.access-permission-grid small,.access-permission-grid strong{display:block}.access-permission-grid strong{font-size:var(--font-size-sm);line-height:1.3}.access-permission-grid small{margin-top:4px;color:var(--text-tertiary);font-size:.7rem;line-height:1.4}.access-permission-grid em{border-radius:4px;padding:3px 5px;font-size:.62rem;font-style:normal;font-weight:var(--font-weight-bold);text-transform:uppercase}.risk-low{background:var(--bg-secondary);color:var(--text-secondary)}.risk-medium{background:var(--color-warning-light);color:var(--color-warning-on-soft)}.risk-high{background:#ffedd5;color:#9a3412}.risk-critical{background:var(--color-danger-light);color:var(--color-danger-on-soft)}.access-users-total{display:flex;align-items:center;gap:7px;min-height:40px;padding:0 12px;border-radius:var(--access-control-radius);background:var(--color-primary-light);color:var(--color-primary-on-soft);font-size:var(--font-size-sm)}.access-users-total strong{font-size:var(--font-size-lg)}.access-users-total span{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.access-filter-rail{display:grid;grid-template-columns:minmax(220px,1fr) 180px minmax(220px,.8fr) 150px;gap:12px;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.access-filter-rail .access-search{width:100%}.access-filter-rail select{width:100%;min-width:0;min-height:44px;padding:0 36px 0 12px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);outline:none;background-color:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.access-filter-rail select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,64,140,.1)}.access-filter-rail .searchable-church-select{min-width:0}.access-result-bar{padding:10px var(--space-xl);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.access-users-panel.is-refreshing .access-table-wrap,.access-users-panel.is-refreshing .access-user-mobile-list{opacity:.58;pointer-events:none}.access-table-wrap,.access-user-mobile-list{transition:opacity .16s ease}.access-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px var(--space-xl);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.access-pagination-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 14px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer}.access-pagination-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.access-pagination-button:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 28%,transparent);outline-offset:2px}.access-pagination-button:disabled{opacity:.45;cursor:not-allowed}.access-pagination-status{min-width:84px;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center}.access-chip-success{border-color:rgba(16,185,129,.24);background:var(--color-success-light);color:var(--color-success-on-soft)}.access-table-wrap{overflow-x:auto}.access-table{width:100%;min-width:760px;border-collapse:collapse;text-align:left;font-size:var(--font-size-sm)}.access-table th{padding:11px var(--space-xl);background:var(--bg-secondary);color:var(--text-tertiary);font-size:.7rem;font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}.access-table td,.access-table th{border-bottom:1px solid var(--border-color)}.access-table td{padding:13px var(--space-xl);color:var(--text-secondary);vertical-align:middle}.access-table tbody tr:last-child td{border-bottom:0}.access-table tbody tr:hover{background:color-mix(in srgb,var(--bg-secondary) 62%,transparent)}.access-table td:first-child span,.access-table td:first-child strong{display:block}.access-table td:first-child strong{color:var(--text-primary);font-size:var(--font-size-sm)}.access-table td:first-child span{margin-top:3px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.access-table td:last-child{width:112px}.access-table-empty{height:120px;text-align:center}.access-user-mobile-list{display:none}.access-user-mobile-empty{margin:0;padding:var(--space-xl) var(--space-lg);color:var(--text-secondary);font-size:var(--font-size-sm);text-align:center}@media (max-width:980px){.access-filter-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}.access-page-title{display:flex;align-items:center;gap:var(--space-md);min-width:0}.access-form-shell{display:grid;gap:var(--space-xl);width:min(880px,100%)}.access-error-flush{margin:0}.access-form-section{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-elevated);box-shadow:0 1px 3px rgba(29,29,29,.05)}.access-form-section-header{padding:14px var(--space-xl);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.access-form-section-header h2{font-size:var(--font-size-base);letter-spacing:0}.access-form-section-body{padding:var(--space-xl)}.access-form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.access-form-grid-two .access-field,.access-form-section-body>.access-field:first-child{margin-top:0}.access-person-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md)}.access-person-search .access-button{min-width:132px}.access-person-result{margin-top:var(--space-xl);padding:var(--space-lg);border:1px solid color-mix(in srgb,var(--color-success) 42%,var(--border-color));border-radius:var(--access-radius);background:color-mix(in srgb,var(--color-success) 8%,var(--bg-primary))}.access-person-result-title{display:flex;align-items:center;gap:var(--space-md);color:var(--color-success)}.access-person-result-title>div{display:grid;gap:3px;min-width:0}.access-person-result-meta dt,.access-person-result-title span{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase}.access-person-result-title strong{overflow-wrap:anywhere;color:var(--text-primary)}.access-person-result-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-lg)}.access-person-result-meta>div{min-width:0}.access-person-result-meta dd{margin-top:5px;overflow-wrap:anywhere;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:600}.access-field small{color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.4}.access-church-section>.form-error,.access-field small.form-error{color:var(--color-danger)}.access-field-role{max-width:520px}.user-role-assignments{display:grid;gap:var(--space-lg)}.user-role-assignment-header,.user-role-assignments-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.user-role-assignments-toolbar>div{min-width:0}.user-role-assignments-toolbar strong{display:block;font-size:var(--font-size-sm)}.user-role-assignments-toolbar p{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.5}.user-role-assignment-list{display:grid;gap:var(--space-lg)}.user-role-assignment{min-width:0;padding:var(--space-lg);border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-primary)}.user-role-assignment-header{margin-bottom:var(--space-lg);padding-bottom:12px;border-bottom:1px solid var(--border-color)}.user-role-assignment-header>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.user-role-assignment-header strong{font-size:var(--font-size-sm)}.user-role-assignment .access-church-section{margin-top:var(--space-lg)}.user-role-assignment>.form-error{display:block;margin-top:var(--space-md)}.access-role-chip-list{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.access-inline-info{margin-top:var(--space-lg);padding:12px 14px;border:1px solid color-mix(in srgb,var(--color-primary) 30%,var(--border-color));border-radius:var(--access-control-radius);color:var(--text-secondary);background:color-mix(in srgb,var(--color-primary-light) 42%,var(--bg-primary));font-size:var(--font-size-sm);line-height:1.5}.access-church-section{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.access-church-section>div:first-child>strong{display:block;font-size:var(--font-size-sm)}.access-church-section>div:first-child>p{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.church-access-picker{margin-top:var(--space-lg)}.church-access-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:12px;border:1px solid var(--border-color);border-radius:var(--access-radius);background:var(--bg-secondary)}.church-access-picker-search{width:min(100%,420px)}.church-access-picker-count{flex-shrink:0;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.church-access-picker-count strong{color:var(--text-primary);font-size:var(--font-size-sm)}.access-church-group,.church-access-picker-empty{margin-top:var(--space-lg)}.access-church-group h3{margin-bottom:8px;color:var(--text-secondary);font-size:var(--font-size-xs);letter-spacing:0}.access-region-toggle{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:8px;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);background:var(--bg-secondary);cursor:pointer}.access-region-toggle.is-selected{border-color:rgba(19,185,129,.5);background:color-mix(in srgb,rgba(19,185,129,.18) 72%,var(--bg-primary))}.access-region-toggle[aria-disabled=true]{cursor:default;opacity:.72}.access-region-toggle input{width:17px;height:17px}.access-region-toggle small,.access-region-toggle strong{display:block}.access-region-toggle strong{color:var(--text-primary);font-size:var(--font-size-sm)}.access-region-toggle small{margin-top:2px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.access-church-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.access-church-grid>label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--access-control-radius);cursor:pointer}.access-church-grid>label.is-selected{border-color:rgba(0,64,140,.44);background:color-mix(in srgb,var(--color-primary-light) 46%,var(--bg-primary))}.access-church-grid>label[aria-disabled=true]{cursor:default;opacity:.72}.access-church-grid input{width:17px;height:17px}.access-church-grid small,.access-church-grid strong{display:block}.access-church-grid strong{font-size:var(--font-size-sm)}.access-church-grid small{margin-top:3px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.access-form-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.access-page .card{border-radius:var(--access-radius);box-shadow:0 1px 3px rgba(29,29,29,.05)}.access-page .btn{border-width:1px;padding-left:16px;padding-right:16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.access-page .btn,.access-page .form-input,.access-page .form-select{min-height:44px;border-radius:var(--access-control-radius)}.access-page .tabs{border-radius:var(--access-radius)}.access-page .tab{display:inline-flex;align-items:center;justify-content:center;gap:7px}@media (max-width:720px){.access-panel-header,.access-role-title-row{align-items:stretch;flex-direction:column}.access-search{width:100%}.church-access-picker-toolbar{align-items:stretch;flex-direction:column}.church-access-picker-count{padding:0 2px}.user-role-assignments-toolbar{align-items:stretch;flex-direction:column}.user-role-assignments-toolbar .access-button{align-self:flex-start}.user-role-assignment{padding:var(--space-md)}.access-role-row{grid-template-columns:36px minmax(0,1fr);padding:var(--space-lg)}.access-role-icon{width:36px;height:36px}.access-role-badges,.access-row-actions{justify-content:flex-start}.access-row-actions{grid-column:2}.access-church-grid,.access-form-grid,.access-form-grid-two,.access-permission-grid,.access-person-result-meta,.access-person-search,.role-assignable-grid,.role-region-grid{grid-template-columns:1fr}.access-person-search .access-button{width:100%}.access-filter-rail{grid-template-columns:1fr;padding:var(--space-lg)}.access-result-bar{padding-left:var(--space-lg);padding-right:var(--space-lg)}.access-pagination{justify-content:space-between;padding:12px var(--space-lg)}.access-pagination-button{flex:1 1;max-width:150px}.access-table-wrap{display:none}.access-user-mobile-list{display:flex;flex-direction:column}.access-user-mobile-list article{padding:var(--space-lg);border-bottom:1px solid var(--border-color)}.access-user-mobile-list article:last-child{border-bottom:0}.access-user-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.access-user-card-head span,.access-user-card-head strong{display:block}.access-user-card-head>div>span{margin-top:3px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.access-user-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;color:var(--text-secondary);font-size:var(--font-size-sm)}.access-user-mobile-list .access-row-actions{margin-top:14px}.access-modal-overlay{align-items:flex-start;padding:10px}.access-modal{max-height:calc(100vh - 20px)}.access-modal-body,.access-modal-footer,.access-modal-header{padding-left:var(--space-lg);padding-right:var(--space-lg)}}.deposit-recap-filter{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);border-radius:8px}.deposit-recap-filter .form-input{flex:1 1;min-width:0}.deposit-recap-detail-header .main-header-actions{gap:var(--space-sm)}.deposit-recap-detail-header-button{min-height:44px;padding-inline:var(--space-md);gap:6px}.deposit-recap-actions,.deposit-recap-count{display:inline-flex;align-items:center;gap:var(--space-sm)}.deposit-recap-actions{flex-wrap:wrap}.deposit-recap-church-list{max-width:300px;line-height:1.45}.deposit-recap-editor{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.82fr);gap:var(--space-xl);align-items:start}.deposit-recap-detail-attachments,.deposit-recap-detail-meta,.deposit-recap-editor .card{border-radius:8px}.deposit-recap-give-panel{min-width:0;overflow:hidden;padding:0}.deposit-recap-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg);border-bottom:1px solid var(--border-color)}.deposit-recap-attachment-panel h2,.deposit-recap-section-header h2,.deposit-recap-summary-panel h2{font-size:var(--font-size-base);line-height:1.35}.deposit-recap-give-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.deposit-recap-search{display:flex;align-items:center;flex:1 1;min-width:0;max-width:560px;gap:var(--space-sm)}.deposit-recap-search .form-input{min-width:0}.deposit-recap-give-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex:0 0 auto}.deposit-recap-archive-toggle.is-active{border-color:color-mix(in srgb,var(--color-success) 62%,var(--border-color));background:color-mix(in srgb,var(--color-success-light) 58%,var(--bg-primary));color:var(--color-success)}.deposit-recap-give-table{max-height:calc(100vh - 300px);overflow:auto}.deposit-recap-give-table .table{min-width:1160px}.deposit-recap-give-table thead{position:sticky;z-index:2;top:0}.deposit-recap-give-table tr.is-selected td{background:color-mix(in srgb,var(--color-primary-light) 55%,var(--bg-primary))}.deposit-recap-give-table tr.is-recapped td{background:color-mix(in srgb,var(--color-success-light) 56%,var(--bg-primary))}.deposit-recap-give-table tr.is-recapped .deposit-recap-give-number{color:var(--color-success)}.deposit-recap-give-table tr.is-archived{box-shadow:inset 4px 0 0 var(--color-success)}.deposit-recap-give-table tr.is-archived input[type=checkbox]{cursor:not-allowed;opacity:.5}.deposit-recap-checkbox-column{width:46px;min-width:46px;text-align:center}.deposit-recap-checkbox-column input{width:18px;height:18px;accent-color:var(--color-primary)}.deposit-recap-give-number{padding:0;border:0;background:transparent;color:var(--color-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap;cursor:pointer}.deposit-recap-give-number.is-static{cursor:default}.deposit-recap-give-notes-cell{min-width:220px;max-width:360px}.deposit-recap-give-notes{display:block;padding:6px 8px;border-left:3px solid var(--color-primary);border-radius:4px;background:color-mix(in srgb,var(--color-primary-light) 58%,var(--bg-primary));color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.deposit-give-document-list .table{min-width:1120px}.deposit-recap-archive-more{display:flex;justify-content:center;padding-top:var(--space-md)}.deposit-recap-archive-reference{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:5px;color:var(--text-secondary);font-size:var(--font-size-xs)}.deposit-recap-archive-reference strong{color:var(--color-success);font-weight:var(--font-weight-bold)}.deposit-recap-side{position:sticky;top:calc(var(--header-height) + var(--space-lg));display:grid;gap:var(--space-lg)}.deposit-recap-attachment-panel,.deposit-recap-summary-panel{padding:var(--space-lg)}.deposit-recap-summary-list{display:grid;gap:var(--space-md);margin-top:var(--space-lg)}.deposit-recap-summary-list>div{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.deposit-recap-summary-list dt{color:var(--text-secondary);font-size:var(--font-size-sm)}.deposit-recap-summary-list dd{max-width:70%;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);overflow-wrap:anywhere;text-align:right}.deposit-recap-denomination-block{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.deposit-recap-denomination-heading{margin-bottom:var(--space-md)}.deposit-recap-denomination-heading h3{font-size:var(--font-size-sm);line-height:1.35}.deposit-recap-denomination-heading p{margin-top:var(--space-xs);color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.5}.deposit-recap-denomination-section{overflow:hidden;border-radius:8px}.deposit-recap-denomination-section>.deposit-recap-denomination-empty,.deposit-recap-denomination-section>.deposit-recap-denomination-table-wrap{margin:var(--space-lg)}.deposit-recap-denomination-table-wrap{max-width:100%;overflow-x:auto}.deposit-recap-denomination-table{width:100%;min-width:290px;border-collapse:collapse;font-size:var(--font-size-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.deposit-recap-denomination-table td,.deposit-recap-denomination-table th{padding:9px 8px;border-bottom:1px solid var(--border-color);white-space:nowrap}.deposit-recap-denomination-table th{color:var(--text-tertiary);font-weight:var(--font-weight-semibold);text-align:left}.deposit-recap-denomination-table td:nth-child(n+2),.deposit-recap-denomination-table th:nth-child(n+2){text-align:right}.deposit-recap-denomination-table tbody td{color:var(--text-secondary)}.deposit-recap-denomination-table tfoot th{padding-top:var(--space-md);border-bottom:0;color:var(--text-primary)}.deposit-recap-denomination-empty{color:var(--text-tertiary);font-size:var(--font-size-sm)}.deposit-recap-attachment-panel .deposit-recap-section-header{margin:calc(var(--space-lg) * -1);margin-bottom:var(--space-lg)}.deposit-recap-dropzone{display:flex;align-items:center;justify-content:center;min-height:104px;padding:var(--space-lg);border:1px dashed var(--border-color-hover);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;gap:var(--space-md);outline:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.deposit-recap-dropzone.is-dragging,.deposit-recap-dropzone:focus-visible,.deposit-recap-dropzone:hover{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success-light) 58%,var(--bg-secondary))}.deposit-recap-dropzone>svg{flex:0 0 auto;color:var(--color-primary)}.deposit-recap-dropzone span,.deposit-recap-dropzone strong{display:block}.deposit-recap-dropzone strong{font-size:var(--font-size-sm)}.deposit-recap-dropzone span{margin-top:4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.deposit-recap-dropzone.is-disabled{pointer-events:none;cursor:not-allowed;opacity:.55}.deposit-recap-processing{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-md);color:var(--text-secondary);font-size:var(--font-size-sm)}.deposit-recap-attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-lg)}.deposit-recap-attachment-item{position:relative;min-width:0;overflow:hidden;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary)}.deposit-recap-attachment-preview-button{display:block;width:100%;border:0;padding:0;background:transparent;color:inherit;cursor:zoom-in;font:inherit}.deposit-recap-attachment-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.deposit-recap-pdf-preview{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;background:var(--bg-primary);color:var(--color-primary);flex-direction:column;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);gap:6px}.deposit-recap-remove-attachment{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid rgba(255,255,255,.42);border-radius:50%;background:rgba(29,29,29,.76);color:#ffffff;cursor:pointer}.deposit-recap-attachment-name{overflow:hidden;padding:8px;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.deposit-recap-save{width:100%;min-height:48px}.deposit-recap-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-md);min-height:180px}.deposit-recap-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:var(--space-lg)}.deposit-recap-metrics .metric-card{min-width:0;min-height:128px}.spin{animation:spin .9s linear infinite}.deposit-recap-detail-meta{padding:var(--space-lg)}.deposit-recap-detail-meta dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl)}.deposit-recap-detail-meta dt{margin-bottom:var(--space-xs);color:var(--text-tertiary);font-size:var(--font-size-xs)}.deposit-recap-detail-meta dd{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);overflow-wrap:anywhere}.deposit-recap-detail-attachments{overflow:hidden}.deposit-recap-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-xl)}.deposit-recap-support-grid>*{min-width:0}.deposit-recap-support-grid .deposit-recap-detail-attachment-grid{grid-template-columns:1fr}.deposit-recap-detail-attachments>p{padding:var(--space-lg)}.deposit-recap-detail-attachment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);padding:var(--space-lg)}.deposit-recap-detail-attachment{display:grid;grid-template-columns:96px minmax(0,1fr) 18px;align-items:center;gap:var(--space-md);min-width:0;overflow:hidden;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);background:transparent;cursor:pointer;font:inherit;padding:0;text-align:left;text-decoration:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.deposit-recap-detail-attachment:hover{border-color:var(--border-color-hover);background:var(--bg-secondary)}.deposit-recap-detail-attachment img{display:block;width:96px;height:78px;object-fit:cover}.deposit-recap-detail-pdf{display:flex;align-items:center;justify-content:center;width:96px;height:78px;background:var(--bg-secondary);color:var(--color-primary);flex-direction:column;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);gap:4px}.deposit-recap-detail-attachment span{min-width:0}.deposit-recap-detail-attachment small,.deposit-recap-detail-attachment strong{display:block}.attachment-viewer-backdrop{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgb(6 9 16/88%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.attachment-viewer-dialog{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1180px,96vw);height:min(900px,92dvh);min-height:360px;overflow:hidden;border:1px solid var(--border-color-hover);border-radius:12px;background:var(--bg-card);box-shadow:0 28px 80px rgb(0 0 0/45%)}.attachment-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-width:0;padding:10px 12px 10px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.attachment-viewer-heading{min-width:0}.attachment-viewer-heading small,.attachment-viewer-heading strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-viewer-heading strong{font-size:var(--font-size-sm)}.attachment-viewer-heading small{margin-top:2px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.attachment-viewer-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.attachment-viewer-icon-button{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-primary);cursor:pointer}.attachment-viewer-icon-button:hover:not(:disabled){border-color:var(--border-color-hover);background:var(--bg-tertiary)}.attachment-viewer-icon-button:disabled{cursor:not-allowed;opacity:.35}.attachment-viewer-zoom-value{min-width:46px;color:var(--text-secondary);font-size:var(--font-size-xs);text-align:center}.attachment-viewer-stage{position:relative;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;background:#383c44;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.attachment-viewer-message{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-md);min-height:100%;padding:var(--space-xl);color:#fff;text-align:center}.attachment-viewer-message.is-error{color:var(--color-danger-light)}.attachment-viewer-image{display:block;max-width:none;min-width:1px;height:auto;margin:0 auto;padding:var(--space-lg);object-fit:contain;object-position:center}.attachment-viewer-native-pdf{display:block;width:100%;height:100%;border:0;background:#fff}.attachment-viewer-native-loading{position:absolute;z-index:1;inset:0;background:#383c44}.attachment-viewer-pdf-gesture{width:max-content;min-width:100%;min-height:100%;transform-origin:top left}.attachment-viewer-pdf-pages{display:flex;align-items:flex-start;flex-direction:column;gap:var(--space-lg);width:max-content;min-width:100%;min-height:100%;padding:var(--space-lg);color:#fff}.attachment-viewer-pdf-page{display:block;max-width:none;margin-inline:auto;background:#fff;box-shadow:0 3px 18px rgb(0 0 0/35%)}.attachment-viewer-text-button{display:inline;border:0;padding:0;background:transparent;color:var(--color-link);cursor:pointer;font:inherit;text-align:left;text-decoration:underline;text-underline-offset:3px;transition:color var(--transition-fast)}.attachment-viewer-text-button:focus-visible,.attachment-viewer-text-button:hover{color:var(--color-link-hover)}.attachment-viewer-text-button:focus-visible{border-radius:2px;outline:2px solid currentColor;outline-offset:3px}.attachment-viewer-media-button{display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in}@media (max-width:720px){.attachment-viewer-backdrop{display:block;padding:0}.attachment-viewer-dialog{width:100vw;height:100dvh;min-height:100dvh;border:0;border-radius:0}.attachment-viewer-header{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left))}.attachment-viewer-heading strong{max-width:32vw}.attachment-viewer-controls{gap:1px}.attachment-viewer-icon-button{width:32px;height:34px}.attachment-viewer-zoom-value{min-width:38px;font-size:.68rem}.attachment-viewer-image,.attachment-viewer-pdf-pages{padding:var(--space-sm)}}.deposit-recap-detail-attachment strong{overflow:hidden;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.deposit-recap-detail-attachment small{margin-top:4px;color:var(--text-tertiary)}@media (max-width:1080px){.deposit-recap-editor{grid-template-columns:1fr}.deposit-recap-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.deposit-recap-save{grid-column:1/-1}.deposit-recap-detail-attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.deposit-recap-detail-attachment-grid,.deposit-recap-side,.deposit-recap-support-grid{grid-template-columns:1fr}.deposit-recap-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xs)}.deposit-recap-metrics .metric-card{display:flex;min-height:96px;padding:var(--space-md) var(--space-sm);flex-direction:column;justify-content:center}.deposit-recap-metrics .metric-label{font-size:.65rem;line-height:1.25}.deposit-recap-metrics .metric-value{margin:var(--space-xs) 0 0;font-size:clamp(1rem,5vw,1.35rem)}.deposit-recap-metrics .metric-value-currency{font-size:clamp(.65rem,3.2vw,.95rem);letter-spacing:-.035em}.deposit-recap-detail-meta dl{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-md);row-gap:var(--space-lg)}.deposit-recap-give-panel>.deposit-recap-section-header{display:none}.deposit-recap-give-toolbar{align-items:stretch;flex-direction:column;padding:var(--space-md)}.deposit-recap-search{max-width:none}.deposit-recap-give-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;width:100%}.deposit-recap-give-toolbar-actions .btn{width:100%;min-width:0;min-height:44px;height:100%;padding:8px 6px;gap:4px;font-size:clamp(.65rem,2.8vw,var(--font-size-xs));line-height:1.2;white-space:normal}.deposit-recap-give-toolbar-actions .btn svg{width:14px;height:14px;flex:0 0 auto}.deposit-recap-give-table .table{width:100%;min-width:0}.deposit-recap-give-table .table tbody{display:grid;gap:var(--space-sm);padding:var(--space-md)}.deposit-recap-give-table .table tbody tr{display:grid;grid-template-columns:24px minmax(0,1fr);gap:0 var(--space-sm);padding:10px 12px;overflow:hidden;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary)}.deposit-recap-give-table .table tbody tr.is-selected{border-color:color-mix(in srgb,var(--color-success) 58%,var(--border-color));background:color-mix(in srgb,var(--color-success-light) 44%,var(--bg-primary))}.deposit-recap-give-table .table tbody tr.is-selected td{background:transparent}.deposit-recap-give-table .table tbody tr.is-recapped{border-color:color-mix(in srgb,var(--color-success) 66%,var(--border-color));background:color-mix(in srgb,var(--color-success-light) 58%,var(--bg-primary))}.deposit-recap-give-table .table tbody tr.is-recapped td{background:transparent}.deposit-recap-give-table .table td{grid-column:2;padding:5px 0}.deposit-recap-give-table .table td[data-label]{grid-template-columns:84px minmax(0,1fr);gap:var(--space-sm)}.deposit-recap-give-table .table td.deposit-recap-checkbox-column{grid-row:1/span 7;grid-column:1;display:flex;align-items:flex-start;justify-content:center;padding:7px 0 0}.deposit-recap-give-table .deposit-recap-give-number{overflow-wrap:anywhere;font-size:var(--font-size-xs);text-align:left;white-space:normal}.deposit-recap-give-table .table tbody tr.deposit-recap-empty-row{display:block;padding:0;border:0;background:transparent}.deposit-recap-detail-attachment-grid{gap:var(--space-sm);padding:var(--space-md)}.deposit-recap-detail-attachment{grid-template-columns:82px minmax(0,1fr) 18px}.deposit-recap-detail-attachment img,.deposit-recap-detail-pdf{width:82px;height:72px}}.review-status-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 9px;border:1px solid transparent;border-radius:6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.review-status-badge.is-pending{border-color:color-mix(in srgb,var(--color-warning) 34%,transparent);background:var(--color-warning-light);color:var(--color-warning-on-soft)}.review-status-badge.is-matched{border-color:color-mix(in srgb,var(--color-success) 34%,transparent);background:var(--color-success-light);color:var(--color-success-on-soft)}.review-status-badge.is-mismatched{border-color:color-mix(in srgb,var(--color-danger) 34%,transparent);background:var(--color-danger-light);color:var(--color-danger-on-soft)}.deposit-review-filters{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center;gap:var(--space-lg);padding:var(--space-lg);border-radius:8px}.deposit-review-filters .deposit-recap-search{max-width:none}.deposit-review-segments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary)}.deposit-review-segments button{--review-segment-accent:var(--color-primary);--review-segment-background:var(--color-primary-light);--review-segment-text:var(--color-primary-on-soft);display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:38px;padding:7px 9px;border:1px solid transparent;border-radius:5px;background:var(--review-segment-background);color:var(--review-segment-text);font:inherit;font-size:var(--font-size-xs);cursor:pointer;opacity:.76;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast),transform var(--transition-fast)}.deposit-review-segments button:focus-visible,.deposit-review-segments button:hover{border-color:color-mix(in srgb,var(--review-segment-accent) 48%,transparent);opacity:1}.deposit-review-segments button.is-active{border-color:var(--review-segment-accent);background:var(--review-segment-background);color:var(--review-segment-text);box-shadow:0 0 0 1px color-mix(in srgb,var(--review-segment-accent) 24%,transparent),var(--shadow-sm);opacity:1}.deposit-review-segments button.review-segment-pending{--review-segment-accent:var(--color-warning);--review-segment-background:var(--color-warning-light);--review-segment-text:var(--color-warning-on-soft)}.deposit-review-segments button.review-segment-matched{--review-segment-accent:var(--color-success);--review-segment-background:var(--color-success-light);--review-segment-text:var(--color-success-on-soft)}.deposit-review-segments button.review-segment-mismatched{--review-segment-accent:var(--color-danger);--review-segment-background:var(--color-danger-light);--review-segment-text:var(--color-danger-on-soft)}.deposit-review-segments button.review-segment-all{--review-segment-accent:var(--color-info);--review-segment-background:var(--color-info-light);--review-segment-text:var(--color-info-on-soft)}.deposit-review-segments button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deposit-review-segments button strong{flex:0 0 auto;min-width:20px;color:inherit;opacity:.9;text-align:center}.deposit-review-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);align-items:start;gap:var(--space-xl);container-name:deposit-review-detail;container-type:inline-size}.deposit-review-detail-main{display:grid;min-width:0;gap:var(--space-xl)}.deposit-review-detail-main>*{min-width:0}.deposit-review-panel{position:sticky;top:calc(var(--shell-topbar-height) + var(--header-height) + var(--space-lg));display:grid;align-self:start;gap:var(--space-xl);min-width:0;max-height:calc(100dvh - var(--shell-topbar-height) - var(--header-height) - var(--space-2xl));overflow-y:auto;padding:var(--space-lg);border-radius:8px}.deposit-review-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.deposit-review-panel-header h2{margin-bottom:var(--space-sm);font-size:var(--font-size-base)}.deposit-review-decision-options{display:grid;gap:var(--space-sm)}.deposit-review-decision-options button{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:flex-start;gap:var(--space-md);min-width:0;padding:var(--space-md);border:1px solid var(--border-color);border-radius:7px;background:var(--bg-primary);color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.deposit-review-decision-options button:hover{border-color:var(--border-color-hover);background:var(--bg-secondary)}.deposit-review-decision-options button.is-selected{border-color:color-mix(in srgb,var(--color-success) 58%,var(--border-color));background:var(--color-success-light);color:var(--color-success-on-soft)}.deposit-review-decision-options button.is-selected.is-mismatched{border-color:color-mix(in srgb,var(--color-danger) 58%,var(--border-color));background:var(--color-danger-light);color:var(--color-danger-on-soft)}.deposit-review-decision-options small,.deposit-review-decision-options strong{display:block}.deposit-review-decision-options strong{font-size:var(--font-size-sm)}.deposit-review-decision-options small{margin-top:3px;color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.45}.deposit-review-notes{min-height:132px;resize:vertical}.deposit-review-note-count{margin-top:5px;color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:right}.deposit-review-save{width:100%;min-height:48px}@container deposit-review-detail (max-width: 1100px){.deposit-review-detail-main,.deposit-review-panel{grid-column:1/-1}.deposit-review-panel{position:static;max-height:none;overflow-y:visible}}@media (max-width:1100px){.deposit-review-detail-layout{grid-template-columns:1fr}.deposit-review-panel{position:static;max-height:none;overflow-y:visible}}@media (max-width:840px){.deposit-review-filters{grid-template-columns:1fr}}@media (max-width:720px){.deposit-review-decision-options,.deposit-review-segments{grid-template-columns:repeat(2,minmax(0,1fr))}.deposit-review-decision-options{align-items:stretch}.deposit-review-decision-options button{height:100%;grid-template-columns:20px minmax(0,1fr);gap:var(--space-sm);padding:var(--space-sm)}.deposit-review-decision-options button>svg{width:20px;height:20px}.deposit-review-decision-options strong{font-size:clamp(.7rem,3.2vw,var(--font-size-sm))}.deposit-review-decision-options small{font-size:clamp(.6rem,2.8vw,var(--font-size-xs));line-height:1.35}.deposit-review-panel-header{align-items:stretch;flex-direction:column}}.give-summary-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.82fr);align-items:start;gap:var(--space-xl)}.give-summary-candidate-panel{min-width:0;overflow:hidden;padding:0;border-radius:8px}.give-summary-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.give-summary-search{display:flex;align-items:center;width:min(560px,100%);min-width:0;gap:var(--space-sm)}.give-summary-search .form-input{min-width:0}.give-summary-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;flex-wrap:wrap;gap:var(--space-sm)}.give-summary-toolbar-currency-hint{display:inline-flex;align-items:flex-start;justify-content:flex-end;flex:0 0 100%;max-width:320px;margin-left:auto;color:var(--text-tertiary);font-size:.68rem;line-height:1.35;text-align:right;gap:5px}.give-summary-toolbar-currency-hint svg{flex:0 0 auto;margin-top:1px}.give-summary-candidate-list{max-height:calc(100vh - 265px);overflow:auto}.give-summary-candidate-list .table{min-width:1160px}.give-summary-candidate-list thead{position:sticky;z-index:2;top:0}.give-summary-candidate-list tr.is-selected td{background:color-mix(in srgb,var(--color-primary-light) 58%,var(--bg-primary))}.give-summary-candidate-list tr.is-currency-disabled:not(.is-selected){color:var(--text-tertiary)}.give-summary-candidate-list tr.is-currency-disabled:not(.is-selected) td{opacity:.64}.give-summary-checkbox-column{width:46px;min-width:46px;text-align:center}.give-summary-checkbox-column input{width:18px;height:18px;accent-color:var(--color-primary)}.give-summary-checkbox-control{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;cursor:pointer}.give-summary-checkbox-control.is-disabled{cursor:not-allowed}.give-summary-document-button{max-width:100%;padding:0;overflow-wrap:anywhere;border:0;background:transparent;color:var(--color-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-align:left;white-space:nowrap;cursor:pointer}.give-summary-document-button:disabled{color:inherit;cursor:not-allowed}.give-summary-currency-hint{display:block;max-width:210px;margin-top:4px;color:var(--color-warning-on-soft);font-size:.68rem;line-height:1.35}.give-summary-give-notes{display:grid;min-width:0;margin-top:var(--space-xs);gap:2px;color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.give-summary-give-notes-cell{min-width:220px;max-width:360px}.give-summary-give-notes strong{color:var(--text-tertiary);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.02em}.give-summary-give-notes span{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.give-summary-row-total{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.give-summary-summary-panel{position:sticky;top:calc(var(--header-height) + var(--space-lg));min-width:0;padding:var(--space-lg);border-radius:8px}.give-summary-export-actions{display:flex;justify-content:flex-end;margin-bottom:var(--space-sm)}.give-summary-export-actions .btn{width:100%}.give-summary-pdf-error{margin:var(--space-sm) 0 0;font-size:var(--font-size-xs)}.give-summary-summary-list{display:grid;gap:var(--space-md)}.give-summary-summary-list>div{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.give-summary-summary-list dt{color:var(--text-secondary);font-size:var(--font-size-sm)}.give-summary-summary-list dd{max-width:70%;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.give-summary-warning{display:flex;align-items:flex-start;margin-top:var(--space-lg);gap:var(--space-sm);font-size:var(--font-size-xs);line-height:1.45}.give-summary-warning svg{flex:0 0 auto;margin-top:1px}.give-summary-denomination-block{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.give-summary-denomination-block h2{margin-bottom:var(--space-md);font-size:var(--font-size-sm);line-height:1.35}.give-summary-candidate-skeleton{min-width:1160px}.give-summary-skeleton-row{display:grid;grid-template-columns:46px minmax(150px,1fr) minmax(105px,.7fr) minmax(170px,1.2fr) minmax(220px,1.4fr) minmax(125px,.85fr) minmax(160px,1fr) minmax(105px,.7fr);align-items:center;gap:var(--space-md);min-height:66px;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color)}.give-summary-skeleton-row:last-child{border-bottom:0}.give-summary-skeleton-row .skeleton{display:block;width:100%;height:13px}.give-summary-skeleton-check{justify-self:center;width:18px!important;height:18px!important}.give-summary-skeleton-document{max-width:158px}.give-summary-skeleton-date,.give-summary-skeleton-offering,.give-summary-skeleton-total{max-width:105px}.give-summary-skeleton-church,.give-summary-skeleton-notes,.give-summary-skeleton-service{max-width:180px}@media (max-width:1080px){.give-summary-layout{grid-template-columns:minmax(0,1fr)}.give-summary-summary-panel{position:static}}@media (max-width:720px){.give-summary-toolbar{align-items:stretch;flex-direction:column;padding:var(--space-md)}.give-summary-search{width:100%}.give-summary-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;width:100%}.give-summary-toolbar-actions .btn{width:100%;min-width:0;min-height:44px;height:100%;padding:8px 6px;gap:4px;font-size:clamp(.65rem,2.8vw,var(--font-size-xs));line-height:1.2;white-space:normal}.give-summary-toolbar-currency-hint{grid-column:1/-1;max-width:none;justify-content:flex-start;margin-left:0;text-align:left}.give-summary-candidate-list{max-height:none}.give-summary-candidate-list .table,.give-summary-candidate-skeleton{width:100%;min-width:0}.give-summary-candidate-list .table tbody,.give-summary-candidate-skeleton{display:grid;gap:var(--space-sm);padding:var(--space-md)}.give-summary-candidate-list .table tbody tr,.give-summary-skeleton-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;gap:0 var(--space-sm);padding:var(--space-sm);overflow:hidden;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary)}.give-summary-candidate-list .table tbody tr.is-selected{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--border-color));background:color-mix(in srgb,var(--color-primary-light) 42%,var(--bg-primary))}.give-summary-candidate-list .table tbody tr.is-selected td{background:transparent}.give-summary-candidate-list .table td,.give-summary-candidate-list .table td[data-label]{display:flex;min-width:0;padding:var(--space-sm);flex-direction:column;align-items:flex-start;gap:4px;font-size:var(--font-size-sm);line-height:1.4;text-align:left}.give-summary-candidate-list .table td[data-label]>*{grid-column:auto}.give-summary-candidate-list .table .give-summary-give-notes-cell{grid-column:1/-1;max-width:none}.give-summary-candidate-list .table td.give-summary-checkbox-column{grid-column:1/-1;display:flex;width:auto;min-width:0;min-height:44px;padding:0 var(--space-sm);align-items:center;justify-content:flex-end}.give-summary-document-button{font-size:var(--font-size-xs);white-space:normal}.give-summary-row-total{white-space:normal}.give-summary-candidate-list .table tbody tr.give-summary-empty-row{display:block;padding:0;border:0;background:transparent}.give-summary-candidate-list .mobile-card-table-empty{display:block;padding:0}.give-summary-skeleton-row{gap:var(--space-md)}.give-summary-skeleton-row .skeleton{max-width:none;height:34px}.give-summary-skeleton-check{grid-column:1/-1;justify-self:end}.give-summary-summary-panel{padding:var(--space-md)}.give-summary-export-actions .btn{min-height:44px}.give-summary-summary-list dd{font-size:var(--font-size-base)}}