:root{--gray-50:#f8f8f8;--gray-100:#f3f3f3;--gray-200:#ededed;--gray-300:#e2e2e2;--gray-400:#c7c7c7;--gray-500:#999;--gray-600:#7c7c7c;--gray-700:#525252;--gray-800:#383838;--gray-900:#171717;--red-400:#eb9091;--text-color:var(--gray-800);--text-muted:var(--gray-700);--text-light:var(--gray-600);--heading-color:var(--gray-900);--border-color:var(--gray-200);--dark-border-color:var(--gray-300);--control-bg:var(--gray-100);--subtle-fg:var(--gray-100);--highlight-color:var(--gray-50);--sidebar-select-color:var(--gray-100);--disabled-text-color:var(--gray-600);--disabled-control-bg:var(--gray-50);--navbar-height:48px;--page-head-height:56px;--brand-color:#2490ef;--border-radius:8px;--border-radius-md:10px;--border-radius-lg:12px;--shadow-sm:0px 1px 2px #0000001a;--shadow-base:0px 0px 1px #00000073, 0px 1px 2px #0000001a;--shadow-2xl:0px 0px 1px #0003, 0px 1px 3px #0000000d, 0px 10px 24px -3px #0000001a;--right-arrow-svg:url("data:image/svg+xml;utf8,<svg width='6' height='8' viewBox='0 0 6 8' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M1.25 7.5L4.75 4L1.25 0.5' stroke='%231F272E' stroke-linecap='round' stroke-linejoin='round'/></svg>")}html,body{color:var(--text-color);letter-spacing:.02em;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01";background:#fff;margin:0;font-family:InterVariable,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}::selection{color:#000;background:var(--gray-300)}a{color:var(--text-color)}.desk{background:#fff;min-height:100vh;display:flex}.app-logo{background:var(--brand-color);color:#fff;letter-spacing:0;border-radius:8px;place-items:center;width:28px;height:28px;font-size:15px;font-weight:700;display:grid}.app-rail{box-sizing:border-box;z-index:30;background:var(--gray-50);border-right:1px solid var(--border-color);flex-direction:column;flex:none;align-items:center;width:60px;height:100vh;padding:12px 0;display:flex;position:sticky;top:0}.rail-logo{cursor:pointer;display:flex}.rail-logo .app-logo{border-radius:9px;width:34px;height:34px;font-size:17px}.rail-divider{border-top:1px solid var(--gray-300);width:28px;margin:14px 0 10px}.rail-apps{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;overflow-y:auto}.rail-item{width:38px;height:38px;color:var(--gray-600);cursor:pointer;border-radius:10px;place-items:center;font-size:18px;transition:background .1s;display:grid}.rail-item:hover{background:var(--gray-200);color:var(--gray-800)}.rail-item.active{background:var(--gray-200);color:var(--gray-900)}.rail-avatar{cursor:pointer;margin-top:10px;display:flex}.body-sidebar{box-sizing:border-box;z-index:25;background:var(--gray-50);border-right:1px solid var(--border-color);flex-direction:column;flex:none;width:248px;height:100vh;display:flex;position:sticky;top:0}.body-sidebar-top{box-sizing:border-box;flex:none;align-items:center;gap:4px;height:56px;padding:0 10px;display:flex}.workspace-switch{border-radius:var(--border-radius);cursor:pointer;flex:1;align-items:center;gap:8px;min-width:0;padding:5px 8px;display:flex}.workspace-switch:hover{background:var(--gray-200)}.workspace-switch-label{color:var(--heading-color);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.workspace-switch-caret{color:var(--text-light);margin-left:auto;font-size:10px}.sidebar-collapse{cursor:pointer;color:var(--gray-600);border-radius:6px;padding:6px;display:flex}.sidebar-collapse:hover{background:var(--gray-200);color:var(--gray-800)}.body-sidebar-items{flex:1;padding:2px 10px 24px;overflow-y:auto}.sidebar-item{box-sizing:border-box;border-radius:var(--border-radius);height:32px;color:var(--gray-800);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;align-items:center;gap:10px;margin-bottom:1px;padding:0 8px;font-size:14px;display:flex}.sidebar-item:hover{background:var(--gray-200)}.sidebar-item.active{border-color:var(--border-color);color:var(--gray-900);background:#fff;box-shadow:0 1px 2px #0000000f}.sidebar-item-icon{width:16px;color:var(--gray-700);flex:none;justify-content:center;font-size:15px;display:flex}.sidebar-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-chevron{color:var(--gray-500);font-size:10px;transition:transform .15s}.sidebar-chevron.open{transform:rotate(90deg)}.sidebar-group-items{margin-bottom:4px;padding-left:16px}.sidebar-kbd{color:var(--gray-500);font-size:11px}.sidebar-gap{height:10px}.desk-main{flex:1;min-width:0}.page-head{z-index:20;height:var(--page-head-height);box-sizing:border-box;border-bottom:1px solid var(--border-color);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:0 20px 0 24px;display:flex;position:sticky;top:0}.page-title{align-items:center;gap:8px;min-width:0;display:flex}.sidebar-toggle-btn{cursor:pointer;color:var(--gray-700);border-radius:6px;margin-right:2px;padding:6px;display:flex}.sidebar-toggle-btn:hover{background:var(--gray-100)}.title-parent{color:var(--gray-600);white-space:nowrap;letter-spacing:.01em;font-size:18px;text-decoration:none}.title-parent:hover{color:var(--gray-800)}.title-sep{color:var(--gray-400);font-size:18px}.title-text{letter-spacing:.01em;color:var(--heading-color);text-overflow:ellipsis;white-space:nowrap;max-width:36vw;margin:0 4px 0 0;font-size:18px;font-weight:600;line-height:1.3;overflow:hidden}.page-actions{flex:none;align-items:center;gap:8px;display:flex}.updown-icon{vertical-align:-1px;color:var(--gray-600);margin-left:2px}.ant-btn-primary .updown-icon{color:#fffc}.page-body{min-height:calc(100vh - var(--page-head-height));align-items:stretch;display:flex}.page-main{flex:1;min-width:0}.page-main-content{box-sizing:border-box;padding:20px 24px 60px}body:not(.full-width) .page-main:not(.flush) .page-main-content{max-width:1290px;margin:0 auto}.page-main.flush .page-main-content{padding:0}.page-main>.form-message{border-radius:0;margin:0;padding:10px 30px;font-size:14px}.page-sidebar{border-left:1px solid var(--border-color);box-sizing:border-box;width:290px;top:var(--page-head-height);height:calc(100vh - var(--page-head-height));flex:none;align-self:flex-start;position:sticky;overflow-y:auto}@media (width<=1199px){.page-sidebar{width:250px}.body-sidebar{width:220px}}@media (width<=991px){.page-sidebar,.body-sidebar,.title-parent,.title-sep{display:none}}.search-dialog .ant-modal-container,.search-dialog .ant-modal-body{padding:0!important}.search-dialog .ant-modal-content{overflow:hidden;border-radius:var(--border-radius-lg)!important;padding:0!important}.search-dialog-input{height:50px;color:var(--gray-600);align-items:center;gap:10px;padding:0 16px;font-size:16px;display:flex}.search-dialog-input input{font:inherit;color:var(--text-color);background:0 0;border:none;outline:none;flex:1;font-size:15px}.search-dialog-input input::placeholder{color:var(--gray-500)}.search-dialog .awesomplete-list{border-top:1px solid var(--border-color);max-height:420px;padding:6px;overflow:auto}.awesomplete-list .item{border-radius:var(--border-radius);cursor:pointer;align-items:center;gap:8px;padding:8px 10px;font-size:14px;display:flex}.awesomplete-list .item.active{background:var(--control-bg)}.awesomplete-list .item .kind{color:var(--text-light);margin-left:auto;font-size:12px}.awesomplete-list .empty{color:var(--text-light);padding:10px;font-size:13px}.avatar{letter-spacing:0;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:12px;font-weight:500;line-height:1;display:inline-grid}.form-tabs-list{border-bottom:1px solid var(--border-color);top:var(--page-head-height);z-index:15;background:#fff;padding:0 15px;display:flex;position:sticky;overflow-x:auto}.form-tabs-list .nav-link{cursor:pointer;color:var(--gray-600);white-space:nowrap;letter-spacing:.01em;border-bottom:1px solid #0000;margin:0 15px -1px;padding:13px 0 12px;font-size:14px}.form-tabs-list .nav-link:hover{color:var(--gray-800)}.form-tabs-list .nav-link.active{color:var(--gray-900);border-bottom-color:var(--gray-900);font-weight:500}.form-layout{background:#fff}.form-section{border-bottom:1px solid var(--border-color);padding:22px 30px 8px}.form-section.collapsed{padding-bottom:22px}.form-section .section-head{letter-spacing:.01em;color:var(--heading-color);align-items:center;gap:8px;margin:0 0 18px;font-size:15px;font-weight:600;display:flex}.form-section.collapsible .section-head{cursor:pointer;-webkit-user-select:none;user-select:none;width:fit-content}.form-section.collapsed .section-head{margin-bottom:0}.collapse-indicator{color:var(--gray-600);font-size:11px;transition:transform .15s}.collapse-indicator.open{transform:rotate(90deg)}.frappe-control{margin-bottom:18px;font-size:14px}.control-label{color:var(--gray-700);letter-spacing:.01em;margin-bottom:7px;font-size:13px;line-height:1.3;display:block}.control-label.reqd:after{content:" *";color:var(--red-400);white-space:nowrap}.checkbox-control{cursor:pointer;color:var(--text-color);align-items:center;gap:10px;min-height:20px;font-size:14px;display:flex}.help-box{color:var(--text-light);margin-top:5px;font-size:12px;line-height:1.4}.like-disabled-input{border-radius:var(--border-radius);box-sizing:border-box;cursor:default;min-height:30px;color:var(--disabled-text-color);background:var(--disabled-control-bg);overflow-wrap:anywhere;align-items:center;padding:4px 10px;font-size:14px;display:flex}.like-disabled-input.text-right{font-variant-numeric:tabular-nums;justify-content:flex-end}.form-message{border-radius:var(--border-radius);margin:0 0 10px;padding:8px 12px;font-size:13px}.form-message.blue{color:#0070cc;background:#edf6fd}.form-message.yellow{color:#ab6e05;background:#fffcef}.form-message.red{color:#cc2929;background:#fff0f0}.form-sidebar{font-size:14px}.form-sidebar-head{border-bottom:1px solid var(--border-color);padding:18px 20px 16px}.form-sidebar-title-row{align-items:center;gap:6px;display:flex}.form-sidebar-title{min-width:0;color:var(--heading-color);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:600;overflow:hidden}.form-sidebar-icon{cursor:pointer;color:var(--gray-700);border-radius:6px;padding:5px;font-size:15px;display:flex}.form-sidebar-icon:hover{background:var(--gray-100);color:var(--gray-900)}.form-sidebar-name{color:var(--gray-700);overflow-wrap:anywhere;margin-top:8px;font-size:14px}.form-sidebar-section{border-bottom:1px solid var(--border-color);padding:10px 20px}.form-sidebar-item{padding:6px 0}.form-sidebar-item-head{color:var(--gray-700);align-items:center;gap:10px;display:flex}.form-sidebar-item-icon{color:var(--gray-600);font-size:15px;display:flex}.form-sidebar-item-label{flex:1}.form-sidebar-add{cursor:pointer;color:var(--gray-600);border-radius:6px;padding:4px;font-size:13px;display:flex}.form-sidebar-add:hover{background:var(--gray-100);color:var(--gray-900)}.form-sidebar-entry{align-items:center;gap:8px;padding:5px 0 1px 25px;font-size:13px;display:flex}.form-sidebar-entry-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-color);flex:1;overflow:hidden}a.form-sidebar-entry-label:hover{text-decoration:underline}.form-sidebar-remove{color:var(--gray-500);cursor:pointer;visibility:hidden;font-size:10px}.form-sidebar-entry:hover .form-sidebar-remove{visibility:visible}.form-sidebar-tags{flex-wrap:wrap;gap:6px;padding:6px 0 0 25px;display:flex}.form-tag{background:var(--gray-100);color:var(--gray-800);border-radius:6px;align-items:center;gap:6px;padding:2px 8px;font-size:12px;display:inline-flex}.form-tag .anticon{color:var(--gray-500);cursor:pointer;font-size:9px}.form-sidebar-stats{color:var(--gray-600);border-bottom:none;flex-direction:column;gap:10px;padding:16px 20px;font-size:13px;line-height:1.5;display:flex}.form-footer{padding:26px 30px 80px}.timeline-section{margin-bottom:30px}.timeline-head{letter-spacing:.01em;color:var(--heading-color);margin:0 0 16px;font-size:16px;font-weight:600}.comment-box{align-items:flex-start;gap:12px;display:flex}.comment-input{flex:1;min-width:0}.timeline-items{border-left:1px solid var(--border-color);margin-left:13px;padding-left:22px;position:relative}.timeline-item{margin-bottom:18px;position:relative}.timeline-item.card:before{content:"";background:var(--gray-300);border-radius:50%;width:8px;height:8px;position:absolute;top:15px;left:-26px;box-shadow:0 0 0 3px #fff}.timeline-activity{color:var(--gray-700);font-size:13px;line-height:1.6}.timeline-dot{background:var(--gray-300);border-radius:50%;width:8px;height:8px;position:absolute;top:7px;left:-26px;box-shadow:0 0 0 3px #fff}.timeline-who{color:var(--gray-900);font-weight:500}.timeline-time{color:var(--gray-600)}.timeline-activity b{color:var(--gray-800);font-weight:500}.timeline-comment{border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:#fff;max-width:760px;padding:10px 14px}.timeline-comment-head{align-items:center;gap:8px;font-size:13px;display:flex}.timeline-comment-body{white-space:pre-wrap;color:var(--text-color);overflow-wrap:anywhere;margin-top:8px;font-size:14px}.timeline-remove{color:var(--gray-500);cursor:pointer;margin-left:auto}.timeline-remove:hover{color:var(--gray-800)}.page-form{border-bottom:1px solid var(--border-color);background:#fff;flex-wrap:wrap;align-items:center;margin:0;padding:5px;display:flex}.page-form .form-group{flex:0 180px;min-width:150px;margin:5px 0;padding:0 5px}.page-form .filter-section{align-items:center;gap:5px;margin-left:auto;padding:0 5px;display:flex}.frappe-list .result{padding:0}.list-row-container{outline:none;flex-direction:column;padding:0 5px;display:flex}.list-row{cursor:pointer;border-radius:var(--border-radius-md);box-sizing:border-box;align-items:center;height:40px;padding:0 15px 0 0;font-size:14px;display:flex}.list-row:hover:not(.list-row-head){background:var(--highlight-color)}.list-row-border{border-bottom:1px solid var(--border-color);margin:0 10px}.list-row-container:last-child .list-row-border{display:none}.list-row-head{cursor:default;background:var(--subtle-fg);height:30px;color:var(--text-muted);margin:.5rem 5px;font-size:13px}.list-row-head .list-row-col,.list-row-head .list-subject{color:var(--text-muted);font-weight:400}.list-row .list-check{flex:none;align-items:center;width:14px;margin-right:15px;padding-left:11px;display:flex}.list-row-col{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text-muted);flex:1;margin-right:15px;overflow:hidden}.list-row-col.text-right{text-align:right}.list-subject{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text-color);flex:1.3;margin-right:15px;overflow:hidden}.list-subject .bold{color:var(--text-color);font-weight:500}.list-row-activity{text-align:right;width:70px;color:var(--text-light);white-space:nowrap;flex:none;font-size:12px}.list-count{color:var(--text-light);text-align:right;flex:none;width:70px;font-size:12px}.list-paging-area{border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:15px;display:flex}.btn-group{border:1px solid var(--border-color);border-radius:var(--border-radius);display:inline-flex;overflow:hidden}.btn-group .btn-paging{background:var(--gray-50);font:inherit;color:var(--text-color);cursor:pointer;border:none;height:26px;padding:4px 10px;font-size:13px}.btn-group .btn-paging+.btn-paging{border-left:1px solid var(--border-color)}.btn-group .btn-paging.active{background:#fff;font-weight:500}.no-result{text-align:center;color:var(--text-light);padding:60px 15px;font-size:13px}.no-result .no-result-title{color:var(--text-color);margin:10px 0;font-size:14px}.form-grid{border:1px solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-color);overflow:hidden}.form-grid .ant-table{border-radius:0}.form-grid .ant-table-thead>tr>th{height:32px;font-size:13px;background:var(--subtle-fg)!important;color:var(--gray-600)!important;border-bottom:1px solid var(--border-color)!important;padding:6px 8px!important;font-weight:400!important}.form-grid .ant-table-thead>tr>th:not(:last-child){border-right:1px solid var(--border-color)}.form-grid .ant-table-tbody>tr>td{height:38px;border-bottom:1px solid var(--border-color)!important;padding:0!important}.form-grid .ant-table-tbody>tr>td:not(:last-child){border-right:1px solid var(--border-color)}.form-grid .ant-table-tbody>tr:last-child>td{border-bottom:none!important}.form-grid .ant-table-tbody>tr:hover>td{background:#fff!important}.form-grid .grid-row-index{color:var(--text-light);text-align:center;font-size:13px;padding:0 8px!important}.form-grid .ant-input,.form-grid .ant-input-number,.form-grid .ant-select-selector,.form-grid .ant-picker,.form-grid .ant-select,.form-grid .ant-input-outlined,.form-grid .ant-input-filled{box-shadow:none!important;background:0 0!important;border-color:#0000!important;border-radius:0!important}.form-grid .ant-input:focus,.form-grid .ant-input-focused,.form-grid .ant-select-focused .ant-select-selector,.form-grid .ant-input-number-focused{box-shadow:inset 0 0 0 1px var(--gray-400)!important;background:#fff!important}.form-grid .grid-static{align-items:center;height:38px;padding:0 8px;display:flex}.grid-footer{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.grid-empty{text-align:center;color:var(--text-light);padding:15px;font-size:13px}.workspace-page{padding:4px 0 0}.widget-group{margin-bottom:40px;font-size:14px}.widget-group-title{color:var(--heading-color);letter-spacing:.015em;margin-bottom:15px;font-size:16px;font-weight:600}.widget{border-radius:var(--border-radius-lg);box-sizing:border-box;background:#fff;flex-direction:column;height:100%;display:flex}.widget.border{border:1px solid var(--border-color)}.widget.shortcut-widget-box{cursor:pointer;flex-direction:row;justify-content:space-between;align-items:center;min-height:44px;padding:10px 14px}.widget.shortcut-widget-box:hover{box-shadow:var(--shadow-base)}.widget.shortcut-widget-box .widget-title{letter-spacing:.015em;color:var(--text-color);align-items:center;gap:6px;min-width:0;font-size:14px;font-weight:500;display:flex}.widget.shortcut-widget-box:hover .widget-title{color:#000}.widget.links-widget-box{padding:10px}.widget.links-widget-box .widget-title{letter-spacing:.015em;color:var(--text-color);align-items:center;font-size:16px;font-weight:600;display:flex}.widget.links-widget-box .widget-title .anticon{color:var(--gray-800);margin:2px 12px 2px 2px;font-size:16px}.link-item{color:var(--text-color);border-radius:var(--border-radius-md);cursor:pointer;align-items:center;margin-left:-4px;padding:4px;font-size:14px;display:flex}.link-item:first-of-type{margin-top:12px}.link-item:hover{color:#000}.link-item .link-content{flex:1}.widget.number-widget-box{cursor:pointer;border:1px solid var(--border-color);min-height:84px;padding:8px 8px 8px 12px}.number-widget-box .widget-title{color:var(--text-muted);justify-content:space-between;align-items:center;min-height:24px;font-size:13px;display:flex}.number-widget-box .number{color:var(--heading-color);letter-spacing:.01em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:20px;font-weight:600}.number-widget-box .card-stats{color:var(--text-light);margin-top:2px;font-size:12px}.widget.dashboard-widget-box{border:1px solid var(--border-color);padding:12px 15px}.widget.dashboard-widget-box .widget-title{color:var(--text-color);font-size:14px;font-weight:500}.grid-col-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.grid-col-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}@media (width<=991px){.grid-col-4,.grid-col-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=575px){.grid-col-4,.grid-col-3{grid-template-columns:1fr}}.report-wrapper .ant-table-thead>tr>th{font-size:13px;background:var(--gray-50)!important;color:var(--gray-600)!important;font-weight:400!important}.report-wrapper .ant-table-tbody>tr>td{font-size:13px}.report-total-row td{font-weight:600;background:var(--gray-50)!important}.ant-table-cell{vertical-align:middle}.ant-btn{box-shadow:none!important}.ant-btn-sm{font-size:12px}.ant-input-filled,.ant-select-filled .ant-select-selector,.ant-picker-filled,.ant-input-number-filled{border-color:#0000!important}.ant-select-filled:not(.ant-select-disabled):hover .ant-select-selector{background:var(--gray-200)!important}.ant-dropdown-menu{padding:4px!important}.ant-dropdown-menu-item{border-radius:6px!important;font-size:13px!important}.ant-checkbox-inner{border-radius:4px!important}.ant-modal-content{box-shadow:var(--shadow-2xl)!important}.ant-card{border-color:var(--border-color)}.login-page{background:var(--gray-50);box-sizing:border-box;flex-direction:column;align-items:center;min-height:100vh;padding-top:10vh;display:flex}.login-page .page-card-head{text-align:center;margin-bottom:20px}.login-page .page-card-head h4{color:var(--heading-color);margin:14px 0 0;font-size:20px;font-weight:600}.login-page .page-card{border-radius:var(--border-radius-lg);width:400px;max-width:calc(100vw - 30px);box-shadow:var(--shadow-sm), 0 0 0 1px var(--border-color);box-sizing:border-box;background:#fff;padding:30px}.login-page .forgot{text-align:center;color:var(--text-muted);margin-top:15px;font-size:13px;display:block}.form-layout .ant-input-disabled,.form-layout .ant-input-number-disabled,.form-layout .ant-picker-disabled,.form-layout .ant-select-disabled .ant-select-selector,.form-layout .ant-select-disabled.ant-select,.page-form .ant-select-disabled{background:var(--disabled-control-bg)!important;color:var(--disabled-text-color)!important;cursor:default!important;border-color:#0000!important}.form-layout .ant-input-disabled,.form-layout .ant-input-number-disabled input,.form-layout .ant-picker-disabled input,.form-layout .ant-select-disabled .ant-select-selection-item,.form-layout .ant-select-disabled .ant-select-content,.form-layout .ant-select-disabled input{-webkit-text-fill-color:var(--disabled-text-color);color:var(--disabled-text-color)!important;cursor:default!important}.form-layout .ant-select-disabled .ant-select-arrow,.form-layout .ant-select-disabled .ant-select-suffix,.form-layout .ant-picker-disabled .ant-picker-suffix,.form-layout .ant-input-number-disabled .ant-input-number-handler-wrap{display:none}.form-grid .ant-input-disabled,.form-grid .ant-input-number-disabled input,.form-grid .ant-picker-disabled input,.form-grid .ant-select-disabled .ant-select-selection-item,.form-grid .ant-select-disabled .ant-select-content{-webkit-text-fill-color:var(--text-color);color:var(--text-color)!important;background:0 0!important}.form-grid .ant-select-disabled,.form-grid .ant-picker-disabled,.form-grid .ant-input-number-disabled{background:0 0!important}.form-grid .ant-input-number-handler-wrap{display:none}.form-grid .ant-checkbox-wrapper{padding:0 8px}.form-layout textarea.ant-input{min-height:80px}.form-layout .ant-tabs-nav{margin-bottom:8px}.indicator-pill{letter-spacing:.02em;white-space:nowrap;box-sizing:border-box;vertical-align:middle;border-radius:999px;align-items:center;height:20px;padding:4.5px 8px;font-size:13px;font-weight:420;line-height:1;display:inline-flex}.indicator-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-right:6px;display:inline-block}.page-title .indicator-pill{margin-top:2px}.ant-checkbox{border-radius:4px!important}.ant-checkbox:not(.ant-checkbox-checked):not(.ant-checkbox-indeterminate){border-color:var(--gray-400)!important;background:#fff!important}.ant-checkbox-checked,.ant-checkbox-indeterminate{background:var(--gray-900)!important;border-color:var(--gray-900)!important}.ant-checkbox-disabled:not(.ant-checkbox-checked){background:var(--gray-50)!important;border-color:var(--gray-300)!important}.ant-checkbox-disabled.ant-checkbox-checked{background:var(--gray-500)!important;border-color:var(--gray-500)!important}.form-grid .ant-table-thead>tr>th{white-space:nowrap}.form-layout .form-grid .ant-select-disabled.ant-select,.form-layout .form-grid .ant-select-disabled .ant-select-selector,.form-layout .form-grid .ant-input-disabled,.form-layout .form-grid .ant-input-number-disabled,.form-layout .form-grid .ant-picker-disabled{background:0 0!important}.form-layout .form-grid .ant-input-disabled,.form-layout .form-grid .ant-input-number-disabled input,.form-layout .form-grid .ant-select-disabled .ant-select-selection-item,.form-layout .form-grid .ant-select-disabled .ant-select-content,.form-layout .form-grid .ant-picker-disabled input{-webkit-text-fill-color:var(--text-color);color:var(--text-color)!important}.form-grid .ant-table-thead>tr>th.grid-row-check,.form-grid .ant-table-tbody>tr>td.grid-row-check{text-align:center;padding:0!important}.form-grid .grid-reqd{color:var(--red-400)}.form-grid .grid-cell{align-items:center;min-height:38px;display:flex}.form-grid .grid-cell>*{flex:1;min-width:0}.form-grid .grid-title.grid-link .ant-select-content,.form-grid .grid-title.grid-link .ant-select-selection-item,.form-layout .form-grid .grid-title.grid-link .ant-select-disabled .ant-select-content,.form-layout .form-grid .grid-title.grid-link .ant-select-disabled .ant-select-selection-item{-webkit-text-fill-color:var(--gray-900);color:var(--gray-900)!important;font-weight:600!important}.form-grid .ant-table-tbody>tr:hover>td.ant-table-cell-row-hover,.form-grid .ant-table-tbody>tr.ant-table-row-selected>td{background:#fff!important}.grid-footer{justify-content:flex-start;align-items:center;gap:8px;margin-top:10px;display:flex}.form-layout .ant-input:not(.ant-input-disabled),.form-layout .ant-input-number:not(.ant-input-number-disabled) input,.form-layout .ant-picker:not(.ant-picker-disabled) input,.form-layout .ant-select:not(.ant-select-disabled) .ant-select-content,.form-layout .ant-select:not(.ant-select-disabled) .ant-select-selection-item{color:var(--gray-900);font-weight:500}.form-layout textarea.ant-input:not(.ant-input-disabled){font-weight:400}.form-layout .frappe-control[data-fieldtype=link] .ant-select-disabled .ant-select-content,.form-layout .frappe-control[data-fieldtype=link] .ant-select-disabled .ant-select-selection-item{-webkit-text-fill-color:var(--gray-900);font-weight:500;color:var(--gray-900)!important}.page-form .ant-select.placeholder-select .ant-select-content,.page-form .ant-select.placeholder-select .ant-select-selection-item{color:var(--gray-500)}.sort-selector{align-items:center;display:inline-flex}.sort-selector .btn-order{border-top-right-radius:0;border-bottom-right-radius:0}.sort-selector .ant-select{min-width:132px;margin-left:1px;border-top-left-radius:0!important;border-bottom-left-radius:0!important}.sort-selector .ant-select .ant-select-content,.sort-selector .ant-select .ant-select-selection-item{font-size:13px}.list-row.selected{background:var(--gray-50)}.frappe-list{border-radius:var(--border-radius-lg)}.ledger-table .ant-table-thead>tr>th{font-size:13px;background:var(--gray-50)!important;color:var(--gray-600)!important;font-weight:400!important}.project-progress{align-items:center;gap:12px;margin-bottom:18px;font-size:13px;display:flex}.project-progress-label{color:var(--gray-700);width:64px}.project-progress-track{background:#d6e4f7;border-radius:999px;flex:1;max-width:520px;height:8px;overflow:hidden}.project-progress-fill{background:#2a78d6;border-radius:999px;height:100%}.project-progress-value{color:var(--heading-color);font-variant-numeric:tabular-nums;font-weight:600}.project-progress-tasks{color:var(--text-light)}.project-stats{margin-bottom:18px}.project-warnings{flex-wrap:wrap;gap:10px 28px;margin-bottom:18px;display:flex}.project-warning{color:var(--gray-800);align-items:center;font-size:14px;display:flex}.project-warning .indicator-dot{width:8px;height:8px;margin-right:8px}.connections{flex-wrap:wrap;gap:12px 24px;margin-bottom:18px;display:flex}.connection{align-items:center;gap:6px;display:inline-flex}.connection-link{background:var(--gray-100);border-radius:var(--border-radius);cursor:pointer;align-items:center;gap:10px;padding:5px 12px 5px 6px;font-size:14px;display:inline-flex}.connection-link:hover{background:var(--gray-200)}.connection-count{box-sizing:border-box;min-width:22px;height:22px;color:var(--gray-700);font-variant-numeric:tabular-nums;background:#fff;border-radius:6px;place-items:center;padding:0 4px;font-size:12px;display:inline-grid}.connection>.connection-link:only-child{padding-left:12px}.connection-add{border-radius:var(--border-radius);background:var(--gray-100);cursor:pointer;width:30px;height:30px;color:var(--gray-700);place-items:center;font-size:12px;display:inline-grid}.connection-add:hover{background:var(--gray-200)}.project-tasks-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.project-task-table table{border-collapse:collapse;width:100%;font-size:13px}.project-task-table th{background:var(--gray-100);color:var(--gray-600);text-align:left;border-bottom:1px solid var(--border-color);padding:8px 10px;font-weight:400}.project-task-table td{border-bottom:1px solid var(--border-color);padding:9px 10px}.project-task-table tbody tr{cursor:pointer}.project-task-table tbody tr:hover td{background:var(--gray-50)}.project-task-table tbody tr:last-child td{border-bottom:none}.text-light{color:var(--text-light);font-weight:400}.filter-chip-group{flex:none!important;min-width:0!important}.filter-chip{border-radius:var(--border-radius);color:#0070cc;white-space:nowrap;text-transform:capitalize;background:#edf6fd;align-items:center;gap:8px;height:30px;padding:0 10px;font-size:13px;display:inline-flex}.filter-chip-x{cursor:pointer;font-size:15px;line-height:1}.form-grid>table{border-collapse:collapse;width:100%;font-size:13px}.form-grid>table th{background:var(--gray-100);color:var(--gray-600);text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:8px 10px;font-weight:400}.form-grid>table td{border-bottom:1px solid var(--border-color);vertical-align:middle;font-variant-numeric:tabular-nums;padding:8px 10px}.form-grid>table tbody tr:last-child td{border-bottom:none}.form-grid>table tfoot td{border-top:1px solid var(--border-color);background:var(--gray-50);border-bottom:none}.portfolio-table tbody tr{cursor:pointer}.portfolio-table tbody tr:hover td{background:var(--gray-50)}.form-grid>table .num,.form-grid>table th.num{text-align:right}.text-danger{color:#b52a2a!important}.widget.number-widget-box.static{cursor:default}.grid-col-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;display:grid}@media (width<=1199px){.grid-col-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=767px){.grid-col-5{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-tasks-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.project-tasks-tools .ant-checkbox-wrapper{color:var(--gray-700);font-size:13px}.template-banner{color:#0b4f8a;border-radius:var(--border-radius-md);background:#edf6fd;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.gantt{border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:#fff;display:flex;position:relative}.gantt-left-head{border-top-left-radius:var(--border-radius-md)}.gantt-scroll{border-top-right-radius:var(--border-radius-md);border-bottom-right-radius:var(--border-radius-md)}.gantt-left{border-right:1px solid var(--gray-300);z-index:1;background:#fff;flex:none;width:392px}.gantt-left-head,.gantt-left-row{box-sizing:border-box;align-items:center;display:flex}.gantt-left-head{border-bottom:1px solid var(--gray-300);height:56px;color:var(--gray-600);background:#fafafa;padding-top:22px;font-size:12px}.gantt-left-row{cursor:pointer;height:40px;color:var(--gray-800);border-bottom:1px solid #f0f0f0;font-size:13px}.gantt-left-row.hover{background:var(--gray-100)}.gantt-left-row.parent{color:var(--gray-900);font-weight:600}.gantt-col-task{flex:1;align-items:center;gap:6px;min-width:0;padding-right:8px;display:flex}.gantt-left-head .gantt-col-task{padding-left:32px}.gantt-col-who{flex:none;justify-content:center;width:34px;margin-right:6px;display:flex}.gantt-col-date{font-variant-numeric:tabular-nums;width:52px;color:var(--gray-700);flex:none;font-size:12px}.gantt-col-date.late{color:#b52a2a;font-weight:500}.gantt-col-pct{text-align:right;font-variant-numeric:tabular-nums;width:36px;color:var(--gray-700);flex:none;padding-right:12px;font-size:12px}.gantt-toggle,.gantt-toggle-space{width:16px;color:var(--gray-600);flex:none;justify-content:center;font-size:10px;display:inline-flex}.gantt-toggle:hover{color:var(--gray-900)}.gantt-dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.gantt-left-subject{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gantt-left-subject.critical{color:var(--gray-900);font-weight:600}.gantt-left-subject.cancelled{color:var(--gray-500);text-decoration:line-through}.gantt-late{color:#b52a2a;background:#fff0f0;border-radius:999px;flex:none;padding:0 7px;font-size:11px;font-weight:500;line-height:18px}.gantt-avatar{background:var(--gray-100);border:1px solid var(--gray-200);width:24px;height:24px;color:var(--gray-700);border-radius:50%;place-items:center;font-size:10px;font-weight:600;display:grid}.gantt-scroll{flex:1;min-width:0;overflow-x:auto}.gantt-svg{font-family:inherit;display:block}.gantt-bg{pointer-events:none}.gantt-major{fill:var(--gray-900);font-size:12px;font-weight:600}.gantt-minor{fill:var(--gray-600);font-variant-numeric:tabular-nums;font-size:11px}.gantt-minor.today{fill:#fff;font-weight:600}.gantt-label{fill:var(--gray-800);pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;font-size:12px}.gantt-label-note{font-size:11px}.gantt-label-cancelled{fill:var(--gray-500);text-decoration:line-through}.gantt-glyph{pointer-events:none;font-size:12px;font-weight:700}.gantt-nodate{fill:var(--gray-500);font-size:12px;font-style:italic}.gantt-bar{cursor:pointer}.gantt-bar:hover>rect:not(.gantt-handle){filter:brightness(.94)}.gantt-bar.draggable{cursor:grab}.gantt.dragging,.gantt.dragging .gantt-bar.draggable{cursor:grabbing;-webkit-user-select:none;user-select:none}.gantt-handle{fill:#0000;cursor:ew-resize}.gantt-bar.draggable:hover .gantt-handle{fill:#1717172e}.gantt-tip{z-index:5;pointer-events:none;border-radius:var(--border-radius);width:256px;box-shadow:var(--shadow-2xl);color:var(--gray-800);background:#fff;padding:10px 12px;font-size:12px;position:absolute}.gantt-tip-title{color:var(--gray-900);overflow-wrap:anywhere;margin-bottom:4px;font-size:13px;font-weight:600}.gantt-tip-status{color:var(--gray-700);align-items:center;gap:6px;margin-bottom:8px;display:flex}.gantt-tip dl{grid-template-columns:78px 1fr;gap:4px 8px;margin:0;display:grid}.gantt-tip dt{color:var(--gray-600)}.gantt-tip dd{font-variant-numeric:tabular-nums;margin:0}.gantt-tip dd.danger{color:#b52a2a}.gantt-legend{color:var(--gray-700);flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:12px;font-size:12px;display:flex}.gantt-legend>span{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.gantt-key{box-sizing:border-box;border-radius:3px;flex:none;width:26px;height:12px;display:inline-block;position:relative;overflow:hidden}.gantt-key-glyph{color:#fff;font-size:9px;font-weight:700;line-height:12px;position:absolute;left:4px}@media (width<=991.98px){.gantt-left{width:300px}.gantt-left .gantt-col-date,.gantt-left .gantt-col-who{display:none}}@media (width<=767.98px){.gantt-left{width:148px}.gantt-left .gantt-col-pct,.gantt-left .gantt-late{display:none}.gantt-left-head .gantt-col-task{padding-left:12px}}.print-only{display:none}.board{grid-auto-columns:minmax(240px,1fr);grid-auto-flow:column;align-items:start;gap:12px;padding-bottom:6px;display:grid;overflow-x:auto}.board-col{background:var(--gray-50);border-radius:var(--border-radius-md);min-height:160px;padding:8px;transition:background .12s,box-shadow .12s}.board-col.over{background:#edf6fd;box-shadow:inset 0 0 0 2px #9fc6ef}.board-col-head{align-items:center;gap:8px;padding:4px 6px 10px;font-size:13px;display:flex}.board-col-head .indicator-dot{border-radius:50%;width:8px;height:8px}.board-col-title{color:var(--gray-800);font-weight:600}.board-col-count{color:var(--gray-600);font-variant-numeric:tabular-nums;background:#fff;border-radius:6px;padding:0 6px;font-size:12px}.board-col-add{color:var(--gray-600);cursor:pointer;border-radius:6px;place-items:center;width:22px;height:22px;margin-left:auto;display:grid}.board-col-add:hover{background:var(--gray-200)}.board-cards{flex-direction:column;gap:8px;display:flex}.board-card{border-radius:var(--border-radius);box-shadow:var(--shadow-base);cursor:pointer;background:#fff;padding:10px 12px;font-size:13px;transition:box-shadow .12s,transform .12s}.board-card:hover{box-shadow:var(--shadow-2xl)}.board-card.dragging{opacity:.45;transform:rotate(1deg)}.board-card-project{color:var(--gray-600);white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:11px;overflow:hidden}.board-card-subject{color:var(--gray-900);font-weight:500;line-height:1.35}.board-milestone{color:#2a78d6;margin-right:5px}.board-progress{background:#d6e4f7;border-radius:999px;height:4px;margin-top:8px;overflow:hidden}.board-progress>div{background:#2a78d6;height:100%}.board-card-foot{align-items:center;gap:8px;min-height:22px;margin-top:9px;display:flex}.board-date{color:var(--gray-600);font-size:12px}.board-date.late{color:#b52a2a}.board-priority{color:#bd3e0c;background:#fff1e7;border-radius:999px;padding:0 7px;font-size:11px}.board-empty{color:var(--gray-500);text-align:center;border:1px dashed var(--gray-300);border-radius:var(--border-radius);padding:18px 0;font-size:12px}.cal-toolbar{align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-title{text-align:center;min-width:150px;color:var(--heading-color);font-size:15px;font-weight:600}.cal-grid{border:1px solid var(--border-color);border-radius:var(--border-radius-md);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.cal-weekday{background:var(--gray-100);color:var(--gray-600);border-bottom:1px solid var(--border-color);padding:6px 8px;font-size:12px}.cal-weekday.weekend{color:var(--gray-500)}.cal-day{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);flex-direction:column;gap:2px;min-height:96px;padding:4px 5px;display:flex}.cal-day:nth-child(7n){border-right:none}.cal-day.weekend{background:var(--gray-50)}.cal-day.other .cal-date{color:var(--gray-400)}.cal-date{color:var(--gray-700);border-radius:6px;align-self:flex-start;padding:1px 3px;font-size:12px}.cal-day.today .cal-date{color:#fff;background:#e03636;font-weight:600}.cal-item{color:#123b6b;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:#d6e4f7;border-radius:4px;padding:1px 6px;font-size:11.5px;overflow:hidden}.cal-item:hover{background:#b9d2f1}.cal-item.milestone{color:#fff;background:#2a78d6}.cal-item.done{background:var(--gray-200);color:var(--gray-600);text-decoration:line-through}.cal-item.late{box-shadow:inset 2px 0 #e03636}.cal-more{color:var(--gray-600);padding-left:4px;font-size:11px}.risk-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:28px;display:grid}@media (width<=991px){.risk-layout{grid-template-columns:1fr}}.risk-matrix{grid-template-columns:18px auto;gap:4px;display:grid}.risk-axis-y{writing-mode:vertical-rl;color:var(--gray-600);text-align:center;font-size:11px;transform:rotate(180deg)}.risk-grid{flex-direction:column;gap:3px;display:flex}.risk-row{align-items:center;gap:3px;display:flex}.risk-row-label,.risk-col-label{width:18px;color:var(--gray-600);text-align:center;font-size:11px}.risk-col-label{width:46px}.risk-cell{cursor:pointer;font-variant-numeric:tabular-nums;outline-offset:1px;border-radius:6px;place-items:center;width:46px;height:40px;font-size:14px;font-weight:600;display:grid}.risk-cell.selected{outline:2px solid var(--gray-900)}.risk-axis-x{color:var(--gray-600);text-align:center;padding-left:21px;font-size:11px}.risk-legend{color:var(--gray-700);flex-wrap:wrap;grid-column:2;gap:12px;margin-top:6px;font-size:11.5px;display:flex}.risk-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.risk-cards{flex-direction:column;gap:8px;display:flex}.risk-card{border:1px solid var(--border-color);border-radius:var(--border-radius);align-items:center;gap:12px;padding:10px 12px;display:flex}.risk-card:hover{background:var(--gray-50)}.risk-score{font-variant-numeric:tabular-nums;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.risk-card-body{cursor:pointer;flex:1;min-width:0}.risk-card-title{color:var(--gray-900);font-size:13.5px;font-weight:500}.risk-card-meta{color:var(--gray-600);margin-top:1px;font-size:12px}.risk-card-mitigation{color:var(--gray-700);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:12px;overflow:hidden}.portfolio-kpis{margin-bottom:18px}.health-counts{flex-wrap:wrap;gap:4px 10px;display:flex}.health-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:1px 9px 1px 7px;font-size:12px;font-weight:500;display:inline-flex}.mini-progress{color:var(--gray-700);align-items:center;gap:8px;font-size:12px;display:flex}.mini-progress-track{background:#d6e4f7;border-radius:999px;flex:1;height:6px;overflow:hidden}.mini-progress-track>div{background:#2a78d6;height:100%}.roadmap{border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:#fff;padding:8px 12px}.roadmap svg{font-family:inherit;display:block}.roadmap-month{fill:var(--gray-600);font-size:11px}.roadmap-label{fill:var(--gray-800);font-size:12px}.roadmap-row{cursor:pointer}.roadmap-row:hover .roadmap-label{fill:#0070cc}.workload-wrap{overflow-x:auto}.workload{border-collapse:separate;border-spacing:3px;font-size:13px}.workload th{color:var(--gray-700);text-align:center;min-width:84px;padding:4px 2px;font-size:12px;font-weight:600}.workload th.this-week{color:#0070cc}.workload .workload-person{text-align:left;min-width:200px;padding-right:10px}.workload td.workload-person{align-items:center;gap:8px;height:46px;display:flex}.workload td{padding:0}.workload-cell{border:1px solid var(--gray-200);cursor:default;font-variant-numeric:tabular-nums;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;height:46px;display:flex}.workload-cell.over{border:2px solid #e03636}.workload-cell.over .anticon{color:#e03636}.workload-hours{font-weight:600}.workload-logged{opacity:.8;font-size:10.5px}.workload-tasks{flex-direction:column;gap:4px;max-width:320px;font-size:13px;display:flex}.workload-tasks>div{cursor:pointer}.workload-tasks>div:hover{color:#0070cc}.workload-legend{color:var(--gray-700);flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12px;display:flex}.workload-legend i{border:1px solid var(--gray-200);vertical-align:-3px;border-radius:3px;width:14px;height:14px;margin-right:5px;display:inline-block}.weekly-grid th.weekend,.weekly-grid td.weekend{background:var(--gray-50)}.weekly-grid th.today{color:#0070cc}.weekly-grid td{padding:5px 6px!important}.hours-input{width:100%!important}.hours-input input{text-align:right!important}.rail-bell{margin-top:auto;margin-bottom:4px}.notif-panel{width:360px;margin:-4px -6px}.notif-head{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:4px 6px 10px;font-weight:600;display:flex}.notif-mark{font-size:12px;font-weight:400}.notif-list{max-height:420px;overflow-y:auto}.notif-item{border-bottom:1px solid var(--gray-100);cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:10px 6px;display:flex}.notif-item:hover{background:var(--gray-50)}.notif-item.unread .notif-subject{color:var(--gray-900);font-weight:500}.notif-body{flex:1;min-width:0}.notif-subject{color:var(--gray-700);font-size:13px;line-height:1.4}.notif-meta{color:var(--gray-500);margin-top:2px;font-size:11.5px}.notif-dot{background:#2490ef;border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.notif-empty{color:var(--gray-600);padding:18px 6px;font-size:13px}@media print{@page{size:landscape;margin:10mm}.app-rail,.workspace-sidebar,.page-head,.form-tabs,.page-sidebar,.project-tasks-toolbar,.timeline,.form-dashboard-hide{display:none!important}body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{width:100%;position:absolute;top:0;left:0}.print-only{display:block}.print-title{margin-bottom:8px;font-size:16px;font-weight:600}.gantt-scroll{overflow:visible!important}}.board{grid-auto-columns:minmax(180px,1fr)}.portfolio-table td{white-space:nowrap}.portfolio-table td:first-child{white-space:normal;min-width:240px}.portfolio-sub{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-size:12px;overflow:hidden}.billing-table td{white-space:nowrap}.billing-table td.wrap{white-space:normal}.weekly-grid{overflow-x:auto}.weekly-grid>table{table-layout:fixed;min-width:900px}.weekly-grid .ant-select{width:100%}.form-grid.portfolio-table{overflow-x:auto}.portfolio-table>table{min-width:1180px}.weekly-grid>table th,.weekly-grid>table td{box-sizing:border-box;padding:6px!important}.weekly-grid .hours-input{background:var(--gray-100)}.form-grid.weekly-grid .ant-input-number.hours-input{background:var(--gray-100)!important;border-radius:6px!important}.form-grid.weekly-grid .ant-input-number.hours-input:hover{background:var(--gray-200)!important}.form-grid.weekly-grid .ant-input-number-focused.hours-input{background:#fff!important;box-shadow:0 0 0 2px #9fc6ef!important}.my-work-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.my-work-actions{flex-wrap:wrap;gap:8px;display:flex}.my-work-tasks{margin-top:15px;padding:12px 16px}.my-work-tasks-title{color:var(--heading-color);margin-bottom:6px;font-weight:600}.my-work-task{border-top:1px solid var(--gray-100);align-items:center;gap:12px;padding:8px 0;display:flex}.my-work-task:first-of-type{border-top:none}.my-work-check{border:1.5px solid var(--gray-400);color:#0000;cursor:pointer;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.my-work-check:hover{color:#30a66d;background:#e4f5e9;border-color:#30a66d}.my-work-task-body{cursor:pointer;flex:1;min-width:0}.my-work-task-subject{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.my-work-date{color:var(--gray-600);text-align:right;width:120px;font-size:12px}.project-quick{flex-wrap:wrap;align-items:center;gap:8px;padding:14px 30px 0;display:flex}.project-quick-label{color:var(--gray-600);margin-right:4px;font-size:12px}.view-control{margin-bottom:16px}.view-control .control-label{color:var(--gray-600);margin-bottom:4px;font-size:12px}.view-value{color:var(--heading-color);overflow-wrap:anywhere;min-height:20px;font-size:14px;line-height:1.45}.view-value.numeric{font-variant-numeric:tabular-nums}.view-value.multiline{white-space:pre-wrap;color:var(--text-color)}.view-link{color:var(--heading-color);text-decoration:underline;-webkit-text-decoration-color:var(--gray-400);text-decoration-color:var(--gray-400);text-underline-offset:3px}.view-link:hover{color:#2a78d6;text-decoration-color:currentColor}.view-tags{flex-wrap:wrap;gap:6px;display:flex}.view-tag{background:var(--gray-100);border-radius:999px;padding:1px 10px;font-size:13px}.task-stat-text{overflow-wrap:anywhere;line-height:1.35;font-size:15px!important}.task-stat-text a{color:inherit}.view-editable{border-radius:var(--border-radius);cursor:pointer;align-items:flex-start;gap:8px;min-height:28px;margin:-4px -8px;padding:4px 8px;display:flex;position:relative}.view-editable:hover,.view-editable:focus-visible{background:var(--gray-100);outline:none}.view-editable .view-value{flex:1;min-width:0}.view-edit-icon{color:var(--gray-500);opacity:0;margin-top:4px;font-size:12px;transition:opacity .12s}.view-editable:hover .view-edit-icon,.view-editable:focus-visible .view-edit-icon{opacity:1}@media (hover:none){.view-edit-icon{opacity:.5}}.inline-editor{align-items:flex-start;gap:6px;display:flex}.inline-editor-input{flex:1;min-width:0}.status-switch{cursor:pointer;color:var(--gray-600);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:10px;display:inline-flex}.status-switch:hover .indicator-pill,.status-switch:focus-visible .indicator-pill{filter:brightness(.96);box-shadow:0 0 0 2px var(--gray-300)}.task-mini-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-mini-count{color:var(--text-light);margin-left:10px;font-size:12px;font-weight:400}.task-mini-add{color:var(--gray-700);cursor:pointer;align-items:center;gap:6px;font-size:13px;font-weight:400;display:inline-flex}.task-mini-add:hover{color:var(--heading-color)}.task-mini-row{border-bottom:1px solid var(--border-color);align-items:center;gap:14px;padding:9px 0;font-size:14px;display:flex}.task-mini-row:last-child{border-bottom:0}.task-mini-subject{min-width:0;color:var(--heading-color);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}a.task-mini-subject:hover{text-decoration:underline}.task-mini-subject.done{color:var(--text-light);text-decoration:line-through}.task-mini-sub{color:var(--text-light)}.task-mini-meta{color:var(--gray-700);white-space:nowrap;font-size:13px}.task-mini-date{font-variant-numeric:tabular-nums;width:96px}.task-mini-date.overdue{color:#b52a2a}.task-mini-hours{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.task-mini-empty{color:var(--text-light);font-size:13px}@media (width<=767.98px){.task-mini-row{flex-wrap:wrap;gap:10px}.task-mini-subject{white-space:normal;flex:100%;order:-1}.task-mini-row .ant-checkbox-wrapper{order:-2}.task-mini-row:has(.ant-checkbox-wrapper) .task-mini-subject{flex-basis:calc(100% - 34px)}}.task-mini-hours{text-align:right;width:56px}.task-mini-ts{width:118px}@media (width<=767.98px){.task-mini-hours,.task-mini-ts{width:auto}}.view-mode .like-disabled-input{min-height:20px;color:var(--heading-color);background:0 0;padding:0}.view-mode .frappe-control:has(>.like-disabled-input)>.control-label{color:var(--gray-600);margin-bottom:4px;font-size:12px}.report-wrapper .page-form{align-items:flex-end;padding:8px 10px 12px}.filter-label{color:var(--gray-600);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px 2px;font-size:12px;display:block;overflow:hidden}.negative{color:#b52a2a}.list-check-yes{color:var(--gray-700)}.login-split{background:#fff;min-height:100vh;display:flex}.login-brand{color:#d4d4d4;box-sizing:border-box;background:#171717;flex-direction:column;flex:0 0 44%;max-width:620px;padding:40px 56px;display:flex}.login-brand-top{align-items:center;gap:12px;display:flex}.login-logo{border-radius:9px;width:36px;height:36px;font-size:18px}.login-brand-name{color:#fff;letter-spacing:.01em;font-size:17px;font-weight:600}.login-brand-body{max-width:440px;margin:auto 0}.login-brand-body h1{color:#fff;letter-spacing:-.01em;margin:0 0 16px;font-size:32px;font-weight:600;line-height:1.2}.login-brand-body p{color:#bdbdbd;margin:0 0 28px;font-size:15px;line-height:1.6}.login-brand-body ul{gap:12px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.login-brand-body li{align-items:baseline;gap:10px;display:flex}.login-brand-body li:before{content:"";background:#2490ef;border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-2px)}.login-brand-foot{color:#7c7c7c;font-size:12px}.login-main{background:var(--gray-50);flex:1;justify-content:center;align-items:center;padding:40px 24px;display:flex}.login-form{width:100%;max-width:380px}.login-form h2{color:var(--heading-color);margin:0 0 6px;font-size:24px;font-weight:600}.login-sub{color:var(--gray-600);margin:0 0 28px;font-size:14px}.login-form .ant-form-item-label>label{color:var(--gray-700);font-size:13px}.login-form .ant-input-affix-wrapper,.login-form .ant-input{border:1px solid var(--gray-300)!important;background:#fff!important}.login-form .ant-input-affix-wrapper .ant-input{border:0!important}.login-form .ant-input-affix-wrapper-focused,.login-form .ant-input:focus{border-color:var(--gray-500)!important;box-shadow:0 0 0 3px var(--gray-200)!important}.login-help{color:var(--gray-600);text-align:center;margin:20px 0 0;font-size:12px}.login-logo-small{margin-bottom:20px;display:none}@media (width<=899.98px){.login-brand{display:none}.login-logo-small{display:grid}.login-main{align-items:flex-start;padding-top:12vh}}.home-greeting{margin:0 0 22px}.home-greeting h2{color:var(--heading-color);letter-spacing:-.01em;margin:0 0 4px;font-size:20px;font-weight:600}.home-greeting p{color:var(--gray-600);margin:0;font-size:13px}.list-subject{min-width:170px}@media (width<=767.98px){.list-subject{min-width:0}}.desk-nav{display:contents}.nav-backdrop{z-index:55;background:#17171752;animation:.15s ease-out nav-fade;position:fixed;inset:0}@keyframes nav-fade{0%{opacity:0}to{opacity:1}}@keyframes nav-slide{0%{opacity:.6;transform:translate(-24px)}to{opacity:1;transform:none}}body.nav-drawer-open{overflow:hidden}.sidebar-toggle-btn{font-size:16px}@media (width<=991.98px){.body-sidebar{display:flex}.title-parent,.title-sep{display:inline}}.desk.screen-tablet .body-sidebar{z-index:60;width:280px;height:100vh;box-shadow:var(--shadow-2xl);animation:.18s ease-out nav-slide;position:fixed;top:0;bottom:0;left:60px}.desk.screen-tablet .nav-backdrop{left:60px}.desk.screen-mobile .desk-nav{z-index:60;visibility:hidden;max-width:100vw;transition:transform .2s ease-out,visibility .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.desk.screen-mobile.nav-open .desk-nav{visibility:visible;box-shadow:var(--shadow-2xl);transform:none}.desk.screen-mobile .app-rail{height:100dvh}.desk.screen-mobile .body-sidebar{background:#fff;width:min(280px,100vw - 92px);height:100dvh}@media (pointer:coarse){.sidebar-item{height:40px}.rail-item{width:42px;height:42px}.sidebar-toggle-btn,.sidebar-collapse{padding:9px}}.page-actions{min-width:0}@media (width<=1199.98px){.title-text{max-width:none}.page-title{flex:auto;min-width:0}.title-parent{text-overflow:ellipsis;max-width:22vw;overflow:hidden}}@media (width<=767.98px){:root{--page-head-height:52px}.page-head{gap:8px;padding:0 10px 0 6px}.title-text,.title-parent,.title-sep{font-size:16px}.title-parent{max-width:28vw}}@media (width<=991.98px){.page-head.has-actions{height:auto;min-height:var(--page-head-height);flex-wrap:wrap;row-gap:8px;padding-top:8px;padding-bottom:8px}.page-head.has-actions .page-title{flex:100%}.page-head.has-actions .page-actions{flex-wrap:wrap;flex:100%;justify-content:flex-start;row-gap:8px}.page-actions>*{flex:none;max-width:100%}.form-tabs-list{position:static}}@media (width>=768px) and (width<=991.98px){.page-head.has-actions .page-actions{justify-content:flex-end}}@media (width<=991.98px){.page-body.with-sidebar{flex-direction:column}.page-sidebar{border-left:none;border-top:1px solid var(--border-color);width:auto;height:auto;display:block;position:static;overflow:visible}.form-sidebar-head{display:none}.form-sidebar-stats{padding-bottom:28px}}@media (width<=767.98px){.page-main-content{padding:14px 12px 48px}.page-main>.form-message{padding:10px 14px}.form-section{padding:18px 14px 4px}.form-section.collapsed{padding-bottom:18px}.form-section .section-head{margin-bottom:14px}.form-tabs-list{padding:0 4px}.form-tabs-list .nav-link{margin:0 10px}.form-footer{padding:20px 14px 60px}.frappe-control{margin-bottom:14px}.timeline-items{margin-left:6px;padding-left:16px}.timeline-item.card:before,.timeline-dot{left:-20px}}@media (width>=1600px){body:not(.full-width) .page-main:not(.flush) .page-main-content{max-width:1440px}.page-sidebar{width:320px}}@media (width>=2200px){body:not(.full-width) .page-main:not(.flush) .page-main-content{max-width:1680px}.grid-col-4{gap:20px}}@media (width<=767.98px){.page-form{padding:4px}.page-form .form-group{flex:calc(50% - 10px);min-width:0}.page-form .filter-section{flex:100%;justify-content:flex-end;margin-left:0}.list-row .list-row-col~.list-row-col{display:none}.list-subject{flex:1.6}.list-row{padding-right:8px}.list-row .list-check{margin-right:10px;padding-left:6px}.list-row-activity,.list-count{width:auto;min-width:34px}.list-paging-area{padding:12px}}@media (width>=768px) and (width<=1199.98px){.list-row .list-row-col:nth-of-type(n+6){display:none}}.form-grid,.project-task-table,.weekly-grid{-webkit-overflow-scrolling:touch;overflow-x:auto}.form-grid .ant-table-wrapper,.form-grid .ant-table{min-width:0}.report-wrapper .ant-table-wrapper{max-width:100%}.ant-segmented{scrollbar-width:none;max-width:100%;overflow-x:auto}.ant-tree .ant-tree-title{white-space:normal;overflow-wrap:anywhere}.ant-tree .ant-tree-node-content-wrapper{min-width:0}img,canvas{max-width:100%}.column-chart-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.column-chart-inner{min-width:560px}.roadmap{-webkit-overflow-scrolling:touch;overflow-x:auto}.roadmap-svg{min-width:640px}@media (width<=767.98px){.ant-modal{max-width:calc(100vw - 20px)!important;margin:10px auto!important;padding-bottom:10px!important;top:10px!important}.ant-modal-content{padding:16px!important}.ant-picker-dropdown .ant-picker-panels{flex-direction:column}.search-dialog{top:8px!important}.ant-drawer-content-wrapper{max-width:100vw}.widget-group{margin-bottom:28px}.number-widget-box .number{overflow-wrap:anywhere;font-size:17px}.grid-col-4,.grid-col-3{gap:10px}:is(.grid-col-4:has(>.number-widget-box),.grid-col-3:has(>.number-widget-box)){grid-template-columns:repeat(2,minmax(0,1fr))}.widget.number-widget-box{min-height:76px}.page-head .title-parent,.page-head .title-sep{display:none}}@media (width<=359.98px){:is(.grid-col-4:has(>.number-widget-box),.grid-col-3:has(>.number-widget-box)){grid-template-columns:1fr}}@media (width>=576px) and (width<=767.98px){.grid-col-4,.grid-col-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px) and (width<=1399.98px){.grid-col-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=575.98px){.login-page{padding-top:6vh}.login-page .page-card{padding:22px 18px}}.list-row-meta,.filter-toggle{display:none}.report-table-box{padding:15px}.report-account{white-space:nowrap}@media (width<=991.98px){.page-body.with-sidebar .page-sidebar{align-self:stretch;width:auto}}@media (width<=767.98px){.frappe-list .list-row .list-row-col{display:none}.list-row-container .list-row{align-items:flex-start;height:auto;min-height:56px;padding-top:9px;padding-bottom:9px}.list-row-container .list-row .list-check{padding-top:2px}.list-row-container .list-subject{white-space:normal;flex-direction:column;gap:4px;margin-right:8px;display:flex}.list-row-container .list-subject .bold{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.list-row-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:2px 14px;font-size:12.5px;line-height:1.5;display:flex}.list-row-meta>span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.list-row-meta .list-meta-amount{color:var(--text-color);font-weight:500}.list-row-container .list-row-activity{padding-top:2px}.filter-toggle{margin-right:auto;display:inline-flex}.frappe-list .page-form:not(.filters-open) .form-group:not(:first-child){display:none}.frappe-list .page-form .form-group:first-child{flex:100%}.frappe-list .page-form .filter-section{justify-content:space-between;gap:8px}.totals-block .frappe-control{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.totals-block .frappe-control .control-label{flex:auto;margin:0}.totals-block .frappe-control .like-disabled-input{flex:0 0 52%;min-height:30px}.totals-block>.frappe-control{display:block}.view-mode .totals-block .frappe-control .like-disabled-input{flex:none}.report-table-box{padding:8px 0 0}.report-first-col{min-width:130px;max-width:46vw}.report-account{white-space:normal;display:inline-block}.my-work-task{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"check body body body"".status date act";align-items:center;gap:6px 10px;display:grid}.my-work-task>.my-work-check{grid-area:check;align-self:start;margin-top:1px}.my-work-task-body{grid-area:body}.my-work-task-subject{white-space:normal}.my-work-task>.indicator-pill{grid-area:status;justify-self:start}.my-work-task>.my-work-date{text-align:left;white-space:nowrap;grid-area:date;width:auto}.my-work-task>.ant-btn{grid-area:act}.my-work-tasks{padding:10px 12px}.connections{gap:8px 10px}.connection-link{padding:4px 10px 4px 5px;font-size:13px}.connection-add{width:28px;height:28px}:is(.grid-col-3:has(>.shortcut-widget-box),.grid-col-4:has(>.shortcut-widget-box)){grid-template-columns:repeat(2,minmax(0,1fr))}.board{scroll-snap-type:x mandatory;grid-auto-columns:82vw;margin-right:-12px;padding-right:12px}.board-col{scroll-snap-align:start}.project-quick{row-gap:8px;padding:12px 14px 0}}@media print{.desk-nav,.nav-backdrop,.page-actions,.sidebar-toggle-btn{display:none!important}}
