body{margin:0;padding:0;font-family:sans-serif}button,.btn,input[type=button],input[type=submit],input[type=reset],input[type=date],input[type=datetime-local],input[type=month],input[type=time],input[type=week],input[type=number],.oc-field-nowrap,.oc-numeric,.price,.table td.text-end{white-space:nowrap}:root{--color-bg: #f2f2f3;--color-surface: #e9e9ea;--color-text: #1d1f20;--color-accent: #5980a6;--color-divider: color-mix(in srgb, #1d1f20 16%, transparent);--color-neutral-100: #f5f5f8;--color-neutral-200: #e7e7ea;--color-neutral-300: #d4d4d7;--color-neutral-400: #b7b7ba;--color-neutral-500: #98989b;--color-neutral-600: #7a7a7d;--color-neutral-700: #5d5d60;--color-neutral-800: #424244;--color-neutral-900: #2b2b2d;--color-accent-100: #eef6ff;--color-accent-200: #d6ebff;--color-accent-300: #b5d9fd;--color-accent-400: #94bce3;--color-accent-500: #749dc4;--color-accent-600: #597ea3;--color-accent-700: #416180;--color-accent-800: #2c455d;--color-accent-900: #1d2d3d;--font-heading: "Barlow Condensed", "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif;--font-heading-weight: 600;--font-body: "Barlow", "Hiragino Kaku Gothic ProN", "Noto Sans JP", system-ui, sans-serif;--space-1: 3.4px;--space-2: 6.8px;--space-3: 10.2px;--space-4: 13.6px;--space-6: 20.4px;--space-8: 27.2px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 7px;--shadow-sm: 0 1px 2px color-mix(in srgb, #2b2b2d 14%, transparent);--shadow-md: 0 3px 10px color-mix(in srgb, #2b2b2d 16%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, #2b2b2d 22%, transparent);--tone-err: #8c2f2f;--tone-warn: #a97416;--tone-ok: #416180;--tone-mute: #7a7a7d;--shell-nav-bg: var(--color-accent-900);--shell-nav-fg: #e7ecf2;--shell-nav-fg-dim: rgba(231, 236, 242, .62);--shell-nav-border: rgba(255, 255, 255, .13);--shell-sidebar-width: 248px;--shell-rail-width: 60px;--shell-topbar-height: 56px}.blueprint{position:relative;border:1px solid var(--color-divider);border-radius:0}.blueprint>.corner{position:absolute;width:11px;height:11px;color:color-mix(in srgb,var(--color-text) 55%,transparent);pointer-events:none}.blueprint>.corner:before,.blueprint>.corner:after{content:"";position:absolute;background:currentColor}.blueprint>.corner:before{left:5px;top:0;width:1px;height:100%}.blueprint>.corner:after{top:5px;left:0;width:100%;height:1px}.blueprint>.corner.tl{top:-6px;left:-6px}.blueprint>.corner.tr{top:-6px;right:-6px}.blueprint>.corner.bl{bottom:-6px;left:-6px}.blueprint>.corner.br{bottom:-6px;right:-6px}.blueprint-inverse{border-color:#ffffff4d}.blueprint-inverse>.corner{color:#ffffff8c}.duotone{position:relative;overflow:hidden}.duotone:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--color-accent);mix-blend-mode:color}.blueprint.duotone{overflow:visible}.oc-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.oc-heading{font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:.02em}.oc-numeric{font-variant-numeric:tabular-nums}.oc-tone-err{color:var(--tone-err)}.oc-tone-warn{color:var(--tone-warn)}.oc-tone-ok{color:var(--tone-ok)}.oc-tone-mute{color:var(--tone-mute)}.oc-elev-sm{box-shadow:var(--shadow-sm)}.oc-elev-md{box-shadow:var(--shadow-md)}.oc-elev-lg{box-shadow:var(--shadow-lg)}.oc-stat{padding:13px 16px;cursor:pointer;background:transparent}.oc-stat:hover{background:var(--color-accent-100)}.oc-stat.is-active{border-color:var(--color-accent);background:var(--color-accent-100)}.oc-stat-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 55%,transparent);white-space:nowrap}.oc-stat-value{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:34px;line-height:1.1;font-variant-numeric:tabular-nums}@media print{.no_print{display:none!important}}body.oc-theme{--bs-body-bg: var(--color-bg);--bs-body-color: var(--color-text);--bs-body-font-family: var(--font-body);--bs-body-font-size: 15px;--bs-body-line-height: 1.55;--bs-emphasis-color: var(--color-text);--bs-secondary-color: color-mix(in srgb, var(--color-text) 55%, transparent);--bs-tertiary-bg: var(--color-surface);--bs-border-color: var(--color-divider);--bs-border-color-translucent: var(--color-divider);--bs-border-radius: 0;--bs-border-radius-sm: 0;--bs-border-radius-lg: 0;--bs-border-radius-xl: 0;--bs-border-radius-xxl: 0;--bs-border-radius-pill: 0;--bs-primary: var(--color-accent);--bs-primary-rgb: 89, 128, 166;--bs-secondary: var(--color-neutral-600);--bs-secondary-rgb: 122, 122, 125;--bs-success: var(--tone-ok);--bs-success-rgb: 65, 97, 128;--bs-danger: var(--tone-err);--bs-danger-rgb: 140, 47, 47;--bs-warning: var(--tone-warn);--bs-warning-rgb: 169, 116, 22;--bs-info: var(--color-accent-600);--bs-info-rgb: 89, 126, 163;--bs-dark: var(--color-accent-900);--bs-dark-rgb: 29, 45, 61;--bs-light: var(--color-neutral-100);--bs-link-color: var(--color-accent-700);--bs-link-color-rgb: 65, 97, 128;--bs-link-hover-color: var(--color-accent);--bs-link-hover-color-rgb: 89, 128, 166;--bs-focus-ring-color: color-mix(in srgb, var(--color-accent) 35%, transparent);--bs-focus-ring-width: 2px;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.55}body.oc-theme h1,body.oc-theme h2,body.oc-theme h3,body.oc-theme h4,body.oc-theme h5,body.oc-theme h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);line-height:1.12;letter-spacing:-.015em}body.oc-theme h1{font-size:32px}body.oc-theme h2{font-size:26px}body.oc-theme h3{font-size:22px}body.oc-theme h4{font-size:19px}body.oc-theme h5{font-size:16px}body.oc-theme h6{font-size:13px;letter-spacing:.08em;text-transform:uppercase}body.oc-theme .app-content h1:not(.oc-page-context){display:none}body.oc-theme .app-content .oc-content-headings h1{display:block}body.oc-theme :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}body.oc-theme ::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}body.oc-theme .btn{--bs-btn-font-family: var(--font-heading);--bs-btn-font-weight: var(--font-heading-weight);--bs-btn-font-size: 14px;--bs-btn-line-height: 1.2;--bs-btn-padding-y: var(--space-2);--bs-btn-padding-x: calc(var(--space-3) * 1.2);--bs-btn-border-radius: 0;--bs-btn-border-width: 1px;--bs-btn-focus-shadow-rgb: 89, 128, 166;--bs-btn-disabled-opacity: .45;letter-spacing:.02em}body.oc-theme .btn-sm{--bs-btn-font-size: 12px;--bs-btn-padding-y: 3px;--bs-btn-padding-x: 9px}body.oc-theme .btn-lg{--bs-btn-font-size: 16px;--bs-btn-padding-y: var(--space-3);--bs-btn-padding-x: var(--space-6)}body.oc-theme .btn-dark,body.oc-theme .btn-primary{--bs-btn-color: var(--color-bg);--bs-btn-bg: var(--color-accent-700);--bs-btn-border-color: var(--color-accent-700);--bs-btn-hover-color: var(--color-bg);--bs-btn-hover-bg: var(--color-accent-800);--bs-btn-hover-border-color: var(--color-accent-800);--bs-btn-active-color: var(--color-bg);--bs-btn-active-bg: var(--color-accent-900);--bs-btn-active-border-color: var(--color-accent-900);--bs-btn-disabled-color: var(--color-bg);--bs-btn-disabled-bg: var(--color-accent-700);--bs-btn-disabled-border-color: var(--color-accent-700)}body.oc-theme .btn-secondary,body.oc-theme .btn-light{--bs-btn-color: var(--color-text);--bs-btn-bg: transparent;--bs-btn-border-color: var(--color-divider);--bs-btn-hover-color: var(--color-text);--bs-btn-hover-bg: color-mix(in srgb, var(--color-text) 7%, transparent);--bs-btn-hover-border-color: var(--color-divider);--bs-btn-active-color: var(--color-text);--bs-btn-active-bg: color-mix(in srgb, var(--color-text) 14%, transparent);--bs-btn-active-border-color: var(--color-divider);--bs-btn-disabled-color: var(--color-text);--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: var(--color-divider)}body.oc-theme .btn-success{--bs-btn-color: var(--color-bg);--bs-btn-bg: var(--tone-ok);--bs-btn-border-color: var(--tone-ok);--bs-btn-hover-color: var(--color-bg);--bs-btn-hover-bg: var(--color-accent-800);--bs-btn-hover-border-color: var(--color-accent-800);--bs-btn-active-color: var(--color-bg);--bs-btn-active-bg: var(--color-accent-900);--bs-btn-active-border-color: var(--color-accent-900);--bs-btn-disabled-color: var(--color-bg);--bs-btn-disabled-bg: var(--tone-ok);--bs-btn-disabled-border-color: var(--tone-ok)}body.oc-theme .btn-danger{--bs-btn-color: var(--color-bg);--bs-btn-bg: var(--tone-err);--bs-btn-border-color: var(--tone-err);--bs-btn-hover-color: var(--color-bg);--bs-btn-hover-bg: #752727;--bs-btn-hover-border-color: #752727;--bs-btn-active-color: var(--color-bg);--bs-btn-active-bg: #5e1f1f;--bs-btn-active-border-color: #5e1f1f;--bs-btn-disabled-color: var(--color-bg);--bs-btn-disabled-bg: var(--tone-err);--bs-btn-disabled-border-color: var(--tone-err)}body.oc-theme .btn-warning{--bs-btn-color: var(--color-bg);--bs-btn-bg: var(--tone-warn);--bs-btn-border-color: var(--tone-warn);--bs-btn-hover-color: var(--color-bg);--bs-btn-hover-bg: #8d6013;--bs-btn-hover-border-color: #8d6013;--bs-btn-active-color: var(--color-bg);--bs-btn-active-bg: #714d0f;--bs-btn-active-border-color: #714d0f;--bs-btn-disabled-color: var(--color-bg);--bs-btn-disabled-bg: var(--tone-warn);--bs-btn-disabled-border-color: var(--tone-warn)}body.oc-theme .btn-info{--bs-btn-color: var(--color-accent-800);--bs-btn-bg: var(--color-accent-100);--bs-btn-border-color: var(--color-accent-300);--bs-btn-hover-color: var(--color-accent-900);--bs-btn-hover-bg: var(--color-accent-200);--bs-btn-hover-border-color: var(--color-accent-400);--bs-btn-active-color: var(--color-accent-900);--bs-btn-active-bg: var(--color-accent-300);--bs-btn-active-border-color: var(--color-accent-400);--bs-btn-disabled-color: var(--color-accent-800);--bs-btn-disabled-bg: var(--color-accent-100);--bs-btn-disabled-border-color: var(--color-accent-300)}body.oc-theme .btn-outline-dark,body.oc-theme .btn-outline-secondary{--bs-btn-color: var(--color-text);--bs-btn-border-color: var(--color-divider);--bs-btn-hover-color: var(--color-text);--bs-btn-hover-bg: color-mix(in srgb, var(--color-text) 7%, transparent);--bs-btn-hover-border-color: color-mix(in srgb, var(--color-text) 45%, transparent);--bs-btn-active-color: var(--color-text);--bs-btn-active-bg: color-mix(in srgb, var(--color-text) 14%, transparent);--bs-btn-active-border-color: color-mix(in srgb, var(--color-text) 45%, transparent);--bs-btn-disabled-color: var(--color-text);--bs-btn-disabled-border-color: var(--color-divider)}body.oc-theme .btn-outline-primary,body.oc-theme .btn-outline-info{--bs-btn-color: var(--color-accent-700);--bs-btn-border-color: var(--color-accent);--bs-btn-hover-color: var(--color-accent-800);--bs-btn-hover-bg: color-mix(in srgb, var(--color-accent) 10%, transparent);--bs-btn-hover-border-color: var(--color-accent);--bs-btn-active-color: var(--color-accent-900);--bs-btn-active-bg: color-mix(in srgb, var(--color-accent) 18%, transparent);--bs-btn-active-border-color: var(--color-accent);--bs-btn-disabled-color: var(--color-accent-700);--bs-btn-disabled-border-color: var(--color-accent)}body.oc-theme .btn-outline-danger{--bs-btn-color: var(--tone-err);--bs-btn-border-color: var(--tone-err);--bs-btn-hover-color: var(--tone-err);--bs-btn-hover-bg: color-mix(in srgb, var(--tone-err) 10%, transparent);--bs-btn-hover-border-color: var(--tone-err);--bs-btn-active-color: var(--tone-err);--bs-btn-active-bg: color-mix(in srgb, var(--tone-err) 18%, transparent);--bs-btn-active-border-color: var(--tone-err);--bs-btn-disabled-color: var(--tone-err);--bs-btn-disabled-border-color: var(--tone-err)}body.oc-theme .btn-outline-success{--bs-btn-color: var(--tone-ok);--bs-btn-border-color: var(--tone-ok);--bs-btn-hover-color: var(--tone-ok);--bs-btn-hover-bg: color-mix(in srgb, var(--tone-ok) 10%, transparent);--bs-btn-hover-border-color: var(--tone-ok);--bs-btn-active-color: var(--tone-ok);--bs-btn-active-bg: color-mix(in srgb, var(--tone-ok) 18%, transparent);--bs-btn-active-border-color: var(--tone-ok);--bs-btn-disabled-color: var(--tone-ok);--bs-btn-disabled-border-color: var(--tone-ok)}body.oc-theme .btn-link{--bs-btn-color: var(--color-accent-700);--bs-btn-hover-color: var(--color-accent);--bs-btn-border-color: transparent;text-decoration:none;text-underline-offset:3px}body.oc-theme .btn-link:hover{text-decoration:underline}body.oc-theme .form-label,body.oc-theme .col-form-label{font-size:13px;color:color-mix(in srgb,var(--color-text) 70%,transparent)}body.oc-theme .form-control,body.oc-theme .form-select{font-family:var(--font-body);font-size:14px;color:var(--color-text);caret-color:var(--color-accent);background-color:var(--color-surface);border:1px solid var(--color-divider);border-radius:0;box-shadow:none}body.oc-theme .form-control:hover,body.oc-theme .form-select:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}body.oc-theme .form-control:focus,body.oc-theme .form-select:focus{border-color:var(--color-accent);box-shadow:none;outline:2px solid var(--color-accent);outline-offset:0}body.oc-theme .form-control:disabled,body.oc-theme .form-control[readonly],body.oc-theme .form-select:disabled{background-color:var(--color-neutral-200);color:var(--color-neutral-600)}body.oc-theme .form-control::placeholder{color:color-mix(in srgb,var(--color-text) 40%,transparent)}body.oc-theme .form-control-sm,body.oc-theme .form-select-sm{font-size:13px}body.oc-theme .form-check-input{border:1px solid color-mix(in srgb,var(--color-text) 40%,transparent);border-radius:0;background-color:var(--color-bg)}body.oc-theme .form-check-input:checked{background-color:var(--color-accent);border-color:var(--color-accent)}body.oc-theme .form-check-input[type=radio]{border-radius:50%}body.oc-theme .form-check-input:focus{border-color:var(--color-accent);box-shadow:none;outline:2px solid var(--color-accent);outline-offset:2px}body.oc-theme .input-group-text{background-color:var(--color-neutral-200);border:1px solid var(--color-divider);border-radius:0;font-size:13px}body.oc-theme .table{--bs-table-color: var(--color-text);--bs-table-bg: transparent;--bs-table-border-color: color-mix(in srgb, var(--color-text) 8%, transparent);--bs-table-hover-color: var(--color-text);--bs-table-hover-bg: color-mix(in srgb, var(--color-text) 4%, transparent);--bs-table-striped-bg: color-mix(in srgb, var(--color-text) 3%, transparent);--bs-table-active-bg: var(--color-accent-100);font-size:13px;vertical-align:middle}body.oc-theme .table>thead>tr>th{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 60%,transparent);background:transparent;border-bottom:1px solid var(--color-divider);white-space:nowrap;padding:var(--space-2) var(--space-3)}body.oc-theme .table>tbody>tr>td{padding:var(--space-2) var(--space-3);border-bottom-color:color-mix(in srgb,var(--color-text) 8%,transparent)}body.oc-theme .table-bordered>:not(caption)>*{border-width:0}body.oc-theme .table-bordered>:not(caption)>*>*{border-width:0 0 1px 0}body.oc-theme .table .btn{--bs-btn-font-size: 12px;--bs-btn-padding-y: 2px;--bs-btn-padding-x: 9px}body.oc-theme .pagination{--bs-pagination-border-radius: 0;--bs-pagination-font-size: 12px;--bs-pagination-padding-x: 10px;--bs-pagination-padding-y: 3px;--bs-pagination-color: var(--color-text);--bs-pagination-bg: transparent;--bs-pagination-border-color: var(--color-divider);--bs-pagination-hover-color: var(--color-text);--bs-pagination-hover-bg: color-mix(in srgb, var(--color-text) 7%, transparent);--bs-pagination-hover-border-color: var(--color-divider);--bs-pagination-focus-color: var(--color-accent-800);--bs-pagination-focus-bg: var(--color-accent-100);--bs-pagination-focus-box-shadow: none;--bs-pagination-active-color: var(--color-bg);--bs-pagination-active-bg: var(--color-accent);--bs-pagination-active-border-color: var(--color-accent);--bs-pagination-disabled-color: var(--color-neutral-500);--bs-pagination-disabled-bg: transparent;--bs-pagination-disabled-border-color: var(--color-divider);font-family:var(--font-heading);gap:4px}body.oc-theme .card{--bs-card-bg: transparent;--bs-card-border-color: var(--color-divider);--bs-card-border-radius: 0;--bs-card-inner-border-radius: 0;--bs-card-cap-bg: transparent;--bs-card-spacer-x: var(--space-4);--bs-card-spacer-y: var(--space-3)}body.oc-theme .card-header,body.oc-theme .card-footer{border-color:var(--color-divider)}body.oc-theme .card-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px}body.oc-theme .modal{--bs-modal-bg: var(--color-bg);--bs-modal-border-color: var(--color-divider);--bs-modal-border-radius: 0;--bs-modal-inner-border-radius: 0;--bs-modal-header-border-color: var(--color-divider);--bs-modal-footer-border-color: var(--color-divider);--bs-modal-box-shadow: var(--shadow-lg)}body.oc-theme .modal-content{box-shadow:var(--shadow-lg)}body.oc-theme .modal-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:20px}body.oc-theme .modal-backdrop.show{--bs-backdrop-bg: var(--color-neutral-900);--bs-backdrop-opacity: .5}body.oc-theme .alert{--bs-alert-border-radius: 0;border-width:1px;font-size:14px}body.oc-theme .alert-danger{--bs-alert-color: var(--tone-err);--bs-alert-bg: color-mix(in srgb, var(--tone-err) 8%, transparent);--bs-alert-border-color: color-mix(in srgb, var(--tone-err) 40%, transparent)}body.oc-theme .alert-warning{--bs-alert-color: var(--tone-warn);--bs-alert-bg: color-mix(in srgb, var(--tone-warn) 10%, transparent);--bs-alert-border-color: color-mix(in srgb, var(--tone-warn) 40%, transparent)}body.oc-theme .alert-success,body.oc-theme .alert-info,body.oc-theme .alert-primary{--bs-alert-color: var(--color-accent-800);--bs-alert-bg: var(--color-accent-100);--bs-alert-border-color: var(--color-accent-300)}body.oc-theme .alert-secondary,body.oc-theme .alert-light,body.oc-theme .alert-dark{--bs-alert-color: var(--color-neutral-800);--bs-alert-bg: var(--color-neutral-100);--bs-alert-border-color: var(--color-neutral-300)}body.oc-theme .badge{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:11px;letter-spacing:.04em;padding:2px 8px;border-radius:0;border:1px solid transparent}body.oc-theme .badge:empty{display:none}body.oc-theme .badge.bg-danger,body.oc-theme .badge.text-bg-danger{background-color:transparent!important;border-color:var(--tone-err);color:var(--tone-err)}body.oc-theme .badge.bg-success,body.oc-theme .badge.text-bg-success,body.oc-theme .badge.bg-primary,body.oc-theme .badge.text-bg-primary,body.oc-theme .badge.bg-info,body.oc-theme .badge.text-bg-info{background-color:var(--color-accent-100)!important;border-color:var(--color-accent-300);color:var(--color-accent-800)}body.oc-theme .badge.bg-warning,body.oc-theme .badge.text-bg-warning{background-color:color-mix(in srgb,var(--tone-warn) 14%,transparent)!important;border-color:color-mix(in srgb,var(--tone-warn) 45%,transparent);color:var(--tone-warn)!important}body.oc-theme .badge.bg-secondary,body.oc-theme .badge.text-bg-secondary,body.oc-theme .badge.bg-light,body.oc-theme .badge.bg-dark{background-color:var(--color-neutral-100)!important;border-color:var(--color-neutral-300);color:var(--color-neutral-800)!important}body.oc-theme .accordion{--bs-accordion-bg: transparent;--bs-accordion-border-color: var(--color-divider);--bs-accordion-border-radius: 0;--bs-accordion-inner-border-radius: 0;--bs-accordion-btn-color: var(--color-text);--bs-accordion-btn-bg: transparent;--bs-accordion-btn-focus-box-shadow: none;--bs-accordion-active-color: var(--color-accent-800);--bs-accordion-active-bg: var(--color-accent-100)}body.oc-theme .accordion-button{font-family:var(--font-heading);font-weight:var(--font-heading-weight)}body.oc-theme .nav-tabs{--bs-nav-tabs-border-color: var(--color-divider);--bs-nav-tabs-border-radius: 0;--bs-nav-tabs-link-active-color: var(--color-accent-800);--bs-nav-tabs-link-active-bg: transparent;--bs-nav-tabs-link-active-border-color: var(--color-divider) var(--color-divider) transparent;--bs-nav-link-color: var(--color-text);--bs-nav-link-hover-color: var(--color-accent);font-family:var(--font-heading)}body.oc-theme .dropdown-menu{--bs-dropdown-bg: var(--color-bg);--bs-dropdown-border-color: var(--color-divider);--bs-dropdown-border-radius: 0;--bs-dropdown-link-color: var(--color-text);--bs-dropdown-link-hover-bg: var(--color-accent-100);--bs-dropdown-link-hover-color: var(--color-accent-800);--bs-dropdown-link-active-bg: var(--color-accent);--bs-dropdown-link-active-color: var(--color-bg);--bs-dropdown-font-size: 13px;box-shadow:var(--shadow-md)}body.oc-theme .offcanvas{--bs-offcanvas-bg: var(--color-bg);--bs-offcanvas-border-color: var(--color-divider);--bs-offcanvas-box-shadow: var(--shadow-lg)}body.oc-theme .offcanvas-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight)}body.oc-theme .breadcrumb{--bs-breadcrumb-font-size: 12px;--bs-breadcrumb-divider-color: var(--color-neutral-500);--bs-breadcrumb-item-active-color: color-mix(in srgb, var(--color-text) 60%, transparent)}body.oc-theme .progress{--bs-progress-bg: var(--color-neutral-200);--bs-progress-border-radius: 0;--bs-progress-bar-bg: var(--color-accent);--bs-progress-font-size: 11px}body.oc-theme .tooltip{--bs-tooltip-bg: var(--color-accent-900);--bs-tooltip-color: var(--color-bg);--bs-tooltip-border-radius: 0;--bs-tooltip-font-size: 12px;font-family:var(--font-body)}body.oc-theme .spinner-border,body.oc-theme .spinner-grow{color:var(--color-accent)}.app-shell{display:flex;align-items:stretch;min-height:100vh}.app-sidebar{width:var(--shell-sidebar-width);flex:0 0 auto;background:var(--shell-nav-bg);color:var(--shell-nav-fg);display:flex;flex-direction:column;position:sticky;top:0;align-self:flex-start;height:100vh;transition:width .16s ease;overflow:hidden}.app-sidebar.is-rail{width:var(--shell-rail-width)}.app-sidebar.is-rail .app-sidebar-label,.app-sidebar.is-rail .app-nav-group-label,.app-sidebar.is-rail .app-nav-group-mark,.app-sidebar.is-rail .app-nav-sub{display:none!important}.app-sidebar.is-rail .app-nav-row,.app-sidebar.is-rail .app-sidebar-user{justify-content:center;padding-left:0;padding-right:0}.app-sidebar.is-rail .app-sidebar-brand{justify-content:center;padding:0}.app-sidebar.is-hidden{width:0;border:0}.app-sidebar-brand{height:var(--shell-topbar-height);flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid var(--shell-nav-border)}.app-sidebar-brand-name{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.app-sidebar-search{padding:12px 14px 6px;flex:0 0 auto}body.oc-theme .app-sidebar-search .form-control{background:#ffffff0f;border-color:#ffffff29;color:var(--shell-nav-fg);font-size:12px;padding:6px 8px}body.oc-theme .app-sidebar-search .form-control::placeholder{color:#e7ecf273}body.oc-theme .app-sidebar-search .form-control:hover,body.oc-theme .app-sidebar-search .form-control:focus{border-color:var(--color-accent-400)}.app-sidebar-nav{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:6px 0 14px}.app-nav-group{margin-bottom:2px}.app-nav-row{display:flex;align-items:center;gap:10px;padding:7px 14px;cursor:pointer;font-size:13px;border:0;background:transparent;color:inherit;width:100%;text-align:left}.app-nav-row:hover{background:#ffffff12}.app-nav-row-icon{flex:0 0 18px;opacity:.75}.app-nav-group-label{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:14px;letter-spacing:.05em;text-transform:uppercase;opacity:.72;flex:1 1 auto;white-space:nowrap}.app-nav-group-mark{font-family:var(--font-heading);font-size:16px;line-height:1;opacity:.5;padding-left:6px}.app-nav-sub{display:flex;flex-direction:column}.app-nav-sub-row{display:flex;align-items:center;gap:6px;padding:5px 14px 5px 42px;font-size:13px;cursor:pointer;color:var(--shell-nav-fg-dim);background:transparent;border:0;border-left:2px solid transparent;width:100%;text-align:left}.app-nav-sub-row:hover{color:#fff}.app-nav-sub-row.is-active{color:#fff;background:#ffffff1a;border-left-color:var(--color-accent-400)}.app-nav-sub-row-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav-empty{padding:8px 14px 8px 42px;font-size:12px;color:#e7ecf273}.app-sidebar-user{flex:0 0 auto;border-top:1px solid var(--shell-nav-border);padding:12px 14px;display:flex;align-items:center;gap:10px}.app-sidebar-avatar{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:13px}.app-sidebar-user-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-user-mail{font-size:11px;opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.oc-theme .app-sidebar .btn-icon{--bs-btn-color: var(--shell-nav-fg);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: rgba(255, 255, 255, .1);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: #fff;--bs-btn-active-bg: rgba(255, 255, 255, .18);--bs-btn-active-border-color: transparent}body.oc-theme .btn-icon{display:inline-flex;align-items:center;justify-content:center;--bs-btn-padding-x: 6px;--bs-btn-padding-y: 6px;--bs-btn-border-color: transparent;--bs-btn-bg: transparent;--bs-btn-color: var(--color-text);--bs-btn-hover-bg: color-mix(in srgb, var(--color-text) 7%, transparent);--bs-btn-hover-border-color: transparent;--bs-btn-hover-color: var(--color-text);--bs-btn-active-bg: color-mix(in srgb, var(--color-text) 14%, transparent);--bs-btn-active-border-color: transparent;--bs-btn-active-color: var(--color-text)}.app-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.app-topbar{height:var(--shell-topbar-height);flex:0 0 auto;background:var(--color-bg);border-bottom:1px solid var(--color-divider);display:flex;align-items:center;gap:16px;padding:0 20px;position:sticky;top:0;z-index:1020}.app-topbar-heading{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:nowrap;overflow:hidden;white-space:nowrap}.app-topbar-crumb{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 55%,transparent);flex:0 0 auto}body.oc-theme .app-topbar-title{margin:0;font-size:22px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-topbar-spacer{flex:1 1 auto}.app-topbar-divider{width:1px;height:22px;background:var(--color-divider);flex:0 0 auto}body.oc-theme .app-topbar-version{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:12px;letter-spacing:.06em;color:color-mix(in srgb,var(--color-text) 60%,transparent);text-decoration:none;white-space:nowrap}body.oc-theme .app-topbar-version:hover{color:var(--color-accent)}.app-content{flex:1 1 auto;width:100%;max-width:1440px;padding:0 8px}body.oc-theme .app-content>.container,body.oc-theme .app-content>.container-fluid,body.oc-theme .app-content .container-fluid,body.oc-theme .app-content .container{margin-top:var(--space-6)!important;margin-bottom:var(--space-8)!important}.oc-row-hover:hover{background:var(--color-accent-100);cursor:pointer}.app-sidebar-backdrop{display:none}@media(max-width:991.98px){.app-sidebar{position:fixed;top:0;left:0;z-index:1045;box-shadow:var(--shadow-lg)}.app-sidebar.is-rail{width:var(--shell-sidebar-width)}.app-sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background:color-mix(in srgb,var(--color-neutral-900) 50%,transparent);border:0;padding:0}.app-content{padding:0 4px}}@media print{.app-sidebar,.app-topbar,.app-sidebar-backdrop{display:none!important}.app-shell{display:block}}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-brand{background:var(--color-accent-900);color:var(--color-bg);padding:64px 56px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}.auth-brand-kicker{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:13px;letter-spacing:.22em;text-transform:uppercase;opacity:.6}.auth-brand-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:64px;line-height:1.02;letter-spacing:-.02em}.auth-brand-lead{margin-top:20px;font-size:15px;opacity:.66;max-width:420px}.auth-brand-meta{display:flex;flex-wrap:wrap;gap:28px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.45}.auth-panel{display:flex;align-items:center;justify-content:center;padding:48px}.auth-card{width:380px;max-width:100%;padding:40px 36px;background:var(--color-bg)}body.oc-theme .auth-card h5{margin:0 0 4px}.auth-card-lead{font-size:13px;margin-bottom:24px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.auth-fields{display:flex;flex-direction:column;gap:14px}.auth-field-label{display:block;font-size:12px;margin-bottom:5px;color:color-mix(in srgb,var(--color-text) 70%,transparent)}body.oc-theme .auth-submit{width:100%;padding:11px}.auth-rule{height:1px;border:0;margin:var(--space-4) 0;background:var(--color-divider);opacity:1}.auth-alternatives{display:flex;flex-direction:column;gap:8px}body.oc-theme .auth-alternatives .btn{width:100%}.auth-footnote{margin-top:18px;text-align:center;font-size:12px}@media(max-width:991.98px){.auth-layout{grid-template-columns:1fr}.auth-brand{padding:40px 28px;gap:24px}.auth-brand-title{font-size:44px}.auth-panel{padding:32px 20px 56px}}.dash{padding:var(--space-6) 12px var(--space-8)}.dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dash-kpi{padding:16px 16px 14px}.dash-kpi-link{display:block;color:inherit;cursor:pointer;text-decoration:none}.dash-kpi-link:hover .dash-kpi{background:var(--color-accent-100)}.dash-kpi-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.dash-kpi-figure{display:flex;align-items:flex-end;gap:8px;margin-top:6px}.dash-kpi-value{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:46px;line-height:1;font-variant-numeric:tabular-nums}.dash-kpi-unit{font-size:12px;padding-bottom:6px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.dash-kpi-note{margin-top:8px;font-size:12px;min-height:18px}.dash-panels{display:grid;grid-template-columns:1.35fr 1fr;gap:12px;margin-top:12px;align-items:start}.dash-side{display:flex;flex-direction:column;gap:12px}.dash-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border-bottom:1px solid var(--color-divider)}body.oc-theme .dash-panel-head h6{margin:0}.dash-panel-link{font-size:12px;white-space:nowrap}body.oc-theme .dash-panel .table{margin:0}.dash-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.dash-table-scroll .table{min-width:720px}.dash-row-link{color:inherit}body.oc-theme .dash-panel .table>thead>tr>th,body.oc-theme .dash-panel .table>tbody>tr>td{padding:6px 10px}.dash-list-row{display:flex;align-items:center;gap:10px;padding:9px 16px;border-bottom:1px solid var(--color-divider);font-size:13px;color:inherit;text-decoration:none}.dash-list-row:last-child{border-bottom:0}.dash-list-empty{padding:18px 16px;font-size:13px;color:var(--tone-mute)}.dash-dot{width:6px;height:6px;flex:0 0 auto;background:currentColor}.dash-alert-level{flex:0 0 92px;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.dash-grow{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-detail{flex:0 0 auto;font-size:12px;color:color-mix(in srgb,var(--color-text) 55%,transparent);white-space:nowrap}.dash-amount{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums}.dash-nowrap{white-space:nowrap}.dash-right{text-align:right}@media(max-width:1399.98px){.dash-panels{grid-template-columns:1fr}}@media(max-width:991.98px){.dash-kpis{grid-template-columns:repeat(2,1fr);gap:16px 12px}}@media(max-width:575.98px){.dash-kpis{grid-template-columns:1fr}.dash-kpi-value{font-size:38px}}
