﻿.page-template-portal-template{overflow-x:auto;background:#fff}.page-template-portal-template .site-header{border-bottom:1px solid #e8eaec;min-height:0 !important}.page-template-portal-template .site-header .site-branding{width:auto}.page-template-portal-template .site-header h1{margin:0 0 0 10px;display:inline;vertical-align:middle;text-transform:none;font-size:1.1em}.page-template-portal-template .site-header .logo{text-decoration:none;padding:0;width:auto;display:inline-flex;align-items:center}.page-template-portal-template .site-header .logo img{max-height:36px;width:auto}.page-template-portal-template h1,.page-template-portal-template h2{text-transform:none}.page-template-portal-template table{font-size:.75em}.page-template-portal-template table td:last-child:not(:first-child){text-align:left}.page-template-portal-template td code{word-break:keep-all}.page-template-portal-template button{text-transform:none;border-radius:6px}.shake-it{animation:shake .4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px, 0, 0)}20%,80%{transform:translate3d(2px, 0, 0)}30%,50%,70%{transform:translate3d(-3px, 0, 0)}40%,60%{transform:translate3d(3px, 0, 0)}}.success-tick{width:24px;height:24px;border-radius:50%;display:block;stroke-width:3;stroke:#4bb543;stroke-miterlimit:10;box-shadow:inset 0px 0px 0px #4bb543;animation:fill .2s ease-in-out .2s forwards,scale .1s ease-in-out .4s both}.success-tick__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:stroke .3s cubic-bezier(0.65, 0, 0.45, 1) .8s forwards}.pulse-bg{animation:pulse-green .5s ease}@keyframes pulse-green{0%{background-color:rgba(0,0,0,0)}50%{background-color:rgba(75,181,67,.2)}100%{background-color:rgba(0,0,0,0)}}@keyframes stroke{100%{stroke-dashoffset:0}}@keyframes scale{0%,100%{transform:none}50%{transform:scale3d(1.1, 1.1, 1)}}@keyframes fill{100%{box-shadow:inset 0px 0px 0px 30px #fff}}#drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:none;z-index:9998}#drawer-overlay.active{display:block}.dashboard-content{width:100%;position:relative}.dashboard-spinner{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:48px;z-index:5;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease}.dashboard-spinner .spinner{width:76px;height:76px;border-radius:50%;background:rgba(17,24,39,.55);display:grid;place-items:center}.dashboard-spinner .spinner::after{content:"";width:44px;height:44px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:bb-spin .7s linear infinite}.dashboard-content.is-loading #dashboard-fragment{visibility:hidden}.dashboard-content.is-loading .dashboard-spinner{visibility:visible;opacity:1;transition-delay:.15s}@keyframes bb-spin{to{transform:rotate(360deg)}}.dashboard-control-panel{margin-bottom:10px;width:100%}.new-project-btn{display:inline-flex;margin-bottom:12px}.workspace-panel{background-color:#fff;padding:16px 0}#dashboard-filter-form.view-project{display:none}#dashboard-filter-form.view-timesheet{display:none}#dashboard-filter-form.view-board{padding:0;background:rgba(0,0,0,0);border:0;box-shadow:none}#dashboard-filter-form.view-board .filters-row{margin-bottom:0}.view-board .dashboard-control-panel{margin-bottom:6px}#dashboard-filter-form.is-client-view .view-switcher-group,#dashboard-filter-form.is-client-view .filter-group[data-views]:not(.filter-group--client){display:none}#dashboard-filter-form.is-client-view .filter-group--client{display:flex}.filter-group{display:none}.view-general [data-views~=general],.view-overdue [data-views~=overdue],.view-ending [data-views~=ending],.view-pipeline [data-views~=pipeline],.view-vat [data-views~=vat],.view-vat_return [data-views~=vat_return],.view-debtors [data-views~=debtors],.view-templates [data-views~=templates],.view-reconciliation [data-views~=reconciliation],.view-personal_expenses [data-views~=personal_expenses],.view-timesheet [data-views~=timesheet],.view-board [data-views~=board]{display:flex}.filters-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;margin-bottom:8px}.filter-group{align-items:center;gap:10px;flex-shrink:0}.filter-group h3{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#646970;white-space:nowrap;flex-shrink:0;border-bottom:none;padding-bottom:0}.filter-group ul{list-style:none;margin-left:0}.status-pill{background:#eee;padding:2px 8px;border-radius:3px;font-size:11px;text-transform:uppercase}.status-invoiced{background:#d1ecf1;color:#0c5460}.year-links{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;position:relative}.year-links a{text-decoration:none;display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid rgba(0,0,0,0);background:#f4f6f8;color:#1d2327;transition:background .2s ease,color .2s ease,border-color .2s ease}.year-links a:hover{background:#e8eef4}.year-links a.active-year{font-weight:600;background:#2271b1;color:#fff;border-color:#2271b1}.year-links .year-history-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:999px;border:1px dashed #aab;background:rgba(0,0,0,0);color:#646970;font-size:18px;line-height:1;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.year-links .year-history-toggle:hover{background:#e8eef4;border-color:#888;color:#1d2327}.year-links .year-history-toggle.active{transform:rotate(45deg);border-style:solid;border-color:#2271b1;color:#2271b1}.year-links .year-history-wrapper{position:relative;display:inline-flex;align-items:center}.year-links .year-links-history{display:none}.year-links .year-links-history.expanded{display:flex;flex-direction:column;gap:4px;position:absolute;top:calc(100% + 6px);left:0;z-index:100;background:#fff;border:1px solid #dde0e4;border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.1);padding:6px;min-width:100px;max-height:200px;overflow-y:auto}.year-links .year-links-history.expanded a{white-space:nowrap}.status-links{display:flex;flex-wrap:wrap;gap:8px}.status-links .status-pill{position:relative;display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid rgba(0,0,0,0);background:#f4f6f8;color:#1d2327;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;font-size:14px;font-weight:500}.status-links .status-pill input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.status-links .status-pill::before{content:"☐";margin-right:6px;opacity:.6;font-size:15px;width:11px}.status-links .status-pill:hover{background:#e8eef4}.status-links .status-pill:hover::before{opacity:.8}.status-links .status-pill.active,input[type=checkbox]:checked+.status-links .status-pill{font-weight:600;background:#2271b1;color:#fff;border-color:#2271b1}.status-links .status-pill.active::before,input[type=checkbox]:checked+.status-links .status-pill::before{content:"☑";opacity:1}.vatDateFilter{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.vatDateFilter li{margin:0}.vatDateFilter a{text-decoration:none;display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid rgba(0,0,0,0);background:#f4f6f8;color:#1d2327;transition:background .2s ease,color .2s ease,border-color .2s ease}.vatDateFilter a:hover{background:#e8eef4}.vatDateFilter a.active-filter{font-weight:600;background:#2271b1;color:#fff;border-color:#2271b1}.dashboard-summary-bar{display:none}.view-general .dashboard-summary-bar,.view-overdue .dashboard-summary-bar,.view-ending .dashboard-summary-bar,.view-pipeline .dashboard-summary-bar,.view-vat .dashboard-summary-bar,.view-debtors .dashboard-summary-bar{background:#fff;display:flex;align-items:center;gap:10px}.project-count{color:#1d2327;font-size:14px}.toggle-details-link{color:#2271b1;text-decoration:none;font-weight:600}.clear-filters{color:#d63638;text-decoration:none;font-size:13px}.clear-filters:hover{color:#911}.client-combobox{position:relative;width:200px}.client-combobox #client-search{width:100%;box-sizing:border-box;padding:6px 28px 6px 10px;border:1px solid #ccd0d4;border-radius:4px;font-size:14px;line-height:1.4;background:#fff;color:#1d2327;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.client-combobox #client-search:focus{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.client-combobox .client-search-clear{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:20px;height:20px;padding:0;border:0;background:rgba(0,0,0,0);color:#6b7177;font-size:18px;line-height:1;cursor:pointer;border-radius:50%}.client-combobox .client-search-clear:hover{background:#f0f0f1;color:#1d2327}.client-combobox .client-search-clear[hidden]{display:none}.client-combobox #client-list{display:none;position:absolute;top:100%;left:0;right:0;z-index:1000;max-height:220px;overflow-y:auto;margin:0;padding:4px 0;background:#fff;border:1px solid #2271b1;border-radius:0 0 4px 4px;box-shadow:0 4px 12px rgba(0,0,0,.12)}.client-combobox #client-list li{margin:0;padding:0;list-style:none}.client-combobox #client-list li a{display:block;padding:6px 10px;font-size:13px;color:#1d2327;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-combobox #client-list li a:hover{background:#f0f6ff;color:#2271b1}.client-combobox #client-list li a.active-filter{background:#2271b1;color:#fff;font-weight:600}.client-combobox #client-list li.highlighted>a:not(.active-filter){background:#e8f0fa;color:#2271b1}.client-combobox.open #client-list{display:block}.project-list{display:grid;grid-template-columns:1fr 70px 80px 100px 90px 110px 90px;overflow:hidden}.project-list.project-list--view-pipeline{grid-template-columns:1fr 80px 100px 90px 110px 90px}.project-list.project-list--view-overdue{grid-template-columns:1fr 70px 80px 100px 90px 110px}.project-list.project-list--full-detail{grid-template-columns:1fr 70px 80px 90px 90px 90px 100px 90px 110px 90px}.project-list.project-list--view-pipeline.project-list--full-detail{grid-template-columns:1fr 80px 90px 90px 90px 100px 90px 110px 90px}.project-list.project-list--view-overdue.project-list--full-detail{grid-template-columns:1fr 70px 80px 90px 90px 90px 100px 90px 110px}.pl-header,.pl-row{display:grid;grid-column:1/-1;grid-template-columns:subgrid}.pl-header{background:#5ca063;font-weight:600;font-size:13px}.pl-header .pl-cell{padding:8px 10px;color:#fff}.pl-header .pl-cell[data-action=sort-projects]{cursor:pointer;user-select:none}.pl-header .pl-cell[data-action=sort-projects]:hover{background:rgba(255,255,255,.12)}.pl-header .pl-cell[data-action=sort-projects].is-sorted-asc::after,.pl-header .pl-cell[data-action=sort-projects].is-sorted-desc::after{content:"";display:inline-block;margin-left:5px;border-left:4px solid rgba(0,0,0,0);border-right:4px solid rgba(0,0,0,0)}.pl-header .pl-cell[data-action=sort-projects].is-sorted-asc::after{border-bottom:5px solid #fff}.pl-header .pl-cell[data-action=sort-projects].is-sorted-desc::after{border-top:5px solid #fff}.pl-row{border-bottom:1px solid #e0e0e0}.pl-row:last-child{border-bottom:none}.pl-row:nth-child(even){background:#f9f9f9}.pl-row.status-expired{background:#fef2f2}.pl-row.status-expiring-soon{background:#fffbeb}.pl-row .pl-cell{padding:8px 10px;font-size:.75em;display:flex;align-items:flex-start;min-width:0;word-break:break-word}.pl-col--project{flex-direction:column;align-items:flex-start;gap:2px}.pl-col--project.pl-cell{font-size:.85em}.pl-col--project a{font-size:1em}.pl-client{color:#646970}.pl-client a{color:inherit;text-decoration:none}.pl-client a:hover{text-decoration:underline}.pl-row--group-header{background:#f0f0f1 !important}.pl-row--group-header .pl-cell{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.pl-row--group-header .pl-col--span-all{grid-column:1/-1}.pl-row--lost .pl-cell{opacity:.55}.pl-row--subtotal{background:#f6f7f7 !important;font-style:italic}.pl-row--subtotal .pl-col--label{grid-column:1/span 3;justify-content:flex-end}.project-list--view-pipeline .pl-row--subtotal .pl-col--label{grid-column:1/span 2}.pl-row--footer{background:rgba(92,160,99,.1607843137) !important;font-weight:700;border-top:2px solid #c3c4c7}.pl-row--footer .pl-col--label{grid-column:1/span 3}.project-list--view-pipeline .pl-row--footer .pl-col--label{grid-column:1/span 2}.pl-row--empty .pl-col--span-all{grid-column:1/-1}.delete-entry,.copy-entry{background:none;border:1px solid #ddd;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.delete-entry:hover{background:#fee;border-color:red}.copy-entry:hover{background:#eef;border-color:blue}.view-switcher-group{align-items:center;gap:12px;flex-wrap:wrap}.new-project-dialog{border:1px solid #e0e4e8;border-radius:8px;padding:0;width:100%;max-width:460px;box-shadow:0 6px 24px rgba(0,0,0,.18)}.new-project-dialog::backdrop{background:rgba(0,0,0,.35)}.new-project-dialog .np-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e0e4e8}.new-project-dialog .np-header h3{margin:0;font-size:1.05em}.new-project-dialog .np-header .np-close{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:#646970}.new-project-dialog .np-header .np-close:hover{color:#1d2327}.new-project-dialog .np-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.new-project-dialog .np-field{display:flex;flex-direction:column;gap:4px;font-size:13px}.new-project-dialog .np-field[hidden]{display:none}.new-project-dialog .np-field span{font-weight:600;color:#1d2327}.new-project-dialog .np-field input,.new-project-dialog .np-field select{padding:8px 10px;border:1px solid #e0e4e8;border-radius:4px;font-size:14px;box-sizing:border-box}.new-project-dialog .np-hint{margin:0;font-size:12px;color:#646970}.new-project-dialog .np-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px;border-top:1px solid #f0f0f1}.np-mode-toggle{display:flex;border-bottom:1px solid #e0e4e8}.np-mode-toggle .np-mode-btn{flex:1;padding:9px 12px;background:none;border:0;border-bottom:2px solid rgba(0,0,0,0);font-size:13px;font-weight:500;color:#646970;cursor:pointer;transition:color .15s,border-color .15s;margin-bottom:-1px}.np-mode-toggle .np-mode-btn.active{color:#1d2327;border-bottom-color:#2271b1}.np-mode-toggle .np-mode-btn:hover:not(.active){color:#1d2327}.template-dialog{border:1px solid #e0e4e8;border-radius:8px;padding:0;width:100%;max-width:480px;box-shadow:0 6px 24px rgba(0,0,0,.18)}.template-dialog::backdrop{background:rgba(0,0,0,.35)}.template-dialog .tpl-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e0e4e8}.template-dialog .tpl-header h3{margin:0;font-size:1.05em}.template-dialog .tpl-header .tpl-close{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:#646970}.template-dialog .tpl-header .tpl-close:hover{color:#1d2327}.template-dialog .tpl-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.template-dialog .tpl-body p{margin:0;font-size:13px;color:#646970}.template-dialog .tpl-options{display:flex;flex-direction:column;gap:8px}.template-dialog .tpl-option-btn{display:flex;flex-direction:column;gap:4px;text-align:left;padding:12px 14px;background:#f8f9fa;border:1px solid #e0e4e8;border-radius:6px;cursor:pointer;transition:background .12s,border-color .12s}.template-dialog .tpl-option-btn strong{font-size:13px;color:#1d2327}.template-dialog .tpl-option-btn span{font-size:12px;color:#646970}.template-dialog .tpl-option-btn:hover{background:#eef2ff;border-color:#c7c2f8}.template-dialog .tpl-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px;border-top:1px solid #f0f0f1}.tpl-feature-list{list-style:none;margin:0;padding:0;max-height:280px;overflow-y:auto;border:1px solid #e0e4e8;border-radius:6px}.tpl-feature-list .tpl-feature-item{border-bottom:1px solid #f0f0f1}.tpl-feature-list .tpl-feature-item:last-child{border-bottom:0}.tpl-feature-list .tpl-feature-item.tpl-feature-item--loading,.tpl-feature-list .tpl-feature-item.tpl-feature-item--empty{padding:12px 14px;font-size:13px;color:#646970}.tpl-feature-list .tpl-feature-btn{width:100%;display:flex;flex-direction:column;gap:2px;padding:10px 14px;background:none;border:0;text-align:left;cursor:pointer;transition:background .1s}.tpl-feature-list .tpl-feature-btn strong{font-size:13px;color:#1d2327}.tpl-feature-list .tpl-feature-btn .tpl-feature-sub{font-size:11px;color:#646970}.tpl-feature-list .tpl-feature-btn:hover{background:#f8f9fa}.tpl-feature-list .tpl-feature-btn.tpl-feature-btn--selected{background:#eef2ff}@media(min-width: 783px)and (max-width: 1100px){.project-list{display:block}.project-list .pl-header{display:none}.project-list .pl-row{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #e0e0e0}.project-list .pl-row .pl-col--inv,.project-list .pl-row .pl-col--ends,.project-list .pl-row .pl-col--net,.project-list .pl-row .pl-col--vat,.project-list .pl-row .pl-col--margin,.project-list .pl-row .pl-col--cost,.project-list .pl-row .pl-col--discount{display:none}.project-list .pl-row .pl-col--project{flex:1;min-width:0;padding:0;overflow:hidden}.project-list .pl-row .pl-col--project a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.project-list .pl-row .pl-col--gross{flex:0 0 auto;font-weight:600;padding:0}.project-list .pl-row .pl-col--status{flex:0 0 auto;padding:0}.project-list .pl-row--group-header{padding:6px 12px}.project-list .pl-row--subtotal .pl-col--label{flex:1;font-size:12px;font-style:italic}.project-list .pl-row--subtotal .pl-col--net,.project-list .pl-row--subtotal .pl-col--vat,.project-list .pl-row--subtotal .pl-col--margin,.project-list .pl-row--subtotal .pl-col--cost,.project-list .pl-row--subtotal .pl-col--discount{display:none}.project-list .pl-row--footer .pl-col--label{flex:1;font-weight:700}.project-list .pl-row--footer .pl-col--net,.project-list .pl-row--footer .pl-col--vat{display:none}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty){display:grid;grid-template-columns:1fr auto;align-items:start}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--project{grid-column:1;grid-row:1/-1;overflow:hidden}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--status{grid-column:2;grid-row:1;justify-content:flex-end}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--margin,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--cost,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--discount,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--net,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--vat{display:flex;grid-column:2;justify-content:flex-end;font-size:11px;color:#646970;padding:0 0 0 8px}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--margin{grid-row:2}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--cost{grid-row:3}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--discount{grid-row:4}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--net{grid-row:5}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--vat{grid-row:6}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--gross{grid-column:2;grid-row:7;justify-content:flex-end;font-weight:600;padding:0 0 0 8px}}@media(max-width: 782px){.page-template-portal-template .site-header .portal-logo-full,.page-template-portal-template .site-header .site-title{display:none}.portal-logo-bean{display:block;width:34px;height:34px;object-fit:contain}.filter-group{flex-shrink:1;max-width:100%;flex-direction:column;align-items:flex-start}.year-links{flex-wrap:wrap}.project-list{display:block}.project-list .pl-header{display:none}.project-list .pl-row{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:10px 12px;border-bottom:1px solid #e0e0e0}.project-list .pl-row .pl-col--inv,.project-list .pl-row .pl-col--ends,.project-list .pl-row .pl-col--net,.project-list .pl-row .pl-col--vat,.project-list .pl-row .pl-col--margin,.project-list .pl-row .pl-col--cost,.project-list .pl-row .pl-col--discount{display:none}.project-list .pl-row .pl-col--project{grid-column:1;grid-row:1/-1;min-width:0;padding:0;display:block}.project-list .pl-row .pl-col--project a{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.project-list .pl-row .pl-col--project .pl-client{display:block;font-size:12px;font-weight:400}.project-list .pl-row .pl-col--status{grid-column:2;grid-row:1;padding:0;justify-content:flex-end}.project-list .pl-row .pl-col--gross{grid-column:2;grid-row:2;font-weight:600;font-size:13px;padding:0;justify-content:flex-end}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--margin,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--cost,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--discount,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--net,.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--vat{display:flex;grid-column:2;justify-content:flex-end;padding:0;font-size:11px;color:#646970}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--margin{grid-row:2}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--cost{grid-row:3}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--discount{grid-row:4}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--net{grid-row:5}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--vat{grid-row:6}.project-list.project-list--full-detail .pl-row:not(.pl-row--subtotal):not(.pl-row--footer):not(.pl-row--group-header):not(.pl-row--empty) .pl-col--gross{grid-row:7}.project-list .pl-row--group-header{padding:6px 12px}.project-list .pl-row--subtotal .pl-col--label{font-size:12px;font-style:italic;flex:1}.project-list .pl-row--subtotal .pl-col--net,.project-list .pl-row--subtotal .pl-col--vat,.project-list .pl-row--subtotal .pl-col--margin,.project-list .pl-row--subtotal .pl-col--cost,.project-list .pl-row--subtotal .pl-col--discount{display:none}.project-list .pl-row--footer .pl-col--label{flex:1;font-size:13px}.project-list .pl-row--footer .pl-col--net,.project-list .pl-row--footer .pl-col--vat{display:none}}.client-view-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.client-view-header h2{margin:0;font-size:1.3rem}.client-view-back{flex:0 0 100%;display:inline-flex;align-items:center;gap:6px;color:#2271b1;text-decoration:none;font-size:13px;font-weight:500}.client-view-back:hover{text-decoration:underline}.btn-share{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid #ccc;border-radius:4px;background:rgba(0,0,0,0);font-size:.78rem;cursor:pointer;color:#666;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.btn-share:hover{background:#f0f0f0}.btn-share--copied{border-color:#4caf50;color:#4caf50}.timesheet-multi-day{display:flex;align-items:flex-start;gap:4px;margin-bottom:30px}.ts-day-grid{display:flex;flex:1;gap:20px;min-width:0}.ts-nav-arrow{display:none;background:rgba(0,0,0,0);border:1px solid #e0e4e8;border-radius:4px;padding:6px 10px;cursor:pointer;color:#646970;font-size:16px;line-height:1;flex-shrink:0;align-self:flex-start;margin-top:8px;transition:background .15s,color .15s}.ts-nav-arrow:hover{background:#f4f6f8;color:#1d2327}@media(min-width: 783px){.ts-nav-arrow{display:block}}.day-col{display:none;flex-direction:column;flex:1;min-width:0}.day-col.is-active{display:flex}@media(min-width: 783px){.day-col{display:flex}.day-col:first-child{display:none}}@media(min-width: 960px){.day-col:first-child{display:flex}}.day-col-header{display:flex;align-items:center;gap:10px;padding:4px 0 10px;border-bottom:1px solid #e0e4e8;flex-wrap:wrap}.day-col-date-label{font-size:.875rem;font-weight:500;color:#1d2327;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-col-total{font-size:.8rem;color:#646970;white-space:nowrap;flex-shrink:0}.ts-log-time-btn{flex-shrink:0;padding:5px 10px;font-size:13px}#timesheet-dialog{padding:0;width:100%;min-width:320px;max-width:480px}#timesheet-dialog form{padding:1em}#timesheet-dialog .form-actions{display:flex;justify-content:space-between}#timesheet-dialog .baf-field input[type=time]{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid #ccd0d4;border-radius:5px;font-size:13px;color:#1d2327;background:#fff;transition:border-color .15s}#timesheet-dialog .baf-field input[type=time]:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.ts-form-fields{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}#ts-project-section,#ts-new-project-section{display:flex;flex-direction:column;gap:6px}#ts-project-section[hidden],#ts-new-project-section[hidden]{display:none}.ts-recent-toggle{background:none;border:none;padding:0;font-size:12px;color:#646970;cursor:pointer;text-align:left;margin-bottom:4px}.ts-recent-toggle:hover{color:#1d2327}.ts-recent-toggle[aria-expanded=true]{color:#1d2327}.entry-field p{margin-bottom:0}.time-field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.day-view-wrapper{position:relative;padding-left:60px;background:#fff;margin:30px 0 60px}.day-view-timeline{position:absolute;top:0;left:0;width:60px;height:100%;border-right:1px solid #eee;z-index:5}.day-view-canvas{position:relative;width:100%;height:calc(var(--total-minutes)*1px + 1px);background-image:linear-gradient(#f0f0f0 1px, transparent 1px);background-size:100% 60px;overflow:hidden}.timeline-hour{position:absolute;left:0;width:50px;text-align:right;font-size:11px;font-weight:600;color:#999;top:calc((var(--minutes) - var(--offset-minutes))*1px);transform:translateY(-50%)}.timeline-hour,.time-block{top:calc((var(--minutes) - var(--offset-minutes))*1px)}.is-condensed .timeline-hour.extra-hour{display:none}.is-condensed .day-view-canvas::before{content:"Morning Condensed (00:00 - 08:00)";display:block;height:30px;background:#f9f9f9;border-bottom:1px dashed #ddd;text-align:center;font-size:10px;color:#999;line-height:30px}.time-block{position:absolute;left:5px;right:5px;min-height:4px;background:rgba(92,184,92,.15);background:#e7f4e7;border-left:4px solid #5cb85c;border-radius:4px;padding:5px;overflow:hidden;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;z-index:10}.time-block:hover{background:rgba(92,184,92,.3);background:#ceeace;z-index:20;box-shadow:0 4px 8px rgba(0,0,0,.1);cursor:pointer}.time-block.entry-fade-out{opacity:0;background-color:#fee;pointer-events:none}.time-block-content{font-size:12px;line-height:1.2;pointer-events:none;transition:all .3s ease}.block-actions{display:none}.block-client:after,.block-project:after,.block-feature:after{content:"|"}.block-client{font-weight:bold}.block-time{display:none;font-size:11px;color:#555}.ts-view-toggle-wrapper{display:none;justify-content:flex-end;flex:1}.ts-view-toggle{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;background:none;border:1px solid #c3e0c3;border-radius:4px;padding:8px 10px;font-size:13px;cursor:pointer;color:#3a7a3a;white-space:nowrap;margin-right:16px;transition:background .15s ease}.ts-view-toggle:hover{background:#e7f4e7}body.view-timesheet .ts-view-toggle-wrapper{display:flex}.day-view-wrapper.is-schedule-view{padding-left:0}.day-view-wrapper.is-schedule-view .day-view-timeline{display:none}.day-view-wrapper.is-schedule-view .day-view-canvas{height:auto !important;background:none;overflow:visible}.day-view-wrapper.is-schedule-view .time-block{position:relative;top:auto !important;height:auto !important;min-height:48px;margin-bottom:6px;align-items:flex-start;flex-direction:column}.day-view-wrapper.is-schedule-view .block-time{display:block;margin-bottom:2px}.day-view-wrapper.is-schedule-view .block-actions{display:flex}.zoom-drawer-backdrop{display:none;position:fixed;inset:0;z-index:499;background:rgba(0,0,0,.25)}.zoom-drawer{position:fixed;bottom:0;left:0;right:0;z-index:500;transform:translateY(100%);transition:transform .25s ease;pointer-events:none}.zoom-drawer.is-open{transform:translateY(0);pointer-events:auto}.zoom-drawer.is-open~.zoom-drawer-backdrop{display:block}.zoom-drawer-inner{background:#fff;border-top:2px solid #d0e8d0;border-radius:12px 12px 0 0;box-shadow:0 -4px 24px rgba(0,0,0,.12);max-height:60vh;overflow-y:auto}.zoom-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.zoom-drawer-label{font-weight:600;font-size:14px;color:#333}.zoom-drawer-close{background:none;border:none;font-size:22px;cursor:pointer;color:#666;line-height:1;padding:4px 8px}.zoom-drawer-close:hover{color:#333}.zoom-drawer-list{padding:8px 12px 16px;display:flex;flex-direction:column;gap:8px}.zoom-entry-card{background:#e7f4e7;border-left:4px solid #5cb85c;border-radius:6px;padding:12px 14px;cursor:pointer;transition:background .15s ease;min-height:60px;display:flex;flex-direction:column;gap:2px}.zoom-entry-card:hover,.zoom-entry-card:active{background:#ceeace}.zoom-entry-time{font-size:11px;color:#555;margin-bottom:2px}.zoom-entry-client{font-weight:bold;font-size:13px}.zoom-entry-project{font-size:12px}.zoom-entry-feature{font-size:12px;color:#555;font-style:italic}.modal-date-wrap{position:relative;grid-column:1/-1;margin-bottom:4px}.modal-date-btn{position:relative;cursor:pointer;background:none;border:none;border-bottom:1px dashed rgba(0,0,0,0);border-radius:3px;padding:1px 2px;font-size:inherit;font-weight:inherit;color:inherit;transition:background 120ms ease,border-color 120ms ease}.modal-date-btn:hover{background:#f0f6ff;border-bottom-color:#2271b1}.modal-date-picker-input{position:absolute;top:100%;left:0;opacity:0;pointer-events:none;width:1px;height:1px;overflow:hidden}.quick-fill-section{margin:12px 0}#timesheet-quick-search{width:100%;padding:7px 10px;border:1px solid #ddd;border-radius:6px;font-size:.85rem;box-sizing:border-box;margin-bottom:8px}#timesheet-quick-search:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}#quick-search-results{background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.1);overflow:hidden;margin-bottom:8px;max-height:320px;overflow-y:auto}#quick-search-results .qsr-group-label{padding:6px 12px 4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#646970;background:#f6f7f7;border-bottom:1px solid #f0f0f0}#quick-search-results .qsr-group-label:not(:first-child){border-top:1px solid #e5e5e5}#quick-search-results .quick-search-result{display:flex;flex-direction:column;width:100%;padding:8px 12px;background:none;border:none;border-bottom:1px solid #f0f0f0;text-align:left;cursor:pointer;transition:background .1s}#quick-search-results .quick-search-result:last-child{border-bottom:none}#quick-search-results .quick-search-result:hover{background:#f4f6f8}#quick-search-results .qsr-label{font-size:.85rem;font-weight:600;color:#1d2327}#quick-search-results .qsr-meta{font-size:.75rem;color:#646970;margin-top:1px}.recent-tasks{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.recent-task-chip{display:flex;flex-direction:column;align-items:flex-start;background:#f0f6fc;border:1px solid #c3d9ef;border-radius:20px;padding:4px 10px;cursor:pointer;transition:background .15s,border-color .15s;max-width:100%}.recent-task-chip:hover{background:#dbeeff;border-color:#2271b1}.recent-task-chip .chip-task{font-size:.78rem;font-weight:600;color:#1d2327;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.recent-task-chip .chip-meta{font-size:.7rem;color:#646970;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}#beanpress-timesheet-feedback{display:block;text-align:center;margin:0 0 20px 10px;transition:opacity .5s ease}#beanpress-timesheet-feedback .error{background:#fff5f5;color:#c53030;padding:8px 12px;border-radius:6px;border-left:4px solid #c53030;font-size:.85rem;display:inline-block}.portal-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:8px 0}.portal-nav{display:flex;align-items:center;gap:2px;flex-shrink:0}.portal-nav-item{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;background:none;border:none;border-radius:6px;font-size:14px;font-weight:500;color:#646970;cursor:pointer;transition:color .15s,background .15s;white-space:nowrap}.portal-nav-item .nav-icon{width:18px;height:18px;flex-shrink:0}.portal-nav-item:hover{color:#2271b1;background:#f0f6ff}.portal-nav-item.active{color:#2271b1;font-weight:600;background:#f0f6ff}.portal-timer-btn{margin-left:4px;border-left:1px solid #e0e3e6;padding-left:18px}.portal-timer-btn.is-running{color:#d63638}.portal-timer-btn.is-running #quick-timer-label{font-variant-numeric:tabular-nums;font-family:ui-monospace,"SF Mono",Consolas,monospace;font-size:13px;letter-spacing:.03em}.portal-timer-btn.is-running:hover{color:#b32d2e;background:#fdf0f0}.view-switcher-group{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e8eaec}.view-switcher{display:flex;flex-wrap:wrap;gap:6px}.view-switch-btn{padding:5px 14px;border-radius:999px;border:1px solid rgba(0,0,0,0);background:#f4f6f8;color:#1d2327;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.view-switch-btn:hover{background:#e8eef4}.view-switch-btn.active{background:#2271b1;color:#fff;font-weight:600;border-color:#2271b1}.portal-search{position:relative;display:flex;align-items:center;flex:1;min-width:0;margin:0 16px;justify-content:flex-end}.portal-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:0;background:rgba(0,0,0,0);border-radius:6px;color:#646970;cursor:pointer;transition:background .15s,color .15s}.portal-search-toggle:hover{background:#f0f6ff;color:#2271b1}.portal-search-toggle.is-open{background:#f0f6ff;color:#2271b1}.portal-search-panel{position:absolute;top:calc(100% + 6px);left:-40px;z-index:200;width:min(300px,100vw - 24px);padding:12px;background:#fff;border:1px solid #dde0e4;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.portal-search-panel[hidden]{display:none}.portal-search-wrap{position:relative;width:100%}.portal-search-wrap .board-search{width:100%}.portal-search-results{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.12);z-index:200;max-height:320px;overflow-y:auto}.portal-search-results .quick-search-result{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:none;border:none;border-bottom:1px solid #f0f0f0;text-align:left;cursor:pointer;transition:background .1s}.portal-search-results .quick-search-result:last-child{border-bottom:none}.portal-search-results .quick-search-result:hover{background:#f4f6f8}.portal-search-results .quick-search-result[data-type=client] .qsr-icon{color:#2271b1}.portal-search-results .quick-search-result[data-type=project] .qsr-icon{color:#4f5b66}.portal-search-results .qsr-icon{flex:0 0 auto;width:18px;height:18px}.portal-search-results .qsr-text{display:flex;flex-direction:column;min-width:0}.portal-search-results .qsr-label{font-size:.85rem;font-weight:600;color:#1d2327}.portal-search-results .qsr-meta{font-size:.75rem;color:#646970;margin-top:1px}@media(min-width: 783px){.portal-search-toggle{display:none}.portal-search-panel,.portal-search-panel[hidden]{display:block;position:static;width:100%;max-width:320px;padding:0;background:rgba(0,0,0,0);border:0;box-shadow:none}}.filter-group--board{position:relative;display:flex;align-items:center;flex:1;min-width:0;margin:0 16px;justify-content:flex-end;gap:8px}.board-filter-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #d0d4d8;background:#fff;color:#1d2327;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,color .15s}.board-filter-toggle:hover{background:#f4f6f8;border-color:#2271b1}.board-filter-toggle.is-open{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.board-filter-toggle.is-active{background:#e8f0fa;border-color:#2271b1;color:#2271b1}.board-filter-toggle-icon{font-size:14px;line-height:1}.board-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;background:#2271b1;color:#fff;border-radius:999px}.board-filter-count[hidden]{display:none}.board-filter-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:200;min-width:300px;max-width:380px;padding:14px 16px;background:#fff;border:1px solid #dde0e4;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.12);display:flex;flex-direction:column;gap:12px}.board-filter-panel[hidden]{display:none}.board-filter-panel h4{margin:0 0 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#646970}.board-filter-panel .board-filter-panel-actions{display:flex;justify-content:flex-end;border-top:1px solid #eee;padding-top:10px}.board-filter-clear{background:rgba(0,0,0,0);border:0;color:#2271b1;font-size:13px;padding:4px 8px;cursor:pointer;border-radius:4px}.board-filter-clear:hover{background:#f0f6ff}.board-assignee-filter{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.board-assignee-pill{width:28px;height:28px;padding:0;border:0;border-radius:50% !important;background:rgba(0,0,0,0);cursor:pointer;transition:opacity .15s ease,box-shadow .15s ease,transform .15s ease;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.board-assignee-pill img{width:100%;height:100%;border-radius:50%;display:block}.board-assignee-pill:hover{opacity:.85}.board-assignee-pill.is-active{opacity:1;box-shadow:0 0 0 2px #2271b1}.board-assignee-pill--unassigned span{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border:1px dashed #aab;border-radius:50%;color:#646970;font-size:14px;background:#f4f6f8}.board-search{width:220px;box-sizing:border-box;padding:6px 10px;border:1px solid #ccd0d4;border-radius:4px;font-size:14px;line-height:1.4;background:#fff;color:#1d2327;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.board-search:focus{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}@media(min-width: 783px){.board-filter-toggle{display:none}.board-filter-panel,.board-filter-panel[hidden]{display:flex;position:static;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px 16px;padding:0;background:rgba(0,0,0,0);border:0;box-shadow:none;min-width:0;max-width:none}.board-filter-panel h4,.board-filter-panel[hidden] h4{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#646970;white-space:nowrap}.board-filter-panel .board-filter-panel-section,.board-filter-panel[hidden] .board-filter-panel-section{display:flex;align-items:center;gap:8px}.board-filter-panel .board-filter-panel-actions,.board-filter-panel[hidden] .board-filter-panel-actions{border-top:0;padding-top:0}}body.view-board .portal-search,body.view-timesheet .portal-search{display:none}.filter-group--board{display:none}body.view-board .filter-group--board{display:flex}@media(display-mode: window-controls-overlay){.site-header{position:fixed;top:env(titlebar-area-y, 0);left:env(titlebar-area-x, 0);width:env(titlebar-area-width, 100%);height:env(titlebar-area-height, 60px);z-index:9999;box-sizing:border-box;-webkit-app-region:drag}.site-header>.container{height:100%;padding:0 12px}.portal-header-inner{height:100%;padding:0;-webkit-app-region:no-drag}.site-content{padding-top:calc(env(titlebar-area-y, 0px) + env(titlebar-area-height, 60px))}}@media(max-width: 782px){.portal-nav-item{padding:8px 10px;gap:0}.portal-nav-item .nav-icon{width:22px;height:22px}.portal-nav-label{display:none}}.project-view{max-width:960px}.pv-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px;padding:4px 0;font-size:13px}.pv-crumb{color:#2271b1;text-decoration:none;font-weight:500}.pv-crumb:hover{text-decoration:underline}.pv-crumb-sep{color:#646970}.pv-crumb--current{color:#646970;font-weight:600}.pv-header{background:#fff;border:1px solid #e0e4e8;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.07);padding:20px 24px;margin-bottom:24px}.pv-header-top{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:14px}.pv-header-top .pv-title{margin:0;font-size:1.3em;font-weight:700;color:#1d2327;line-height:1.3;flex:1;min-width:0}.pv-header-meta{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin-bottom:18px;font-size:13px;color:#646970}.pv-header-meta .pv-meta-client{font-weight:600;color:#1d2327}.pv-header-meta .pv-meta-item{display:inline-flex;align-items:center;gap:4px}.pv-header-meta .pv-meta-label{font-weight:600;color:#1d2327}.pv-header-meta .pv-meta-paid{color:#00a32a}.pv-header-meta .pv-meta-paid .pv-meta-label{color:#00a32a}.pv-edit{position:relative;cursor:pointer;border-bottom:1px dashed rgba(0,0,0,0);padding:1px 2px;border-radius:3px;transition:background 120ms ease,border-color 120ms ease}.pv-edit em{color:#646970;font-style:italic}.pv-edit:hover,.pv-edit.pv-edit-active{background:#f0f6ff;border-bottom-color:#2271b1}.pv-edit-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:50;background:#fff;border:1px solid #e0e4e8;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.14);padding:10px;display:flex;flex-direction:column;gap:8px;min-width:200px;max-width:calc(100vw - 24px)}@media(max-width: 600px){.pv-edit-popover{left:auto;right:0}}.pv-edit-popover .pv-edit-input{width:100%;padding:6px 8px;border:1px solid #e0e4e8;border-radius:4px;font-size:13px;box-sizing:border-box}.pv-edit-popover .pv-edit-actions{display:flex;gap:6px;flex-wrap:wrap}.pv-meta-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:12px 18px;margin-bottom:18px;padding-top:14px;border-top:1px solid #e0e4e8}.pv-meta-grid .pv-meta-cell{display:flex;flex-direction:column;gap:2px;font-size:13px;color:#1d2327}.pv-meta-grid .pv-meta-cell .pv-meta-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#646970;font-weight:600}.pv-meta-grid .pv-meta-cell em{color:#646970;font-style:italic}.pv-meta-grid .pv-meta-cell--toggle{justify-content:flex-end}.pv-meta-grid .pv-meta-cell--toggle label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.pv-dates{position:relative;display:inline-flex;align-items:center;gap:14px}.pv-dates .pv-dates-trigger{appearance:none;background:rgba(0,0,0,0);border:0;padding:2px 4px;margin:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font:inherit;color:inherit;border-radius:3px}.pv-dates .pv-dates-trigger:hover{background:#f0f6ff}.pv-dates .pv-dates-trigger.is-open .pv-dates-chevron{transform:rotate(180deg)}.pv-dates .pv-dates-chevron{font-size:10px;color:#646970;transition:transform 150ms ease}.pv-dates-overlay{position:absolute;top:calc(100% + 6px);left:0;z-index:40;background:#fff;border:1px solid #e0e4e8;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.14);padding:10px 12px;min-width:220px;max-width:calc(100vw - 24px);display:flex;flex-direction:column;gap:6px}@media(max-width: 600px){.pv-dates-overlay{left:auto;right:0}}.pv-dates-overlay[hidden]{display:none}.pv-dates-overlay .pv-dates-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.pv-dates-overlay .pv-dates-row .pv-meta-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#646970;font-weight:600}.pv-meta-toggle{appearance:none;background:rgba(0,0,0,0);border:0;padding:6px 0;margin:4px 0 0;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#2271b1;font-weight:500}.pv-meta-toggle:hover{text-decoration:underline}.pv-meta-toggle.is-open .pv-meta-toggle-chevron{transform:rotate(180deg)}.pv-meta-toggle .pv-meta-toggle-chevron{font-size:10px;transition:transform 150ms ease}.pv-meta-grid[hidden]{display:none}.status-pill.status-lost{background:#f7d7d7;color:#d63638}.status-pill.status-draft{background:#f0f0f0;color:#646970}button.status-pill{position:relative;appearance:none;border:0;cursor:pointer;font-family:inherit;font-size:11px;line-height:1.4;padding:2px 8px;text-transform:uppercase}button.status-pill .status-pill-detail{position:absolute;top:calc(100% + 4px);right:0;z-index:60;background:#fff;color:#1d2327;border:1px solid #e0e4e8;border-radius:4px;box-shadow:0 4px 14px rgba(0,0,0,.12);padding:4px 8px;font-size:12px;font-weight:400;text-transform:none;white-space:nowrap;display:none}button.status-pill.is-revealed .status-pill-detail{display:block}@media(hover: hover){button.status-pill:hover .status-pill-detail{display:block}}.pv-totals{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid #e0e4e8}.pv-total-item{display:flex;flex-direction:column;align-items:center;background:#f8f9fa;border:1px solid #e0e4e8;border-radius:6px;padding:10px 18px;min-width:90px;gap:2px}.pv-total-item .pv-total-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#646970}.pv-total-item .pv-total-value{font-size:1.1em;font-weight:700;color:#1d2327}.pv-total-item.pv-total-gross{background:#2271b1;border-color:#2271b1}.pv-total-item.pv-total-gross .pv-total-label,.pv-total-item.pv-total-gross .pv-total-value{color:#fff}.pv-total-item .pv-total-discount{color:#d63638}.status-quoted{background:#fff3cd;color:#856404}.status-started{background:#cfe2ff;color:#0a3872}.status-invoiced{background:#d1ecf1;color:#0c5460}.status-paid{background:#edfaef;color:#00701d}.pv-pdf-actions{display:flex;gap:8px;padding-top:14px;margin-top:14px;border-top:1px solid #e0e4e8}.pv-pdf-btn{font-size:12px;padding:5px 12px;text-decoration:none}.pv-features-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.pv-features-header h3{margin:0;font-size:1.05em;font-weight:700;color:#1d2327}.features-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:28px}.fc-drop-placeholder{height:4px;background:#2271b1;border-radius:2px;box-shadow:0 0 8px rgba(34,113,177,.45);pointer-events:none}.fc-dragging-feature #features-grid .feature-card *{pointer-events:none}.fc-dragging-task .fc-item--task *{pointer-events:none}.fc-task-drop-placeholder{pointer-events:none}.fc-dragging-item .fc-items-list>* *{pointer-events:none}.fc-item-drop-placeholder{pointer-events:none}.pv-no-features{color:#646970;font-style:italic;grid-column:1/-1;margin:0;padding:20px 0}.feature-card{background:#fff;border:1px solid #e0e4e8;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.07);display:flex;flex-direction:column;transition:box-shadow .15s ease,border-color .15s ease,transform .15s ease;position:relative;cursor:pointer}.feature-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.11);border-color:#2271b1}.feature-card.fc-dragging{opacity:.55;box-shadow:0 8px 28px rgba(0,0,0,.18);transform:rotate(1deg) scale(1.02);cursor:grabbing}.fc-drag-handle{position:absolute;top:10px;right:10px;color:#b0b8c1;font-size:16px;cursor:grab;line-height:1;padding:2px 4px;border-radius:3px;transition:color .15s}.fc-drag-handle:hover{color:#646970;background:#f0f2f4}.fc-drag-handle:active{cursor:grabbing}.fc-body{flex:1;padding:16px 38px 14px 16px}.fc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.fc-top .fc-title{margin:0;font-size:.95em;font-weight:600;color:#1d2327;line-height:1.4}.fc-top .fc-price{font-size:1em;font-weight:700;color:#1d2327;white-space:nowrap;flex-shrink:0}.fc-top .fc-price-group{display:flex;align-items:center;gap:10px;flex-shrink:0}.fc-budget{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#646970}.fc-budget .fc-budget-bar{width:56px;height:6px;background:#eef0f2;border-radius:999px;overflow:hidden}.fc-budget .fc-budget-fill{height:100%;border-radius:999px;transition:width .2s ease}.fc-budget.fc-budget--within .fc-budget-fill{background:#00a32a}.fc-budget.fc-budget--within .fc-budget-pct{color:#00a32a}.fc-budget.fc-budget--on .fc-budget-fill{background:#d97706}.fc-budget.fc-budget--on .fc-budget-pct{color:#d97706}.fc-budget.fc-budget--over .fc-budget-fill{background:#d63638}.fc-budget.fc-budget--over .fc-budget-pct{color:#d63638}.fc-desc{font-size:13px;color:#646970;line-height:1.5;margin-bottom:10px}.fc-desc p{margin:0 0 6px}.fc-desc p:last-child{margin-bottom:0}.fc-desc ul,.fc-desc ol{margin:0 0 6px 18px;padding:0}.fc-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.fc-badge{font-size:11px;font-weight:500;padding:2px 7px;border-radius:999px;border:1px solid rgba(0,0,0,0)}.fc-badge.fc-badge-vat{background:#f4f6f8;color:#646970;border-color:#e0e4e8;order:99;margin-left:auto}.fc-badge.fc-badge-optional{background:#fff3cd;color:#856404;border-color:#ffe08a}.fc-badge.fc-badge-template{background:#e8eaff;color:#3730a3;border-color:#c7c2f8}.fc-badge.fc-badge-expiry{background:#cfe2ff;color:#0a3872;border-color:#a8c8ff}.fc-badge.fc-badge-cost{background:#f8f9fa;color:#646970;border-color:#e0e4e8}.fc-actions{display:flex;align-items:center;gap:6px;border-radius:0 0 8px 8px;padding:0 14px 10px;justify-content:flex-end}.fc-reorder{display:flex;gap:3px;margin-right:auto}.fc-reorder-btn{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:14px;background:#f0f2f4;border:1px solid #e0e4e8;border-radius:4px;color:#646970;cursor:pointer;transition:background .15s,color .15s}.fc-reorder-btn:hover{background:#e0e4e8;color:#1d2327}.fc-btn{font-size:12px;font-weight:500;padding:5px 12px;border-radius:4px;border:1px solid rgba(0,0,0,0);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.fc-btn.fc-btn-edit{background:#f0f6ff;color:#2271b1;border-color:#85bbe7}.fc-btn.fc-btn-edit:hover{background:#dceaff}.fc-btn.fc-btn-delete{background:#fff0f0;color:#d63638;border-color:#f0b5b6}.fc-btn.fc-btn-delete:hover{background:#ffe0e0}.btn-primary{display:inline-flex;align-items:center;gap:5px;background:#2271b1;color:#fff;border:1px solid #2271b1;border-radius:5px;padding:7px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.btn-primary:hover{background:#1b5b8f;border-color:#1b5b8f}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:5px;background:#fff;color:#1d2327;border:1px solid #ccd0d4;border-radius:5px;padding:7px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:#f4f6f8}.feature-editor-overlay{border:none;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.22);padding:0;width:min(1080px,100vw - 32px);max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain}.feature-editor-overlay::backdrop{background:rgba(0,0,0,.45);backdrop-filter:blur(2px)}.fe-body{display:flex;align-items:stretch;min-height:0}.fe-main{flex:1 1 auto;min-width:0}.fe-comments-panel{flex:0 0 40%;width:40%;border-left:1px solid #e0e4e8;overflow-y:auto;background:#f7f8fa}@media(max-width: 600px){.fe-body{flex-direction:column}.fe-comments-panel{flex:none;width:auto;border-left:none;border-top:1px solid #e0e4e8}}.send-email-overlay{border:none;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.22);padding:0;width:min(720px,100vw - 32px);max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain}.send-email-overlay::backdrop{background:rgba(0,0,0,.45);backdrop-filter:blur(2px)}.send-email-overlay .se-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e4e8}.send-email-overlay .se-header h3{margin:0;font-size:1em;font-weight:700}.send-email-overlay .se-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#646970;padding:2px 6px;border-radius:4px}.send-email-overlay .se-close:hover{background:#f0f2f4;color:#1d2327}.send-email-overlay .send-email-form{padding:16px 20px 20px}.send-email-overlay .se-fields{display:flex;flex-direction:column;gap:10px}.send-email-overlay .se-field{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:10px}.send-email-overlay .se-field .se-label{font-size:13px;font-weight:600;color:#646970}.send-email-overlay .se-field input[type=text]{width:100%;padding:7px 10px;font-size:13px;border:1px solid #e0e4e8;border-radius:4px;font-family:inherit;box-sizing:border-box}.send-email-overlay .se-field input[type=text]:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.send-email-overlay .se-field input[type=text][readonly]{background:#f6f7f8;color:#646970}.send-email-overlay .se-field.se-field--body{grid-template-columns:80px 1fr;align-items:start}.send-email-overlay .se-field.se-field--body .se-label{padding-top:4px}.send-email-overlay .se-body-wrap{width:100%}.send-email-overlay .se-body-wrap .fc-desc-toolbar{margin-bottom:4px}.send-email-overlay .se-body-editor{font-size:13px;color:#1d2327;line-height:1.6;outline:none;min-height:220px;max-height:50vh;overflow-y:auto;border:1px solid #e0e4e8;border-radius:4px;padding:8px 10px;background:#fff}.send-email-overlay .se-body-editor p{margin:0 0 8px}.send-email-overlay .se-body-editor p:last-child{margin-bottom:0}.send-email-overlay .se-body-editor ul,.send-email-overlay .se-body-editor ol{margin:0 0 8px 20px;padding:0}.send-email-overlay .se-body-editor ul:last-child,.send-email-overlay .se-body-editor ol:last-child{margin-bottom:0}.send-email-overlay .se-body-editor li{margin-bottom:2px}.send-email-overlay .se-body-editor strong,.send-email-overlay .se-body-editor b{font-weight:700}.send-email-overlay .se-body-editor em,.send-email-overlay .se-body-editor i{font-style:italic}.send-email-overlay .se-body-editor:focus{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.send-email-overlay .se-attachment{font-size:12px;color:#646970;padding:4px 0 0 90px}.send-email-overlay .se-feedback{margin-top:12px;font-size:13px;min-height:1em}.send-email-overlay .se-feedback--error{color:#d63638}.send-email-overlay .se-feedback--warn{color:#b06b00}.send-email-overlay .se-feedback--success{color:#00a32a}.send-email-overlay .se-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.fe-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 16px;border-bottom:1px solid #e0e4e8;position:sticky;top:0;background:#fff;z-index:1}.fe-header h3{margin:0;font-size:1em;font-weight:700}.fe-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#646970;padding:2px 6px;border-radius:4px;margin-left:4px}.fe-close:hover{background:#f0f2f4;color:#1d2327}.fe-delete{margin-left:auto;background:none;border:1px solid #f0b5b6;color:#d63638;font-size:12px;font-weight:500;padding:4px 10px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .15s,border-color .15s}.fe-delete .fe-delete-icon{display:block;flex-shrink:0}.fe-delete:hover{background:#fff0f0;border-color:#d63638}#feature-editor-form{padding:20px}.fe-field{margin-bottom:16px}.fe-field label{display:block;font-size:13px;font-weight:600;color:#1d2327;margin-bottom:5px}.fe-field input[type=text],.fe-field input[type=number],.fe-field input[type=date],.fe-field textarea,.fe-field select{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid #ccd0d4;border-radius:4px;font-size:14px;color:#1d2327;background:#fff;line-height:1.4;transition:border-color .15s,box-shadow .15s}.fe-field input[type=text]:focus,.fe-field input[type=number]:focus,.fe-field input[type=date]:focus,.fe-field textarea:focus,.fe-field select:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.fe-field textarea{resize:vertical;min-height:100px}.fe-field.fe-field-check{display:flex;align-items:center;padding-top:24px}.fe-field.fe-field-check label{margin:0;display:flex;align-items:center;gap:8px;font-weight:500;cursor:pointer}.fe-field.fe-field-check input[type=checkbox]{width:16px;height:16px;cursor:pointer}.fe-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}@media(max-width: 480px){.fe-row{grid-template-columns:1fr 1fr}.fe-row .fe-field-check{grid-column:1/-1;padding-top:0}}.fe-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:16px;border-top:1px solid #e0e4e8;margin-top:8px}.fe-footer-actions{display:flex;gap:8px;margin-left:auto}.fe-feedback{font-size:13px;color:#646970}.fe-feedback.fe-feedback-error{color:#d63638;font-weight:500}.fe-title-group{flex:1;min-width:0;display:flex;flex-direction:column}.fe-title-edit{margin:0;padding:4px 8px;border-radius:4px;font-size:18px;font-weight:700;color:#1d2327;cursor:text;outline:none}.fe-title-edit:hover{background:#f7f9fb}.fe-title-edit:focus{background:#f0f6ff;box-shadow:inset 0 0 0 1px rgba(34,113,177,.4)}.fe-title-edit:empty::before{content:"Untitled feature";color:#646970}.fe-header-sub{display:flex;align-items:center;gap:4px;padding:2px 8px 0;font-size:.75rem;color:#646970;line-height:1.3}.fe-toggles{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid #e0e4e8}.fe-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #e0e4e8;background:#fff;color:#646970;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.fe-toggle .fe-toggle-icon{font-size:14px;line-height:1}.fe-toggle:hover{background:#f7f9fb;color:#1d2327}.fe-toggle.is-active{background:rgba(34,113,177,.12);border-color:rgba(34,113,177,.45);color:#2271b1}.fe-quick{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px;border-bottom:1px solid #e0e4e8}.fe-quick-item{flex:1 1 200px;min-width:0;position:relative}.fe-quick-item.is-editing .fe-quick-display{background:#eef2f6;border-color:#c5ccd4}.fe-quick-display{width:100%;display:flex;align-items:baseline;gap:8px;background:#f7f9fb;border:1px solid #e0e4e8;border-radius:6px;padding:8px 12px;cursor:pointer;text-align:left;transition:background .12s,border-color .12s}.fe-quick-display:hover{background:#eef2f6;border-color:#c5ccd4}.fe-quick-display .fe-quick-label{font-size:11px;color:#646970;text-transform:uppercase;letter-spacing:.05em}.fe-quick-display .fe-quick-value{font-size:14px;font-weight:600;color:#1d2327}.fe-quick-display .fe-quick-budget{align-self:center}.fe-quick-display .fe-quick-budget:empty{display:none}.fe-quick-display .fe-quick-aside{margin-left:auto;font-size:11px;color:#646970}.fe-quick-form{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;border:1px solid #e0e4e8;border-radius:6px;padding:10px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.14);min-width:240px}.fe-quick-form[hidden]{display:none}.fe-quick-fields{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.fe-quick-field{flex:1 1 80px;display:flex;flex-direction:column;gap:2px;font-size:11px;color:#646970}.fe-quick-field input,.fe-quick-field select{font-size:13px;padding:4px 6px;border:1px solid #e0e4e8;border-radius:4px;background:#fff;color:#1d2327}.fe-figures{flex:1 1 100%;display:flex;flex-direction:column;gap:12px;background:#f7f9fb;border:1px solid #e0e4e8;border-radius:6px;padding:12px 14px}.fe-figures-line{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 22px}.fe-fig{display:flex;flex-direction:column;gap:5px;min-width:0}.fe-fig[hidden]{display:none}.fe-fig--tracked{margin-left:-14px}.fe-fig-label{font-size:11px;font-weight:600;color:#646970;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.fe-fig-label .fe-fig-clock{font-size:12px}.fe-fig-value-line{display:flex;align-items:center;gap:8px;min-height:32px}.fe-fig-ref-amount{font-size:13px;font-weight:600;color:#1d2327;white-space:nowrap}.fe-fig-ref-time{font-size:12px;color:#646970;white-space:nowrap}.fe-fig-ref-time:not(:empty)::before{content:"· "}.fe-fig-input-wrap{display:inline-flex;align-items:center;gap:3px;padding:5px 9px;border:1px solid #e0e4e8;border-radius:5px;background:#fff;transition:border-color .12s,box-shadow .12s}.fe-fig-input-wrap:focus-within{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.fe-fig-input-wrap .fe-fig-prefix{color:#646970;font-weight:600}.fe-fig-input-wrap .fe-figure-input{width:70px;border:0;outline:none;box-shadow:none;padding:0;background:rgba(0,0,0,0);color:#1d2327;font-size:15px;font-weight:700;-moz-appearance:textfield}.fe-fig-input-wrap .fe-figure-input:focus{border:0;outline:none;box-shadow:none}.fe-fig-input-wrap .fe-figure-input::-webkit-outer-spin-button,.fe-fig-input-wrap .fe-figure-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fe-figure-total .fe-figure-total-value{font-size:15px;font-weight:700;color:#1d2327}.fe-figure-total .fe-quick-budget:empty{display:none}.fe-use-ref{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid #e0e4e8;border-radius:50%;background:#fff;color:#646970;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.fe-use-ref .fe-use-ref-icon{display:block}.fe-use-ref:hover{border-color:#2271b1;color:#2271b1}.fe-fig--tracked:not(.is-matched) .fe-use-ref,.fe-fig-ref--foot:not(.is-matched) .fe-use-ref{border-color:#2271b1;background:#2271b1;color:#fff}.fe-fig--tracked:not(.is-matched) .fe-use-ref:hover,.fe-fig-ref--foot:not(.is-matched) .fe-use-ref:hover{background:#2271b1;color:#fff}.fe-figures-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;padding-top:12px;border-top:1px solid #e0e4e8}.fe-fig-ref--foot{display:flex;align-items:center;gap:8px;font-size:12px}.fe-fig-ref--foot[hidden]{display:none}.fe-fig-ref--foot .fe-fig-ref-label{font-size:11px;color:#646970;text-transform:uppercase;letter-spacing:.05em}.fe-fig-ref--foot .fe-fig-ref-amount{font-size:13px;font-weight:600;color:#1d2327}.fe-fig-vat{display:flex;align-items:center;gap:8px}.fe-vat-btn{font-size:13px;font-weight:600;padding:4px 10px;border:1px solid #e0e4e8;border-radius:4px;background:#fff;color:#1d2327;cursor:pointer;transition:background .12s,border-color .12s}.fe-vat-btn:hover{background:#eef2f6;border-color:#c5ccd4}.fe-vat-btn::after{content:" ▾";color:#646970;font-weight:400}.fe-vat-menu{min-width:90px}.fe-quick-actions{display:flex;gap:6px}.fe-quick-actions button{font-size:12px;padding:4px 10px;border-radius:4px;cursor:pointer}.fe-content{padding:16px 20px 20px}.fe-category-extras{border-bottom:1px solid #e0e4e8;background:#f7f9fb}.ce-section{padding:12px 20px}.ce-section+.ce-section{border-top:1px solid #e0e4e8}.ce-section-title{margin:0 0 8px;font-size:12px;font-weight:600;color:#646970;text-transform:uppercase;letter-spacing:.05em}.ce-section-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ce-section-header .ce-section-title{margin:0}.ce-section-header .ce-edit-toggle{margin-left:auto}.ce-discount-item{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid #e0e4e8;font-size:13px}.ce-discount-item:last-child{border-bottom:none}.ce-discount-code{font-family:monospace;font-size:12px;font-weight:600;color:#1d2327;flex:1}.ce-discount-reusable{font-size:13px;title:"Reusable"}.ce-claim-btn{font-size:11px;padding:3px 8px}.fc-return-discount{flex-shrink:0;font-size:11px;padding:2px 7px;border-radius:4px;border:1px solid #e0e4e8;background:#fff;color:#646970;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s}.fc-return-discount:hover{background:#eef2f6;color:#1d2327}.ce-template-item{padding:6px 0;border-bottom:1px solid #e0e4e8}.ce-template-item:last-of-type{border-bottom:none}.ce-template-header{display:flex;align-items:center;gap:8px}.ce-template-title{flex:1;font-size:13px;font-weight:500;color:#1d2327}.ce-insert-btn,.ce-edit-toggle{font-size:11px;padding:3px 8px;flex-shrink:0}.ce-delete-tpl-btn{flex-shrink:0;padding:2px 6px;border-radius:4px;border:1px solid #e0e4e8;background:#fff;color:#646970;cursor:pointer;font-size:13px;line-height:1}.ce-delete-tpl-btn:hover{background:#fee;color:#c00;border-color:#fcc}.ce-template-edit-form{margin-top:8px;display:flex;flex-direction:column;gap:6px}.ce-template-edit-form .ce-tpl-title-input,.ce-template-edit-form .ce-tpl-tasks-input{width:100%;font-size:12px;padding:6px 8px;border:1px solid #e0e4e8;border-radius:4px;background:#fff;resize:vertical;box-sizing:border-box}.ce-template-edit-actions{display:flex;gap:8px}.ce-add-template-btn{margin-top:10px;font-size:12px;padding:4px 10px}.fe-loading{padding:20px;text-align:center;color:#646970;font-size:13px}.fe-loading .fe-retry-btn{margin-top:8px;display:inline-block;background:none;border:none;color:inherit;cursor:pointer;text-decoration:underline;font-size:inherit;padding:0}.fe-add-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e0e4e8}.fe-comments{padding:16px 20px 20px;display:flex;flex-direction:column;height:100%;box-sizing:border-box}.fe-comments-heading{margin:0 0 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#646970}.fe-comment-form{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e0e4e8}.fe-comment-new-editor,.fe-comment-editor{min-height:60px;transition:min-height .15s;padding:7px 10px;border:1px solid #e0e4e8;border-radius:8px;font-size:13px;font-family:inherit;color:#1d2327;line-height:1.5;background:#fff;outline:none;word-break:break-word}.fe-comment-new-editor p,.fe-comment-editor p{margin:0 0 6px}.fe-comment-new-editor p:last-child,.fe-comment-editor p:last-child{margin-bottom:0}.fe-comment-new-editor ul,.fe-comment-new-editor ol,.fe-comment-editor ul,.fe-comment-editor ol{margin:0 0 6px 18px;padding:0}.fe-comment-new-editor ul:last-child,.fe-comment-new-editor ol:last-child,.fe-comment-editor ul:last-child,.fe-comment-editor ol:last-child{margin-bottom:0}.fe-comment-new-editor li,.fe-comment-editor li{margin-bottom:2px}.fe-comment-new-editor strong,.fe-comment-new-editor b,.fe-comment-editor strong,.fe-comment-editor b{font-weight:700}.fe-comment-new-editor em,.fe-comment-new-editor i,.fe-comment-editor em,.fe-comment-editor i{font-style:italic}.fe-comment-new-editor:focus,.fe-comment-editor:focus{border-color:#6c8ebf;box-shadow:0 0 0 2px rgba(108,142,191,.18)}.fe-comment-new-editor[data-empty=true]:not(:focus)::before,.fe-comment-editor[data-empty=true]:not(:focus)::before{content:"Leave a comment…";color:#bbb;pointer-events:none;display:block}.fe-comment-new-editor{min-height:calc(1.5em + 16px)}.fe-comment-new-editor:focus,.fe-comment-new-editor:not([data-empty=true]){min-height:60px}.fe-comment-actions{display:flex;justify-content:flex-end}.fe-comments-list{display:flex;flex-direction:column;gap:14px;flex:1;overflow-y:auto}.fe-comment{display:flex;gap:10px;align-items:flex-start}.fe-comment-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;object-fit:cover}.fe-comment-body{flex:1;min-width:0}.fe-comment-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.fe-comment-author{font-size:13px;font-weight:600;color:#1d2327}.fe-comment-date{font-size:11px;color:#646970}.fe-comment-content{font-size:13px;color:#1d2327;line-height:1.5;word-break:break-word;margin-bottom:4px;background-color:#fff;padding:10px;border:1px solid #e0e4e8;border-radius:10px}.fe-comment-content p{margin:0 0 6px}.fe-comment-content p:last-child{margin-bottom:0}.fe-comment-content ul,.fe-comment-content ol{margin:0 0 6px 18px;padding:0}.fe-comment-content li{margin-bottom:2px}.fe-comment-content strong,.fe-comment-content b{font-weight:700}.fe-comment-content em,.fe-comment-content i{font-style:italic}.fe-comment-footer{display:flex;gap:2px;margin-top:4px}.fe-comment-action-btn{background:none;border:none;padding:2px 6px;font-size:11px;color:#646970;cursor:pointer;border-radius:3px}.fe-comment-action-btn:hover{color:#1d2327;background:rgba(0,0,0,.06)}.fe-comment-action-btn--delete:hover{color:#d63638}.fe-comment-edit-form{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.fe-comment-edit-actions{display:flex;gap:6px;justify-content:flex-end}.fe-activity{display:flex;align-items:baseline;gap:6px;font-size:12px;color:#646970;font-style:italic}.fe-activity-bullet{flex-shrink:0}.fe-activity-text{flex:1}.fe-activity-date{flex-shrink:0;font-size:11px}.pv-activity{margin-top:24px;padding-top:20px;border-top:1px solid #e0e4e8}.pv-activity-heading{font-size:13px;font-weight:600;color:#646970;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.pv-activity-item{display:flex;align-items:baseline;gap:6px;font-size:12px;color:#646970;font-style:italic;padding:3px 0}.pv-activity-bullet{flex-shrink:0}.pv-activity-text{flex:1}.pv-activity-date{flex-shrink:0;font-size:11px}.pv-activity-expand{margin-top:6px;background:none;border:none;padding:0;font-size:12px;color:#646970;cursor:pointer;text-decoration:underline}.pv-activity-expand:hover{color:#1d2327}.fc-preview{font-size:12px;color:#1d2327;pointer-events:none}.fc-preview-desc{color:#646970;margin-bottom:6px}.fc-preview-desc p{margin:0 0 4px}.fc-preview-desc ul,.fc-preview-desc ol{margin:0 0 4px 18px;padding:0}.fc-preview-desc li{margin:0}.fc-preview-tasklist{display:flex;flex-direction:column;gap:2px;margin:4px 0;padding:6px 8px;background:#fbfcfd;border:1px solid #e0e4e8;border-radius:4px}.fc-preview-task{display:flex;align-items:center;gap:6px;font-size:12px}.fc-preview-task.is-done .fc-preview-task-title{text-decoration:line-through;color:#646970}.fc-preview-task.is-hidden-from-client{opacity:.45;font-style:italic}.fc-preview-check{color:#646970;font-size:13px;line-height:1}.fc-preview-text{color:#646970;margin:4px 0}.fc-preview-text p{margin:0 0 4px}.fc-preview-text ul,.fc-preview-text ol{margin:0 0 4px 18px;padding:0}.fc-feature-desc-wrap{margin-bottom:10px}.fc-desc-toolbar{display:flex;gap:3px;margin-bottom:6px;flex-wrap:wrap}.fc-desc-toolbar[hidden]{display:none}.fc-desc-tool{font-size:11px;font-weight:500;padding:2px 8px;border-radius:3px;border:1px solid #e0e4e8;background:#fff;color:#646970;cursor:pointer;line-height:1.6;transition:background .12s,color .12s,border-color .12s}.fc-desc-tool strong,.fc-desc-tool em{font-size:inherit;font-weight:inherit;font-style:inherit}.fc-desc-tool code{font-size:inherit;font-family:inherit}.fc-desc-tool:hover{background:#f0f6ff;color:#2271b1;border-color:#6fafe3}.fc-feature-desc code,.fc-text-content code,.se-body-editor code,.fe-comment-new-editor code,.fe-comment-editor code,.fe-comment-content code,.fc-preview-desc code,.fc-preview-text code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;background:#f0f1f3;border:1px solid #e0e2e6;border-radius:3px;padding:1px 4px}.fc-feature-desc pre,.fc-text-content pre,.se-body-editor pre,.fe-comment-new-editor pre,.fe-comment-editor pre,.fe-comment-content pre,.fc-preview-desc pre,.fc-preview-text pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;background:#f6f7f8;border:1px solid #e0e2e6;border-radius:4px;padding:6px 8px;margin:0 0 8px;white-space:pre-wrap;overflow-wrap:break-word}.fc-feature-desc pre:last-child,.fc-text-content pre:last-child,.se-body-editor pre:last-child,.fe-comment-new-editor pre:last-child,.fe-comment-editor pre:last-child,.fe-comment-content pre:last-child,.fc-preview-desc pre:last-child,.fc-preview-text pre:last-child{margin-bottom:0}.fc-feature-desc pre code,.fc-text-content pre code,.se-body-editor pre code,.fe-comment-new-editor pre code,.fe-comment-editor pre code,.fe-comment-content pre code,.fc-preview-desc pre code,.fc-preview-text pre code{background:none;border:0;padding:0;font-size:inherit}.fc-feature-desc{font-size:13px;color:#1d2327;line-height:1.6;outline:none;border-radius:4px;padding:4px 6px;margin:-4px -6px;min-height:1.6em}.fc-feature-desc p{margin:0 0 8px}.fc-feature-desc p:last-child{margin-bottom:0}.fc-feature-desc ul,.fc-feature-desc ol{margin:0 0 8px 20px;padding:0}.fc-feature-desc ul:last-child,.fc-feature-desc ol:last-child{margin-bottom:0}.fc-feature-desc li{margin-bottom:2px}.fc-feature-desc strong,.fc-feature-desc b{font-weight:700}.fc-feature-desc em,.fc-feature-desc i{font-style:italic}.fc-feature-desc:focus{background:#f0f6ff;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.fc-feature-desc[data-empty=true]:not(:focus)::before{content:"Add a description for this feature…";color:#bbb;pointer-events:none;display:block}.fc-items-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.fc-item{display:flex;align-items:flex-start;gap:8px;border-radius:5px;padding:6px 8px;background:#fff;border:1px solid #e0e4e8;transition:border-color .15s}.fc-item:hover{border-color:#c5ccd4}.fc-item-content{flex:1;min-width:0}.fc-task-title{font-size:13px;font-weight:600;color:#1d2327;line-height:1.4;outline:none;min-height:1.4em;border-radius:3px;padding:1px 3px;margin:-1px -3px}.fc-task-title:focus{background:#f0f6ff;box-shadow:0 0 0 2px rgba(34,113,177,.2)}.fc-task-title:empty::before{content:"Task name…";color:#aaa;pointer-events:none}.fc-task-time-btn{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;border:none;padding:1px 2px;cursor:pointer;border-radius:4px;color:#646970;transition:color .15s,background .15s;background:#f4f6f8;border:1px solid #e0e4e8;border-radius:999px;padding:1px 7px}.fc-task-time-btn:hover{color:#2271b1;background:#f0f6ff}.fc-task-duration{font-size:11px;font-weight:500;color:inherit;white-space:nowrap;flex-shrink:0}.fc-task-log-time-icon{font-size:18px;line-height:1;flex-shrink:0}.fc-item--task.fc-item--completed .fc-task-time-btn{visibility:hidden;pointer-events:none}.task-time-overlay{display:none;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);border:1px solid #e0e4e8;border-radius:10px;padding:0;overflow:hidden;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.18)}.task-time-overlay[open]{display:flex}.task-time-overlay::backdrop{background:rgba(0,0,0,.35)}.tto-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 12px;border-bottom:1px solid #e0e4e8;flex-shrink:0}.tto-title{font-size:15px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tto-close{background:none;border:none;cursor:pointer;font-size:20px;color:#646970;line-height:1;padding:2px 6px;border-radius:4px;flex-shrink:0}.tto-close:hover{background:#f0f6ff;color:#2271b1}.tto-entries{overflow-y:auto;flex:1 1 auto;padding:12px 18px 6px;min-height:60px}.tto-empty{color:#646970;font-size:13px;margin:0;padding:6px 0}.tto-total{font-size:13px;color:#646970;margin-bottom:8px}.tto-total strong{color:#1d2327}.tto-entry-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.tto-entry{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;font-size:13px}.tto-entry:hover{background:#f7f9fb}.tto-entry-date{color:#646970;min-width:80px;flex-shrink:0}.tto-entry-times{flex:1 1 auto;color:#1d2327;white-space:nowrap}.tto-entry-dur{font-weight:600;color:#1d2327;min-width:50px;text-align:right;flex-shrink:0}.tto-edit-btn,.tto-delete-btn{background:none;border:none;cursor:pointer;padding:2px 5px;border-radius:4px;font-size:14px;color:#646970;flex-shrink:0;transition:background .12s,color .12s;line-height:1}.tto-edit-btn:hover,.tto-delete-btn:hover{background:#f0f6ff;color:#2271b1}.tto-edit-btn:disabled,.tto-delete-btn:disabled{opacity:.4;pointer-events:none}.tto-delete-btn{font-size:17px}.tto-delete-btn:hover{background:#ffeaea;color:#c0392b}.tto-form-wrap{border-top:1px solid #e0e4e8;padding:14px 18px 16px;flex-shrink:0;background:#fafbfc}.tto-form-heading{font-size:13px;font-weight:600;margin:0 0 10px;color:#1d2327}.tto-fields{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.tto-field{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#646970;font-weight:500}.tto-field input{border:1px solid #e0e4e8;border-radius:5px;padding:5px 8px;font-size:13px;background:#fff}.tto-field input:focus{outline:2px solid #2271b1;outline-offset:1px;border-color:rgba(0,0,0,0)}.tto-form-actions{display:flex;gap:8px;margin-top:10px;align-items:center}.tto-feedback{font-size:12px;margin-top:6px;min-height:18px}.tto-feedback--error{color:#c0392b}.tto-feedback:not(.tto-feedback--error){color:#27ae60}.fc-item--text,.fc-item--task{border:none;padding:2px 0;background:rgba(0,0,0,0)}.fc-item--text:hover,.fc-item--task:hover{border-color:rgba(0,0,0,0)}.fc-task-list{position:relative;border:1px solid #e0e4e8;border-radius:6px;background:#fbfcfd;padding:4px 10px 6px;margin:6px 0}.fc-task-list.fc-dragging{opacity:.55;box-shadow:0 8px 28px rgba(0,0,0,.18)}.fc-task-list-header{display:flex;align-items:center;gap:6px;padding:2px 0 4px;margin-bottom:4px;border-bottom:1px solid #e0e4e8}.fc-task-list-drag{color:#b0b8c1;font-size:14px;cursor:grab;line-height:1;padding:2px 4px;border-radius:3px;transition:color .15s,background .15s}.fc-task-list-drag:hover{color:#646970;background:#f0f2f4}.fc-task-list-drag:active{cursor:grabbing}.fc-task-list-title{margin:0;flex:1;font-size:12px;font-weight:600;color:#646970;text-transform:uppercase;letter-spacing:.04em}.fc-task-list-delete{width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:13px;background:none;border:1px solid rgba(0,0,0,0);border-radius:3px;cursor:pointer;color:#646970;transition:background .12s,color .12s}.fc-task-list-delete:hover{background:#fff0f0;color:#d63638;border-color:#f0b5b6}.fc-item-drop-placeholder{height:36px;border:1px dashed #2271b1;border-radius:6px;background:rgba(34,113,177,.06);margin:6px 0}.fc-task-list-items{display:flex;flex-direction:column;gap:2px;min-height:4px}.fc-task-drop-placeholder{height:24px;border:1px dashed #2271b1;border-radius:4px;background:rgba(34,113,177,.06);margin:2px 0}.fc-item--task.fc-dragging{opacity:.4}.fc-task-list-add{margin-top:4px;padding-top:4px;border-top:1px dashed #e0e4e8}.fc-task-list-add-trigger{background:none;border:0;padding:4px 6px;font-size:12px;color:#646970;cursor:pointer;border-radius:3px}.fc-task-list-add-trigger:hover{background:#f0f2f4;color:#1d2327}.fc-task-list-add-input{width:100%;border:0;background:rgba(0,0,0,0);font-size:13px;padding:4px 6px;outline:none;border-radius:3px}.fc-task-list-add-input:focus{background:#f0f6ff}.fc-task-list-add-actions{display:flex;gap:6px;margin-top:4px}.fc-task-list-add-actions button{font-size:11px;padding:3px 10px;border-radius:3px;cursor:pointer}.fc-task-list-add-actions .fc-task-list-add-save{background:#00a32a;color:#fff;border:0}.fc-task-list-add-actions .fc-task-list-add-save:hover{filter:brightness(0.95)}.fc-task-list-add-actions .fc-task-list-add-cancel{background:none;border:1px solid #e0e4e8;color:#646970}.fc-task-list-add-actions .fc-task-list-add-cancel:hover{background:#f0f2f4;color:#1d2327}.fc-task-check{width:15px;height:15px;margin:3px 0 0;accent-color:#00a32a;cursor:pointer;flex-shrink:0}.fc-item--task.fc-item--completed .fc-task-title{text-decoration:line-through;color:#646970}.fc-item--task.fc-item--completed .fc-task-time-btn{opacity:.6}.fc-item--task.fc-item--hidden-from-client{opacity:.55}.fc-item--task.fc-item--hidden-from-client .fc-task-title{font-style:italic}.fc-task-hide-toggle{flex-shrink:0;position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:none;border:none;padding:0;cursor:pointer;font-size:14px;line-height:1;color:#646970;border-radius:4px}.fc-task-hide-toggle.is-hidden::after{content:"";position:absolute;top:50%;left:50%;width:70%;height:1.5px;background:currentColor;transform:translate(-50%, -50%) rotate(-45deg);border-radius:1px;pointer-events:none}.fc-task-assignee{width:22px;height:22px;padding:0;border:0;background:none;border-radius:50%;cursor:pointer;flex-shrink:0;overflow:hidden}.fc-task-assignee img{width:100%;height:100%;display:block;border-radius:50%}.fc-task-assignee--empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:1px dashed #e0e4e8;border-radius:50%;color:#646970;font-size:11px}.fc-assignee-popover{position:absolute;background:#fff;border:1px solid #e0e4e8;border-radius:5px;box-shadow:0 4px 12px rgba(0,0,0,.08);padding:4px;z-index:20;min-width:160px;display:flex;flex-direction:column;gap:2px}.fc-assignee-option{display:flex;align-items:center;gap:8px;padding:4px 6px;width:100%;border:0;background:none;font-size:12px;cursor:pointer;border-radius:3px;text-align:left;color:#4e4e4e}.fc-assignee-option:hover{background:#f0f6ff}.fc-assignee-option.is-current{background:rgba(34,113,177,.08)}.fc-assignee-option img{width:20px;height:20px;border-radius:50%}.fc-assignee-option .fc-task-assignee--empty{width:20px;height:20px}.fc-text-content{font-size:13px;color:#1d2327;line-height:1.6;outline:none;border-radius:4px;padding:4px 6px;margin:-4px -6px;min-height:1.6em}.fc-text-content p{margin:0 0 8px}.fc-text-content p:last-child{margin-bottom:0}.fc-text-content ul,.fc-text-content ol{margin:0 0 8px 20px;padding:0}.fc-text-content ul:last-child,.fc-text-content ol:last-child{margin-bottom:0}.fc-text-content li{margin-bottom:2px}.fc-text-content strong,.fc-text-content b{font-weight:700}.fc-text-content em,.fc-text-content i{font-style:italic}.fc-text-content:focus{background:#f0f6ff;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.fc-text-content[data-empty=true]:not(:focus)::before{content:"Add description text…";color:#bbb;pointer-events:none;display:block}.fc-item-controls{display:flex;gap:3px;flex-shrink:0}.fc-item-delete{width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:13px;background:none;border:1px solid rgba(0,0,0,0);border-radius:3px;cursor:pointer;color:#646970;transition:background .12s,color .12s;flex-shrink:0}.fc-item-delete:hover{background:#f0f2f4;color:#1d2327;border-color:#e0e4e8}.fc-item-delete:hover{background:#fff0f0;color:#d63638;border-color:#f0b5b6}.fc-add-btn{font-size:11px;font-weight:500;padding:3px 9px;border-radius:4px;border:1px dashed #e0e4e8;background:#fff;color:#646970;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.fc-add-btn:hover{background:#f0f6ff;color:#2271b1;border-color:#6fafe3;border-style:solid}.fc-unattached{margin-top:10px;padding-top:10px;border-top:1px dashed #e0e4e8;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px}.fc-unattached-label{color:#646970;font-style:italic}.fc-unattached-item{display:inline-flex;align-items:center;gap:5px;background:#fff3cd;border:1px solid #ffe08a;border-radius:4px;padding:2px 6px;color:#856404}.fc-unattached-btn{font-size:11px;font-weight:500;background:#fff;border:1px solid #ffe08a;border-radius:3px;color:#856404;cursor:pointer;padding:1px 6px}.fc-unattached-btn:hover{background:#ffe08a}@media(max-width: 600px){.btn-share-label,.fe-delete-label{display:none}.fe-delete{padding:4px 9px}}@media(max-width: 600px){.pv-header{padding:16px}.pv-activity{margin-top:16px;padding-top:14px}.pv-totals{gap:6px}.pv-total-item{flex:1;min-width:70px;padding:8px 10px}.pv-total-item .pv-total-value{font-size:1em}.fc-body{padding:14px 36px 12px 14px}.pv-header-top .pv-title{font-size:1.1em}.pv-features-header{flex-direction:column;align-items:flex-start}.feature-editor-overlay{width:100vw;max-width:100vw;max-height:92dvh;border-radius:0;inset-block-start:0;inset-block-end:auto;inset-inline:0;margin:0}}.fe-share-btn{margin-right:10px;flex-shrink:0}.pv-share-btn{margin-left:8px;flex-shrink:0}.pv-renew-btn{margin-left:8px;flex-shrink:0}.pv-delete-btn{margin-left:8px;flex-shrink:0}.btn-danger{background:#fff;color:#c0392b;border:1px solid #e3b0aa;border-radius:6px;padding:6px 12px;font-size:.85em;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-danger:hover{background:#c0392b;border-color:#c0392b;color:#fff}.btn-danger:disabled{opacity:.5;cursor:default}.renew-project-dialog{border:1px solid #e0e4e8;border-radius:8px;padding:0;width:100%;max-width:420px;box-shadow:0 6px 24px rgba(0,0,0,.18)}.renew-project-dialog::backdrop{background:rgba(0,0,0,.35)}.renew-project-dialog .rp-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e0e4e8}.renew-project-dialog .rp-header h3{margin:0;font-size:1.05em}.renew-project-dialog .rp-header .rp-close{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:#646970}.renew-project-dialog .rp-header .rp-close:hover{color:#1d2327}.renew-project-dialog .rp-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.renew-project-dialog .rp-field{display:flex;flex-direction:column;gap:4px;font-size:13px}.renew-project-dialog .rp-field[hidden]{display:none}.renew-project-dialog .rp-field span{font-weight:600;color:#1d2327}.renew-project-dialog .rp-field input,.renew-project-dialog .rp-field select{padding:8px 10px;border:1px solid #e0e4e8;border-radius:4px;font-size:14px;box-sizing:border-box;width:100%}.renew-project-dialog .rp-field-check{flex-direction:row;align-items:center;gap:8px;cursor:pointer}.renew-project-dialog .rp-field-check input[type=checkbox]{width:auto;margin:0;flex-shrink:0}.renew-project-dialog .rp-field-check span{font-weight:500}.renew-project-dialog .rp-error{margin:0;font-size:13px;color:#b32d2e}.renew-project-dialog .rp-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px;border-top:1px solid #f0f0f1}.pdf-preview-dialog{display:none;border:none;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.28);padding:0;width:min(960px,100vw - 24px);height:min(90dvh,1200px);flex-direction:column;overflow:hidden}.pdf-preview-dialog[open]{display:flex}.pdf-preview-dialog::backdrop{background:rgba(0,0,0,.5);backdrop-filter:blur(2px)}.pdf-preview-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid #e0e4e8;flex-shrink:0}.pdf-preview-title{font-size:14px;font-weight:600;color:#1d2327}.pdf-preview-close{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:#646970;padding:2px 6px;border-radius:4px}.pdf-preview-close:hover{color:#1d2327;background:#f0f0f1}.pdf-preview-body{flex:1 1 auto;min-height:0;display:flex}.pdf-preview-frame{flex:1 1 auto;width:100%;height:100%;border:none}.fe-client-name{white-space:nowrap}.fe-client-name:not(:empty)::after{content:"—";margin-left:6px;opacity:.5}.fe-project-link{color:#2271b1;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fe-project-link:hover{text-decoration-style:solid;color:#1a5686}.fe-project-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1d2327;font-weight:500}.fe-change-project{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:0;border-radius:4px;background:none;color:#646970;cursor:pointer;transition:background .12s,color .12s}.fe-change-project:hover{background:#f0f6ff;color:#2271b1}.fmp-popover{background:#fff;border:1px solid #e0e4e8;border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,.14);padding:8px;z-index:60;width:280px;max-width:calc(100vw - 16px);display:flex;flex-direction:column;gap:8px}.fmp-search{width:100%;padding:6px 8px;border:1px solid #e0e4e8;border-radius:4px;font-size:13px;box-sizing:border-box}.fmp-search:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 1px rgba(34,113,177,.3)}.fmp-results{display:flex;flex-direction:column;max-height:260px;overflow-y:auto}.fmp-empty{padding:8px 6px;font-size:12px;color:#646970}.fmp-result{display:flex;flex-direction:column;gap:1px;width:100%;padding:6px 8px;border:0;background:none;text-align:left;cursor:pointer;border-radius:4px}.fmp-result:hover{background:#f0f6ff}.fmp-result .fmp-result-project{font-size:13px;color:#1d2327;font-weight:500}.fmp-result .fmp-result-client{font-size:11px;color:#646970}.fmp-create{width:100%;margin-top:4px;padding:7px 8px;border:0;border-top:1px solid #e0e4e8;background:none;text-align:left;font-size:13px;font-weight:500;color:#2271b1;cursor:pointer;border-radius:0 0 4px 4px}.fmp-create:hover{background:#f0f6ff}.pv-installment-progress{font-size:.8125rem;color:#1a7f37;margin-top:4px;font-style:italic}.board{display:grid;grid-template-columns:repeat(5, minmax(260px, 1fr));gap:16px;padding:16px 0;align-items:stretch}@media(max-width: 1100px){.board{grid-template-columns:repeat(4, 280px);overflow-x:auto}}body.view-board .site-content{overflow:visible;background-color:#5aa164}body.view-board .dashboard-content{height:calc(100dvh - var(--board-top, 120px) - 15px);display:flex;flex-direction:column;min-height:0}body.view-board #dashboard-fragment{flex:1;min-height:0;display:flex;flex-direction:column}body.view-board .board{flex:1;min-height:0}.board-column{background:#f4f5f7;border-radius:8px;display:flex;flex-direction:column;min-height:120px;max-height:100%;transition:background-color .15s ease}.board-column.is-dragover{background:#e3ecf7;outline:2px dashed #5b8def;outline-offset:-4px}.board-column[data-status=done]{background:#eef1ee}.board-column[data-status=on_hold]{background:#efedf6}.board-column-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 8px;flex-shrink:0}.board-column-title{font-size:14px;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.04em;color:#4a4a4a}.board-column-count{background:#d8dde3;color:#4a4a4a;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;min-width:24px;text-align:center}.board-column-count[data-count="0"]{opacity:.5}.board-column-body{display:flex;flex-direction:column;gap:10px;padding:8px 10px 12px;flex:1;overflow-y:auto;min-height:0}.board-column-body .feature-card{margin:0;flex-shrink:0}.fc-category-popover{z-index:10000;background:#fff;border:1px solid #d3d6db;border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.16);padding:4px;min-width:180px;max-height:300px;overflow-y:auto}.fc-category-option{display:block;width:100%;text-align:left;background:none;border:none;padding:6px 10px;border-radius:4px;font-size:13px;color:#1d2327;cursor:pointer}.fc-category-option:hover{background:#e8f0fa;color:#2271b1}.fc-category-option.is-current{background:#e0ecff;font-weight:600}.fc-board-assignees{display:inline-flex;flex-direction:row-reverse}.fc-board-assignees.fe-overlay-assignees{gap:6px}.feature-card--board .fc-board-assignees{gap:3px}.fc-board-assignee-btn{display:inline-flex;border:0;background:rgba(0,0,0,0);padding:0;cursor:pointer;margin-left:-8px}.fc-board-assignee-btn:first-child{margin-left:0}.fc-board-assignee-btn:hover .fc-board-assignee{filter:brightness(1.08)}.fe-overlay-assignees .fc-board-assignee-btn{margin-left:0}.fc-board-assignee{width:24px;height:24px;border-radius:50%;border:1px solid #cfcfcf;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.12);box-sizing:content-box}.fc-board-assignee--empty{display:inline-flex;align-items:center;justify-content:center;color:#8a8a8a;font-size:14px;line-height:1;font-weight:600;border-style:dashed;border-color:#b6b6b6;background:#f4f6f8}.fc-board-assignee--overlay{width:42px;height:42px}.feature-card.is-filtered-out{display:none}.fc-assignee-popover--multi{background:#fff;border:1px solid #dde0e4;border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.12);padding:4px;min-width:220px;z-index:1000}.fc-assignee-popover--multi .fc-assignee-option{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;background:rgba(0,0,0,0);border-radius:4px;cursor:pointer;text-align:left;font-size:13px;color:#1d2327}.fc-assignee-popover--multi .fc-assignee-option img{width:22px;height:22px;border-radius:50%;flex-shrink:0}.fc-assignee-popover--multi .fc-assignee-option span:nth-of-type(1){flex:1}.fc-assignee-popover--multi .fc-assignee-option .fc-assignee-check{opacity:0;color:#2271b1;font-weight:700}.fc-assignee-popover--multi .fc-assignee-option:hover{background:#f0f6ff}.fc-assignee-popover--multi .fc-assignee-option.is-selected{background:#e8f0fa}.fc-assignee-popover--multi .fc-assignee-option.is-selected .fc-assignee-check{opacity:1}.fc-drop-placeholder--board{height:60px;border:2px dashed #5b8def;border-radius:6px;background:rgba(91,141,239,.08);margin:0}.board-column-footer{padding:6px 10px 10px;flex-shrink:0}.board-add-feature-trigger{display:block;width:100%;background:none;border:1px dashed #c0c7d0;border-radius:5px;padding:6px 10px;font-size:12px;color:#646970;cursor:pointer;text-align:center;transition:background .15s,border-color .15s,color .15s}.board-add-feature-trigger:hover{background:#e8f0fa;border-color:#5b8def;color:#2271b1}.board-column-empty{color:#8a8a8a;font-size:12px;font-style:italic;margin:8px 4px}.feature-card--board{cursor:pointer;border:1px solid rgba(0,0,0,0);transition:border-color .15s ease,box-shadow .15s ease;position:relative}.feature-card--board .fc-actions{display:none}.feature-card--board .fc-body{padding-right:16px;padding-bottom:8px}.feature-card--board .fc-card-summary{background:rgba(0,0,0,0) !important;cursor:pointer}.feature-card--board .fc-board-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 16px 12px}.feature-card--board .fc-board-footer-info{display:flex;align-items:center;gap:10px}.feature-card--board .fc-board-stat{display:inline-flex;align-items:center;gap:3px;font-size:.75em;font-weight:600;color:#646970}.feature-card--board .fc-board-stat-icon{flex-shrink:0}.feature-card--board .fc-board-tasks--done{color:#1a7f37}.feature-card--board .fc-board-expiry{display:inline-flex;align-items:center;gap:3px;font-size:.75em;font-weight:600;color:#646970}.feature-card--board .fc-board-expiry-icon{flex-shrink:0}.feature-card--board:hover{border-color:#5b8def;box-shadow:0 2px 6px rgba(91,141,239,.18)}.feature-card--board .fc-preview{display:none}.fc-board-meta{font-size:.85em;font-weight:400;line-height:1.4;color:#1d2327}.incomplete-features-dialog{border:none;border-radius:8px;padding:0;max-width:520px;width:90vw;box-shadow:0 12px 32px rgba(0,0,0,.2)}.incomplete-features-dialog::backdrop{background:rgba(0,0,0,.4)}.incomplete-features-dialog .if-dialog-body{padding:20px 24px 18px}.incomplete-features-dialog h2{margin:0 0 8px;font-size:18px}.incomplete-features-dialog p{margin:0 0 14px;color:#4a4a4a}.incomplete-features-dialog .if-list{list-style:none;margin:0 0 16px;padding:0;max-height:280px;overflow-y:auto;border:1px solid #e2e2e2;border-radius:6px}.incomplete-features-dialog .if-list li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid #f0f0f0}.incomplete-features-dialog .if-list li:last-child{border-bottom:none}.incomplete-features-dialog .if-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:4px;background:#e7eef8;color:#2c4a78;white-space:nowrap}.incomplete-features-dialog .if-status--backlog{background:#fff4d6;color:#6b4d00}.incomplete-features-dialog .if-status--pending_client{background:#ffe5d6;color:#7a3a00}.incomplete-features-dialog .if-status--new{background:#e0ecff;color:#1f3d75}.incomplete-features-dialog .if-status--on_hold{background:#e5e1f4;color:#3d2f6b}.incomplete-features-dialog .if-title{flex:1;font-size:14px}.incomplete-features-dialog .if-actions{display:flex;justify-content:flex-end;gap:8px}.board-add-feature-dialog{border:none;border-radius:8px;padding:0;max-width:460px;width:90vw;box-shadow:0 12px 32px rgba(0,0,0,.2)}.board-add-feature-dialog::backdrop{background:rgba(0,0,0,.4)}.baf-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid #e0e4e8}.baf-header h3{margin:0;font-size:1em;font-weight:700}.baf-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#646970;padding:2px 6px;border-radius:4px}.baf-close:hover{background:#f0f2f4;color:#1d2327}.baf-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.baf-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500;color:#1d2327}.baf-field input[type=text]{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid #ccd0d4;border-radius:5px;font-size:13px;color:#1d2327;background:#fff;transition:border-color .15s}.baf-field input[type=text]:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.baf-no-projects-msg{margin:0;font-size:12px;color:#646970;font-style:italic}.baf-new-project-toggle,.baf-use-existing-toggle{background:none;border:none;padding:0;font-size:12px;color:#2271b1;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:2px}.baf-new-project-toggle:hover,.baf-use-existing-toggle:hover{color:#135e96}.baf-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid #e0e4e8}.bb-notif-bell{position:relative;display:flex;align-items:center;margin-right:2px}.bb-notif-toggle{position:relative;padding:8px 10px}.bb-notif-toggle.has-unread .nav-icon{color:#2271b1}.bb-notif-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#d63638;color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;pointer-events:none}.bb-notif-badge[hidden]{display:none}.bb-notif-overlay{position:absolute;top:calc(100% + 6px);right:0;z-index:300;width:340px;max-width:calc(100vw - 16px);background:#fff;border:1px solid #dde0e4;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.14);display:flex;flex-direction:column;max-height:480px;overflow:hidden}.bb-notif-overlay[hidden]{display:none}.bb-notif-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e8eaec;flex-shrink:0}.bb-notif-title{font-size:13px;font-weight:600;color:#1d2327}.bb-notif-mark-all{background:none;border:none;color:#2271b1;font-size:12px;cursor:pointer;padding:2px 4px;border-radius:3px}.bb-notif-mark-all:hover{background:#f0f6ff}.bb-notif-list{overflow-y:auto;flex:1}.bb-notif-empty{padding:24px 16px;text-align:center;color:#646970;font-size:13px}.bb-notif-item{padding:10px 14px;border-bottom:1px solid #f0f2f4;cursor:pointer;transition:background .1s}.bb-notif-item:last-child{border-bottom:none}.bb-notif-item:hover{background:#f8f9fa}.bb-notif-item.is-unread{background:#f0f6ff}.bb-notif-item.is-unread:hover{background:#e6f0fa}.bb-notif-item-feature{font-size:12px;font-weight:600;color:#1d2327;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-notif-item-project{color:#646970;font-weight:400}.bb-notif-item-message{font-size:12px;color:#3c434a;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bb-notif-item-time{font-size:11px;color:#8c9197}.rc-wrap{padding:16px 0;max-width:860px}.rc-upload{display:flex;align-items:center;gap:10px;margin-bottom:24px;flex-wrap:wrap}.rc-upload-label{font-weight:600;font-size:.875rem;white-space:nowrap}.rc-csv-input{font-size:.875rem}.rc-upload-feedback{font-size:.875rem;color:#555}.rc-section{margin-bottom:32px}.rc-section-heading{font-size:1rem;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.rc-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#d63638;color:#fff;font-size:.75rem;font-weight:700;line-height:1}.rc-empty{color:#888;font-size:.875rem}.rc-transactions{display:flex;flex-direction:column;gap:12px}.rc-transaction{border:1px solid #ddd;border-radius:6px;padding:14px 16px;background:#fff}.rc-transaction-meta{display:flex;align-items:center;gap:10px;margin-bottom:6px}.rc-date{font-size:.8125rem;color:#666}.rc-type{font-size:.75rem;font-weight:600;padding:1px 6px;border-radius:3px;background:#f0f0f1;color:#555;letter-spacing:.02em}.rc-amount{font-weight:600;font-size:.9375rem;margin-left:auto}.rc-amount--credit{color:#1a7f37}.rc-amount--debit{color:#d63638}.rc-payer{font-size:.9rem;font-weight:500;margin-bottom:3px}.rc-ref{font-size:.8125rem;color:#666;margin-bottom:8px;font-style:italic}.rc-assign{margin:10px 0}.rc-client-select{width:100%;max-width:340px;padding:5px 8px;font-size:.875rem;border:1px solid #ccc;border-radius:4px;margin-bottom:8px}.rc-invoices{display:flex;flex-direction:column;gap:5px;margin-top:8px}.rc-invoice-check{display:flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer}.rc-invoice-check input[type=checkbox]{margin:0;cursor:pointer}.rc-no-invoices,.rc-loading-inline{font-size:.8125rem;color:#888}.rc-actions{display:flex;gap:8px;margin-top:10px}.rc-recent-list{display:flex;flex-direction:column;gap:4px}.rc-recent-item{display:flex;align-items:baseline;gap:10px;padding:7px 12px;background:#f9f9f9;border-radius:4px;font-size:.875rem;flex-wrap:wrap}.rc-status{font-size:.75rem;font-weight:600;padding:1px 7px;border-radius:10px}.rc-status--auto_matched{background:#d7eddf;color:#1a7f37}.rc-status--manually_matched{background:#dde9f8;color:#1d5aa3}.rc-projects{color:#666;font-size:.8125rem}.rc-refs{display:inline-flex;flex-wrap:wrap;gap:4px}.rc-ref-badge{font-size:.75rem;font-family:monospace;padding:1px 7px;border-radius:3px;background:#f0f0f1;color:#555;letter-spacing:.02em}.rc-loading,.rc-error{padding:24px 0;color:#888;font-size:.875rem}.rc-error{color:#d63638}.rc-import-summary{display:inline-flex;gap:8px;margin-left:10px;font-size:.8125rem;font-weight:400}.rc-import-count{padding:2px 8px;border-radius:10px}.rc-import-count--matched{background:#d7eddf;color:#1a7f37}.rc-import-count--unmatched{background:#fff3cd;color:#856404}.rc-import-count--duplicate{background:#e9ecef;color:#555}.rc-import-rows{display:flex;flex-direction:column;gap:4px;margin-top:8px}.rc-import-row{display:grid;grid-template-columns:80px 80px 1fr auto;align-items:center;gap:12px;padding:6px 10px;border-radius:5px;font-size:.8125rem;background:#f9fafb}.rc-import-row--matched{background:#f0fbf4}.rc-import-row--unmatched{background:#fffbf0}.rc-import-row--duplicate{opacity:.55}.rc-import-status{font-size:.75rem;font-weight:500;padding:2px 7px;border-radius:10px;white-space:nowrap}.rc-import-status--matched{background:#d7eddf;color:#1a7f37}.rc-import-status--unmatched{background:#fff3cd;color:#856404}.rc-import-status--duplicate{background:#e9ecef;color:#555}.rc-import-count--error,.rc-import-status--error{background:#fde8e8;color:#c0392b}.rc-import-note{font-size:.75rem;color:#856404;font-style:italic}.rc-coding{margin:10px 0;display:flex;flex-direction:column;gap:8px}.rc-nominal-select{width:100%;max-width:340px;padding:5px 8px;font-size:.875rem;border:1px solid #ccc;border-radius:4px}.rc-nominal-select:required:invalid{border-color:#d63638}.rc-coding-extra{display:flex;gap:8px;flex-wrap:wrap}.rc-coding-extra input{padding:5px 8px;font-size:.875rem;border:1px solid #ccc;border-radius:4px}.rc-coding-extra input:required:invalid{border-color:#d63638}.rc-coding-extra .rc-supplier-date{width:160px}.rc-coding-extra .rc-supplier-ref{width:200px}.rc-vat-rates{display:flex;gap:4px;flex-wrap:wrap;width:100%}.rc-vat-rate-btn{padding:3px 10px;font-size:.8125rem;border:1px solid #ccc;border-radius:3px;background:#f9f9f9;cursor:pointer;color:#444}.rc-vat-rate-btn:hover{background:#f0f0f1}.rc-vat-rate-btn--active{background:#1d5aa3;border-color:#1d5aa3;color:#fff}.rc-vat-rate-btn--active:hover{background:#194e8d}.rc-vat-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.875rem}.rc-vat-row label{display:flex;align-items:center;gap:6px}.rc-vat-row input[type=number]{width:90px;padding:5px 8px;border:1px solid #ccc;border-radius:4px;font-size:.875rem}.rc-vat-rate{font-size:.8125rem;color:#666;min-width:40px}.rc-vat-warning{font-size:.8125rem;font-weight:600;color:#d63638}.rc-vat-warning[hidden]{display:none}.rc-reverse-charge-note{font-size:.8125rem;color:#1a7f37}.rc-reverse-charge-note .rc-rc-vat{font-weight:600}.rc-reverse-charge-note[hidden]{display:none}.rc-nominal-badge{font-size:.75rem;font-weight:600;font-family:monospace;padding:1px 7px;border-radius:3px;background:#f0f0f1;color:#1d5aa3;letter-spacing:.04em}.rc-rc-badge{font-size:.6875rem;font-weight:700;padding:1px 6px;border-radius:3px;background:#e7f3ea;color:#1a7f37;letter-spacing:.04em}.rc-installment-progress{font-size:.8125rem;color:#1a7f37;font-style:italic}.rc-recent-count{font-size:.8125rem;font-weight:400;color:#888}.rc-load-more-wrap{margin-top:10px;text-align:center}.pe-wrap{padding:16px 0;max-width:720px}.pe-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.pe-heading{font-size:1.125rem;font-weight:600;margin:0}.pe-loading,.pe-error,.pe-empty{padding:24px 0;color:#888;font-size:.875rem}.pe-error{color:#d63638}.pe-list{display:flex;flex-direction:column;gap:10px}.pe-card{border:1px solid #ddd;border-radius:6px;padding:14px 16px;background:#fff}.pe-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.pe-card-name{font-weight:600;font-size:.95rem}.pe-card-amount{font-weight:600;font-size:.95rem;white-space:nowrap}.pe-card-meta{font-size:.8125rem;color:#666;margin-top:3px}.pe-dot{margin:0 6px;color:#ccc}.pe-card-desc{font-size:.875rem;color:#444;margin-top:7px}.pe-card-facts{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:9px;font-size:.8125rem;color:#555}.pe-code-badge{font-family:monospace;font-size:.75rem;font-weight:600;padding:1px 6px;border-radius:3px;background:#f0f0f1;color:#1d5aa3;letter-spacing:.04em}.pe-card-actions{display:flex;gap:8px;margin-top:12px}.pe-summary{margin-top:14px;font-size:.8125rem;color:#666}.pe-summary-sep{margin:0 4px;color:#ccc}.pe-btn{padding:4px 12px;font-size:.8125rem;border:1px solid #ccc;border-radius:3px;background:#f9f9f9;color:#444;cursor:pointer}.pe-btn:hover{background:#f0f0f1}.pe-btn:disabled{opacity:.6;cursor:default}.pe-btn--primary{background:#1d5aa3;border-color:#1d5aa3;color:#fff}.pe-btn--primary:hover{background:#194e8d}.pe-btn--danger:hover{background:#fde8e8;border-color:#d63638;color:#c0392b}.pe-edit-card{border-color:#1d5aa3;background:#f8fafd}.pe-edit-title{font-weight:600;font-size:.95rem;margin-bottom:12px}.pe-edit-fields{display:flex;flex-wrap:wrap;gap:12px}.pe-field{display:flex;flex-direction:column;gap:4px;flex:1 1 150px}.pe-field span{font-size:.75rem;font-weight:600;color:#555}.pe-field--full{flex-basis:100%}.pe-input{width:100%;padding:6px 8px;font-size:.875rem;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.pe-edit-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}.pe-business-preview{font-size:.8125rem;color:#555}.pe-business-preview .pe-f-business{color:#1a7f37}.pe-edit-actions{display:flex;gap:8px}.pe-feedback{margin-top:10px;min-height:1.2em;font-size:.875rem;color:#d63638}.vat-return-wrap{width:100%}.vr-wrap{max-width:760px}.vr-loading,.vr-empty,.vr-error{padding:24px;color:#666;font-size:.9375rem}.vr-error{color:#d63638}.vr-header{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:16px}.vr-title{margin:0;font-size:1.25rem}.vr-period{font-size:.875rem;color:#888}.vr-table{width:100%;margin:0;border-collapse:collapse;font-size:.9375rem;background:rgba(0,0,0,0)}.vr-table th,.vr-table td{padding:10px 12px;text-align:right;vertical-align:middle;background:none;border:0;border-bottom:1px solid #eee}.vr-table tbody tr:nth-child(odd),.vr-table tbody tr:nth-child(even){background:rgba(0,0,0,0)}.vr-table thead th{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#888;background:none;border-bottom:2px solid #e0e0e0}.vr-table thead th:first-child{text-align:left}.vr-table tbody th{text-align:left;font-weight:600}.vr-table .vr-box-id{display:block}.vr-table .vr-box-desc{display:block;font-weight:400;font-size:.75rem;color:#999}.vr-table .vr-calc{font-variant-numeric:tabular-nums;color:#444}.vr-table .vr-row--total{font-weight:700}.vr-table .vr-row--total th,.vr-table .vr-row--total td{background:#fafafa;border-top:2px solid #e0e0e0;border-bottom:2px solid #e0e0e0}.vr-filed-input{width:110px;padding:5px 8px;border:1px solid #ccc;border-radius:4px;font-size:.9375rem;text-align:right;font-variant-numeric:tabular-nums}.vr-filed-box5{font-variant-numeric:tabular-nums}.vr-adj{font-variant-numeric:tabular-nums;color:#999}.vr-adj--pos{color:#b54708}.vr-adj--neg{color:#1a7f37}.vr-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.vr-cumulative{font-size:.875rem;color:#555}.vr-cumulative .vr-cum-val{font-variant-numeric:tabular-nums}.vr-save-feedback{font-size:.875rem;color:#1a7f37}.vr-note{font-size:.8125rem;color:#888;margin:4px 0 20px}.vr-detail{border:1px solid #e0e0e0;border-radius:6px;margin-bottom:12px}.vr-detail summary{cursor:pointer;padding:10px 14px;font-weight:600;font-size:.9375rem;list-style:none}.vr-detail summary::-webkit-details-marker{display:none}.vr-detail summary::before{content:"▸ ";color:#888}.vr-detail[open] summary::before{content:"▾ "}.vr-detail-count{display:inline-block;min-width:18px;padding:0 6px;margin-left:4px;font-size:.75rem;font-weight:600;color:#1d5aa3;background:#f0f0f1;border-radius:10px;text-align:center}.vr-detail-table{width:100%;margin:0;border-collapse:collapse;font-size:.875rem;background:rgba(0,0,0,0)}.vr-detail-table th,.vr-detail-table td{padding:7px 14px;text-align:left;vertical-align:middle;background:none;border:0;border-top:1px solid #f0f0f0}.vr-detail-table tbody tr:nth-child(odd),.vr-detail-table tbody tr:nth-child(even){background:rgba(0,0,0,0)}.vr-detail-table thead th{font-size:.6875rem;border-top:0;text-transform:uppercase;letter-spacing:.04em;color:#999}.vr-detail-table .vr-num{text-align:right;font-variant-numeric:tabular-nums}.vr-detail-table tfoot th,.vr-detail-table tfoot td{font-weight:700;border-top:2px solid #e0e0e0}.vr-detail-table .vr-detail-empty{color:#999;font-style:italic}.vr-rc-badge{font-size:.625rem;font-weight:700;padding:1px 5px;border-radius:3px;background:#e7f3ea;color:#1a7f37;letter-spacing:.04em}.bb-session-dialog{border:0;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.3);max-width:420px;width:calc(100% - 48px);padding:28px 28px 24px;color:#1f2430}.bb-session-dialog::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}.bb-session-title{margin:0 0 10px;font-size:19px;font-weight:600;text-align:center}.bb-session-msg{margin:0 0 22px;font-size:14px;line-height:1.55;color:#5a6172;text-align:center}.bb-session-actions{display:flex;justify-content:center}.bb-session-btn{display:inline-block;padding:10px 26px;border:0;border-radius:7px;background:#2c6ecb;color:#fff;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer}.bb-session-btn:hover{background:#2560b3}
