.btn-primary{color:#fff;background-color:#2d5a27;border-color:#2d5a27}.btn-primary:hover{color:#fff;background-color:#3d7a35;border-color:#3d7a35}.btn-primary:focus-visible{outline-offset:2px;outline:2px solid #2d5a27}.btn-secondary{color:#2d5a27;background-color:#0000;border-color:#2d5a27}.btn-secondary:hover{background-color:#2d5a2714}.search-input-wrap{flex:1;min-width:12rem;max-width:20rem;position:relative}.search-input-icon{color:#666;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-input{width:100%;padding-left:2.5rem;padding-right:.75rem}select{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;min-height:2.5rem;padding:.5rem 2rem .5rem .75rem;font-family:inherit;font-size:.9375rem}select:focus{outline-offset:0;outline:2px solid #2d5a27}:root{color:#213547;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}body{min-width:320px;min-height:100vh;margin:0}a{color:#2d5a27;font-weight:500;text-decoration:none}a:hover{color:#3d7a35;text-decoration:underline}h1{color:#213547;margin:0 0 1.5rem;font-size:1.75rem;line-height:1.2}button{cursor:pointer;background-color:#fff;border:1px solid #00000026;border-radius:8px;padding:.5rem 1rem;font-family:inherit;font-size:.9375rem;font-weight:500;transition:background-color .2s,border-color .2s}button:hover{background-color:#f5f5f5;border-color:#2d5a27}button:focus-visible{outline-offset:2px;outline:2px solid #2d5a27}input{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:.5rem .75rem;font-family:inherit;font-size:.9375rem}input:focus{outline-offset:0;outline:2px solid #2d5a27}select{color:#213547;cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8L9.5 4.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;border:1px solid #e0e0e0;border-radius:8px;min-height:2.5rem;padding:.5rem 2rem .5rem .75rem;font-family:inherit;font-size:.9375rem;transition:border-color .2s,box-shadow .2s}select:hover{border-color:#bbb}select:focus{border-color:#2d5a27;outline:none;box-shadow:0 0 0 3px #2d5a2726}select:disabled{opacity:.6;cursor:not-allowed}select option{color:#213547;background:#fff;padding:.5rem}label{color:#213547;font-weight:500}.custom-select{width:100%;min-width:10rem;position:relative}.custom-select-trigger{color:#213547;cursor:pointer;text-align:left;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-height:2.5rem;padding:.5rem 2rem .5rem .75rem;font-family:inherit;font-size:.9375rem;transition:border-color .2s,box-shadow .2s;display:flex}.custom-select-trigger .custom-select-placeholder{color:#666}.custom-select-trigger .custom-select-arrow{color:#666;font-size:.6rem;transition:transform .2s;position:absolute;right:.75rem}.custom-select-trigger:hover{border-color:#bbb}.custom-select-trigger:focus{border-color:#2d5a27;outline:none;box-shadow:0 0 0 3px #2d5a2726}.custom-select.is-open .custom-select-arrow{transform:rotate(180deg)}.custom-select-backdrop{z-index:199;background:0 0;position:fixed;inset:0}.custom-select-panel{z-index:200;background:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;max-height:16rem;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 4px 20px #00000026}.custom-select-search{background:#f5f5f5;border-bottom:1px solid #e0e0e0;flex-shrink:0;padding:.5rem .75rem}.custom-select-search-input{background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:100%;padding:.5rem .75rem;font-size:.9375rem}.custom-select-search-input:focus{border-color:#2d5a27;outline:none}.custom-select-list{flex:1;min-height:0;margin:0;padding:.25rem 0;list-style:none;overflow-y:auto}.custom-select-empty{color:#666;text-align:center;padding:1rem;font-size:.9375rem}.custom-select-load-more{text-align:center;border-top:1px solid #e0e0e0;flex-shrink:0;padding:.5rem}.custom-select-load-more-btn{color:#2d5a27;cursor:pointer;background:0 0;border:none;width:100%;padding:.5rem;font-size:.875rem}.custom-select-load-more-btn:hover{text-decoration:underline}.custom-select-option{margin:0}.custom-select-option-btn{text-align:left;cursor:pointer;color:#213547;background:0 0;border:none;width:100%;padding:.625rem 1rem;font-family:inherit;font-size:.9375rem;transition:background .15s;display:block}.custom-select-option-btn:hover{background:#f5f5f5}.custom-select-option-btn.is-selected{color:#2d5a27;background:#2d5a271f;font-weight:500}@media (width<=768px){.custom-select-backdrop{background:#0006}.custom-select-panel{border-bottom:none;border-radius:8px 8px 0 0;max-height:70vh;position:fixed;inset:auto 0 0;box-shadow:0 -4px 24px #0003}.custom-select-option-btn{min-height:3rem;padding:.875rem 1.25rem;font-size:1rem}}.signin-page{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.signin-card{background:#fff;border-radius:8px;width:100%;max-width:22rem;padding:3rem;box-shadow:0 4px 20px #00000026}.signin-heading{color:#2d5a27;margin:0 0 .25rem;font-size:1.5rem}.signin-subheading{color:#666;margin:0 0 1.5rem;font-size:.9375rem}.signin-form{flex-direction:column;gap:1rem;display:flex}.signin-form .form-row{flex-direction:column;gap:.25rem;display:flex}.signin-form .form-row label{font-size:.875rem;display:flex}.signin-error{color:#c62828;margin:0;font-size:.875rem}.signin-submit{width:100%;margin-top:.5rem}.app-layout{min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}.sidenav-toggle{z-index:100;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:2.5rem;height:2.5rem;padding:.5rem;display:none;position:fixed;top:1rem;left:1rem;box-shadow:0 2px 8px #0000001a}.sidenav-toggle .sidenav-toggle-bar{background:#213547;border-radius:1px;width:1.25rem;height:2px;display:block}.sidenav-overlay{z-index:101;background:#0006;display:none;position:fixed;inset:0}.sidenav{background:#fff;border-right:1px solid #e0e0e0;flex-direction:column;flex-shrink:0;width:12rem;padding:1.5rem;display:flex}.sidenav .sidenav-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.sidenav .sidenav-heading{color:#2d5a27;letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700}.sidenav .sidenav-user-meta{color:#666;flex-wrap:wrap;align-items:center;gap:.5rem;margin:-.25rem 0 1rem;font-size:.8125rem;display:flex}.sidenav .sidenav-email{word-break:break-all}.sidenav .sidenav-role{text-transform:uppercase;color:#666;background:#0000000f;border-radius:8px;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.sidenav .sidenav-role.is-admin{color:#2d5a27;background:#e2e8e1}.sidenav .role-hint,.sidenav .settings-intro .role-hint{color:#666;font-size:.95rem}.sidenav .role-hint-block{color:#666;margin:0 0 1rem;font-size:.95rem}.sidenav .text-muted{color:#666}.sidenav .sidenav-close{cursor:pointer;color:#213547;background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1;display:none}.sidenav .sidenav-close:hover{color:#2d5a27}.sidenav .sidenav-nav{flex-direction:column;flex:1;display:flex}.sidenav .sidenav-nav .sidenav-top{flex-direction:column;gap:.25rem;display:flex}.sidenav .sidenav-nav .sidenav-bottom{border-top:1px solid #e0e0e0;margin-top:auto;padding-top:1.5rem}.sidenav .sidenav-nav a{color:#213547;border-radius:8px;padding:.5rem .75rem;text-decoration:none;display:block}.sidenav .sidenav-nav a:hover{color:#2d5a27;background:#f5f5f5;text-decoration:none}.sidenav .sidenav-nav a.active{color:#2d5a27;background:#2d5a271a;font-weight:600}.sidenav .sidenav-nav .sidenav-signout{text-align:left;color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;margin-top:.5rem;padding:.5rem .75rem;font-size:.9375rem;font-weight:500;display:block}.sidenav .sidenav-nav .sidenav-signout:hover{color:#c62828;background:#f5f5f5}.app-content{flex:1;width:100%;max-width:1200px;padding:1.5rem}@media (width<=768px){.sidenav-toggle{display:flex}.sidenav-overlay{opacity:0;pointer-events:none;transition:opacity .2s}.app-layout.sidenav-open .sidenav-overlay{opacity:1;pointer-events:auto;display:block}.sidenav{z-index:102;width:14rem;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 4px 20px #00000026}.app-layout.sidenav-open .sidenav{transform:translate(0)}.sidenav-close{display:block}.app-content{padding-top:3.5rem}}.list-page .list-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.list-page .list-toolbar .search-input-wrap{flex:1;min-width:12rem;max-width:20rem;position:relative}.list-page .list-toolbar .search-input-icon{color:#666;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.list-page .list-toolbar .search-input{width:100%;padding-left:2.5rem;padding-right:.75rem}.list-page .list-toolbar .filter-group{align-items:center;gap:.5rem;display:flex}.list-page .list-toolbar .filter-group label{margin-right:.25rem}.list-page .list-toolbar .store-filter-lowstock{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.list-page .list-toolbar .store-selection-count{color:#666;font-size:.9375rem}.list-page .transactions-totals{color:#666;align-items:center;gap:1.5rem;margin-bottom:1rem;font-size:.9375rem;display:flex}.list-page .transactions-totals strong{color:#213547}.list-page .indent-order-section,.list-page .indent-result-section{margin-bottom:1.5rem}.list-page .indent-subheading{color:#213547;margin:0 0 1rem;font-size:1.125rem}.list-page .indent-portions-table .indent-portion-input{width:6rem;padding:.5rem .75rem}.list-page .indent-empty-result{color:#666;margin-top:1rem}.list-page .store-lowstock-hint,.list-page .store-export-hint{color:#666;margin:0 0 1rem;font-size:.9375rem}.list-page .list-table td.list-empty{text-align:center;color:#666;padding:2rem}.list-page .list-table{border-collapse:collapse;background:#fff;border-radius:8px;width:100%;box-shadow:0 2px 8px #0000001a}.list-page .list-table .col-checkbox{text-align:center;vertical-align:middle;width:2.5rem}.list-page .list-table .checkbox-cell{cursor:pointer;align-items:center;display:inline-flex}.list-page .list-table .checkbox-cell input[type=checkbox]{cursor:pointer;width:1.125rem;height:1.125rem}.list-page .list-table th,.list-page .list-table td{text-align:left;border-bottom:1px solid #e0e0e0;padding:.75rem 1rem}.list-page .list-table th{color:#213547;background:#f5f5f5;font-weight:600}.list-page .list-table th.first-column{border-top-left-radius:8px}.list-page .list-table th.last-column{border-top-right-radius:8px}.list-page .list-table tbody tr:hover{background:#00000005}.list-page .list-table tbody tr.list-table-row--clickable{cursor:pointer}.list-page .list-table tbody tr.list-table-row--clickable:hover{background:#2d5a2712}.list-page .list-table tbody tr.low-stock{background:#c6282814}.list-page .list-table .btn-cell{white-space:nowrap;gap:.5rem;min-height:48px;display:flex}@media (width<=768px){.list-page .list-table .col-id,.list-page .list-table .col-base_unit,.list-page .list-table .col-consumption_unit,.list-page .list-table .col-conversion_factor,.list-page .list-table .col-status{display:none}}.list-page .pagination{border-top:1px solid #e0e0e0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.list-page .pagination .pagination-info{color:#666;font-size:.9375rem}.list-page .pagination .pagination-info .pagination-total{font-weight:500}.list-page .pagination .pagination-buttons{gap:.5rem;display:flex}.list-page .pagination .pagination-btn{padding:.4rem .75rem;font-size:.875rem}.list-page .pagination .pagination-btn:disabled{opacity:.5;cursor:not-allowed}.list-page .settings-intro{color:#666;max-width:42rem;margin:0 0 1.5rem}.list-page .settings-section{margin-bottom:2.5rem}.list-page .settings-section:last-child{margin-bottom:0}.list-page .settings-section .settings-section-title{color:#213547;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.list-page .settings-section .settings-section-intro{color:#666;margin:0 0 1rem;font-size:.9375rem}.list-page .settings-tabs{border-bottom:1px solid #e0e0e0;gap:0;margin-bottom:1.5rem;display:flex}.list-page .settings-tabs .settings-tab{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:.75rem 1.25rem;font-size:1rem;font-weight:500}.list-page .settings-tabs .settings-tab:hover{color:#213547}.list-page .settings-tabs .settings-tab.active{color:#2d5a27;border-bottom-color:#2d5a27}.list-page .loading,.list-page .error{text-align:center;padding:1.5rem}.list-page .error{color:#c62828}.dialog-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog-overlay[hidden]{display:none}.dialog{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:55rem;max-height:90vh;display:flex;overflow:auto;box-shadow:0 4px 20px #00000026}.dialog .dialog-header{border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding:1.5rem;display:flex}.dialog .dialog-header h2{flex:1;margin:0;font-size:1.25rem;font-weight:600}.dialog .dialog-close{color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:1.5rem;line-height:1;display:flex}.dialog .dialog-close:hover{color:#213547;background:#0000000f}.dialog .dialog-close:focus-visible{outline-offset:2px;outline:2px solid #2d5a27}.dialog .dialog-body{flex-direction:column;flex:1;min-height:0;padding:0 1.5rem 1.5rem;display:flex;position:relative;overflow-y:auto}.dialog .dialog-body--with-footer{flex:1;min-height:0;padding:0 1.5rem 1.5rem}.dialog .dialog-footer{box-sizing:border-box;background:#fff;border-top:1px solid #e0e0e0;flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:1rem;width:100%;padding:1.5rem;display:flex}.dialog .dialog-form{flex-direction:column;gap:1rem;display:flex}.dialog .dialog-form .form-row{flex-direction:column;gap:.25rem;display:flex}.dialog .dialog-form .form-row label{font-size:.875rem}.dialog .dialog-form .form-hint{color:#666;margin:0 0 .5rem;font-size:.8125rem}.dialog .dialog-form .form-row-qty-with-unit{align-items:center;gap:.5rem;display:flex}.dialog .dialog-form .form-row-qty-with-unit input{flex:1;min-width:0}.dialog .dialog-form .form-row-qty-with-unit .form-qty-unit{color:#666;white-space:nowrap;font-size:.875rem;font-weight:600}.dialog .dialog-form .recipe-breakdown-row{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.dialog .dialog-form .recipe-breakdown-row .custom-select{flex:1;min-width:0}.dialog .dialog-form .recipe-breakdown-row .recipe-qty-input{width:5rem;padding:.5rem .75rem}.dialog .dialog-form .recipe-breakdown-row .btn-remove-row{color:#666;flex-shrink:0;padding:.35rem .5rem;font-size:1.25rem;line-height:1}.dialog .dialog-form .recipe-breakdown-row .btn-remove-row:hover{color:#c62828}.dialog .dialog-form .btn-add-row{align-self:flex-start;margin-top:.25rem}.dialog .dialog-form.dialog-form-split{flex-direction:row;flex:1;gap:1rem;display:flex}.dialog .dialog-form.dialog-form-split .dialog-form-left{flex-direction:column;flex:1;min-width:0;padding-right:.5rem;display:flex}.dialog .dialog-form.dialog-form-split .dialog-form-right{background:#fafafa;border-left:1px solid #eee;border-radius:12px;flex-direction:column;flex-shrink:0;width:320px;max-height:484px;padding:0;display:flex;overflow:hidden}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-upload-container,.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-section{flex:1;min-height:0}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-section{flex-direction:column;display:flex}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-header{flex-shrink:0}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-dropzone{flex:1;min-height:0;margin:.75rem}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-preview-section{flex-direction:column;flex:1;min-height:0;margin:.75rem;display:flex}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-preview-section .attachment-preview-area{flex:1;min-height:0}.dialog .dialog-form.dialog-form-split .dialog-form-right .attachment-footer{flex-shrink:0}.dialog .dialog-form.dialog-form-split .form-row{flex-direction:column;gap:.25rem;display:flex}.dialog .dialog-form.dialog-form-split .form-row label{font-size:.875rem}.dialog .dialog-body:not(.dialog-body--with-footer) .dialog-actions{border-top:1px solid #e0e0e0;flex-shrink:0;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1rem;display:flex}.export-column-picker .export-column-list{flex-direction:column;gap:.5rem;margin:1rem 0 1.5rem;display:flex}.export-column-picker .export-column-option{cursor:pointer;align-items:center;gap:.5rem;font-weight:400;display:flex}.export-column-picker .export-column-option input[type=checkbox]{cursor:pointer;width:1.125rem;height:1.125rem}.attachment-upload-container{width:100%;height:100%}.attachment-section{flex-direction:column;width:100%;height:100%;display:flex}.attachment-header{background:#fafafa;border-bottom:1px solid #eee;justify-content:center;align-items:center;padding:.75rem 1rem;display:flex}.attachment-title{color:#1a1a1a;font-size:.875rem;font-weight:600}.attachment-dropzone{cursor:pointer;text-align:center;background:#fff;border:2px dashed #ddd;border-radius:6px;justify-content:center;align-items:center;margin:.75rem;padding:1.5rem 1rem;transition:all .2s;display:flex}.attachment-dropzone:hover,.attachment-dropzone:focus-visible{background:#2d5a270a;border-color:#bbb}.attachment-dropzone:focus-visible{outline-offset:2px;outline:2px solid #2d5a27}.attachment-dropzone.is-dragging{background:#2d5a2714;border-color:#2d5a27}.attachment-dropzone.has-error{background:#c628280a;border-color:#c62828}.attachment-input-hidden{display:none}.attachment-dropzone-content{pointer-events:none}.attachment-dropzone-icon{color:#999;margin-bottom:.5rem}.attachment-dropzone-text{color:#333;margin:0 0 .25rem;font-size:.875rem}.attachment-dropzone-hint{color:#999;margin:0;font-size:.75rem}.attachment-error{color:#c62828;margin:.25rem 0 0;padding:0 .75rem .5rem;font-size:.75rem}.attachment-preview-section{border-radius:8px;flex-direction:column;margin:.75rem;display:flex;overflow:hidden}.attachment-preview-area{text-align:center;background:#fafafa;justify-content:center;align-items:stretch;min-height:180px;display:flex;position:relative}.attachment-nav-btn{cursor:pointer;color:#555;z-index:1;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000001a}.attachment-nav-btn:hover{color:#222;background:#fff;transform:translateY(-50%)scale(1.08);box-shadow:0 4px 12px #00000026}.attachment-nav-btn:active{transform:translateY(-50%)scale(.95)}.attachment-nav-btn--prev{left:1rem}.attachment-nav-btn--next{right:1rem}.attachment-nav-btn svg{stroke:currentColor;fill:none;width:18px;height:18px}.attachment-image-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.attachment-image{object-fit:contain;border-radius:6px;width:100%;max-width:100%;height:100%;max-height:100%;transition:transform .3s;box-shadow:0 2px 8px #0000001a}.attachment-image-actions{z-index:100;background:#fffffff2;border-radius:6px;gap:.25rem;padding:.25rem;display:flex;position:absolute;top:.5rem;right:.5rem;box-shadow:0 2px 8px #0003}.attachment-img-action-btn{cursor:pointer;justify-content:center;align-items:center;transition:all .15s;color:#000!important;background:#fff!important;border:none!important;border-radius:4px!important;width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;margin:0!important;padding:0!important;display:flex!important}.attachment-img-action-btn:hover{color:#333!important;background:#f0f0f0!important}.attachment-img-action-btn svg{stroke:#000!important;fill:none!important;width:16px!important;height:16px!important;display:block!important}.attachment-expanded-overlay{z-index:9999;cursor:pointer;background:#000000e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.attachment-expanded-content{cursor:default;max-width:90vw;max-height:90vh;position:relative}.attachment-expanded-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:90vh;transition:transform .3s}.attachment-pdf-preview{background:#fff;border:1px solid #eee;border-radius:8px;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.attachment-pdf-icon{font-size:3.5rem}.attachment-pdf-name{color:#444;text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.875rem;font-weight:500;overflow:hidden}.attachment-action-btn{cursor:pointer;background:0 0;border:none;border-radius:0;align-items:center;padding:8px;display:inline-flex}.attachment-action-btn svg{width:14px;height:14px}.attachment-action-btn--download{color:#1565c0;border-right:1px solid #ddd}.attachment-action-btn--download svg{stroke:#1565c0}.attachment-action-btn--download:hover{background:#1565c014}.attachment-action-btn--delete{color:#c62828}.attachment-action-btn--delete svg{stroke:#c62828}.attachment-action-btn--delete:hover{background:#c6282814}.attachment-footer{background:#fafafa;justify-content:space-between;align-items:center;padding:.875rem 0;display:flex}.attachment-action-group,.attachment-add-group{align-items:center;display:flex}.attachment-add-group .attachment-counter{color:#555;margin-right:6px;padding-right:8px;font-size:.75rem;font-weight:500;background:0 0!important;border-right:1px solid #999!important;border-radius:0!important}.attachment-counter{color:#666;background:#eee;border-radius:12px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.attachment-add-icon{color:#1a5c1a;margin-bottom:2px;font-size:1.1rem;font-weight:500;line-height:1}.attachment-add-btn{color:#2d5a27;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding-left:2px;padding-right:2px;font-size:.8125rem;display:flex}.attachment-add-btn:hover{background:#2d5a2714}.attachment-magnifier{pointer-events:none;z-index:100;background-repeat:no-repeat;border-radius:50%;width:150px;height:150px;position:absolute;box-shadow:0 0 20px #00000080}@media (width<=768px){.dialog{max-width:95vw}.dialog-form-split{flex-direction:column}.dialog-form-split .dialog-form-left,.dialog-form-split .dialog-form-right{border-left:none;width:100%;padding-right:0}.dialog-form-split .dialog-form-right{border-top:1px solid #eee;margin-top:1rem}}.dashboard-page .dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.dashboard-page .dashboard-metric{flex-direction:column;gap:.25rem;display:flex}.dashboard-page .dashboard-metric .dashboard-metric-label{color:#666;font-size:.9375rem}.dashboard-page .dashboard-metric .dashboard-metric-value{color:#213547;font-size:2rem;font-weight:600;line-height:1}.dashboard-page .dashboard-range{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.dashboard-page .dashboard-total-line{color:#666;margin-bottom:1rem;font-size:.9375rem}.dashboard-page .dashboard-total-line strong{color:#213547}.dashboard-page .dashboard-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@media (width<=1024px){.dashboard-page .dashboard-body{grid-template-columns:1fr}}.dashboard-page .dashboard-table-wrap{min-width:0;overflow-x:auto}.dashboard-page .dashboard-chart-wrap{background:#fff;border:1px solid #e0e0e0;border-radius:8px;min-width:0;padding:1rem;box-shadow:0 2px 8px #0000001a}.dashboard-page .dashboard-chart-title{color:#213547;margin:0 0 1rem;font-size:1.0625rem;font-weight:600}.dashboard-page .dashboard-chart-empty{color:#666;padding:1rem 0}.dashboard-page .dashboard-chart-svg{width:100%;height:auto;display:block}.dashboard-page .dashboard-chart-svg .dashboard-chart-bar{fill:#2d5a27;transition:fill .15s}.dashboard-page .dashboard-chart-svg .dashboard-chart-bar:hover{fill:#3d7a35}.dashboard-page .dashboard-chart-svg .dashboard-chart-grid{stroke:#eee;stroke-width:1px}.dashboard-page .dashboard-chart-svg .dashboard-chart-axis{stroke:#ccc;stroke-width:1px}.dashboard-page .dashboard-chart-svg .dashboard-chart-axis-label{fill:#666;font-size:11px}
