html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:#f5f7fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;margin:0;overflow-x:hidden}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-bottom:1rem}p{color:#555;margin-bottom:1rem}a{color:#667eea;transition:color .3s ease}a:hover{color:#764ba2}code{background-color:#f5f5f5;border-radius:4px;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9rem;padding:.2rem .6rem}button,input,select,textarea{font-family:inherit}img{height:auto;max-width:100%}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f5f7fa}::-webkit-scrollbar-thumb{background:#ccc;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#999}:root{--ui-bg:#f4f8fd;--ui-surface:#fff;--ui-surface-alt:#f8fbff;--ui-border:#d7e4f6;--ui-border-soft:#e2ebf7;--ui-text:#1f436f;--ui-text-soft:#5f7fa4;--ui-primary:#1f6fb8;--ui-primary-hover:#1a609f;--ui-danger:#ac3f3f;--ui-danger-bg:#fff7f7;--ui-danger-border:#f0c4c4;--ui-shadow:0 4px 12px #17395e14;--ui-radius-md:8px;--ui-radius-lg:12px}.ui-card{background:#fff;background:var(--ui-surface);border:1px solid #d7e4f6;border:1px solid var(--ui-border);border-radius:12px;border-radius:var(--ui-radius-lg);box-shadow:0 4px 12px #17395e14;box-shadow:var(--ui-shadow)}.ui-card-header{align-items:center;border-bottom:1px solid #e2ebf7;border-bottom:1px solid var(--ui-border-soft);display:flex;gap:.6rem;justify-content:space-between;padding:.75rem .85rem}.ui-btn{align-items:center;border:1px solid #0000;border-radius:8px;border-radius:var(--ui-radius-md);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:.3rem;justify-content:center;line-height:1.2;padding:.42rem .7rem;text-decoration:none;transition:all .2s ease}.ui-btn-primary{background:#1f6fb8;background:var(--ui-primary);border-color:#1f6fb8;border-color:var(--ui-primary);color:#fff}.ui-btn-primary:hover{background:#1a609f;background:var(--ui-primary-hover);border-color:#1a609f;border-color:var(--ui-primary-hover)}.ui-btn-secondary{background:#fff;border-color:#d0dff1;color:#35597d}.ui-btn-secondary:hover{background:#f8fbff;border-color:#b6cee8}.ui-btn-danger{background:#fff7f7;background:var(--ui-danger-bg);border-color:#f0c4c4;border-color:var(--ui-danger-border);color:#ac3f3f;color:var(--ui-danger)}.ui-btn-danger:hover{background:#fff1f1;border-color:#e69e9e}.ui-form-control{background:#fff;border:1px solid #c7d9ef;border-radius:8px;border-radius:var(--ui-radius-md);color:#18365d;padding:.62rem .7rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.ui-form-control:focus{border-color:#2b5b9e;box-shadow:0 0 0 4px #2a6cb026;outline:none}:where(.btn-icon,.btn-small,.btn-submit,.btn-cancel,.btn-action,.btn-edit,.btn-delete,.edit-btn,.delete-btn,.reminder-btn,.add-user-btn,.btn-add-task,.btn-new-entry,.btn-upload-photo,.btn-primary,.btn-secondary,.btn-card-action){transition:all .2s ease}:where(.btn-icon,.btn-small,.btn-submit,.btn-cancel,.btn-action,.btn-edit,.btn-delete,.edit-btn,.delete-btn,.reminder-btn,.add-user-btn,.btn-add-task,.btn-new-entry,.btn-upload-photo,.btn-primary,.btn-secondary,.btn-card-action):focus-visible{box-shadow:0 0 0 3px #2f78c933;outline:none}:where(.form-input,.form-select,.form-textarea,.form-control,.search-input,.settings-field input,.settings-field select,.settings-field textarea):focus{border-color:#2b5b9e;box-shadow:0 0 0 4px #2a6cb026;outline:none}:where(button,.ui-btn,.btn-icon,.btn-small,.btn-submit,.btn-cancel,.btn-action,.btn-edit,.btn-delete,.edit-btn,.delete-btn,.reminder-btn,.btn-primary,.btn-secondary,.btn-card-action):disabled{cursor:not-allowed;opacity:.6}.layout-container{background:linear-gradient(180deg,#f5f8fd,#edf3fb);display:flex;min-height:100vh}.sidebar{background:radial-gradient(circle at 95% 8%,#5f89bd42,#0000 34%),linear-gradient(180deg,#13294c,#183866);border-right:1px solid #c9dbf124;color:#e8f2ff;display:flex;flex-direction:column;overflow-y:auto;transition:width .25s ease;width:330px;z-index:30}.sidebar.closed{width:88px}.sidebar-header{border-bottom:1px solid #d2e2f82e;display:flex;gap:.7rem;justify-content:space-between;padding:1rem .8rem}.brand-block{display:flex;gap:.7rem;min-width:0}.layout-logo{background:#f3f8ff1f;border-radius:10px;flex-shrink:0;height:44px;padding:4px;width:44px}.brand-copy{min-width:0}.app-title{color:#f4f9ff;font-size:1rem;letter-spacing:.01em;line-height:1.18;margin:0}.app-subtitle{color:#c9e0fceb;font-size:.69rem;line-height:1.3;margin:.18rem 0 0}.sidebar-toggle{align-items:center;background:#ecf6ff1c;border:1px solid #d2e2f840;border-radius:9px;color:#dfeeff;cursor:pointer;display:inline-flex;height:34px;justify-content:center;line-height:1;padding:0;width:34px}.sidebar-toggle-icon{display:block;height:16px;width:16px}.sidebar.closed .brand-block,.sidebar.closed .brand-copy,.sidebar.closed .nav-section-title,.sidebar.closed .user-details{display:none}.sidebar.closed .sidebar-header{justify-content:center;padding:.75rem .5rem}.sidebar.closed .logout-btn,.sidebar.closed .nav-label{display:none}.sidebar.closed .nav-link{justify-content:center;padding:.6rem .45rem}.sidebar.closed .nav-link[data-tooltip]:hover:after{background:#fff;border:1px solid #d5e3f5;border-radius:8px;box-shadow:0 8px 18px #17395e26;color:#2f537a;content:attr(data-tooltip);font-size:.76rem;left:calc(100% + 10px);padding:.35rem .5rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:20}.sidebar.closed .nav-icon{height:28px;width:28px}.sidebar.closed .user-info{justify-content:center;margin-bottom:0}.sidebar-nav{flex:1 1;padding:.8rem .5rem}.nav-section{margin-bottom:1rem}.nav-section-title{color:#c4dbf8b8;font-size:.72rem;letter-spacing:.09em;margin:.4rem 0 .45rem;padding:0 .6rem;text-transform:uppercase}.nav-link{align-items:center;border:1px solid #0000;border-radius:10px;color:#dbebff;display:flex;gap:.55rem;margin:.16rem 0;padding:.6rem .66rem;position:relative;text-decoration:none;transition:all .2s ease}.nav-link:hover{background:#e8f4ff14;border-color:#a5c6ec59}.nav-link.active{background:linear-gradient(135deg,#6ca1dc3d,#92bcf04d);border-color:#bedbfa80}.nav-icon{align-items:center;background:#ecf5ff1a;border:1px solid #b9d5f757;border-radius:8px;display:inline-flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.nav-link.active .nav-icon{background:#ecf5ff33;border-color:#cae1fb85}.nav-icon-svg{height:16px;width:16px}.nav-icon-emoji{font-size:15px;line-height:1}.nav-label{font-size:.91rem;line-height:1.2}.sidebar-footer{border-top:1px solid #d2e2f82e;padding:.9rem .7rem 1rem}.user-info{gap:.65rem;margin-bottom:.8rem}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#73a9e7,#4f80ba);border-radius:999px;font-weight:700;height:38px;justify-content:center;width:38px}.user-email,.user-name{line-height:1.25;margin:0}.user-name{color:#edf5ff;font-size:.88rem}.user-email{color:#bdd5f3;font-size:.72rem}.logout-btn{background:#d44e4e29;border:1px solid #ffa7a799;border-radius:9px;color:#ffd3d3;cursor:pointer;padding:.6rem;width:100%}.main-wrapper{display:flex;flex:1 1;flex-direction:column;min-width:0;position:relative;z-index:1}.top-header{align-items:center;background:#fffffff2;border-bottom:1px solid #d7e3f2;display:flex;justify-content:space-between;min-height:58px;padding:0 1.2rem}.header-left,.header-right{align-items:center;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:flex-end}.mobile-sidebar-toggle{align-items:center;background:#fff;border:1px solid #c2d4eb;border-radius:8px;cursor:pointer;display:none;height:34px;justify-content:center;padding:0;width:34px}.breadcrumb{color:#2f527c;font-size:.92rem;font-weight:600}.header-info{color:#35547d;font-size:.85rem}.install-app-btn{background:linear-gradient(135deg,#ecf4ff,#dbeaff);border:1px solid #b5cfee;border-radius:9px;color:#285d94}.install-app-btn,.install-help-btn{cursor:pointer;font-size:.78rem;font-weight:600;padding:.45rem .7rem}.install-help-btn{background:#f4f9ff;border:1px solid #c5d8f1;border-radius:9px;color:#2f5f92}.ios-install-hint{background:#f6fbff;border:1px dashed #c7d9ef;border-radius:9px;color:#4c6c91;font-size:.72rem;line-height:1.35;max-width:min(320px,82vw);padding:.35rem .55rem;white-space:normal}.notification-wrapper{position:relative}.notification-btn{align-items:center;background:#fff;border:1px solid #c7d9ef;border-radius:10px;color:#2f5f8f;cursor:pointer;display:inline-flex;height:36px;justify-content:center;line-height:1;padding:0;position:relative;width:36px}.notification-btn:hover{background:#f5f9ff;border-color:#aac4e3}.notification-bell-icon{stroke:currentColor;stroke-width:2;color:#2f5f8f;display:block;height:17px;width:17px}.notification-emoji-icon{font-size:16px;line-height:1}.notification-badge{align-items:center;background:#d53b3b;border-radius:999px;color:#fff;display:inline-flex;font-size:.68rem;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:-5px;top:-5px}.notification-panel{background:#fff;border:1px solid #d7e3f2;border-radius:10px;box-shadow:0 10px 24px #223e5d2e;max-height:360px;overflow-y:auto;position:absolute;right:0;top:42px;width:min(360px,calc(100vw - 16px));z-index:50}.sidebar-overlay{display:none}.notification-panel-head{align-items:center;border-bottom:1px solid #e2ecf8;display:flex;gap:8px;justify-content:space-between;padding:9px 10px}.notification-panel-head button{background:#eef5ff;border:1px solid #c3d9f4;border-radius:7px;color:#2a5f99;cursor:pointer;font-size:.73rem;padding:4px 8px}.notification-push-cta{align-items:center;background:#f7fbff;border-bottom:1px solid #eaf1fb;color:#315981;display:flex;font-size:.78rem;gap:8px;justify-content:space-between;padding:9px 10px}.notification-push-cta button{background:#fff;border:1px solid #b8d0ec;border-radius:7px;color:#245a8f;cursor:pointer;font-size:.74rem;padding:4px 8px;white-space:nowrap}.notification-push-cta button:disabled{cursor:default;opacity:.65}.notification-push-hint{border-bottom:1px solid #eef4fb;color:#4a6c92;font-size:.77rem;padding:8px 10px}.notification-empty{color:#5f7e9f;font-size:.84rem;padding:10px}.notification-item{background:#fff;border:0;border-bottom:1px solid #eff4fb;cursor:pointer;padding:8px 10px;text-align:left;width:100%}.notification-item.unread{background:#f3f9ff}.notification-title{color:#1d466f;font-size:.82rem;font-weight:700}.notification-message{color:#4e6f95;font-size:.78rem;margin-top:3px}.offline-queue-chip{background:#f7fbff;border:1px solid #c9d9ee;border-radius:999px;color:#245a8f;cursor:pointer;font-size:.76rem;font-weight:700;padding:.42rem .72rem;white-space:nowrap}.offline-sync-banner{background:linear-gradient(135deg,#f8fbff,#eef5ff);border:1px solid #cfe1f5;border-radius:12px;box-shadow:0 4px 12px #24507d14;color:#24507d;font-size:.84rem;margin-bottom:.9rem;padding:.78rem .92rem}.main-content{flex:1 1;overflow-y:auto;padding:1.2rem}.app-footer{background:#fffffff5;border-top:1px solid #d7e3f2;color:#6181aa;font-size:.78rem;padding:.75rem;text-align:center}.app-footer p{margin:0}@media (max-width:1024px){.sidebar{width:286px}}@media (max-width:768px){.sidebar{bottom:0;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .22s ease;z-index:45}.sidebar.open{transform:translateX(0)}.sidebar-overlay{background:#0f1a2866;border:0;display:block;inset:0;position:fixed;z-index:40}.mobile-sidebar-toggle{align-items:center;display:inline-flex;justify-content:center}.top-header{align-items:center;gap:.45rem;padding:.55rem}.header-left,.header-right{width:auto}.header-left{flex:1 1;gap:.45rem;justify-content:flex-start;min-width:0}.header-right{flex-wrap:nowrap;gap:.35rem;justify-content:flex-end;margin-left:auto}.offline-queue-chip{max-width:120px;overflow:hidden;text-overflow:ellipsis}.header-info{display:none}.breadcrumb{max-width:50vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.install-app-btn,.install-help-btn,.ios-install-hint{display:none}.main-content{padding:.9rem}}@media (max-width:480px){.notification-panel{right:0;width:min(340px,calc(100vw - 12px))}}.auth-container{align-items:stretch;background:radial-gradient(circle at 14% 24%,#3a69a433,#0000 44%),radial-gradient(circle at 88% 18%,#2a34753d,#0000 38%),linear-gradient(145deg,#eef3fb,#dbe7f8);display:flex;justify-content:center;min-height:100vh;width:100%}.auth-wrapper{display:grid;grid-template-columns:1.18fr .82fr;min-height:100vh;width:min(1320px,100%)}.auth-brand{align-items:center;background:linear-gradient(120deg,#081c3ec7,#203e74ad),linear-gradient(160deg,#0f2f62,#204580);color:#edf4ff;display:flex;justify-content:center;overflow:hidden;padding:3rem 4rem;position:relative}.auth-brand:after,.auth-brand:before{border-radius:50%;content:"";filter:blur(8px);height:460px;position:absolute;width:460px}.auth-brand:before{background:radial-gradient(circle,#5fa3ff2e,#0000 70%);right:-160px;top:-150px}.auth-brand:after{background:radial-gradient(circle,#b0cfff33,#0000 75%);bottom:-210px;left:-180px}.brand-content{position:relative;width:min(640px,100%);z-index:2}.brand-logo-image{background:#ffffff29;border-radius:24px;box-shadow:0 16px 40px #07102959;height:108px;padding:10px;width:108px}.brand-content h1{font-size:clamp(1.8rem,2.6vw,2.6rem);letter-spacing:.02em;line-height:1.15;margin:1rem 0 .4rem}.brand-content>p{color:#e9f3ffe0;font-size:1rem;line-height:1.65;margin:0;max-width:560px}.brand-features{grid-gap:.8rem;display:grid;gap:.8rem;margin-top:2.3rem}.feature{grid-gap:.65rem;align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#11244a42;border:1px solid #c2e0ff42;border-radius:12px;display:grid;gap:.65rem;grid-template-columns:52px 1fr;padding:.65rem .75rem}.feature span:first-child{align-items:center;background:#d2e6ff;border-radius:999px;color:#19325e;display:inline-flex;font-size:.88rem;font-weight:700;height:42px;justify-content:center;width:42px}.auth-form-section{align-items:center;background:#f7fbff;display:flex;justify-content:center;padding:2.8rem 2.2rem}.auth-form{background:#fff;border:1px solid #d4e2f5;border-radius:18px;box-shadow:0 20px 42px #192d4f1f;padding:2rem 1.7rem;width:min(440px,100%)}.form-header{background:linear-gradient(145deg,#1b4b84,#275e9f);border-radius:12px;margin-bottom:1.5rem;padding:.85rem .9rem}.form-header h2{color:#fff;font-size:1.55rem;letter-spacing:.01em;margin:0}.form-header p{color:#ffffffe6;font-size:.9rem;line-height:1.5;margin:.35rem 0 0}.alert{align-items:center;display:flex;font-size:.9rem;gap:.55rem;padding:.66rem .8rem}.alert-danger{background:#fff2f2;border:1px solid #f5c7c7;color:#b32121}.alert-info{background:#e8f1ff;border:1px solid #c8dbff;color:#1a4f99}.alert-success{background:#eef9f0;border:1px solid #bde3c2;color:#1e7a31}.alert-icon{align-items:center;background:#ffd9d9;border-radius:999px;display:inline-flex;font-weight:700;height:20px;justify-content:center;width:20px}.form-group{gap:.37rem;margin-bottom:.92rem}.form-group label{color:#214369;font-size:.87rem}.form-group input{background:#f9fcff;border:1px solid #b8cbe7;border-radius:10px;color:#18365d;font-size:.95rem;padding:.8rem .84rem;transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.form-group input::placeholder{color:#89a0bf}.form-group input:focus{background:#fff;border-color:#2b5b9e;box-shadow:0 0 0 4px #2a6cb026;outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.7}.btn-submit{align-items:center;background:linear-gradient(135deg,#1e4f8b,#2d73ba);border:0;border-radius:11px;color:#f6fbff;display:inline-flex;gap:.45rem;justify-content:center;letter-spacing:.01em;margin-top:.5rem;padding:.86rem 1rem;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 10px 20px #1b4a8040;transform:translateY(-1px)}.btn-submit:disabled{opacity:.72}.spinner{animation:auth-spin .75s linear infinite;border:2px solid #ffffff75;border-radius:999px;border-top-color:#fff;height:14px;width:14px}.form-footer{color:#5f7598;font-size:.88rem;margin-top:1rem;text-align:center}.form-footer a{color:#215190;font-weight:700;text-decoration:none}.form-footer a:hover{text-decoration:underline}@keyframes auth-spin{to{transform:rotate(1turn)}}@media (max-width:1060px){.auth-wrapper{grid-template-columns:1fr}.auth-brand{min-height:330px;padding:2rem 1.3rem}.auth-form-section{padding:1.4rem 1rem 2rem}}@media (max-width:640px){.auth-brand{min-height:0}.brand-logo-image{border-radius:18px;height:84px;width:84px}.feature{grid-template-columns:40px 1fr}.feature span:first-child{font-size:.75rem;height:34px;width:34px}.auth-form{padding:1.35rem 1rem}}.dashboard-container{grid-gap:1rem;background:#0000;display:grid;gap:1rem;min-height:100%}.ai-health-section,.ai-scan-section,.capacity-section,.dashboard-header,.early-warning-section,.notification-metrics-section,.quick-actions,.recent-section,.stats-grid,.summary-section{margin:0}.dashboard-header{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1.2rem 1.3rem}.dashboard-header h1{color:#17395e;font-size:1.72rem;letter-spacing:.01em;margin:0}.welcome-text{color:#5f7fa4;font-size:.95rem;margin:.4rem 0 0}.loading-text{color:#5f7fa4;padding:1rem}.error-alert{background:#fff3f3;border:1px solid #eec5c5;padding:.78rem .9rem}.form-group{grid-gap:.42rem;color:#3c5f84;display:grid;font-size:.84rem;font-weight:600;gap:.42rem}.form-actions{gap:.55rem;justify-content:flex-end}.secondary-btn{background:#fff;border:1px solid #c9daee;border-radius:8px;color:#36597d;cursor:pointer;font-weight:600;padding:.62rem 1rem}.stats-grid{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{align-items:center;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;display:flex;gap:.75rem;padding:.95rem 1rem}.stat-link-card{color:inherit;cursor:pointer;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.stat-link-card:hover{border-color:#aec8e7;box-shadow:0 8px 16px #17395e1f;transform:translateY(-1px)}.stat-icon{align-items:center;border-radius:11px;color:#fff;display:inline-flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.dashboard-icon-svg{height:19px;width:19px}.dashboard-emoji-icon{font-size:1.05rem;line-height:1}.stat-icon.projects{background:linear-gradient(135deg,#2e72b8,#1f5a95)}.stat-icon.active{background:linear-gradient(135deg,#337dc9,#2c6dad)}.stat-icon.completed{background:linear-gradient(135deg,#2f8f59,#236e46)}.stat-icon.tasks{background:linear-gradient(135deg,#2f5f8f,#21456a)}.dashboard-container .stat-label{color:#6b88ab;font-size:.72rem;font-weight:600;letter-spacing:.01em;line-height:1.28;margin:0;text-transform:none}.dashboard-container .stat-value{font-feature-settings:"tnum","tnum";color:#17395e;font-size:1.35rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.15;margin:.25rem 0 0}.dashboard-container .stat-content{align-items:flex-start;display:flex;flex-direction:column;min-width:0;width:100%}.dashboard-container .stat-label{align-items:flex-end;display:flex;min-height:2.1em}.quick-actions{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(3,minmax(0,1fr))}.action-btn{align-items:center;background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;color:#234d7d;display:inline-flex;font-size:.93rem;font-weight:700;gap:.62rem;padding:.95rem .9rem;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.action-btn:hover{border-color:#aec8e7;box-shadow:0 8px 16px #17395e1f;transform:translateY(-1px)}.action-icon{align-items:center;background:#f3f8ff;border:1px solid #d7e4f6;border-radius:9px;color:#295f97;display:inline-flex;flex-shrink:0;height:30px;justify-content:center;width:30px}.action-icon-svg{height:15px;width:15px}.action-emoji-icon{font-size:.95rem;line-height:1}.ai-scan-section,.capacity-section,.notification-metrics-section,.recent-section,.summary-section{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem}.section-header{align-items:center;border-bottom:1px solid #e4edf9;gap:.7rem;margin-bottom:.75rem;padding-bottom:.65rem}.section-header h2{color:#1d436f;font-size:1.14rem}.metrics-header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.metrics-scope{background:#f5f9ff;border:1px solid #d5e5f8;border-radius:999px;color:#4a6a8f;font-size:.78rem;padding:.2rem .55rem}.metrics-range-select{background:#fff;border:1px solid #cadcf2;border-radius:8px;color:#315980;font-size:.8rem;padding:.3rem .5rem}.btn-small{background:#2e71b3;border:1px solid #2e71b3;color:#fff;font-size:.8rem;padding:.4rem .7rem;text-decoration:none}.btn-small:hover{background:#245a8e;border-color:#245a8e}.metrics-loading{color:#5b7798;font-size:.85rem;margin-bottom:.55rem}.metrics-summary-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(3,minmax(0,1fr))}.metrics-summary-card{background:#fafcff;border:1px solid #e1ebf8;border-radius:10px;padding:.6rem .65rem}.metrics-summary-label{color:#607f9f;font-size:.8rem}.metrics-summary-value{color:#28517d;font-size:1.25rem;font-weight:700;margin-top:.25rem}.metrics-channel-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:.65rem}.metrics-channel-card{background:#fff;border:1px solid #e1ebf8;border-radius:10px;padding:.52rem .6rem}.metrics-channel-title{color:#1e4a78;font-size:.8rem;font-weight:700;margin-bottom:.2rem}.metrics-channel-row{color:#4f7094;display:flex;font-size:.8rem;gap:.35rem;justify-content:space-between}.metrics-type-list{color:#315980;display:flex;flex-wrap:wrap;font-size:.83rem;gap:.45rem;margin-top:.65rem}.metrics-type-chip{background:#f4f9ff;border:1px solid #d7e4f6;border-radius:999px;padding:.2rem .5rem}.metrics-failure-list{grid-gap:.35rem;border-top:1px dashed #dce8f8;display:grid;gap:.35rem;margin-top:.7rem;padding-top:.6rem}.metrics-failure-item{grid-gap:.45rem;background:#fcfdff;border:1px solid #e7eef9;border-radius:8px;color:#4d6c91;display:grid;font-size:.78rem;gap:.45rem;grid-template-columns:100px 130px 1fr;padding:.35rem .45rem}.ai-result-grid{grid-gap:.7rem;display:grid;gap:.7rem}.ai-health-summary-grid{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.8rem}.ai-health-list{grid-gap:.75rem;display:grid;gap:.75rem}.ai-health-item{background:#fff;border:1px solid #e3ecf9;border-radius:11px;padding:.78rem .85rem}.ai-health-top{align-items:flex-start;display:flex;gap:.7rem;justify-content:space-between}.ai-health-breakdown,.ai-health-meta,.ai-health-reasons{display:flex;flex-wrap:wrap;gap:.45rem .7rem}.ai-health-meta{color:#58779b;font-size:.82rem;margin-top:.35rem}.ai-health-breakdown{margin-top:.65rem}.ai-action-modal{width:min(720px,96vw)}.ai-action-helper{grid-gap:.3rem;background:#f7fbff;border:1px solid #d9e6f7;border-radius:10px;color:#47688f;display:grid;font-size:.88rem;gap:.3rem;margin-bottom:.85rem;padding:.8rem .9rem}.ai-action-form-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.ai-action-modal-actions{margin-top:.9rem}.ai-health-breakdown span,.ai-health-reasons span{background:#f6faff;border:1px solid #dde9f8;border-radius:999px;color:#28517d;display:inline-flex;font-size:.78rem;padding:.28rem .52rem}.ai-health-reasons{margin-top:.65rem}.ai-result-summary{background:#f6faff;border:1px solid #dce8f8;border-radius:10px;color:#28517d;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.6rem .9rem;padding:.7rem .8rem}.ai-project-card{background:#fff;border:1px solid #e3ecf9;border-radius:11px;padding:.74rem .85rem}.ai-project-head{display:flex;gap:.6rem;justify-content:space-between}.ai-project-head h3{color:#24496f;font-size:1rem;margin:0}.ai-risk{border-radius:999px;font-size:.72rem;font-weight:700;padding:.18rem .55rem;text-transform:uppercase}.ai-risk.low{background:#e7f8ec;color:#1e7c3f}.ai-risk.medium{background:#fff5e6;color:#96620a}.ai-risk.high{background:#ffecec;color:#b32727}.ai-project-meta{color:#4d6d91;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.5rem .9rem;margin-top:.4rem}.ai-block{margin-top:.6rem}.ai-block strong{color:#274f7d;display:block;margin-bottom:.25rem}.ai-block ul{color:#3c5b7f;font-size:.83rem;margin:0;padding-left:1rem}.ai-actions-row{display:flex;justify-content:flex-end;margin-top:.6rem}.ai-history-section{border-top:1px solid #e4edf9;margin-top:.85rem;padding-top:.65rem}.ai-history-section h3{color:#264a70;font-size:.98rem;margin:0 0 .45rem}.ai-history-list{grid-gap:.32rem;display:grid;gap:.32rem}.ai-history-item{background:#f9fbff;border:1px solid #e3ecf9;border-radius:8px;color:#4e6f94;display:flex;flex-wrap:wrap;font-size:.8rem;gap:.55rem;padding:.35rem .5rem}.view-all{color:#2a5d95;font-size:.85rem}.view-all:hover{color:#214a75}.capacity-head-actions{display:inline-flex;gap:.5rem}.capacity-range-select{background:#fff;border:1px solid #cadcf2;border-radius:8px;color:#315980;font-size:.8rem;padding:.3rem .5rem}.capacity-summary-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.capacity-summary-card{grid-gap:.22rem;background:#fafcff;border:1px solid #e1ebf8;border-radius:10px;display:grid;gap:.22rem;padding:.62rem .7rem}.capacity-summary-card span{color:#607f9f;font-size:.8rem}.capacity-summary-card strong{color:#28517d;font-size:1.2rem;font-weight:700}.capacity-alert-list{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:.65rem}.capacity-alert-item{background:#fafcff;border:1px solid #e1ebf8;border-radius:10px;padding:.55rem .62rem}.capacity-alert-item.critical{background:#fff5f5;border-color:#f2c0c0}.capacity-alert-item.high{background:#fff9f0;border-color:#f1d3aa}.capacity-alert-item.medium{background:#f4f9ff;border-color:#d3e4fa}.capacity-alert-message{color:#224a77;font-size:.83rem;font-weight:700}.capacity-alert-suggestion{color:#5a79a0;font-size:.8rem;margin-top:.18rem}.capacity-rebalance-panel{background:#fbfdff;border:1px solid #dde9f9;border-radius:10px;margin-top:.65rem;padding:.6rem .65rem}.capacity-rebalance-head{align-items:baseline;gap:.55rem;margin-bottom:.45rem}.capacity-rebalance-head h3{color:#24496f;font-size:.9rem;margin:0}.capacity-rebalance-head span{color:#5a79a0;font-size:.77rem}.capacity-rebalance-empty{color:#5a79a0;font-size:.8rem}.dashboard-accordion{background:#fbfdff;border:1px solid #dbe7f8;border-radius:10px;margin-top:.65rem;padding:.2rem .45rem .45rem}.dashboard-accordion>summary{color:#264e7c;cursor:pointer;font-size:.83rem;font-weight:700;list-style:none;padding:.38rem .2rem}.dashboard-accordion>summary::-webkit-details-marker{display:none}.capacity-rebalance-list{grid-gap:.45rem;display:grid;gap:.45rem}.capacity-rebalance-item{grid-gap:.22rem;border:1px solid #e5eefb;border-radius:9px;display:grid;gap:.22rem;padding:.45rem .52rem}.capacity-rebalance-route{align-items:center;color:#24496f;display:inline-flex;font-size:.81rem;gap:.35rem}.capacity-rebalance-meta{color:#5a79a0;display:flex;flex-wrap:wrap;font-size:.76rem;gap:.55rem}.capacity-table-wrap{border:1px solid #e1ebf8;border-radius:10px;margin-top:.7rem;overflow:hidden}.capacity-table-row{grid-gap:.45rem;align-items:center;border-bottom:1px solid #edf3fc;color:#395b85;display:grid;font-size:.79rem;gap:.45rem;grid-template-columns:1.2fr 1.6fr .7fr 1fr .7fr .7fr .7fr;padding:.48rem .62rem}.capacity-table-row:last-child{border-bottom:0}.capacity-head-row{background:#f5f9ff;color:#224a77;font-weight:700}.capacity-risk-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;justify-content:center;padding:.18rem .45rem;text-transform:uppercase}.capacity-risk-chip.low{background:#ebf8ee;color:#1c7240}.capacity-risk-chip.medium{background:#eef5ff;color:#275f96}.capacity-risk-chip.high{background:#fff5e7;color:#9f6203}.capacity-risk-chip.critical{background:#ffecec;color:#b32727}.early-warning-section{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem}.warning-summary-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.warning-summary-card{grid-gap:.2rem;background:#fafcff;border:1px solid #e1ebf8;border-radius:10px;display:grid;gap:.2rem;padding:.6rem .65rem}.warning-summary-card span{color:#607f9f;font-size:.8rem}.warning-summary-card strong{color:#28517d;font-size:1.15rem;font-weight:700}.warning-alert-list{grid-gap:.45rem;display:grid;gap:.45rem;margin-top:.65rem}.warning-alert-item{background:#fafcff;border:1px solid #e1ebf8;border-radius:10px;padding:.55rem .62rem}.warning-alert-item.critical{background:#fff5f5;border-color:#f2c0c0}.warning-alert-item.high{background:#fff9f0;border-color:#f1d3aa}.warning-alert-title{color:#224a77;font-size:.83rem;font-weight:700}.warning-alert-suggestions{grid-gap:.14rem;color:#5a79a0;display:grid;font-size:.79rem;gap:.14rem;margin-top:.2rem}.warning-table-wrap{border:1px solid #e1ebf8;border-radius:10px;margin-top:.7rem;overflow:hidden}.warning-table-row{grid-gap:.45rem;align-items:center;border-bottom:1px solid #edf3fc;color:#395b85;display:grid;font-size:.79rem;gap:.45rem;grid-template-columns:1.5fr .8fr .7fr .8fr .8fr .8fr;padding:.48rem .62rem}.warning-table-row:last-child{border-bottom:0}.warning-table-head{background:#f5f9ff;color:#224a77;font-weight:700}.warning-table-row a{color:#2a5d95;font-weight:700;text-decoration:none}.warning-table-row a:hover{color:#214a75}.warning-risk-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;justify-content:center;padding:.18rem .45rem;text-transform:uppercase}.warning-risk-chip.low{background:#ebf8ee;color:#1c7240}.warning-risk-chip.medium{background:#eef5ff;color:#275f96}.warning-risk-chip.high{background:#fff5e7;color:#9f6203}.warning-risk-chip.critical{background:#ffecec;color:#b32727}.empty-section{background:#fbfdff;border:1px dashed #d8e5f7;border-radius:10px;color:#6987ab;padding:1.3rem;text-align:center}.empty-section p{margin:0}.btn-primary-link{background:#2e71b3;border:1px solid #2e71b3;border-radius:8px;color:#fff;display:inline-flex;font-weight:700;margin-top:.8rem;padding:.45rem .75rem}.btn-primary-link:hover{background:#245a8e;border-color:#245a8e}.recent-projects-list{grid-gap:.65rem;display:grid;gap:.65rem}.recent-project-item{grid-gap:.85rem;align-items:center;background:#fff;border:1px solid #e3ecf9;border-radius:11px;display:grid;gap:.85rem;grid-template-columns:1fr 150px 92px;padding:.72rem .78rem}.project-info h3{font-size:.95rem;margin:0}.project-info h3 a{color:#1f436f;text-decoration:none}.project-info h3 a:hover{color:#2f5f8f}.project-location{color:#5d7b9d;font-size:.8rem;margin:.28rem 0 0}.project-dates{color:#7e99b8;font-size:.76rem;margin:.2rem 0 0}.project-progress{grid-gap:.3rem;display:grid;gap:.3rem}.progress-bar{background:#e4edf9;border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#2e71b3,#3f83c9);height:100%}.status-text{color:#5f7ea2;font-size:.76rem;margin:0;text-transform:capitalize}.summary-section h2{color:#1d436f;font-size:1.14rem;margin:0 0 .75rem}.summary-grid{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.summary-item{grid-gap:.22rem;background:#f8fbff;border:1px solid #d7e4f6;border-radius:10px;display:grid;gap:.22rem;padding:.75rem}.summary-label{color:#6785a7;font-size:.8rem}.summary-value{color:#1f436f;font-size:1.22rem;font-weight:700}@media (max-width:1180px){.quick-actions,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-summary-grid{grid-template-columns:1fr}.ai-health-summary-grid,.capacity-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-action-form-grid{grid-template-columns:1fr}.metrics-channel-grid,.warning-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-failure-item,.recent-project-item{grid-template-columns:1fr}}@media (max-width:780px){.dashboard-header{padding:1rem}.dashboard-header h1{font-size:1.4rem}.welcome-text{font-size:.9rem}.dashboard-container .stat-label{font-size:.67rem;min-height:1.9em}.dashboard-container .stat-value{font-size:1.2rem}.stat-card{gap:.7rem;padding:.85rem}.stat-icon{border-radius:10px;height:38px;width:38px}.action-btn{min-height:56px}.ai-health-summary-grid,.capacity-summary-grid,.metrics-channel-grid,.quick-actions,.stats-grid,.summary-grid,.warning-summary-grid{grid-template-columns:1fr}.ai-health-top{flex-direction:column}.ai-action-form-grid,.capacity-table-row,.warning-table-row{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column}.metrics-header-controls{justify-content:flex-start;width:100%}.ai-actions-row .btn-small,.metrics-export-btn,.metrics-range-select,.section-header .btn-small,.section-header .view-all{width:100%}.ai-actions-row,.metrics-header-controls{align-items:stretch;flex-direction:column}}@media (max-width:540px){.dashboard-container{gap:.8rem}.ai-health-section,.capacity-section,.dashboard-header,.early-warning-section,.notification-metrics-section,.quick-actions,.recent-projects-section,.summary-section{padding-left:.85rem;padding-right:.85rem}.stat-card{align-items:center;grid-template-columns:36px minmax(0,1fr)}.dashboard-container .stat-label{min-height:0}.action-btn{padding:.8rem}}.project-form{background:#fff;border-radius:10px;display:flex;flex-direction:column;gap:0;max-height:90vh;overflow:hidden}.form-header{align-items:center;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border-bottom:2px solid #f5f5f5;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.form-header h3{font-size:1.3rem;font-weight:600;margin:0}.btn-close{align-items:center;color:#fff;display:flex;justify-content:center;padding:0;transition:background-color .3s ease;width:32px}.btn-close:hover{background-color:#fff3;border-radius:50%}.form-body{display:flex;flex:1 1;flex-direction:column;gap:1.25rem;overflow-y:auto;padding:1.5rem}.form-body::-webkit-scrollbar{width:6px}.form-body::-webkit-scrollbar-track{background:#f5f5f5}.form-body::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}.form-body::-webkit-scrollbar-thumb:hover{background:#ccc}.form-group label{color:#333;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;font-size:1rem;padding:.75rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#fafbff}.form-group input.error,.form-group select.error,.form-group textarea.error{background-color:#ffebee;border-color:#f44336}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 3px #f443361a}.form-group textarea{font-size:.95rem;min-height:100px;resize:vertical}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;cursor:pointer;padding-right:2.5rem}.error-text{color:#f44336;font-size:.85rem;font-weight:500;margin-top:.25rem}.form-footer{background-color:#fafafa;border-top:1px solid #f5f5f5;display:flex;gap:1rem;padding:1.5rem}.btn-cancel,.btn-submit{font-size:1rem;padding:.75rem 1.5rem}.btn-submit{box-shadow:0 2px 8px #667eea4d}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.btn-cancel{border:1px solid #e0e0e0;color:#333}.btn-cancel:hover:not(:disabled){background-color:#eee;border-color:#ccc}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.form-header{padding:1rem}.form-header h3{font-size:1.1rem}.form-body{gap:1rem;padding:1rem}.form-footer{flex-direction:column;gap:.75rem;padding:1rem}.btn-cancel,.btn-submit{width:100%}}.projects-container{animation:fadeIn .25s ease-in;background:#f4f8fd;margin:0;min-height:100%;padding:1.4rem}.projects-header{align-items:center;border-bottom:1px solid #d8e6f7;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.95rem}.projects-header h2{color:#17395e;font-size:2rem;margin:0}.btn-primary{font-weight:700}.btn-primary:hover{background:#1a609f;border-color:#1a609f}.error-alert{background:#fff6f6;border:1px solid #f0c4c4;border-radius:9px;color:#b84242;font-size:.88rem;margin-bottom:.9rem;padding:.7rem .9rem}.form-modal{align-items:center;background:#0f1a288f;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.form-content{background:#fff;border:1px solid #d7e4f5;border-radius:12px;max-height:88vh;max-width:560px;overflow-y:auto;padding:1rem;width:95%}.projects-controls{grid-gap:.75rem;align-items:center;display:grid;gap:.75rem;grid-template-columns:1fr auto;margin-bottom:1rem}.search-input{background:#fff;border:1px solid #c7d9ef;border-radius:8px;font-size:.95rem;padding:.68rem .75rem;width:100%}.search-input:focus{border-color:#2f78c9;box-shadow:0 0 0 2px #2f78c929;outline:none}.filter-buttons{display:flex;flex-wrap:wrap;gap:.45rem}.filter-btn{background:#fff;border:1px solid #c9d9ee;border-radius:8px;color:#3e6188;padding:.56rem .86rem}.filter-btn.active{background:#1f6fb8}.filter-btn:hover{border-color:#2f78c9}.no-projects{background:#fff;border:1px solid #d7e4f6;border-radius:12px;padding:2.2rem 1rem;text-align:center}.loading,.no-projects{color:#6384a8}.projects-grid{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.project-card{background:#fff;border:1px solid #d8e6f7;border-radius:12px;box-shadow:0 2px 10px #17395e14;display:flex;flex-direction:column;overflow:hidden}.project-card-header{align-items:flex-start;background:#f6fbff;border-bottom:1px solid #e4edf7;display:flex;gap:.65rem;justify-content:space-between;padding:.95rem 1rem}.project-card-header h3{font-size:1.04rem;margin:0}.project-card-header h3 a{color:#1f436f;text-decoration:none}.project-card-header h3 a:hover{color:#2f78c9}.status-badge{color:#fff;font-size:.78rem;padding:.28rem .65rem;white-space:nowrap}.project-card-body{grid-gap:.2rem;display:grid;gap:.2rem;padding:.9rem 1rem}.project-card-body p{color:#355578;font-size:.9rem;margin:.2rem 0}.project-card-body strong{color:#1f436f}.project-card-footer{background:#fcfdff;border-top:1px solid #e5edf8;display:flex;gap:.42rem;justify-content:flex-end;padding:.72rem 1rem}.btn-card-action{align-items:center;background:#fff;border:1px solid #d0dff1;border-radius:7px;color:#35597d;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;justify-content:center;line-height:1;padding:.42rem .7rem;text-decoration:none}.btn-card-action:hover{background:#f8fbff;border-color:#b6cee8}.btn-card-action.danger{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-card-action.danger:hover{background:#fff1f1;border-color:#e69e9e}@media (max-width:1024px){.projects-controls{grid-template-columns:1fr}}@media (max-width:768px){.projects-container{padding:1rem}.projects-header{align-items:flex-start;flex-direction:column;gap:.7rem}.projects-header h2{font-size:1.65rem}.project-card-footer{flex-wrap:wrap}.btn-card-action{flex:1 1;min-width:90px}}.project-detail-container{grid-gap:.9rem;display:grid;gap:.9rem}.project-detail-header{align-items:center;background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;display:flex;gap:.7rem;justify-content:space-between;padding:.72rem .85rem}.project-detail-back-link,.project-detail-edit-link,.project-link-action,.project-primary-action,.project-side-action-btn{align-items:center;border-radius:8px;display:inline-flex;font-weight:700;gap:.28rem;justify-content:center;text-decoration:none;transition:all .2s ease}.project-detail-back-link{background:#fff;border:1px solid #d0dff1;color:#35597d;padding:.45rem .7rem}.project-detail-back-link:hover{background:#f8fbff;border-color:#b6cee8}.project-detail-inline-icon{height:14px;width:14px}.project-detail-edit-link,.project-primary-action{background:#1f6fb8;border:1px solid #1f6fb8;color:#fff;padding:.45rem .75rem}.project-detail-edit-link:hover,.project-primary-action:hover{background:#1a609f;border-color:#1a609f}.project-detail-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:1fr 320px}.project-detail-main-card,.project-side-card{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14}.project-detail-main-card{grid-gap:.82rem;display:grid;gap:.82rem;padding:.95rem}.project-title-row{align-items:flex-start;border-bottom:1px solid #e4edf9;display:flex;gap:.8rem;justify-content:space-between;padding-bottom:.6rem}.project-title-row h1{color:#17395e;font-size:1.45rem;margin:0}.project-subtitle{color:#6281a5;font-size:.88rem;margin:.18rem 0 0}.project-status-pill{border-radius:999px;color:#fff;font-size:.78rem;font-weight:700;padding:.28rem .65rem;white-space:nowrap}.project-progress-block{background:#f8fbff;border:1px solid #e2ebf7;border-radius:10px;padding:.65rem}.project-progress-head{color:#3f6288;display:flex;font-size:.84rem;justify-content:space-between;margin-bottom:.35rem}.project-progress-head strong{color:#1f436f}.project-progress-bar{background:#e4edf9;border-radius:999px;height:8px;overflow:hidden}.project-progress-fill{background:linear-gradient(90deg,#2e71b3,#3f83c9);height:100%}.project-schedule-health-box{grid-gap:.55rem;background:#fcfdff;border:1px solid #e2ebf7;border-radius:10px;display:grid;gap:.55rem;padding:.66rem}.project-schedule-health-head{align-items:center;display:flex;gap:.6rem;justify-content:space-between}.project-schedule-health-head h3{color:#1f436f;font-size:.98rem;margin:0}.project-schedule-pill{border-radius:999px;font-size:.72rem;font-weight:700;padding:.2rem .55rem;text-transform:uppercase}.project-schedule-pill.on_track{background:#ebf8ee;color:#1c7240}.project-schedule-pill.watch{background:#eef5ff;color:#275f96}.project-schedule-pill.at_risk{background:#fff5e7;color:#9f6203}.project-schedule-pill.critical{background:#ffecec;color:#b32727}.project-schedule-health-grid{grid-gap:.45rem;display:grid;gap:.45rem;grid-template-columns:repeat(4,minmax(0,1fr))}.project-schedule-health-grid article{grid-gap:.14rem;background:#fafcff;border:1px solid #e2ebf7;border-radius:8px;display:grid;gap:.14rem;padding:.45rem .5rem}.project-schedule-health-grid article span{color:#607f9f;font-size:.74rem}.project-schedule-health-grid article strong{color:#234d7d;font-size:.88rem}.project-schedule-actions,.project-schedule-reasons{background:#f9fbff;border:1px dashed #d5e4f7;border-radius:8px;padding:.45rem .52rem}.project-schedule-actions h4,.project-schedule-reasons h4{color:#234d7d;font-size:.8rem;margin:0 0 .25rem}.project-schedule-actions ul,.project-schedule-reasons ul{grid-gap:.15rem;color:#4d6d92;display:grid;font-size:.8rem;gap:.15rem;margin:0;padding-left:1rem}.project-meta-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-meta-item{grid-gap:.22rem;background:#fafcff;border:1px solid #e2ebf7;border-radius:10px;display:grid;gap:.22rem;padding:.55rem .6rem}.project-meta-item span{color:#607f9f;font-size:.76rem}.project-meta-item strong{color:#234d7d;font-size:.92rem}.project-note-box,.project-tasks-box{background:#fcfdff;border:1px solid #e2ebf7;border-radius:10px;padding:.66rem}.project-note-box h3,.project-tasks-box h3{color:#1f436f;font-size:.98rem;margin:0 0 .45rem}.project-note-box p{color:#47688e;font-size:.86rem;margin:0}.project-tasks-head{align-items:center;display:flex;gap:.55rem;justify-content:space-between;margin-bottom:.45rem}.project-link-action{background:#fff;border:1px solid #d0dff1;color:#35597d;font-size:.8rem;padding:.4rem .62rem}.project-link-action:hover{background:#f8fbff;border-color:#b6cee8}.project-empty-box{grid-gap:.52rem;border:1px dashed #d4e3f7;border-radius:8px;color:#6281a5;display:grid;gap:.52rem;padding:.8rem;text-align:center}.project-empty-box p{margin:0}.project-task-list{grid-gap:.4rem;display:grid;gap:.4rem}.project-task-item{align-items:center;background:#fff;border:1px solid #e2ebf7;border-radius:8px;display:flex;gap:.6rem;justify-content:space-between;padding:.5rem .58rem}.project-task-item h4{color:#234d7d;font-size:.88rem;margin:0}.project-task-item p{color:#5d7b9d;font-size:.8rem;margin:.15rem 0 0}.project-task-tags{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.project-tag{border-radius:999px;font-size:.74rem;font-weight:700;padding:.2rem .5rem}.project-tag.status-to_do{background:#e8f1ff;color:#2a63a0}.project-tag.status-in_progress{background:#eaf9ef;color:#2f7d49}.project-tag.status-completed{background:#ecefff;color:#3a57b0}.project-tag.status-blocked{background:#fff0f0;color:#b84242}.project-tag.priority-high{background:#ffecec;color:#b84242}.project-tag.priority-medium{background:#fff6e8;color:#9a6c1a}.project-tag.priority-low{background:#eaf9ef;color:#2f7d49}.project-detail-side{grid-gap:.9rem;align-content:start;display:grid;gap:.9rem}.project-side-card{grid-gap:.45rem;display:grid;gap:.45rem;padding:.72rem}.project-side-card h3{color:#1f436f;font-size:.96rem;margin:0 0 .25rem}.project-side-item,.project-stat-line{background:#fafcff;border:1px solid #e2ebf7;border-radius:8px;display:flex;gap:.5rem;justify-content:space-between;padding:.45rem .55rem}.project-side-item span,.project-stat-line span{color:#5f7fa4;font-size:.8rem}.project-side-item strong,.project-stat-line strong{color:#234d7d;font-size:.84rem}.project-side-actions{margin-top:.15rem}.project-side-actions,.project-side-warning-list{grid-gap:.35rem;display:grid;gap:.35rem}.project-side-warning-item{grid-gap:.14rem;background:#fafcff;border:1px solid #e2ebf7;border-radius:8px;display:grid;gap:.14rem;padding:.45rem .52rem}.project-side-warning-item strong{color:#234d7d;font-size:.84rem}.project-side-warning-item span{color:#5f7fa4;font-size:.78rem}.project-side-action-btn{background:#fff;border:1px solid #d0dff1;color:#35597d;font-size:.8rem;padding:.4rem .62rem}.project-side-action-btn:hover{background:#f8fbff;border-color:#b6cee8}.project-detail-state{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;color:#6281a5;padding:1rem}.project-detail-state.error{background:#fff6f6;border-color:#f0c4c4;color:#b84242}@media (max-width:1180px){.project-detail-grid{grid-template-columns:1fr}}@media (max-width:760px){.project-detail-container{gap:.7rem}.project-detail-header{align-items:stretch;flex-direction:column}.project-detail-back-link,.project-detail-edit-link,.project-link-action,.project-primary-action,.project-side-action-btn{width:100%}.project-title-row{align-items:flex-start;flex-direction:column}.project-meta-grid,.project-schedule-health-grid{grid-template-columns:1fr}.project-task-item{align-items:flex-start;flex-direction:column}.project-task-tags{justify-content:flex-start;width:100%}.project-side-item,.project-stat-line{align-items:flex-start;flex-direction:column}}.tasks-container{animation:fadeIn .3s ease-in;background:#f4f8fd;margin:0;min-height:100%;padding:2rem}.error-alert,.success-alert{border:1px solid #0000;border-radius:10px;font-weight:600;margin-bottom:1rem;padding:.9rem 1rem}.success-alert{border-color:#b7dec2}.error-alert{background:#fff1f1;border-color:#f0c5c5;color:#a63131}.tasks-header{align-items:center;border-bottom:2px solid #0000000d;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.tasks-header h1{color:#17395e;font-size:2rem;margin:0}.header-actions{align-items:center;display:flex;gap:1rem}.btn-back{background-color:#f5f5f5;border:none;border-radius:6px;color:#666;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.btn-back:hover{background-color:#e0e0e0;color:#333}.btn-add-task{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.75rem;transition:all .3s ease}.btn-add-task:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.tasks-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.task-board-selector{background:#f8fbff;border:1px solid #d8e5f6;border-radius:10px;margin-bottom:1rem;padding:.85rem .95rem}.task-board-title{color:#234c7c;font-size:.9rem;font-weight:700;margin-bottom:.55rem}.task-board-actions{display:flex;flex-wrap:wrap;gap:.55rem}.task-board-empty{color:#5e7da0;font-size:.82rem;margin-top:.5rem}.task-board-manage-row{margin-top:.55rem}.status-filter{display:flex;flex-wrap:wrap;gap:.75rem}.filter-btn{border:2px solid #ddd;border-radius:6px;color:#666;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.kanban-board{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.kanban-column{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden}.column-header{align-items:center;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);color:#fff;display:flex;justify-content:space-between;padding:1.25rem}.column-title{font-size:1.1rem;font-weight:700;margin:0}.task-count{background:#ffffff4d;border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.column-content{display:flex;flex:1 1;flex-direction:column;gap:1rem;min-height:400px;overflow-y:auto;padding:1rem}.column-content::-webkit-scrollbar{width:6px}.column-content::-webkit-scrollbar-track{background:#0000}.column-content::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}.column-content::-webkit-scrollbar-thumb:hover{background:#bbb}.task-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 2px 6px #0000000f;cursor:move;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;transition:all .3s ease}.task-card:hover{border-color:#1f6fb8;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.focused-task-card{border-color:#2f78c9;box-shadow:0 0 0 3px #2f78c92e}.task-title{color:#333;font-size:1rem;font-weight:600;margin:0}.task-parent-chip{align-items:center;background:#eef5ff;border:1px solid #c6dbf3;border-radius:999px;color:#2d628f;display:inline-flex;font-size:.75rem;padding:.2rem .5rem}.task-description{color:#666;font-size:.9rem;line-height:1.4;margin:0}.task-meta{color:#999;flex-wrap:wrap;font-size:.85rem;justify-content:space-between}.task-assigned,.task-meta{align-items:center;display:flex;gap:.5rem}.task-avatar{align-items:center;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:700;height:24px;justify-content:center;width:24px}.task-due-date{color:#999;font-size:.85rem}.task-priority{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .65rem;text-transform:uppercase}.priority-high{background-color:#ffebee;color:#c62828}.priority-medium{background-color:#fff3e0;color:#e65100}.priority-low{background-color:#f1f8e9;color:#558b2f}.task-actions{display:flex;gap:.5rem;margin-top:.5rem}.btn-task-delete,.btn-task-edit{background:#fff;border:1px solid #d0dff1;border-radius:7px;color:#35597d;cursor:pointer;flex:1 1;font-size:.82rem;font-weight:600;padding:.42rem .7rem;transition:all .2s ease}.btn-task-edit{border-color:#d0dff1;color:#35597d}.btn-task-edit:hover{background:#f8fbff;border-color:#b6cee8}.btn-task-delete{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-task-delete:hover{background:#fff1f1;border-color:#e69e9e}.empty-column{align-items:center;color:#bbb;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:2rem 1rem;text-align:center}.empty-text{font-size:.95rem;margin:0}.tasks-list-view{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;overflow:hidden}.tasks-list{display:flex;flex-direction:column}.task-item{grid-gap:1rem;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;gap:1rem;grid-template-columns:1fr 150px 120px 150px 120px;padding:1.5rem;transition:all .3s ease}.task-item:last-child{border-bottom:none}.task-item:hover{background-color:#f9f9f9}.task-item-title h3{color:#333;font-size:1rem;margin:0 0 .35rem}.task-item-desc{color:#999;font-size:.9rem;margin:0}.task-item-assigned{color:#666;font-size:.9rem}.task-item-date{color:#999;font-size:.9rem}.task-item-status{border-radius:6px;display:inline-block;font-size:.85rem;font-weight:600;padding:.4rem .8rem;text-transform:capitalize}.status-to_do{background-color:#e3f2fd;color:#1976d2}.status-in_progress{background-color:#e8f5e9;color:#388e3c}.status-completed{background-color:#f3e5f5;color:#7b1fa2}.task-item-actions{display:flex;gap:.5rem}.btn-small{border-radius:7px;font-weight:600;padding:.42rem .7rem}.modal-overlay{bottom:0;left:0;right:0;top:0}.modal-content{max-width:500px}.modal-header{border-bottom:2px solid #f0f0f0}.modal-title{color:#333}.btn-close{color:#999;font-size:1.5rem;transition:color .3s ease}.btn-close:hover{color:#333}.form-group{margin-bottom:1.5rem}.form-label{color:#333;font-weight:600}.form-input,.form-select,.form-textarea{border:2px solid #e0e0e0;border-radius:6px;padding:.75rem;transition:all .3s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1f6fb8;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-error{color:#cc4b4b;font-size:.85rem;margin-top:.35rem}.btn-cancel,.btn-submit{border-radius:6px;font-weight:600;padding:.75rem;transition:all .3s ease}.btn-submit{box-shadow:0 4px 12px #667eea4d}.btn-submit:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.btn-cancel{background-color:#f5f5f5;color:#666}.btn-cancel:hover{background-color:#e0e0e0}.loading{color:#999}@media (max-width:1200px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.tasks-container{padding:1rem}.tasks-header{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{width:100%}.kanban-board,.task-item{grid-template-columns:1fr}.task-item{gap:.75rem}.task-item-actions,.task-item-assigned,.task-item-date,.task-item-status,.task-item-title{display:block;width:100%}.task-item-actions{display:flex;margin-top:.75rem}}.puantaj-container{animation:fadeIn .3s ease-in;background:#f4f8fd;margin:0;min-height:100%;padding:2rem}.puantaj-header{align-items:flex-end;border-bottom:2px solid #0000000d;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.5rem}.puantaj-header h1{color:#17395e;font-size:2rem;margin:0}.header-stats{display:flex;flex-wrap:wrap;gap:1rem}.stat-box{background:#fff;border:1px solid #d7e5f6;border-radius:12px;min-width:108px;padding:.9rem 1rem;text-align:center}.stat-label{color:#6d87a3;font-size:.78rem;letter-spacing:.04em;margin-bottom:.35rem}.stat-value{font-feature-settings:"tnum","tnum";color:#1f6fb8;font-size:1.6rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.puantaj-controls{align-items:stretch;display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:1.5rem}.btn-new-entry{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:10px;box-shadow:0 4px 12px #1f6fb838;color:#fff;cursor:pointer;font-weight:700;padding:.8rem 1.4rem;transition:all .2s ease}.btn-new-entry:hover{box-shadow:0 8px 20px #1f6fb83d;transform:translateY(-1px)}.btn-export{background:linear-gradient(135deg,#1d8a55,#2d6e4b);box-shadow:0 4px 12px #1d8a5533}.filter-group{display:flex;flex-wrap:wrap;gap:.65rem}.filter-btn{background-color:#fff;border:1px solid #d2dfef;border-radius:10px;color:#46617f;cursor:pointer;font-weight:600;padding:.72rem 1rem;transition:all .2s ease}.filter-btn.active{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);color:#fff}.filter-btn.active,.filter-btn:hover{border-color:#1f6fb8}.date-filter-input{background:#fff;border:1px solid #d2dfef;border-radius:10px;color:#2a4868;font-size:.95rem;min-height:46px;padding:.72rem 1rem}.pending-review-panel{background:#fff7e6;border:1px solid #ffe0a3;border-radius:12px;margin-bottom:1rem;padding:1rem}.pending-review-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.65rem}.pending-review-empty{color:#8a6d3b}.pending-review-list{grid-gap:.55rem;display:grid;gap:.55rem}.pending-review-card{align-items:center;background:#fff;border:1px solid #f3e3bf;border-radius:10px;display:flex;gap:.8rem;justify-content:space-between;padding:.7rem .8rem}.pending-review-info{color:#244566;font-size:.92rem}.pending-review-actions{display:flex;flex-wrap:wrap;gap:.4rem}.puantaj-table{background:#fff;border-radius:14px;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;overflow:hidden}.table-header{grid-gap:1rem;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);color:#fff;display:grid;font-size:.9rem;font-weight:700;gap:1rem;grid-template-columns:1.5fr 1fr 1fr 1.2fr 1fr 1fr 1.2fr;letter-spacing:.04em;padding:1.25rem;text-transform:uppercase}.table-body{display:flex;flex-direction:column}.table-row{grid-gap:1rem;align-items:center;border-bottom:1px solid #eef3f8;display:grid;gap:1rem;grid-template-columns:1.5fr 1fr 1fr 1.2fr 1fr 1fr 1.2fr;padding:1.15rem 1.25rem;transition:background .2s ease}.table-row:last-child{border-bottom:none}.table-row:hover{background-color:#f9fbff}.table-cell{align-items:center;display:flex;gap:.5rem;min-width:0}.worker-name{color:#17395e;font-weight:700}.date-cell{color:#597491;font-size:.95rem}.hours-cell{color:#1f6fb8;font-size:1.02rem;font-weight:700}.entry-description{color:#516c88;font-size:.9rem;line-height:1.45}.status-badge{border-radius:999px;display:inline-block;font-size:.82rem;font-weight:700;padding:.4rem .8rem;text-transform:capitalize}.status-pending{background-color:#fff3e0;color:#e65100}.status-approved{background-color:#e8f5e9;color:#388e3c}.status-rejected{background-color:#ffebee;color:#c62828}.table-actions{display:flex;flex-wrap:wrap;gap:.45rem}.btn-small{border:1px solid #d0dff1;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:700;padding:.48rem .78rem;transition:all .2s ease}.btn-edit,.btn-small{background:#fff;color:#35597d}.btn-edit{border-color:#d0dff1}.btn-edit:hover{background:#f8fbff;border-color:#b6cee8}.btn-delete{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-delete:hover{background:#fff1f1;border-color:#e69e9e}.btn-approve{background-color:#2f8f59;border-color:#2f8f59;color:#fff}.btn-approve:hover{background-color:#257648}.btn-reject{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-reject:hover{background:#fff1f1;border-color:#e69e9e}.btn-new-entry:disabled,.btn-small:disabled,.filter-btn:disabled{cursor:not-allowed;opacity:.6}.empty-action{margin-top:1rem}.modal-content{margin:2rem auto;max-width:640px}.form-grid{grid-gap:1rem 1.2rem;display:grid;gap:1rem 1.2rem;grid-template-columns:repeat(2,1fr)}.form-group{gap:.5rem}.form-group.full{margin-top:1rem}.date-filter-input:focus,.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1f6fb8;box-shadow:0 0 0 3px #1f6fb81f;outline:none}.form-textarea{min-height:110px}.field-help{font-size:.84rem;line-height:1.45}.field-help-warning{color:#a06c00}.form-actions{margin-top:2rem;padding-top:1.5rem}.error-alert,.success-alert{font-weight:600;padding:1rem 1.2rem}.puantaj-mobile-groups{grid-gap:.75rem;display:grid;gap:.75rem;margin-bottom:1rem}.mobile-team-group{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 12px #17395e14;overflow:hidden}.mobile-team-group-toggle{align-items:center;background:#f7fbff;border:0;cursor:pointer;display:flex;gap:.8rem;justify-content:space-between;padding:.9rem 1rem;width:100%}.mobile-team-group-meta{grid-gap:.18rem;display:grid;gap:.18rem;text-align:left}.mobile-team-group-meta strong{color:#1f436f;font-size:.98rem}.mobile-team-group-meta span{color:#5f7ea2;font-size:.8rem}.mobile-team-group-hours{color:#1f6fb8;font-size:1rem;font-weight:700}.mobile-team-group-body{grid-gap:.7rem;border-top:1px solid #e6effa;display:grid;gap:.7rem;padding:.8rem}.mobile-entry-card{background:#fcfdff;border:1px solid #e2ebf7;border-radius:12px;padding:.8rem}.mobile-entry-row,.mobile-entry-top{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.mobile-entry-top strong{color:#1d4269;font-size:.93rem}.mobile-entry-row{color:#5f7ea2;font-size:.84rem;margin-top:.4rem}.mobile-entry-row strong{color:#1f6fb8}.mobile-entry-note{color:#4e6f95;font-size:.83rem;line-height:1.42;margin-top:.42rem}.mobile-entry-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.65rem}.puantaj-summary-footer{background:#fafcff;border-top:1px solid #eef3f8;padding:1rem 1.25rem}.puantaj-summary-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem}.puantaj-summary-pill{background:#fff;border:1px solid #e4edf7;border-radius:10px;min-width:120px;padding:.65rem .8rem}.puantaj-summary-user{color:#66809c;font-size:.84rem}.puantaj-summary-hours{color:#1f6fb8;font-weight:700;margin-top:.18rem}@media (max-width:1200px){.table-header,.table-row{gap:.75rem;grid-template-columns:1fr .8fr .7fr 1fr .9fr .9fr 1fr}}@media (max-width:768px){.puantaj-container{padding:1rem}.puantaj-header{align-items:stretch;flex-direction:column}.puantaj-header h1{font-size:1.45rem}.header-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.stat-box{min-width:0;padding:.75rem .7rem}.puantaj-controls{flex-direction:column}.puantaj-controls>*{width:100%}.filter-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.btn-new-entry,.date-filter-input,.filter-btn{min-height:48px}.pending-review-card,.pending-review-header{align-items:stretch;flex-direction:column}.pending-review-actions{width:100%}.pending-review-actions .btn-small{flex:1 1;min-height:42px}.table-header,.table-row{gap:0;grid-template-columns:1fr}.table-header{display:none}.table-row{border:1px solid #e0e8f2;border-radius:12px;margin:0 0 1rem;padding:1rem}.table-cell{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:88px 1fr;padding:.28rem 0}.table-cell:before{color:#7990a7;content:attr(data-label);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.table-actions{margin-top:.2rem}.form-grid{grid-template-columns:1fr}.modal-content{margin:1rem auto;max-width:100%;padding:1.25rem;width:calc(100% - 1rem)}.form-actions{flex-direction:column}}@media (max-width:540px){.filter-group,.header-stats{grid-template-columns:1fr}.mobile-team-group-toggle{padding:.82rem}.mobile-entry-actions .btn-small,.puantaj-summary-pill{width:100%}.mobile-entry-row,.mobile-entry-top{align-items:flex-start;flex-direction:column}.table-cell{gap:.35rem;grid-template-columns:1fr}}.daily-reports-container{background:#f4f8fd;min-height:100%;padding:1.4rem}.reports-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.reports-header h3{color:#17395e;font-size:1.45rem;margin:0}.btn-primary{background:#1f6fb8;border:1px solid #1f6fb8;font-weight:600;padding:.62rem 1rem}.report-card{background:#fff;border:1px solid #d8e6f7;border-radius:12px;box-shadow:0 2px 10px #17395e14;margin-bottom:1rem;overflow:hidden}.report-header{align-items:center;background:#f6fbff;border-bottom:1px solid #e4edf7;display:flex;gap:.75rem;justify-content:space-between;padding:.95rem 1rem}.report-date{color:#1f3f64;font-size:1rem;font-weight:700;margin:0}.report-meta{color:#5a7798;font-size:.82rem;margin-top:.2rem}.weather-badge{background:#e8f4ff;border-radius:999px;color:#2d6ba1;font-size:.8rem;font-weight:700;padding:.32rem .72rem}.report-body{padding:.95rem 1rem}.report-summary{color:#355578;font-size:.92rem;line-height:1.45;margin-bottom:.85rem;white-space:pre-line}.report-stats-grid{grid-gap:.55rem;background:#f8fbff;border:1px solid #e2ebf6;border-radius:9px;display:grid;gap:.55rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:.65rem}.stat-item{display:flex;flex-direction:column;gap:.15rem}.stat-label{color:#7392b1;font-size:.72rem;font-weight:700;text-transform:uppercase}.stat-value{color:#234566;font-size:.86rem;font-weight:600}.stat-value.stat-text{font-weight:500;line-height:1.3;white-space:normal;word-break:break-word}.stat-value.danger{color:#b43f3f}.report-footer{background:#fcfdff;border-top:1px solid #e5edf8;display:flex;gap:.42rem;justify-content:flex-end;padding:.72rem 1rem}.btn-icon{font-size:.82rem;padding:.42rem .7rem}.modal-overlay{background:#0f1a288f;padding:1rem}.modal-content{border:1px solid #d7e4f5;max-height:90vh;padding:1rem;width:min(680px,95vw)}.report-modal{width:min(920px,96vw)}.modal-header{margin-bottom:.7rem}.modal-title{color:#1f436f;font-size:1.1rem}.btn-close{background:#f3f8ff;border:1px solid #d5e3f5;color:#40658e;height:30px;width:30px}.form-inline-actions{margin-bottom:.72rem;text-align:right}.ai-draft-meta{background:#f8fbff;border:1px solid #d8e5f5;border-radius:9px;margin-bottom:.8rem;padding:.7rem .8rem}.ai-draft-tags{display:flex;flex-wrap:wrap;gap:.42rem}.ai-risk-tag{align-items:center;background:#eef6ff;border:1px solid #cfe0f4;border-radius:999px;color:#2c628f;display:inline-flex;font-size:.78rem;font-weight:700;padding:.2rem .58rem}.ai-draft-summary{color:#49698e;font-size:.82rem;line-height:1.4;margin:.55rem 0 0}.btn-link{background:#eef6ff;border:1px solid #bfd6f2;border-radius:8px;color:#2b608f;cursor:pointer;font-size:.8rem;padding:.34rem .64rem}.form-row{grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:.7rem}.form-group{margin-bottom:.78rem}.form-group label{color:#3c5f84;display:block;font-size:.84rem;margin-bottom:.42rem}.form-control{background:#fff;border:1px solid #c7d9ef;border-radius:7px;font-size:.9rem;padding:.6rem .65rem}.team-picker-row{grid-gap:.45rem;align-items:center;display:grid;gap:.45rem;grid-template-columns:1fr auto}.personnel-empty-note{background:#f7fbff;border:1px dashed #cadcf1;border-radius:7px;color:#6384a8;font-size:.8rem;margin-top:.55rem;padding:.52rem .6rem}.team-personnel-groups{grid-gap:.55rem;display:grid;gap:.55rem;margin-top:.55rem}.team-personnel-card{background:#f9fbff;border:1px solid #d7e4f5;border-radius:8px;padding:.55rem}.team-personnel-header{align-items:center;color:#234566;display:flex;font-size:.86rem;gap:.5rem;justify-content:space-between;margin-bottom:.35rem}.danger-link{color:#b04444;font-size:.78rem}.team-personnel-list{grid-gap:.22rem;display:grid;gap:.22rem;max-height:150px;overflow-y:auto;padding-right:.2rem}.team-personnel-item{align-items:center;color:#355578;display:flex;font-size:.83rem;gap:.4rem}.personnel-stats{grid-gap:.45rem;display:grid;gap:.45rem;margin-top:.55rem}.manual-entry-row{display:flex;gap:.4rem;margin-top:.42rem}.manual-entry-row .form-control{flex:1 1}.form-actions{gap:.7rem;margin-top:.95rem}.btn-submit{background:#2e7cc4;border:1px solid #2e7cc4;border-radius:7px}.btn-cancel,.btn-submit{cursor:pointer;flex:1 1;font-weight:700;padding:.62rem}.btn-cancel{background:#f4f8fc;border:1px solid #c8d8eb;border-radius:7px;color:#4a6788}.detail-grid{grid-gap:.48rem;display:grid;gap:.48rem}.detail-row{border:1px solid #e2edf9;border-radius:8px;padding:.56rem .68rem}.detail-label{color:#5f7ea4;font-size:.8rem;margin-bottom:.2rem}.detail-value{color:#1f436f;font-size:.9rem;white-space:pre-wrap}@media (max-width:860px){.form-row,.team-picker-row{grid-template-columns:1fr}.report-footer{flex-wrap:wrap}.btn-icon{flex:1 1}}.photos-container{animation:fadeIn .3s ease-in;background:#f4f8fd;margin:0;min-height:100%;padding:2rem}.photos-header{align-items:flex-end;border-bottom:2px solid #0000000d;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.5rem}.photos-header h1{color:#17395e;font-size:2rem;margin:0}.photos-subtitle{color:#5a7899;margin:.45rem 0 0;max-width:560px}.btn-upload-photo{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:10px;box-shadow:0 4px 12px #1f6fb838;color:#fff;cursor:pointer;font-weight:700;padding:.8rem 1.4rem;transition:all .2s ease}.btn-upload-photo:hover{box-shadow:0 8px 16px #1f6fb842;transform:translateY(-1px)}.photos-controls{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr);margin-bottom:1.5rem}.project-filter-select,.search-input{border:1px solid #d3dfef;border-radius:10px;font-size:.95rem;min-height:48px;padding:.72rem .95rem;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus,.project-filter-select:focus,.search-input:focus{border-color:#1f6fb8;box-shadow:0 0 0 3px #1f6fb81f;outline:none}.photos-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:2rem}.photo-item{background:#fff;border:1px solid #e0eaf6;border-radius:14px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden;transition:all .25s ease}.photo-item:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-3px)}.photo-image-container{aspect-ratio:4/3;background:#f5f5f5;overflow:hidden;position:relative}.photo-image-container img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.photo-item:hover .photo-image-container img{transform:scale(1.04)}.photo-overlay{align-items:flex-end;background:linear-gradient(0deg,#000000a6,#0003);display:flex;gap:.75rem;inset:0;justify-content:space-between;opacity:0;padding:1rem;position:absolute;transition:opacity .2s ease}.photo-item:hover .photo-overlay{opacity:1}.btn-delete-photo,.btn-view-photo{align-items:center;border:none;border-radius:999px;cursor:pointer;display:flex;font-size:.82rem;font-weight:700;justify-content:center;min-height:40px;min-width:44px;padding:0 12px}.btn-view-photo{background:#fff;color:#1f6fb8}.btn-delete-photo{background:#cc4b4b;color:#fff}.photo-placeholder{align-items:center;background:linear-gradient(135deg,#eef4fb,#f0f3ff);color:#859cb4;display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.photo-info{grid-gap:.55rem;display:grid;gap:.55rem;padding:1rem}.photo-title{color:#17395e;font-size:.98rem;font-weight:700;line-height:1.4;margin:0}.photo-meta-list{grid-gap:.25rem;display:grid;gap:.25rem}.photo-date{color:#5f7894;font-size:.85rem;line-height:1.4;margin:0}.modal-overlay{animation:fadeIn .2s ease-in;background-color:#00000080;overflow-y:auto}.modal-content{animation:slideUp .3s ease-out;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:620px;padding:2rem;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e8eef6;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.modal-title{color:#17395e;font-size:1.3rem;margin:0}.btn-close{background:none;border:none;color:#7b92ad;cursor:pointer;font-size:1.8rem}.form-group{margin-bottom:1.15rem}.form-label{color:#28496d;display:block;font-size:.95rem;font-weight:700;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{border:1px solid #d5e2f2;border-radius:10px;font-family:inherit;font-size:.95rem;padding:.82rem .9rem;transition:all .2s ease;width:100%}.file-upload{border:2px dashed #cddced;border-radius:12px;cursor:pointer;padding:1.6rem 1rem;position:relative;text-align:center;transition:all .2s ease}.file-upload:hover{background-color:#eef4fb;border-color:#1f6fb8}.file-upload input{display:none}.file-upload-text{color:#6c87a3;font-size:.95rem;margin:0}.file-upload-icon{font-size:2rem;margin-bottom:.5rem}.form-textarea{min-height:100px;resize:vertical}.form-actions{border-top:1px solid #e8eef6;gap:1rem;margin-top:1.5rem;padding-top:1.25rem}.btn-cancel,.btn-submit{border:none;border-radius:10px;font-weight:700;padding:.82rem}.btn-submit{background:linear-gradient(135deg,#1f6fb8,#2f5f8f)}.btn-cancel{background-color:#f1f4f8;color:#5f748c}.lightbox-overlay{align-items:center;animation:fadeIn .2s ease-in;background:#000000e6;display:flex;inset:0;justify-content:center;position:fixed;z-index:1001}.lightbox-content{max-height:92vh;max-width:92vw;position:relative}.lightbox-image{border-radius:12px;max-height:92vh;max-width:100%}.lightbox-close{background:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.5rem;height:42px;position:absolute;right:1rem;top:1rem;width:42px}.empty-state{background:#fff;border:1px solid #d8e5f6;border-radius:14px;box-shadow:0 2px 8px #00000014;color:#6d87a3;padding:3rem 2rem}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.3}.empty-text{font-size:1rem;margin-bottom:1rem}.empty-action{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-block;font-weight:700;padding:.8rem 1.4rem}.success-alert{background:#edf8f0;border:1px solid #b7dec2;border-radius:10px;color:#1f6b39}.error-alert,.success-alert{font-weight:700;margin-bottom:1rem;padding:1rem 1.25rem}.error-alert{background:linear-gradient(135deg,#cc4b4b,#b74444);border-radius:10px;color:#fff}.loading{color:#7a91aa;font-size:1.1rem;padding:3rem 2rem}.photo-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.stat-card{background:#fff;border:1px solid #d8e5f6;border-radius:14px;box-shadow:0 2px 8px #00000014;padding:1.2rem;text-align:center}.stat-card h3{color:#6d87a3;font-size:.8rem;font-weight:700;margin:0 0 .55rem;text-transform:uppercase}.stat-card p{color:#1f6fb8;font-size:1.7rem;font-weight:700;margin:0}.offline-photo-panel{background:#fff;border:1px solid #d8e5f6;border-radius:14px;box-shadow:0 2px 8px #0000000f;margin-bottom:1.5rem;padding:1.25rem}.offline-photo-panel-head{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.offline-photo-panel-head h3{color:#17395e;margin:0 0 .3rem}.offline-photo-panel-head p{color:#59799d;font-size:.92rem;margin:0}.offline-photo-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.offline-photo-card{background:#f8fbff;border:1px solid #e0ebf7;border-radius:12px;overflow:hidden}.offline-photo-preview{aspect-ratio:4/3;background:#edf3fb}.offline-photo-preview img{height:100%;object-fit:cover;width:100%}.offline-photo-meta{display:flex;flex-direction:column;gap:.3rem;padding:.85rem .9rem 1rem}.offline-photo-meta strong{color:#17395e;font-size:.95rem}.offline-photo-meta span{color:#567391;font-size:.84rem}@media (max-width:1100px){.photos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.photos-container{padding:1rem}.form-actions,.offline-photo-panel-head,.photos-header{align-items:stretch;flex-direction:column}.photo-stats,.photos-controls,.photos-grid{grid-template-columns:1fr}.btn-cancel,.btn-submit,.btn-upload-photo,.project-filter-select,.search-input{min-height:48px}.photo-overlay{align-items:flex-end;background:linear-gradient(0deg,#0000008c,#0000);justify-content:flex-end;opacity:1;padding:.75rem}.modal-content{max-width:100%;padding:1.25rem;width:calc(100% - 1rem)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.users-container{margin:0 auto;max-width:1400px;padding:40px}.users-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:40px;padding-bottom:20px}.users-header h1{color:#17395e;font-size:32px;font-weight:700;margin:0}.add-user-btn{background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .3s ease}.add-user-btn:hover{box-shadow:0 6px 16px #667eea99;transform:translateY(-2px)}.error-message{background-color:#fee;border-left:4px solid #c33;border-radius:8px;color:#c33;margin-bottom:20px;padding:15px}.user-form-container{background:#f4f8fd;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:40px;padding:30px}.user-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#17395e;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#1f6fb8;box-shadow:0 0 0 3px #667eea1a;outline:none}.submit-btn{align-self:flex-start;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.submit-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.users-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.users-filter-bar{align-items:center;display:flex;gap:10px;margin-bottom:18px}.users-filter-bar label{color:#17395e;font-size:14px;font-weight:600}.users-filter-bar select{background:#fff;border:1px solid #c8d9ee;border-radius:8px;min-width:240px;padding:8px 10px}.user-group{margin-bottom:18px}.user-group-header{align-items:center;background:#f6fbff;border:1px solid #d7e4f6;border-radius:10px;color:#17395e;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px;padding:12px 14px;width:100%}.user-group-left{align-items:center;display:inline-flex;gap:10px}.user-group-dot{border-radius:999px;box-shadow:0 0 0 2px #17395e14;height:10px;width:10px}.user-group-right{align-items:center;color:#45678f;display:inline-flex;font-size:13px;gap:10px}.user-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;transition:all .3s ease}.user-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.user-header{align-items:flex-start;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.user-card-info h3{color:#17395e;font-size:18px;font-weight:700;margin:0}.user-card-email{color:#666;display:block;font-size:13px;margin:4px 0 0}.role-badge{border-radius:6px;color:#fff;font-size:12px;font-weight:600;padding:8px 12px;white-space:nowrap}.user-details{margin:16px 0}.detail-item{color:#555;display:flex;font-size:13px;gap:8px;margin-bottom:10px}.detail-item .label{color:#17395e;font-weight:600;min-width:100px}.detail-item .value{color:#666;flex:1 1}.user-actions{border-top:1px solid #e0e0e0;display:flex;gap:10px;margin-top:16px;padding-top:16px}.delete-btn{background:#fff7f7;border:1px solid #f0c4c4;border-radius:7px;color:#ac3f3f;cursor:pointer;flex:1 1;font-weight:600;padding:.42rem .7rem;transition:all .2s ease}.delete-btn:hover{background:#fff1f1;border-color:#e69e9e}.edit-btn{background:#fff;border:1px solid #d0dff1;border-radius:7px;color:#35597d;cursor:pointer;flex:1 1;font-weight:600;padding:.42rem .7rem;transition:all .2s ease}.edit-btn:hover{background:#f8fbff;border-color:#b6cee8}.reminder-btn{background:#eef9f0;border:1px solid #b8e2c2;border-radius:6px;color:#1f7a34;cursor:pointer;flex:1 1;font-weight:600;padding:10px;transition:all .3s ease}.reminder-btn:hover{background:#dff3e4;border-color:#7ec793}.edit-user-panel{background:#f8fbff;border:1px solid #dbe7f7;border-radius:8px;margin-top:14px;padding:12px}.edit-actions{display:flex;gap:8px;margin-top:8px}.cancel-btn,.save-btn{border:1px solid #0000;border-radius:6px;cursor:pointer;flex:1 1;font-weight:600;padding:9px}.save-btn{background:#2f78c9;border-color:#2f78c9;color:#fff}.save-btn:hover{background:#2668b0}.cancel-btn{background:#fff;border-color:#c8d8ef;color:#3f5f85}.cancel-btn:hover{background:#f2f7ff}.empty-state{color:#999;grid-column:1/-1;padding:60px 20px;text-align:center}.empty-state p{font-size:15px;margin:10px 0}.loading{color:#666;font-size:16px;padding:40px}@media (max-width:1024px){.form-row{grid-template-columns:1fr}.users-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.users-container{padding:20px 16px 28px}.users-header{align-items:flex-start;flex-direction:column;gap:15px}.users-header h1{font-size:28px}.add-user-btn,.submit-btn{width:100%}.user-card,.user-form-container{padding:18px}.users-grid{grid-template-columns:1fr}.users-filter-bar{align-items:flex-start;flex-direction:column}.users-filter-bar select{min-width:0;width:100%}.edit-actions,.user-actions,.user-group-header,.user-group-left,.user-group-right,.user-header{align-items:stretch;flex-direction:column}.edit-actions button,.user-actions button{width:100%}.detail-item{flex-direction:column;gap:4px}.detail-item .label{min-width:0}}.teams-container{grid-gap:1rem;background:#0000;display:grid;gap:1rem;grid-template-columns:320px 1fr;min-height:100%}.teams-content,.teams-sidebar{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;overflow:hidden}.teams-sidebar{display:flex;flex-direction:column}.sidebar-header-teams{align-items:center;border-bottom:1px solid #e2ebf7;display:flex;gap:.6rem;justify-content:space-between;padding:.9rem 1rem}.sidebar-header-teams h3{color:#1f436f;font-size:1rem;margin:0}.btn-add{align-items:center;background:#f4f9ff;border:1px solid #c4d8ef;border-radius:9px;color:#2d629a;cursor:pointer;display:inline-flex;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.btn-add:hover{background:#eaf3ff;border-color:#a8c5e6}.btn-add-icon{display:block;font-size:1.05rem;font-weight:700;line-height:1}.teams-list{flex:1 1;overflow-y:auto;padding:.5rem}.team-item{grid-gap:.55rem;align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:grid;gap:.55rem;grid-template-columns:30px 1fr auto;margin-bottom:.35rem;padding:.65rem .7rem;transition:background .18s ease,border-color .18s ease}.team-item:hover{background:#f8fbff;border-color:#d7e4f6}.team-item.active{background:#eef6ff;border-color:#c5dbf5}.team-icon{align-items:center;background:#f5f9ff;border:1px solid #cde0f5;border-radius:8px;color:#345d86;display:inline-flex;font-size:.64rem;font-weight:700;height:28px;justify-content:center;letter-spacing:.04em;width:28px}.team-icon.internal{background:#eef6ff;color:#2b5f96}.team-icon.subcontractor{background:#fff7eb;border-color:#f2d5aa;color:#9b5f11}.team-item-name{color:#21476f;font-size:.9rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-list-text{grid-gap:.14rem;display:grid;gap:.14rem;min-width:0}.resource-list-meta{color:#6a86a8;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-item-actions{display:flex;gap:.35rem}.btn-icon{background:#fff;border:1px solid #d0dff1;border-radius:7px;color:#35597d;cursor:pointer;font-size:.78rem;font-weight:600;padding:.36rem .58rem}.btn-icon:hover{background:#f8fbff;border-color:#b6cee8}.btn-icon.danger{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-icon.danger:hover{background:#fff1f1;border-color:#e69e9e}.teams-content{overflow-y:auto;padding:1rem}.content-header{align-items:center;border-bottom:1px solid #e2ebf7;display:flex;gap:.8rem;justify-content:space-between;margin-bottom:.9rem;padding-bottom:.75rem}.content-header h2{color:#1f436f;font-size:1.2rem;margin:0}.team-badge{background:#edf4ff;border:1px solid #d3e2f6;border-radius:999px;color:#4f7094;font-size:.74rem;margin-left:.4rem;padding:.22rem .52rem;vertical-align:middle}.team-badge.warning{background:#fff7e8;border-color:#efd8a4;color:#9b6714}.team-badge.danger{background:#fff1f1;border-color:#efc3c3;color:#b14b4b}.employees-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.employee-card{grid-gap:.65rem;align-items:start;background:#fff;border:1px solid #dce8f8;border-radius:11px;display:grid;gap:.65rem;grid-template-columns:46px 1fr;padding:.75rem}.emp-avatar{align-items:center;background:linear-gradient(135deg,#1f6fb8,#2f5f8f);border-radius:11px;color:#fff;display:inline-flex;font-size:1rem;font-weight:700;height:46px;justify-content:center;width:46px}.emp-info{grid-gap:.2rem;display:grid;gap:.2rem}.emp-info h4{color:#1e446d;font-size:.96rem;margin:0}.emp-info p{color:#5b7a9d;font-size:.82rem;margin:0}.emp-info small{color:#6e8bad;font-size:.75rem;margin:0}.emp-meta{display:block}.emp-actions{display:flex;flex-wrap:wrap;gap:.35rem;grid-column:1/-1;margin-top:.32rem}.empty-selection{align-items:center;background:#f9fbff;border:1px dashed #d5e4f6;border-radius:10px;color:#6a88ac;display:flex;font-size:.94rem;justify-content:center;min-height:220px}.btn-primary{background:#2f78c9;border:1px solid #2f78c9;border-radius:8px;cursor:pointer;padding:.48rem .78rem}.btn-primary:hover{background:#255f95;border-color:#255f95}.no-data{color:#58779d}.modal-overlay{background:#0e172666;padding:.8rem;z-index:100}.modal-content{background:#fff;border:1px solid #d9e5f4;border-radius:12px;max-height:88vh;overflow-y:auto;padding:16px;width:min(520px,92vw)}.form-control{border:1px solid #c9d9ef;border-radius:8px;margin-bottom:9px;padding:9px 10px;width:100%}.form-actions{display:flex;gap:8px}.btn-cancel,.btn-submit{border-radius:8px;cursor:pointer;flex:1 1;padding:9px}.btn-submit{background:#2f78c9;border:1px solid #2f78c9;color:#fff}.btn-cancel{background:#fff;border:1px solid #c9d9ef;color:#385d84}.doc-section{margin-top:1rem}.doc-section h4{color:#21476f;margin:0 0 .65rem}.doc-list{grid-gap:.5rem;display:grid;gap:.5rem}.doc-item{align-items:center;background:#fbfdff;border:1px solid #e6eef8;border-radius:10px;display:flex;gap:.8rem;justify-content:space-between;padding:.6rem .7rem}.doc-item-title{color:#21476f;font-weight:700}.doc-item-meta{color:#6e8bad}@media (max-width:980px){.teams-container{grid-template-columns:1fr}.teams-sidebar{max-height:42vh}.teams-content{padding:.85rem}.content-header{align-items:flex-start;flex-direction:column}.content-header .btn-primary,.content-header h2{width:100%}.employees-grid{grid-template-columns:1fr}.team-item{grid-template-columns:32px 1fr}.team-item-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;margin-top:.2rem}.resource-list-text,.team-item-name{white-space:normal}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}.doc-item{align-items:stretch;flex-direction:column}}.resources-layout{grid-template-columns:320px 1fr}.resources-detail-pane,.resources-list-pane{min-height:420px}.resource-detail-card{grid-gap:.8rem;display:grid;gap:.8rem}.resource-detail-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.resource-note-card{background:#f8fbff;border:1px solid #dfe9f8;border-radius:10px;padding:.75rem .8rem}.resource-note-card strong{color:#264e79;font-size:.9rem}.resource-card-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.resource-note-card p{color:#4f7093;font-size:.86rem;line-height:1.4;margin:.4rem 0 0}.resource-note-muted{color:#6f89aa;font-size:.78rem}.resource-section-title{color:#355b84;font-size:.84rem;font-weight:700;margin:.35rem 0 .15rem}.resource-form-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.resource-forecast-metrics{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.7rem}.resource-forecast-metrics div,.resource-forecast-summary .summary-item{background:#fff;border:1px solid #d9e6f7;border-radius:10px;padding:.7rem .75rem}.resource-forecast-metrics span{color:#6d87a7;display:block;font-size:.72rem;margin-bottom:.25rem}.resource-forecast-metrics strong{color:#21486f;font-size:.95rem}.resource-forecast-summary{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.7rem}.resource-forecast-lists{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.85rem}.resource-forecast-lists h4{color:#2a527c;font-size:.9rem;margin:0 0 .45rem}.forecast-link{align-items:center;background:#fff;border:1px solid #d7e4f6;border-radius:10px;color:#21476f;cursor:pointer;display:flex;font-size:.83rem;gap:.75rem;justify-content:space-between;margin-bottom:.45rem;padding:.65rem .75rem;width:100%}.forecast-link:hover{background:#f8fbff;border-color:#b8d0ea}.forecast-link span{color:#5e7c9f;white-space:nowrap}.purchase-order-list{grid-gap:.65rem;display:grid;gap:.65rem;margin-top:.75rem}.purchase-order-item{align-items:flex-start;background:#fff;border:1px solid #d9e6f7;border-radius:10px;display:flex;gap:.85rem;justify-content:space-between;padding:.75rem}.purchase-order-main{grid-gap:.2rem;display:grid;flex:1 1;gap:.2rem;min-width:0}.purchase-order-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.purchase-document-list{grid-gap:.6rem;display:grid;gap:.6rem;margin-top:.9rem}.document-row{align-items:flex-start;background:#fff;border:1px solid #d9e6f7;border-radius:10px;display:flex;gap:.8rem;justify-content:space-between;padding:.7rem .75rem}.document-title{color:#21476f;font-weight:700;margin-bottom:.15rem}@media (max-width:980px){.resource-detail-grid,.resource-forecast-lists,.resource-forecast-metrics,.resource-forecast-summary,.resource-form-grid,.resources-layout{grid-template-columns:1fr}.document-row,.purchase-order-item,.resource-card-head{align-items:stretch;flex-direction:column}.resources-list-pane{max-height:38vh;min-height:auto}.resources-detail-pane{min-height:auto}.purchase-order-main,.resource-detail-card{width:100%}}@media (max-width:680px){.teams-container{gap:.8rem}.sidebar-header-teams{padding:.8rem .85rem}.sidebar-header-teams h3{font-size:.95rem}.teams-list{padding:.45rem}.team-item{padding:.7rem}.teams-content{padding:.75rem}.employee-card{grid-template-columns:40px 1fr;padding:.7rem}.emp-avatar{border-radius:10px;font-size:.92rem;height:40px;width:40px}.btn-add,.btn-icon,.btn-primary{min-height:40px}.resource-forecast-metrics div,.resource-forecast-summary .summary-item,.resource-note-card{padding:.7rem}.resource-card-head strong,.resource-note-card strong{line-height:1.35}.forecast-link{align-items:flex-start;flex-direction:column;padding:.75rem}.forecast-link span{white-space:normal}.doc-item,.document-row,.purchase-order-item{padding:.7rem}.purchase-order-title-row{align-items:flex-start;flex-direction:column}.emp-actions,.team-item-actions{width:100%}.emp-actions .btn-icon,.resource-card-head .btn-icon,.team-item-actions .btn-icon{flex:1 1 auto;justify-content:center}.resource-card-head{align-items:stretch}.emp-actions .btn-icon,.resource-card-head .btn-icon,.team-item-actions .btn-icon{min-height:42px}.modal-content{padding:14px;width:min(100%,94vw)}}@media (max-width:560px){.emp-actions,.team-item-actions{display:grid;grid-template-columns:1fr}.document-row,.purchase-order-item{gap:.65rem}}.reports-page{grid-gap:1rem;display:grid;gap:1rem}.reports-loading{color:#5f7fa4;padding:1rem}.reports-hero{align-items:center;background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;display:flex;gap:.8rem;justify-content:space-between;padding:1rem 1.1rem}.reports-hero-title-wrap h2{color:#17395e;margin:0}.reports-hero-title-wrap p{color:#5f7fa4;font-size:.9rem;margin-top:.3rem}.reports-hero-icon-wrap{align-items:center;background:#f2f8ff;border:1px solid #d8e6f8;border-radius:11px;color:#2c5f95;display:inline-flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.reports-hero-icon{height:19px;width:19px}.reports-error{background:#fff1f1;border:1px solid #efc8c8;border-radius:10px;color:#b53d3d;font-size:.88rem;padding:.62rem .78rem}.reports-metric-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.reports-metric-card{align-items:center;background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;display:flex;gap:.66rem;padding:.75rem}.reports-metric-icon-wrap{align-items:center;background:#f3f8ff;border:1px solid #d6e4f8;border-radius:9px;color:#2f6299;display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.reports-metric-icon{height:15px;width:15px}.reports-metric-title{color:#607f9f;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.reports-metric-value{color:#1d436f;font-size:1.35rem;font-weight:700;line-height:1.1;margin-top:.15rem}.reports-metric-subtitle{color:#6d8caf;font-size:.8rem;margin-top:.2rem}.reports-summary-grid{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.reports-summary-card{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;padding:.8rem}.reports-summary-card h4{color:#1d436f;font-size:.95rem;margin:0 0 .6rem}.reports-summary-list{grid-gap:.4rem;display:grid;gap:.4rem}.reports-summary-item{align-items:center;background:#fafcff;border:1px solid #e2edf9;border-radius:8px;color:#4f739f;display:flex;font-size:.84rem;gap:.5rem;justify-content:space-between;padding:.44rem .6rem}.reports-summary-item strong{color:#1f436f}.reports-table-card{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;overflow-x:auto;padding:.9rem}.reports-table-card h3{color:#1d436f;font-size:1rem;margin:0 0 .55rem}.reports-empty{color:#6d8caf;font-size:.85rem}.reports-table{border-collapse:collapse;min-width:460px;width:100%}.reports-table td,.reports-table th{border:1px solid #d8e6f6;font-size:.84rem;padding:.5rem .55rem;text-align:left}.reports-table th{background:#f3f8ff;color:#224f85}.reports-table td{color:#2f537a}@media (max-width:1160px){.reports-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.reports-hero{align-items:flex-start;flex-direction:column}.reports-metric-grid,.reports-summary-grid{grid-template-columns:1fr}.reports-table{min-width:0}.reports-table thead{display:none}.reports-table,.reports-table tbody,.reports-table td,.reports-table tr{display:block;width:100%}.reports-table tr{background:#fafcff;border:1px solid #d8e6f6;border-radius:10px;margin-bottom:.55rem;padding:.35rem}.reports-table td{align-items:center;border:0;display:flex;gap:.8rem;justify-content:space-between;padding:.45rem .5rem}.reports-table td:before{color:#6684a6;content:attr(data-label);font-size:.76rem;font-weight:700}}.admin-permissions-page{display:grid}.admin-permissions-card{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem}.admin-permissions-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.admin-permissions-title h2{color:#17395e;margin:0}.admin-permissions-title small{color:#5f7fa4;display:block;font-size:.84rem;margin-top:.15rem}.admin-permissions-note{background:#fff7e6;border:1px solid #f1ddb3;border-radius:8px;color:#8e5f13;font-size:.78rem;margin-top:.4rem;padding:.35rem .5rem}.admin-permissions-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.admin-search-input{border:1px solid #c9d9ef;border-radius:8px;color:#2f537a;min-width:220px;padding:.5rem .66rem}.admin-search-input:focus{border-color:#2f6ca8;box-shadow:0 0 0 3px #2f6ca826;outline:none}.admin-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:700;padding:.48rem .72rem}.admin-btn:disabled{cursor:not-allowed;opacity:.6}.admin-btn-secondary{background:#edf5ff;border-color:#aec8e7;color:#2d5f96}.admin-btn-success{background:#effcf3;border-color:#9fd8b5;color:#2e7e4d}.admin-btn-danger{background:#fff3f3;border-color:#e6b8b8;color:#a94242}.admin-permissions-error{background:#fff1f1;border:1px solid #efc8c8;border-radius:8px;color:#b53d3d;font-size:.84rem;margin-top:.7rem;padding:.45rem .65rem}.admin-permissions-loading{color:#5c7a9e;padding:1rem .2rem .25rem}.admin-permissions-table-wrap{border:1px solid #d8e6f6;border-radius:10px;margin-top:.8rem;overflow:auto}.admin-permissions-table{background:#fff;border-collapse:collapse;font-size:.84rem;width:100%}.admin-th{background:#f3f8ff;border-bottom:1px solid #d6e4f6;color:#224f85;padding:.52rem;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:1}.admin-td-center,.admin-th-center{text-align:center}.admin-td{border-top:1px solid #e0ebf8;color:#2f537a;padding:.48rem;white-space:nowrap}.admin-email{color:#6f89ab;font-size:.78rem;margin-top:.1rem}.admin-permissions-table tbody tr:nth-child(2n){background:#fbfdff}@media (max-width:940px){.admin-search-input{min-width:180px}}@media (max-width:760px){.admin-permissions-card{padding:.75rem}.admin-permissions-actions,.admin-permissions-head{align-items:stretch;flex-direction:column}.admin-btn,.admin-search-input{min-width:0;width:100%}.admin-permissions-table{font-size:.78rem}.admin-td,.admin-th{padding:.42rem}}.checklists-page{display:flex;flex-direction:column;gap:14px}.checklists-header{background:linear-gradient(135deg,#f6fbff,#eaf3ff);border:1px solid #d2e2f6;border-radius:16px;padding:18px}.checklists-header h1{color:#193d69;margin:0}.checklists-header p{color:#3a5d82;margin:8px 0 0;max-width:680px}.checklists-alert{border-radius:10px;font-weight:700;padding:10px 12px}.checklists-alert.error{background:#fff1f1;border:1px solid #f0b4b4;color:#ab2e2e}.checklists-alert.success{background:#f1fff5;border:1px solid #b8e6c7;color:#257b46}.checklist-tabs{display:flex;flex-wrap:wrap;gap:8px}.checklist-tabs button{background:#f4f9ff;border:1px solid #c5d8f1;border-radius:12px;color:#2f5f92;cursor:pointer;font-weight:700;padding:11px 14px}.checklist-tabs button.active{background:#2f78c9;border-color:#2f78c9;color:#fff}.checklist-split-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1.35fr}.checklists-panel{background:#fff;border:1px solid #d7e4f6;border-radius:14px;padding:14px}.checklists-panel h2{color:#21476f;margin:0 0 10px}.checklists-form{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.checklists-form .form-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.checklists-form button,.checklists-form input,.checklists-form select,.checklists-form textarea,.panel-title-row button,.suggestion-actions button,.suggestion-import-bar button,.suggestion-import-bar select{border:1px solid #c9d9ef;border-radius:10px;font-size:.92rem;padding:10px 11px}.checklists-form button,.panel-title-row button:not(.danger),.suggestion-actions button,.suggestion-import-bar button{background:#2f78c9;border-color:#2f78c9;color:#fff;cursor:pointer;font-weight:700}.list-row{background:#f8fbff;border:1px solid #d3e2f6;border-radius:12px;cursor:pointer;margin-bottom:8px;padding:12px;text-align:left;width:100%}.list-row.active{border-color:#4f8ecf;box-shadow:0 0 0 2px #4f8ecf2b}.list-row-top{margin-bottom:5px}.list-row-meta,.list-row-top{display:flex;gap:8px;justify-content:space-between}.list-row-meta{color:#557492;font-size:.8rem}.panel-title-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.panel-title-row .danger{background:#d35252;border:1px solid #d35252;border-radius:10px;color:#fff;cursor:pointer;padding:8px 11px}.selected-list-head{margin-bottom:10px}.selected-list-head h3{color:#21476f;margin:0 0 6px}.selected-list-head p{color:#506d8c;margin:0}.item-list{display:flex;flex-direction:column;gap:8px}.item-row{background:#fcfeff;border:1px solid #d5e4f7;border-radius:12px;padding:12px}.item-row.done{background:#f3fff8;border-color:#c2e9d3}.item-check{align-items:flex-start;color:#1f456f;display:flex;font-weight:700;gap:8px}.item-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.chip{background:#ebf3ff;border:1px solid #c9dcf6;border-radius:999px;color:#355d8c;font-size:.75rem;padding:3px 9px}.danger-link{background:#0000;border:0;color:#bf3f3f;cursor:pointer;font-weight:700;margin-top:9px;padding:0}.loading-box,.muted{color:#5b7b9f}.suggestion-panel{margin-top:2px}.suggestion-actions{display:flex;flex-wrap:wrap;gap:6px}.suggestion-import-bar{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 320px;margin:10px 0 12px}.suggestion-import-bar button:disabled{cursor:not-allowed;opacity:.6}.suggestion-group-list{display:flex;flex-direction:column;gap:10px}.suggestion-group{background:#fbfdff;border:1px solid #d6e4f7;border-radius:12px;padding:10px 12px}.suggestion-group summary{color:#21476f;cursor:pointer;font-weight:700}.suggestion-discipline h4{color:#345f8d;margin:10px 0 7px}.suggestion-item-friendly{grid-gap:10px;align-items:flex-start;background:#fff;border:1px solid #e5eefb;border-radius:10px;display:grid;gap:10px;grid-template-columns:20px 1fr;margin-bottom:7px;padding:10px}.suggestion-item-friendly p{color:#587796;font-size:.84rem;line-height:1.45;margin:4px 0 0}.checklist-task-sync{display:flex;flex-direction:column;gap:12px}.checklist-task-sync-note{font-size:.92rem;line-height:1.55;margin:0}.task-sync-summary{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(120px,1fr))}.task-sync-box{background:#f7fbff;border:1px solid #d3e3f7;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:12px}.task-sync-box span{color:#587796;font-size:.82rem}.task-sync-box strong{color:#1d4872;font-size:1.15rem}.task-sync-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.task-sync-list h3{color:#23486f;margin:0 0 10px}.task-sync-list{background:#fcfeff;border:1px solid #d5e4f7;border-radius:12px;min-height:180px;padding:12px}.task-sync-item{grid-gap:9px;align-items:flex-start;background:#fff;border:1px solid #e2ebf9;border-radius:10px;display:grid;gap:9px;grid-template-columns:20px 1fr;margin-bottom:8px;padding:10px}.task-sync-item.done{background:#f2fff6;border-color:#c7ead4}.task-sync-item:last-child{margin-bottom:0}.task-sync-item strong{color:#173f68}.task-sync-meta{color:#577694;display:flex;flex-wrap:wrap;font-size:.8rem;gap:6px;margin-top:5px}@media (max-width:1080px){.checklist-split-grid{grid-template-columns:1fr}}@media (max-width:760px){.checklist-tabs{display:grid;grid-template-columns:1fr 1fr}.checklists-form .form-row,.suggestion-import-bar,.task-sync-grid,.task-sync-summary{grid-template-columns:1fr}.list-row-meta,.panel-title-row{align-items:flex-start;flex-direction:column}.suggestion-actions{width:100%}.checklist-tabs button,.checklists-form button,.checklists-form input,.checklists-form select,.checklists-form textarea,.suggestion-actions button,.suggestion-import-bar button{min-height:48px}}@media (max-width:520px){.checklist-tabs{grid-template-columns:1fr}.checklists-panel{padding:12px}.item-check,.suggestion-item-friendly,.task-sync-item{grid-template-columns:1fr}}.notification-preferences-page{display:flex;justify-content:center;padding:1rem 0}.notification-preferences-embedded{display:block;padding:0}.notification-preferences-card{background:#fff;border:1px solid #dfe9f6;border-radius:12px;box-shadow:0 8px 24px #1c3d6014;padding:1.1rem 1.2rem;width:min(760px,100%)}.notification-preferences-embedded .notification-preferences-card{border:1px solid #d7e4f6;box-shadow:none;width:100%}.notification-preferences-card h1{color:#163b63;margin:0 0 .25rem}.notification-preferences-card p{color:#55759a;margin:0 0 .9rem}.pref-alert{border-radius:8px;font-size:.9rem;margin-bottom:.8rem;padding:.55rem .7rem}.pref-alert.error{background:#fff1f1;border:1px solid #f1c2c2;color:#a22f2f}.pref-alert.success{background:#f1fff5;border:1px solid #bae5c9;color:#1f7a41}.pref-row{align-items:center;color:#1b456f;display:flex;font-weight:600;gap:.55rem;margin:.45rem 0}.pref-field{grid-gap:.35rem;display:grid;gap:.35rem;margin:.5rem 0}.pref-field label{color:#2e547d;font-size:.9rem}.pref-field input{border:1px solid #c8daed;border-radius:8px;padding:.6rem .65rem}.pref-time-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.push-box{background:#f7fbff;border:1px solid #d9e6f7;border-radius:10px;margin:.45rem 0 .8rem;padding:.7rem .8rem}.push-status-line{color:#2c5078;font-size:.88rem;margin:.15rem 0}.push-actions-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.55rem}.push-action-btn{background:#205f98;border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:.86rem;padding:.45rem .7rem}.push-action-btn.secondary{background:#516f90}.push-action-btn:disabled{cursor:default;opacity:.65}.push-hint{background:#f4f9ff;border:1px dashed #bfd4ee;border-radius:8px;color:#3b5f86;font-size:.8rem;margin-top:.35rem;padding:.45rem .55rem}.notification-preferences-card button[type=submit]{background:#1f5f98;border:0;border-radius:9px;color:#fff;cursor:pointer;margin-top:.8rem;padding:.6rem 1rem}.notification-preferences-card button[type=submit]:disabled{cursor:default;opacity:.65}@media (max-width:768px){.notification-preferences-card{padding:.9rem}.pref-time-grid{grid-template-columns:1fr}.push-actions-row{flex-direction:column}.notification-preferences-card button[type=submit],.push-action-btn{width:100%}}.settings-page{grid-gap:1rem;display:grid;gap:1rem}.settings-header{background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem 1.1rem}.settings-header h1{color:#17395e;margin:0}.settings-header p{color:#5f7fa4;font-size:.9rem;margin-top:.3rem}.settings-alert{border-radius:9px;font-weight:600;padding:.58rem .75rem}.settings-alert.error{background:#fff1f1;border:1px solid #efc8c8;color:#b53d3d}.settings-alert.success{background:#f1fff5;border:1px solid #b9e5c8;color:#257b46}.settings-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.settings-tabs button{background:#f4f9ff;border:1px solid #c5d8f1;border-radius:10px;color:#2f5f92;cursor:pointer;font-size:.88rem;font-weight:700;padding:.55rem .85rem}.settings-tabs button.active{background:#2f78c9;border-color:#2f78c9;color:#fff}.settings-card{background:#fff;border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 4px 12px #17395e14;padding:.95rem}.settings-card h2{color:#1d436f;font-size:1.05rem;margin:0 0 .75rem}.settings-form{grid-gap:.75rem;display:grid;gap:.75rem}.settings-field{grid-gap:.35rem;display:grid;gap:.35rem}.settings-field label{color:#214369;font-size:.88rem;font-weight:600}.settings-field input{border:1px solid #c7d9ef;border-radius:8px;color:#18365d;padding:.62rem .7rem}.settings-field input:focus{border-color:#2b5b9e;box-shadow:0 0 0 4px #2a6cb026;outline:none}.settings-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.86rem;font-weight:700;padding:.52rem .78rem}.settings-btn.primary{background:#2e71b3;border-color:#2e71b3;color:#fff}.settings-btn.primary:hover{background:#245a8e;border-color:#245a8e}.settings-btn.secondary{background:#eef5ff;border-color:#c7daf2;color:#2e5f94}.settings-toggle-group{display:flex;flex-wrap:wrap;gap:.5rem}.settings-muted{color:#5f7fa4;font-size:.84rem}@media (max-width:760px){.settings-page{gap:.85rem}.settings-card,.settings-header{padding:.85rem}.settings-tabs{flex-direction:column}.settings-btn,.settings-tabs button{width:100%}.settings-toggle-group{flex-direction:column}}.accounting-page{grid-gap:1rem;display:grid;gap:1rem}.accounting-head{align-items:flex-start;background:#fff;border:1px solid #d7e4f7;border-radius:14px;display:flex;gap:1rem;justify-content:space-between;padding:1rem}.accounting-head h1{color:#163f73;margin:0}.accounting-head p{color:#53729a;margin:.35rem 0 0}.accounting-head-actions{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.6rem}.accounting-head-actions label{color:#385a85;display:flex;flex-direction:column;font-size:.85rem;gap:.3rem}.accounting-head-actions select{background:#fff;border:1px solid #b8cbe6;border-radius:10px;min-width:120px;padding:.45rem .5rem}.primary-btn,.secondary-btn{border:0;border-radius:10px;cursor:pointer;font-weight:700;min-height:42px;padding:.55rem .9rem}.primary-btn{background:#1f5ea8;color:#fff}.primary-btn:disabled{cursor:not-allowed;opacity:.6}.secondary-btn{background:#edf3fb;border:1px solid #c5d7ee;color:#1f4f87}.accounting-alert{border:1px solid;border-radius:10px;font-weight:600;padding:.65rem .8rem}.accounting-alert.error{background:#fff1f1;border-color:#efb3b3;color:#a52222}.accounting-alert.success{background:#eef9f0;border-color:#b6dbbf;color:#1f6d37}.accounting-metrics{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.metric-card{grid-gap:.2rem;background:#fff;border:1px solid #d7e4f7;border-radius:12px;display:grid;gap:.2rem;padding:.8rem}.metric-card span{color:#53729a;font-size:.85rem}.metric-card strong{color:#163f73;font-size:1.1rem}.metric-card small{color:#6f89ac}.accounting-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(260px,1fr))}.procurement-metrics{margin-top:.1rem}.procurement-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.accounting-card{background:#fff;border:1px solid #d7e4f7;border-radius:12px;padding:.9rem}.accounting-card h3{color:#143a6e;margin:0 0 .75rem}.accounting-group-header{align-items:center;background:#f6faff;border:1px solid #d7e4f7;border-radius:10px;color:#163f73;cursor:pointer;display:flex;font-weight:700;justify-content:space-between;margin-bottom:.75rem;padding:.65rem .75rem;width:100%}.alert-list{grid-gap:.45rem;display:grid;gap:.45rem;margin:0;padding-left:1rem}.alert-item.warning{color:#9d5f00}.alert-item.info{color:#1c4f8d}.increase-list{grid-gap:.5rem;display:grid;gap:.5rem}.increase-row{border:1px solid #dce7f6;border-radius:10px;display:flex;gap:.8rem;justify-content:space-between;padding:.55rem .65rem}.increase-row p{color:#4f6f97;font-size:.9rem;margin:.2rem 0 0}.increase-values{align-content:center;display:grid;justify-items:end}.increase-values span{color:#163f73;font-weight:700}.increase-values small{color:#6e87a9}.accounting-table-wrap{grid-gap:.8rem;display:grid;gap:.8rem}.accounting-mobile-list{display:none;gap:.7rem}.accounting-mobile-card{grid-gap:.6rem;background:#fcfdff;border:1px solid #dde8f7;border-radius:10px;display:grid;gap:.6rem;padding:.7rem}.accounting-mobile-head{grid-gap:.15rem;display:grid;gap:.15rem}.accounting-mobile-head strong{color:#143a6e}.accounting-mobile-head span{color:#355d8c;font-size:.9rem}.accounting-mobile-grid{grid-gap:.55rem;display:grid;gap:.55rem;grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-mobile-grid label,.accounting-mobile-note label{color:#5b79a1;display:block;font-size:.75rem;font-weight:600;margin-bottom:.2rem}.accounting-mobile-grid p,.accounting-mobile-note p{font-feature-settings:"tnum";color:#163f73;font-variant-numeric:tabular-nums;font-weight:700;margin:0}.accounting-mobile-grid input,.accounting-mobile-note input{border:1px solid #c2d4ec;border-radius:8px;padding:.38rem .44rem;width:100%}.accounting-table-scroll{overflow:auto}.accounting-table{border-collapse:collapse;min-width:1180px;table-layout:fixed;width:100%}.accounting-table td,.accounting-table th{border-bottom:1px solid #e4edf9;padding:.5rem;text-align:left;vertical-align:middle}.accounting-table th{color:#234f86;font-size:.86rem}.accounting-table th.code-head{width:160px}.accounting-table th.name-head{width:34%}.accounting-table th.amount-head{text-align:right;white-space:nowrap;width:140px}.accounting-table th.note-head{width:110px}.accounting-table td{color:#193f72;font-size:.9rem}.accounting-table td.code-cell{white-space:nowrap}.accounting-table td.name-cell{overflow-wrap:anywhere}.accounting-table td.amount-cell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.accounting-table td.note-cell{text-align:left}.accounting-table input{border:1px solid #c2d4ec;border-radius:8px;padding:.4rem .45rem;width:100%}.net-amount-cell{color:#1a4c87;font-weight:700;min-width:130px}.group-summary-row td{background:#f4f8ff;font-weight:700}.note-value{color:#375b88}@media (max-width:1024px){.accounting-head{padding:.9rem}.accounting-head-actions{width:100%}.accounting-head-actions label{flex:1 1 180px;min-width:160px}.accounting-head-actions button{flex:1 1 160px}.accounting-metrics{grid-template-columns:repeat(2,minmax(180px,1fr))}.accounting-grid{grid-template-columns:1fr}}@media (max-width:680px){.accounting-head{align-items:stretch;flex-direction:column;padding:.8rem}.accounting-head-actions{align-items:stretch;flex-direction:column;width:100%}.accounting-head-actions button,.accounting-head-actions label,.accounting-head-actions select{width:100%}.accounting-metrics{grid-template-columns:1fr}.metric-card{padding:.75rem}.increase-row{align-items:flex-start;flex-direction:column;padding:.65rem .7rem}.increase-values{justify-items:start}.accounting-card{padding:.8rem}.accounting-group-header{font-size:.94rem;padding:.7rem}.accounting-table-scroll{display:none}.accounting-mobile-list{display:grid}.accounting-mobile-grid{grid-template-columns:1fr}.accounting-mobile-card{padding:.75rem}}.change-orders-page{grid-gap:1rem;display:grid;gap:1rem}.change-orders-card{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem}.change-orders-head{align-items:flex-start;display:flex;gap:.8rem;justify-content:space-between}.change-orders-head h1{color:#1b426d;font-size:1.35rem;margin:0}.change-orders-head p{color:#6584a8;font-size:.86rem;margin:.35rem 0 0}.change-orders-summary{grid-gap:.55rem;display:grid;gap:.55rem;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:.75rem}.change-orders-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.change-orders-filters input,.change-orders-filters select{background:#fff;border:1px solid #cadcf2;border-radius:8px;color:#315980;font-size:.84rem;padding:.38rem .5rem}.btn-ghost,.btn-primary,.btn-secondary{border:1px solid #2e71b3;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:700;padding:.4rem .68rem}.btn-primary{background:#2e71b3;border-color:#2e71b3;color:#fff}.btn-primary:hover{background:#245a8e;border-color:#245a8e}.btn-secondary{background:#fff;border-color:#d2e0f4;color:#315980}.btn-secondary:hover{background:#f5f9ff}.change-orders-table-wrap{border:1px solid #e1ebf8;border-radius:10px;margin-top:.75rem;overflow:auto}.change-orders-table{border-collapse:collapse;min-width:1080px;width:100%}.change-orders-table thead th{background:#f5f9ff;border-bottom:1px solid #e7eef9;color:#214a77;font-size:.8rem;padding:.56rem .62rem;text-align:left}.change-orders-table tbody td{border-bottom:1px solid #edf3fc;color:#35577f;font-size:.8rem;padding:.56rem .62rem;vertical-align:top}.change-orders-table tbody tr:last-child td{border-bottom:0}.change-orders-table tbody tr.row-focused td{background:#2e71b317}.status-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;justify-content:center;padding:.16rem .46rem;text-transform:uppercase}.status-chip.draft{background:#edf4ff;color:#245f98}.status-chip.pending_approval{background:#fff5e7;color:#9f6203}.status-chip.approved{background:#ebf8ee;color:#1c7240}.status-chip.rejected{background:#ffecec;color:#b32727}.status-chip.cancelled{background:#f2f5f8;color:#5f7388}.btn-ghost{background:#fff;border-color:#d0dff1;color:#35597d;font-size:.75rem;padding:.26rem .52rem}.btn-ghost:hover{background:#f8fbff;border-color:#b6cee8}.btn-ghost.approve{border-color:#b9dbca;color:#1f7c42}.btn-ghost.danger,.btn-ghost.reject{background:#fff7f7;border-color:#f0c4c4;color:#ac3f3f}.btn-close{background:#fff;border:1px solid #d4e2f4;border-radius:8px;color:#4f6f92;font-weight:700;height:32px;width:34px}.modal-grid textarea{resize:vertical}@media (max-width:1024px){.change-orders-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:780px){.change-orders-head{align-items:flex-start;flex-direction:column}.change-orders-summary,.modal-grid{grid-template-columns:1fr}.modal-card{max-height:90vh;overflow:auto;width:min(96vw,96vw)}}.operations-center-page{grid-gap:1rem;display:grid;gap:1rem}.operations-hero{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1.1rem 1.2rem}.operations-hero h1{color:#17395e;font-size:1.42rem;margin:0}.operations-hero p{color:#6382a7;font-size:.88rem;margin:.42rem 0 0}.capacity-section,.early-warning-section,.subcontractor-section,.system-status-section{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem 1.1rem}.section-header{align-items:flex-start;display:flex;gap:.9rem;justify-content:space-between;margin-bottom:.95rem}.section-header h2{color:#17395e;font-size:1.08rem;margin:0}.capacity-head-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem}.capacity-range-select,.subcontractor-save-btn{background:#fff;border:1px solid #cfe0f3;border-radius:10px;color:#234d77;min-height:40px;padding:.65rem .8rem}.view-all{align-items:center;background:linear-gradient(135deg,#eff6ff,#e0edff);border:1px solid #c8daef;border-radius:10px;color:#245a8f;display:inline-flex;font-weight:700;justify-content:center;min-height:40px;padding:.65rem .95rem;text-decoration:none}.capacity-summary-grid,.subcontractor-summary-grid,.warning-summary-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.9rem}.capacity-summary-card,.warning-summary-card{grid-gap:.25rem;background:linear-gradient(180deg,#f9fbff,#eef5ff);border:1px solid #deebf9;border-radius:12px;display:grid;gap:.25rem;padding:.9rem}.capacity-summary-card span,.warning-summary-card span{color:#6382a7;font-size:.76rem}.capacity-summary-card strong,.warning-summary-card strong{color:#17395e;font-size:1.2rem}.capacity-alert-list,.capacity-rebalance-list,.subcontractor-alert-list,.warning-alert-list{grid-gap:.7rem;display:grid;gap:.7rem;margin-bottom:.9rem}.capacity-alert-item,.capacity-rebalance-panel,.capacity-table-wrap,.subcontractor-claim-form,.subcontractor-table-wrap,.system-status-card,.warning-alert-item,.warning-table-wrap{background:#f9fbff;border:1px solid #deebf9;border-radius:12px}.capacity-alert-item,.capacity-rebalance-panel,.subcontractor-claim-form,.warning-alert-item{padding:.85rem .95rem}.capacity-alert-item.high,.warning-alert-item.high{background:#fff8ef;border-color:#f3d29b}.capacity-alert-item.critical,.warning-alert-item.critical{background:#fff1f1;border-color:#f0b2b2}.capacity-alert-message,.warning-alert-title{color:#17395e;font-weight:700}.capacity-alert-suggestion,.warning-alert-suggestions{color:#5f7b9d;font-size:.84rem;margin-top:.2rem}.warning-alert-suggestions{display:flex;flex-wrap:wrap;gap:.45rem}.warning-alert-suggestions span{background:#eef5ff;border-radius:999px;padding:.28rem .5rem}.capacity-rebalance-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.capacity-rebalance-head h3,.subcontractor-subtitle{margin:0}.capacity-rebalance-empty{color:#6382a7;margin:0}.capacity-rebalance-item{background:#fff;border:1px solid #d9e7f7;border-radius:10px;padding:.75rem .8rem}.capacity-rebalance-meta,.capacity-rebalance-route{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem}.capacity-rebalance-meta{color:#5d7d9f;font-size:.83rem;margin-top:.3rem}.capacity-table-row,.subcontractor-table-row,.warning-table-row{grid-gap:.8rem;align-items:center;border-top:1px solid #e6f0fb;display:grid;gap:.8rem;grid-template-columns:repeat(7,minmax(0,1fr));padding:.82rem .95rem}.subcontractor-table-row,.warning-table-row{grid-template-columns:1.3fr 1.4fr .7fr .8fr .9fr .8fr .8fr .8fr}.capacity-head-row,.subcontractor-table-head,.warning-table-head{background:#eef5ff;border-top:0;color:#53779d;font-size:.76rem;font-weight:700;text-transform:uppercase}.capacity-risk-chip,.warning-risk-chip{align-items:center;border-radius:999px;display:inline-flex;font-weight:700;justify-content:center;min-height:28px;padding:.18rem .5rem;text-transform:capitalize}.capacity-risk-chip.low,.warning-risk-chip.low{background:#ecf8ef;color:#2f7d48}.capacity-risk-chip.medium,.warning-risk-chip.medium{background:#fff7e7;color:#8a6420}.capacity-risk-chip.high,.warning-risk-chip.high{background:#fff1df;color:#b76a14}.capacity-risk-chip.critical,.warning-risk-chip.critical{background:#fff1f1;color:#b63d3d}.subcontractor-subtitle{color:#6382a7;font-size:.85rem;margin-top:.25rem}.subcontractor-claim-form{margin-bottom:.9rem}.subcontractor-form-grid{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(4,minmax(0,1fr))}.subcontractor-save-btn{cursor:pointer;font-weight:700}.system-refresh-btn:disabled{cursor:wait;opacity:.7}.system-status-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:.9rem}.system-status-breakdown,.system-status-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem}.system-status-chip,.system-status-meta span{background:#f9fbff;border:1px solid #deebf9;border-radius:999px;color:#456a90;font-size:.82rem;padding:.45rem .65rem}.system-status-chip{align-items:center;display:inline-flex;gap:.4rem}.system-status-chip strong{color:#17395e}.system-status-panels{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.system-status-card{padding:.9rem .95rem}.system-status-card-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.system-status-card-head h3{color:#17395e;font-size:.98rem;margin:0}.system-error-meta,.system-status-card-head span{color:#5f7b9d;font-size:.8rem}.system-route-table{grid-gap:.5rem;display:grid;gap:.5rem}.system-route-row{grid-gap:.7rem;align-items:center;background:#fff;border:1px solid #e3eef9;border-radius:10px;display:grid;gap:.7rem;grid-template-columns:minmax(0,2.2fr) repeat(4,minmax(0,.7fr));padding:.7rem .75rem}.system-route-head{background:#eef5ff;border:0;color:#53779d;font-size:.76rem;font-weight:700;text-transform:uppercase}.system-error-list{grid-gap:.65rem;display:grid;gap:.65rem}.system-error-item{background:#fff;border:1px solid #e3eef9;border-radius:10px;padding:.75rem .8rem}.system-error-head{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.system-error-head strong{color:#17395e}.system-error-head span,.system-error-message{color:#5f7b9d;font-size:.83rem}@media (max-width:1100px){.capacity-summary-grid,.subcontractor-form-grid,.subcontractor-summary-grid,.system-status-grid,.system-status-panels,.warning-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.capacity-rebalance-head,.section-header{align-items:stretch;flex-direction:column}.capacity-table-row,.subcontractor-table-row,.warning-table-row{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-head-row,.subcontractor-table-head,.warning-table-head{display:none}.capacity-table-row,.subcontractor-table-row,.warning-table-row{background:#fff;border:1px solid #e3eef9;border-radius:12px;margin:.55rem}.capacity-summary-grid,.subcontractor-form-grid,.subcontractor-summary-grid,.system-status-grid,.system-status-panels,.warning-summary-grid{grid-template-columns:1fr}.system-error-head,.system-status-card-head{align-items:stretch;flex-direction:column}.system-route-head{display:none}.system-route-row{grid-template-columns:1fr 1fr}.capacity-head-actions,.capacity-head-actions .capacity-range-select,.capacity-head-actions .view-all,.subcontractor-save-btn{width:100%}}.nonconformities-page{grid-gap:1rem;display:grid;gap:1rem}.nonconformities-card{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 4px 14px #17395e14;padding:1rem}.nonconformities-head{align-items:flex-start;display:flex;gap:.8rem;justify-content:space-between}.nonconformities-head h1{color:#1b426d;font-size:1.35rem;margin:0}.nonconformities-head p{color:#6584a8;font-size:.86rem;margin:.3rem 0 0}.module-title-row{align-items:center;display:flex;gap:.5rem}.module-info-btn{align-items:center;background:#f4f9ff;border:1px solid #bcd2ec;border-radius:999px;color:#295a8d;cursor:pointer;display:inline-flex;height:30px;justify-content:center;transition:all .2s ease;width:30px}.module-info-btn svg,.module-info-icon{stroke:currentColor;stroke-width:2;color:currentColor;display:block;height:16px;width:16px}.module-info-btn.active,.module-info-btn:hover{background:#ebf4ff;border-color:#2f78c9;color:#1f65b0}.module-info-card{background:#f9fcff;border:1px solid #d8e7fa;border-radius:10px;margin-top:.45rem;padding:.52rem .64rem}.module-info-card p{color:#4f6f92;font-size:.82rem;margin:.2rem 0}.nonconformities-summary{grid-gap:.55rem;display:grid;gap:.55rem;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:.75rem}.summary-box{grid-gap:.12rem;background:#f9fcff;border:1px solid #e1ebf8;border-radius:10px;display:grid;gap:.12rem;padding:.52rem .6rem}.summary-box span{color:#607f9f;font-size:.76rem}.summary-box strong{color:#28517d;font-size:1.08rem;font-weight:700}.nonconformities-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.nonconformities-insights{grid-gap:.55rem;display:grid;gap:.55rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.75rem}.insight-card{grid-gap:.4rem;background:#f8fbff;border:1px solid #deebfa;border-radius:10px;display:grid;gap:.4rem;padding:.62rem}.insight-title{color:#1f4a78;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.insight-row{background:#fff;border:1px solid #e7effa;border-radius:8px;display:flex;gap:.5rem;justify-content:space-between;padding:.44rem .48rem}.insight-row strong{color:#214c78;font-size:.8rem}.insight-row small{color:#6e89a8;display:block;font-size:.72rem;margin-top:.12rem}.insight-badges{grid-gap:.2rem;display:grid;gap:.2rem;justify-items:end}.insight-badges span{align-items:center;background:#f4f9ff;border:1px solid #d9e8fa;border-radius:999px;color:#2f5a86;display:inline-flex;font-size:.7rem;font-weight:700;justify-content:center;padding:.1rem .45rem}.insight-badges span.alert{background:#fff8ec;border-color:#f2d8ae;color:#9a671b}.insight-badges span.danger{background:#fff2f2;border-color:#f3cccc;color:#b64a4a}.insight-empty{background:#fcfeff;border:1px dashed #dbe9f9;border-radius:8px;color:#6687aa;font-size:.77rem;padding:.48rem .5rem}.nonconformities-filters select{background:#fff;border:1px solid #cadcf2;border-radius:8px;color:#315980;font-size:.84rem;padding:.38rem .5rem}.empty-banner,.error-banner,.loading-banner{border-radius:10px;font-size:.84rem;margin-top:.75rem;padding:.62rem .72rem}.error-banner{background:#fff3f3;border:1px solid #eec5c5;color:#b84242}.empty-banner,.loading-banner{background:#f8fbff;border:1px solid #dbe7f8;color:#56779c}.nonconformities-table-wrap{border:1px solid #e1ebf8;border-radius:10px;margin-top:.75rem;overflow:auto}.nonconformities-table{border-collapse:collapse;min-width:1000px;width:100%}.nonconformities-table thead th{background:#f5f9ff;border-bottom:1px solid #e7eef9;color:#214a77;font-size:.8rem;padding:.56rem .62rem;text-align:left}.nonconformities-table tbody td{border-bottom:1px solid #edf3fc;color:#35577f;font-size:.8rem;padding:.56rem .62rem;vertical-align:top}.row-subtext{color:#6784a8;font-size:.75rem;margin-top:.16rem}.row-actions{display:flex;flex-wrap:wrap;gap:.32rem}.modal-overlay{align-items:center;background:#0f1c2c61;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal-card{background:#fff;border:1px solid #d7e4f6;border-radius:14px;box-shadow:0 12px 36px #1022373d;padding:1rem;width:min(920px,94vw)}.modal-head{align-items:center;display:flex;gap:.6rem;justify-content:space-between;margin-bottom:.75rem}.modal-head h2{color:#1b426d;font-size:1.1rem;margin:0}.modal-grid{grid-gap:.62rem;display:grid;gap:.62rem;grid-template-columns:repeat(2,minmax(0,1fr))}.modal-grid label{grid-gap:.28rem;color:#2f547d;display:grid;font-size:.8rem;font-weight:600;gap:.28rem}.modal-grid input,.modal-grid select,.modal-grid textarea{border:1px solid #cadcf2;border-radius:8px;color:#315980;font-family:inherit;font-size:.82rem;padding:.42rem .52rem}.modal-grid .full-row{grid-column:1/-1}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.85rem}@media (max-width:1024px){.nonconformities-insights,.nonconformities-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:780px){.nonconformities-head{align-items:flex-start;flex-direction:column}.modal-grid,.nonconformities-insights,.nonconformities-summary{grid-template-columns:1fr}.modal-card{max-height:90vh;overflow:auto;width:min(96vw,96vw)}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#1f6fb8;--secondary-color:#2f5f8f;--success-color:#2f8f59;--danger-color:#c54a4a;--warning-color:#ff9800;--info-color:#2196f3;--dark-color:#17395e;--light-color:#f4f8fd;--border-color:#d7e4f6;--text-primary:#17395e;--text-secondary:#4a6789;--text-light:#999;--shadow-sm:0 2px 8px #17395e0f;--shadow-md:0 4px 14px #17395e1a;--shadow-lg:0 10px 24px #17395e24;--border-radius:10px;--transition:all 0.3s ease}#root,body,html{height:100%;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f4f8fd;background-color:var(--light-color);color:#17395e;color:var(--text-primary);font-family:Manrope,Segoe UI,sans-serif}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.1rem}h6{font-size:1rem}p{color:#4a6789;color:var(--text-secondary);line-height:1.6}a{color:#1f6fb8;color:var(--primary-color);text-decoration:none;transition:all .3s ease;transition:var(--transition)}a:hover{color:#2f5f8f;color:var(--secondary-color)}button,input,select,textarea{border:none;border-radius:10px;border-radius:var(--border-radius);font-family:inherit}input,select,textarea{border:2px solid #d7e4f6;border:2px solid var(--border-color);font-size:1rem;padding:.75rem;transition:all .3s ease;transition:var(--transition)}input:focus,select:focus,textarea:focus{border-color:#1f6fb8;border-color:var(--primary-color);box-shadow:0 0 0 3px #1f6fb826;outline:none}button{cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease;transition:var(--transition)}button:active{transform:scale(.98)}button:disabled{cursor:not-allowed;opacity:.6}label{color:#17395e;color:var(--text-primary);display:block;font-weight:600;margin-bottom:.5rem}.visually-hidden{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.no-scroll{overflow:hidden}.m-0{margin:0}.m-1{margin:.5rem}.m-2{margin:1rem}.m-3{margin:1.5rem}.m-4{margin:2rem}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-0{padding:0}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.text-primary{color:#1f6fb8;color:var(--primary-color)}.text-secondary{color:#4a6789;color:var(--text-secondary)}.text-danger{color:#c54a4a;color:var(--danger-color)}.text-success{color:#2f8f59;color:var(--success-color)}.text-warning{color:#ff9800;color:var(--warning-color)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-normal{font-weight:400}.text-sm{font-size:.85rem}.text-base{font-size:1rem}.text-lg{font-size:1.15rem}.text-xl{font-size:1.3rem}.main-content{background:linear-gradient(180deg,#f6faff,#eef4fc)}.main-content :is(.projects-container,.tasks-container,.puantaj-container,.users-container,.photos-container,.project-detail-container,.dashboard-container,.checklists-page,.notification-preferences-page){background:#0000}.main-content :is(.project-card,.task-card,.user-card,.employee-card,.puantaj-table,.stat-card,.notification-preferences-card,.checklists-panel,.report-card,.metrics-summary-card,.metrics-channel-card,.summary-item){border:1px solid #d7e4f6;border-radius:12px;box-shadow:0 2px 10px #17395e14}.main-content :is(.projects-header,.tasks-header,.puantaj-header,.users-header,.content-header,.checklists-header,.dashboard-header){border-bottom:1px solid #d7e4f6;border-radius:12px}.main-content :is(.btn-primary,.btn-secondary,.btn-add-task,.btn-new-entry,.add-user-btn,.submit-btn,.btn-submit,.action-btn,.btn-primary-link,.notification-preferences-card button[type=submit]){background:#1f6fb8!important;border-color:#1f6fb8!important;box-shadow:none!important;color:#fff!important}.main-content :is(.btn-primary:hover,.btn-secondary:hover,.btn-add-task:hover,.btn-new-entry:hover,.add-user-btn:hover,.submit-btn:hover,.btn-submit:hover,.action-btn:hover,.btn-primary-link:hover,.notification-preferences-card button[type=submit]:hover){background:#255f95!important;border-color:#255f95!important;transform:translateY(-1px)}.main-content :is(.btn-danger,.delete-btn,.btn-task-delete,.btn-reject){background:#fff4f4!important;border-color:#d56c6c!important;color:#b13f3f!important}.main-content :is(.search-input,.form-control,.form-group input,.form-group select,.form-group textarea){border:1px solid #c7d9ef;border-radius:8px}.container{margin:0 auto;max-width:1400px;padding:0 1rem}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.flex{display:flex}.flex-between{justify-content:space-between}.flex-between,.flex-center{align-items:center;display:flex}.flex-center{justify-content:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.card{background:#fff;border-radius:10px;border-radius:var(--border-radius);box-shadow:0 4px 14px #17395e1a;box-shadow:var(--shadow-md);padding:1.5rem;transition:all .3s ease;transition:var(--transition)}.card:hover{box-shadow:0 10px 24px #17395e24;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.35rem .75rem}.badge-primary{background-color:#1f6fb824;color:#1f6fb8;color:var(--primary-color)}.badge-success{background-color:#4caf5033;color:#2f8f59;color:var(--success-color)}.badge-danger{background-color:#f4433633;color:#c54a4a;color:var(--danger-color)}.badge-warning{background-color:#ff980033;color:#ff9800;color:var(--warning-color)}.alert{border-left:4px solid;border-radius:10px;border-radius:var(--border-radius);margin-bottom:1rem;padding:1rem}.alert-success{background-color:#e8f5e9;border-color:#2f8f59;border-color:var(--success-color);color:#1b5e20}.alert-danger{background-color:#ffebee;border-color:#c54a4a;border-color:var(--danger-color);color:#b71c1c}.alert-warning{background-color:#fff3e0;border-color:#ff9800;border-color:var(--warning-color);color:#e65100}.alert-info{background-color:#e3f2fd;border-color:#2196f3;border-color:var(--info-color);color:#1565c0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinner{animation:spin .8s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#1f6fb8;border-top:4px solid var(--primary-color);height:40px;width:40px}.loading{color:#4a6789;color:var(--text-secondary);padding:2rem;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.animate-fade-in{animation:fadeIn .3s ease-in}.animate-slide-in{animation:slideIn .3s ease-in}@media (max-width:1024px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.3rem}}@media (max-width:768px){h1{font-size:1.8rem}h2{font-size:1.3rem}h3{font-size:1.1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.container{padding:0 .5rem}}@media (max-width:480px){h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1rem}button{font-size:.9rem;padding:.6rem 1.2rem}input,select,textarea{font-size:16px}}@media print{body{background:#fff}.no-print{display:none!important}}
/*# sourceMappingURL=main.5969490e.css.map*/