:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17202a;background:#f4f7f9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8vw;padding:8vw;background:linear-gradient(120deg,#17324d 0 48%,#f4f7f9 48%)}.brand{color:white;max-width:600px}.brand h1{font-size:clamp(2.4rem,5vw,5rem);line-height:1;margin:.5em 0 .25em}.brand p{font-size:1.15rem;opacity:.85}.mark{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:#fff;color:#17324d}.features{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.features span{display:flex;gap:8px;align-items:center;padding:10px 14px;background:#ffffff18;border:1px solid #ffffff2b;border-radius:999px}.card{background:white;border-radius:24px;padding:34px;box-shadow:0 25px 60px #17324d24;display:grid;gap:18px;max-width:460px;width:100%}.card label,.editor label{display:grid;gap:7px;font-weight:650}.card input,.editor input,.editor select,.editor textarea{padding:12px 13px;border:1px solid #ccd5dd;border-radius:10px;background:white}.card button,.primary{border:0;border-radius:10px;padding:12px 15px;background:#17324d;color:white;font-weight:700;display:flex;gap:8px;align-items:center;justify-content:center}.error{color:#a4262c;margin:0}.app header{height:68px;background:#17324d;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.app header>div{display:flex;gap:14px;align-items:center}.app header b{background:white;color:#17324d;padding:7px 9px;border-radius:8px}.headright{margin-left:auto}.ghost{background:transparent;color:white;border:1px solid #ffffff40;border-radius:9px;padding:8px 12px;display:flex;gap:8px;align-items:center}.ghost svg,.primary svg,.nav svg,.iconbtn svg{width:17px;height:17px}.layout{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 68px)}aside{background:white;border-right:1px solid #dde5eb;padding:24px 14px}.nav{width:100%;border:0;background:transparent;padding:12px 14px;border-radius:10px;display:flex;gap:11px;align-items:center;color:#526371;margin-bottom:5px;text-align:left}.nav.active{background:#eaf0f5;color:#17324d;font-weight:750}.content{padding:44px;min-width:0;max-width:1400px;width:100%}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:#557189;margin:0 0 8px}.content h1{font-size:2.25rem;margin:0}.muted{color:#667684}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:32px 0}.stats article{background:white;border:1px solid #dde5eb;border-radius:16px;padding:20px;display:flex;gap:16px;align-items:center}.stats article>svg{width:28px;color:#557189}.stats span{display:block;color:#667684}.stats strong{font-size:1.7rem}.panel,.empty{background:white;border:1px solid #dde5eb;border-radius:16px;padding:24px}.panel h2{margin-top:0}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.tablewrap{overflow:auto;background:white;border:1px solid #dde5eb;border-radius:15px}table{border-collapse:collapse;width:100%;min-width:720px}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid #e7edf1;vertical-align:middle}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#657581;background:#f8fafb}tr:last-child td{border-bottom:0}.sub{display:block;color:#71808b;margin-top:3px}.code{font-family:ui-monospace,monospace;background:#eef3f6;padding:4px 7px;border-radius:6px}.status{font-size:.8rem;font-weight:700;padding:5px 8px;border-radius:999px}.status.on{background:#e8f5ec;color:#27633a}.status.off{background:#f1f2f3;color:#69737a}.iconbtn{border:0;background:#eef3f6;width:34px;height:34px;border-radius:8px;display:grid;place-items:center}.modalback{position:fixed;inset:0;background:#10283b80;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:white;border-radius:18px;width:min(560px,100%);max-height:90vh;overflow:auto;box-shadow:0 30px 80px #10283b55}.modalhead{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #e4eaee}.modalhead h2{margin:0}.editor{padding:22px;display:grid;gap:16px}.editor textarea{min-height:90px;resize:vertical}.check{grid-template-columns:auto 1fr!important;align-items:center;justify-content:start}.check input{width:18px;height:18px}.save{margin-top:4px}.notice{padding:14px 16px;background:#fff4d8;border:1px solid #efd999;border-radius:10px;margin:15px 0}.shell{max-width:1100px;margin:auto;padding:60px 24px}@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:76px 1fr}aside{padding:18px 9px}.nav{justify-content:center}.nav{font-size:0}.nav svg{width:22px;height:22px}.content{padding:30px 20px}}@media(max-width:650px){.login{grid-template-columns:1fr;background:#17324d;padding:28px 20px}.brand h1{font-size:2.5rem}.card{padding:24px}.app header span,.headright small{display:none}.content{padding:24px 14px}.layout{display:block}aside{position:fixed;bottom:0;left:0;right:0;height:68px;z-index:10;border-right:0;border-top:1px solid #dde5eb;display:flex;padding:7px;background:white}.nav{margin:0;padding:7px;flex:1}.pagehead{align-items:flex-end}.pagehead h1{font-size:1.8rem}.pagehead .primary{font-size:0}.pagehead .primary svg{width:20px;height:20px}.content{padding-bottom:92px}.stats{grid-template-columns:1fr 1fr}.stats article{padding:15px}.stats article>svg{display:none}}
.ico{display:inline-flex;min-width:18px;justify-content:center}.loading{padding:24px;color:#667684}.statclick{cursor:pointer}.errorbox{background:#fdeaea;border-color:#efb5b5}.nav span{display:inline}.error:empty{display:none}@media(max-width:900px){.nav span{display:none}}
.activityfilters{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0}.activityfilters label{display:grid;gap:6px;font-weight:700}.activityfilters select,.activityfilters input,.inlineform input{padding:11px 12px;border:1px solid #ccd5dd;border-radius:10px;background:white}.activitypanel{margin-bottom:18px}.inlineform{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.daystatus{display:flex;gap:36px;margin-bottom:18px}.daystatus span{display:block;color:#667684;font-size:.85rem}.daystatus strong{font-size:1.5rem}.activityform{padding:0;max-width:760px}.reportcard{border-top:1px solid #e4eaee;padding:18px 0}.reportcard:first-of-type{border-top:0}.reportcard p{white-space:pre-wrap}.reportmeta{font-size:.8rem;color:#71808b}.issue{padding:10px 12px;border-radius:9px;margin:8px 0;white-space:pre-wrap}.issue b{display:block;margin-bottom:4px}.critical{background:#fff0f0;color:#8d2424}.safety{background:#fff7df;color:#745c10}.attachments{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.attachments span{background:#eef3f6;padding:6px 9px;border-radius:8px;font-size:.85rem}.count{font-size:.85rem;background:#eef3f6;padding:4px 8px;border-radius:999px}.activityform input[type=file]{padding:10px;border:1px dashed #aebbc5;border-radius:10px}@media(max-width:650px){.activityfilters{display:grid}.activityfilters label{width:100%}.activityfilters select,.activityfilters input{width:100%}.daystatus{justify-content:space-between}.activitypanel{padding:18px}}
.managerstats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.mstat{background:white;border:1px solid #dde5eb;border-radius:14px;padding:16px}.mstat span{display:block;color:#667684;font-size:.82rem}.mstat strong{font-size:1.7rem}.mstat.good{border-left:4px solid #4f8a62}.mstat.active{border-left:4px solid #557189}.mstat.bad{border-left:4px solid #b94a48}.mstat.warn{border-left:4px solid #b58a2a}.daypill,.issuebadge,.priority{display:inline-block;border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:750}.daypill.complete{background:#e8f5ec;color:#27633a}.daypill.active{background:#eaf0f5;color:#17324d}.daypill.notstarted{background:#f1f2f3;color:#69737a}.criticalbadge{background:#fff0f0;color:#8d2424}.safetybadge{background:#fff7df;color:#745c10}.drill{width:min(820px,100%)}.drillbody{padding:22px}.announcement{border-top:1px solid #e4eaee;padding:14px 0}.announcement:first-of-type{border-top:0}.announcement>div{display:flex;gap:10px;align-items:center}.announcement p{margin:8px 0;white-space:pre-wrap}.announcement small{color:#71808b}.priority{background:#eef3f6}.announcement.important .priority{background:#fff7df;color:#745c10}.announcement.urgent .priority{background:#fff0f0;color:#8d2424}@media(max-width:900px){.managerstats{grid-template-columns:repeat(2,1fr)}}

.quickranges{display:flex;gap:8px;flex-wrap:wrap;margin:-10px 0 18px}.quickranges button{border:1px solid #ccd5dd;background:white;border-radius:999px;padding:7px 11px;color:#526371}.quickranges button:hover{background:#eef3f6}.historyheading{margin-top:30px}

.restrictedcard{border:2px solid #b94a48;border-radius:12px;padding:16px;margin:12px 0;background:#fffafa}.restriction{background:#fdeaea;border:1px solid #efb5b5;border-radius:9px;padding:10px 12px;color:#8d2424;margin:8px 0}.visibilityactions{display:flex;justify-content:flex-end;margin-top:12px}.dangerbtn{border:0;border-radius:10px;padding:10px 13px;background:#a4262c;color:white;font-weight:700}.activityfilters input[placeholder]{min-width:220px}

.report-export{background:white;color:#17324d;border:1px solid #17324d;border-radius:10px;padding:12px 15px;font-weight:700;display:inline-flex;gap:8px;align-items:center;justify-content:center}

.report-export-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:nowrap}
.report-export-actions button{width:auto;white-space:nowrap}

.auditaction{font-size:.75rem;font-weight:800;background:#eef3f6;padding:5px 8px;border-radius:999px;white-space:nowrap}


/* Phase 5.4B - Issue Register visual refresh */
.issue-project-context{background:#17324d;color:white;border-radius:18px;padding:20px 22px;margin:22px 0 18px;box-shadow:0 12px 28px #17324d18}.issue-project-label{font-size:.7rem;letter-spacing:.14em;font-weight:800;opacity:.68;margin-bottom:10px}.issue-project-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.issue-project-name{display:grid;gap:3px}.issue-project-name strong{font-size:1.55rem;letter-spacing:.01em}.issue-project-name span{font-size:1rem;opacity:.82}.issue-project-switch{display:grid;gap:6px;min-width:310px;font-weight:700}.issue-project-switch span{font-size:.75rem;opacity:.72;text-transform:uppercase;letter-spacing:.07em}.issue-project-switch select{width:100%;padding:11px 38px 11px 12px;border:1px solid #ffffff4d;border-radius:10px;background:white;color:#17202a;font-weight:700}.issue-stats{margin:18px 0}.issue-filter-panel{background:white;border:1px solid #dde5eb;border-radius:16px;padding:18px 20px;margin:18px 0 22px}.issue-filter-title{font-weight:800;color:#334b5d;margin-bottom:4px}.issue-filters{margin:12px 0 14px}.issue-filters label{flex:1 1 135px}.issue-filters .issue-search-label{flex:2 1 240px}.issue-filters select,.issue-filters input{width:100%}.issue-quickranges{margin:0}.issue-groups{display:grid;gap:14px}.issue-member-group{background:white;border:1px solid #dce5eb;border-radius:16px;overflow:hidden;box-shadow:0 5px 16px #17324d0a}.issue-member-group[open]{border-color:#c7d5df}.issue-member-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;background:#fbfcfd}.issue-member-group summary::-webkit-details-marker{display:none}.issue-member-identity{display:flex;align-items:center;gap:12px;min-width:0}.issue-member-identity>div{display:grid;gap:2px}.issue-member-identity strong{font-size:1.02rem}.issue-member-identity span:not(.issue-avatar){font-size:.82rem;color:#71808b}.issue-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eaf0f5;color:#17324d;font-weight:850}.issue-member-counts{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.issue-chevron{font-size:1.15rem;color:#71808b;transition:transform .15s}.issue-member-group[open] .issue-chevron{transform:rotate(180deg)}.issue-member-body{border-top:1px solid #e7edf1}.issue-register-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border-bottom:1px solid #edf1f4}.issue-register-card:last-child{border-bottom:0}.issue-card-main{min-width:0}.issue-card-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#71808b;font-size:.8rem}.issue-card-main p{margin:9px 0 0;white-space:pre-wrap;line-height:1.45;color:#283845}.issue-view-btn{border:1px solid #cbd7df;background:white;color:#17324d;border-radius:9px;padding:9px 12px;font-weight:750;white-space:nowrap}.issue-view-btn:hover{background:#eef3f6}.issue-view-btn span{font-size:1.1rem;margin-left:4px}@media(max-width:700px){.issue-project-row{display:grid}.issue-project-switch{min-width:0;width:100%}.issue-member-group summary{align-items:flex-start;padding:15px}.issue-member-counts{max-width:52%}.issue-register-card{align-items:flex-start;display:grid;padding:15px}.issue-view-btn{justify-self:start}.issue-filter-panel{padding:15px}.issue-card-meta{gap:7px}.issue-project-context{padding:18px}.issue-project-name strong{font-size:1.3rem}}

/* Phase 5.4C - Activity History visual refresh */
.history-project-context{background:#17324d;color:white;border-radius:18px;padding:20px 22px;margin:22px 0 18px;box-shadow:0 12px 28px #17324d18}.history-project-label{font-size:.7rem;letter-spacing:.14em;font-weight:800;opacity:.68;margin-bottom:10px}.history-project-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.history-project-name{display:grid;gap:3px}.history-project-name strong{font-size:1.55rem}.history-project-name span{font-size:1rem;opacity:.82}.history-project-switch{display:grid;gap:6px;min-width:310px;font-weight:700}.history-project-switch span{font-size:.75rem;opacity:.72;text-transform:uppercase;letter-spacing:.07em}.history-project-switch select{width:100%;padding:11px 38px 11px 12px;border:1px solid #ffffff4d;border-radius:10px;background:white;color:#17202a;font-weight:700}.history-filter-panel{background:white;border:1px solid #dde5eb;border-radius:16px;padding:18px 20px;margin:18px 0 22px}.history-filter-title{font-weight:800;color:#334b5d}.history-filters{margin:12px 0 14px}.history-filters label{flex:1 1 180px}.history-filters input{width:100%}.history-quickranges{margin:0}.history-stats{margin:18px 0 26px}.history-section-head{display:flex;align-items:end;justify-content:space-between;margin:28px 0 14px}.history-section-head h2{margin:0 0 4px}.history-section-head p{margin:0}.history-groups{display:grid;gap:14px}.history-member-group{background:white;border:1px solid #dce5eb;border-radius:16px;overflow:hidden;box-shadow:0 5px 16px #17324d0a}.history-member-group[open]{border-color:#c7d5df}.history-member-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;background:#fbfcfd}.history-member-group summary::-webkit-details-marker{display:none}.history-member-identity{display:flex;align-items:center;gap:12px;min-width:0}.history-member-identity>div{display:grid;gap:2px}.history-member-identity strong{font-size:1.02rem}.history-member-identity span:not(.history-avatar){font-size:.82rem;color:#71808b}.history-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eaf0f5;color:#17324d;font-weight:850}.history-member-counts{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.history-chip{font-size:.75rem;font-weight:750;background:#eef3f6;color:#526371;padding:5px 8px;border-radius:999px;white-space:nowrap}.history-chevron{font-size:1.15rem;color:#71808b;transition:transform .15s}.history-member-group[open] .history-chevron{transform:rotate(180deg)}.history-member-body{border-top:1px solid #e7edf1}.history-day-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border-bottom:1px solid #edf1f4}.history-day-card:last-child{border-bottom:0}.history-day-main{flex:1;min-width:0}.history-day-date{display:flex;align-items:center;gap:10px;margin-bottom:12px}.history-day-date strong{font-size:.96rem}.history-day-metrics{display:grid;grid-template-columns:repeat(5,minmax(80px,1fr));gap:14px}.history-day-metrics span{display:grid;gap:3px}.history-day-metrics small{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#7a8994;font-weight:750}.history-day-metrics b{font-size:.9rem;color:#2d3d49}.history-view-btn{border:1px solid #cbd7df;background:white;color:#17324d;border-radius:9px;padding:9px 12px;font-weight:750;white-space:nowrap}.history-view-btn:hover{background:#eef3f6}.history-view-btn span{font-size:1.1rem;margin-left:4px}.history-no-days{padding:18px 20px;color:#71808b}@media(max-width:800px){.history-day-card{display:grid;align-items:start}.history-day-metrics{grid-template-columns:repeat(3,1fr)}.history-view-btn{justify-self:start}.history-member-group summary{align-items:flex-start}.history-member-counts{max-width:55%}}@media(max-width:650px){.history-project-row{display:grid}.history-project-switch{min-width:0;width:100%}.history-project-context{padding:18px}.history-project-name strong{font-size:1.3rem}.history-filter-panel{padding:15px}.history-member-group summary{padding:15px;display:grid}.history-member-counts{max-width:none;justify-content:flex-start}.history-day-card{padding:15px}.history-day-metrics{grid-template-columns:repeat(2,1fr)}}
/* Phase 5.5 - System Branding & Login Configuration */
.brandlogo{display:block;max-width:180px;max-height:100px;object-fit:contain;margin:0 0 18px}
.settingscard{max-width:760px;display:grid;gap:18px}.settingscard textarea{resize:vertical;min-height:90px}.logopreview{min-height:90px;display:flex;align-items:center;margin:8px 0 10px}.logopreview img{max-width:220px;max-height:100px;object-fit:contain}.checkline{display:flex!important;align-items:center;gap:10px}.checkline input{width:auto!important}.formactions{display:flex;gap:12px;flex-wrap:wrap}
.headerbrand{display:flex;align-items:center;gap:10px}.headerbrand img{max-width:44px;max-height:32px;object-fit:contain}

/* Phase 5.6 - My Profile & Password Change */
.profilelink{border:0;background:transparent;color:inherit;padding:7px 9px;border-radius:8px;cursor:pointer;font:inherit;font-size:.82rem}.profilelink:hover{background:#ffffff18}.profilecard{max-width:760px}.profiledetails{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.profiledetails div{display:grid;gap:5px;background:#f7f9fa;border:1px solid #e3e9ed;border-radius:10px;padding:13px}.profiledetails small{text-transform:uppercase;letter-spacing:.06em;color:#71808b;font-weight:750}.passwordform{display:grid;gap:15px;max-width:520px}.successmsg{color:#26734d;font-weight:700}.profilecard hr{border:0;border-top:1px solid #e3e9ed;margin:22px 0}@media(max-width:650px){.profiledetails{grid-template-columns:1fr}.profilelink{max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* Phase 5.7 - latest announcement first, older announcements expandable */
.latestbadge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:800;letter-spacing:.04em;background:#e8f5ec;color:#27633a}.latestannouncement{padding-bottom:16px}.olderannouncements{border-top:1px solid #e4eaee;padding-top:12px}.olderannouncements summary{cursor:pointer;font-weight:750;color:#17324d;padding:6px 0;user-select:none}.olderannouncements summary:hover{text-decoration:underline}.olderannouncementlist .announcement:first-child{margin-top:8px}

/* Phase 5.11 compact report/history presentation */
.history-day-metrics-compact{grid-template-columns:minmax(110px,.7fr) minmax(260px,2.4fr) minmax(80px,.55fr) minmax(80px,.55fr)}
.history-work-description b{font-weight:600;white-space:normal;line-height:1.35}
.compact-empty-members{margin-top:10px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;padding:0 14px}
.compact-empty-members summary{cursor:pointer;padding:10px 0;font-weight:600;color:#64748b;display:flex;justify-content:space-between}
.compact-empty-members>div{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 12px}
.compact-empty-members>div span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px 9px;font-size:12px;color:#475569}
.compact-empty-line{margin-top:8px;padding:8px 12px;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;background:#f8fafc;font-size:13px}
.compact-empty-count{color:#64748b}
@media(max-width:900px){.history-day-metrics-compact{grid-template-columns:1fr 1fr}.history-work-description{grid-column:1/-1;grid-row:1}}

.worktimeform label{display:grid;gap:6px;font-weight:700}.worktimeform .error{flex-basis:100%;margin:0}

/* Phase 5.14 - Work Time alignment */
.worktimeform{display:grid;grid-template-columns:minmax(170px,220px) minmax(170px,220px) auto;gap:14px;align-items:end;max-width:760px}
.worktimeform label{margin:0}
.worktimeform input[type=time]{width:100%;box-sizing:border-box}
.worktimeform button{height:42px;white-space:nowrap;align-self:end}
.worktimeform .error{grid-column:1/-1;margin:0}
@media(max-width:650px){.worktimeform{grid-template-columns:1fr}.worktimeform .error{grid-column:1}.worktimeform button{width:100%}}


/* Phase 5.15 - Project Summary compact matrix */
.report-tabs{display:flex;gap:6px;margin-top:10px}.report-tabs button{border:1px solid #cbd7df;background:#fff;color:#526371;border-radius:8px;padding:7px 11px;font-weight:750}.report-tabs button.active{background:#17324d;color:#fff;border-color:#17324d}.project-summary-filters{align-items:end}.project-summary-filters button{height:42px}.project-summary-groups{display:grid;gap:20px;margin-top:18px}.project-summary-section{background:#fff;border:1px solid #dde5eb;border-radius:14px;overflow:hidden}.project-summary-head{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;background:#f7f9fa;border-bottom:1px solid #e4eaee}.project-summary-head span{font-size:.78rem;color:#71808b}.project-summary-wrap{margin:0;border:0;border-radius:0}.project-summary-table{font-size:.78rem}.project-summary-table th,.project-summary-table td{padding:7px 6px;white-space:nowrap}.project-summary-table th:nth-child(n+4),.project-summary-table td:nth-child(n+4){text-align:center;min-width:34px}.project-summary-table td.summary-day{color:#87949d}.project-summary-table td.summary-day.reported{background:#e7f4ea;color:#205d38;font-weight:850}.project-summary-table td.summary-total{background:#f7f9fa;color:#17324d}.project-summary-table td:first-child{min-width:150px}.project-summary-table td:nth-child(2){min-width:105px}.project-summary-table td:nth-child(3){min-width:110px}@media(max-width:700px){.project-summary-head{display:grid}.project-summary-filters button{width:100%}}
\n.languagepick{display:flex!important;align-items:center!important;gap:6px!important;font-size:.78rem!important;font-weight:650!important;color:inherit;white-space:nowrap}.language-option{appearance:none;border:0!important;background:transparent!important;color:inherit!important;padding:3px 2px!important;margin:0!important;font:inherit!important;cursor:pointer;opacity:.68}.language-option.active{font-weight:800!important;opacity:1;text-decoration:underline;text-underline-offset:3px}.language-option:hover{opacity:1}.language-sep{opacity:.45}.login .languagepick{justify-self:end;color:#526371}.login .language-option{color:#526371!important}.headright{gap:10px!important}@media(max-width:650px){.languagepick{gap:4px!important;font-size:.74rem!important}.headright{gap:7px!important}}\n
/* Phase 5.17 notification center */
.notification-wrap{position:relative;display:flex;align-items:center}
.notification-bell{position:relative;border:0;background:transparent;padding:7px 9px;border-radius:8px;cursor:pointer;font-size:17px;color:inherit}
.notification-bell:hover{background:#f1f5f9}
.notification-bell:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.notification-toasts{position:fixed;top:68px;right:18px;z-index:80;display:flex;flex-direction:column;gap:9px;width:min(360px,calc(100vw - 28px));pointer-events:none}
.notification-toast{pointer-events:auto;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:3px;width:100%;padding:12px 14px;border:1px solid #dbe2ea;border-left:4px solid #2563eb;border-radius:10px;background:#fff;color:#172033;box-shadow:0 12px 30px rgba(15,23,42,.18);cursor:pointer;opacity:0;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease}
.notification-toast.show{opacity:1;transform:translateY(0)}
.notification-toast.urgent{border-left-color:#dc2626}
.notification-toast-title{font-size:13px;font-weight:750}
.notification-toast-message{font-size:12px;line-height:1.4}
.notification-toast-meta{font-size:10px;color:#667085}
.notification-badge{position:absolute;top:0;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#dc2626;color:#fff;font-size:10px;font-weight:700;line-height:17px;text-align:center}
.notification-panel{position:absolute;right:0;top:42px;width:min(390px,calc(100vw - 24px));max-height:520px;overflow:auto;background:#fff;border:1px solid #dbe2ea;border-radius:12px;box-shadow:0 14px 35px rgba(15,23,42,.18);z-index:50;padding:10px;color:#172033}
.notification-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 4px 10px;border-bottom:1px solid #e7ecf1}
.linkbtn{border:0;background:transparent;color:#2563eb;cursor:pointer;font-size:12px}
.notification-list{display:flex;flex-direction:column}
.notification-item{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:3px;border:0;border-bottom:1px solid #eef2f6;background:#fff;padding:10px 8px;cursor:pointer;width:100%}
.notification-item.unread{background:#eff6ff}
.notification-title{font-weight:650}
.notification-message{font-size:12px;line-height:1.35}
.notification-meta{font-size:10px;color:#667085}
.notification-settings-btn{width:100%;margin-top:8px;padding:9px;border:0;border-radius:8px;background:#f1f5f9;cursor:pointer}
.notification-preferences{display:flex;flex-direction:column;padding:4px 0 10px}
.notification-pref{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 5px;border-bottom:1px solid #eef2f6;font-size:13px}
.notification-pref input{width:18px;height:18px}
.empty.compact{padding:20px 8px;text-align:center;color:#667085}
@media(max-width:720px){.notification-panel{position:fixed;right:12px;top:58px;left:12px;width:auto;max-height:70vh}.notification-toasts{top:62px;right:12px;width:calc(100vw - 24px)}}

/* Phase 5.18 compact grouped Project Members */
.member-filters{display:grid;grid-template-columns:minmax(220px,1fr) 150px minmax(220px,1.2fr);gap:10px;align-items:end;margin:0 0 12px;padding:10px 12px;background:#fff;border:1px solid #e3e8ef;border-radius:10px}
.member-filters label{font-size:11px;font-weight:650;color:#667085;margin:0}.member-filters select,.member-filters input{margin-top:4px;height:34px;padding:5px 8px;font-size:13px}
.project-member-group{background:#fff;border:1px solid #e1e7ee;border-radius:10px;margin-bottom:9px;overflow:hidden}
.project-member-group summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:9px 12px;background:#f8fafc}
.project-member-group summary::-webkit-details-marker{display:none}.project-member-group summary span:first-child{display:flex;align-items:baseline;gap:12px;min-width:0}.project-member-group summary b{font-size:13px}.project-member-group summary small{font-size:10px;color:#667085;white-space:nowrap}
.group-count{font-size:11px;font-weight:700;background:#e8eef6;border-radius:10px;padding:2px 7px}
.compact-member-table{border:0;border-radius:0}.compact-member-table table{font-size:12px}.compact-member-table th{padding:6px 9px;font-size:10px}.compact-member-table td{padding:6px 9px}.compact-member-table .status{font-size:10px;padding:2px 6px}.compact-member-table .iconbtn{width:27px;height:27px;padding:2px}
.compact-head{margin-bottom:10px}
@media(max-width:760px){.member-filters{grid-template-columns:1fr}.project-member-group summary span:first-child{align-items:flex-start;flex-direction:column;gap:2px}.project-member-group summary small{white-space:normal}.compact-member-table{overflow-x:auto}}

/* Phase 5.18A compact Users grouped by system role */
.user-role-group summary b{font-size:13px}
.compact-user-table td:nth-child(2){font-size:11px;color:#475467}
.compact-user-table th:last-child,.compact-user-table td:last-child{width:38px;text-align:center}
@media(max-width:620px){.compact-user-table table{min-width:520px}}

/* Phase 5.18A1 - keep grouped Users columns aligned across every role section */
.compact-user-table table{table-layout:fixed;width:100%;min-width:720px}
.compact-user-table th:nth-child(1),.compact-user-table td:nth-child(1){width:28%}
.compact-user-table th:nth-child(2),.compact-user-table td:nth-child(2){width:50%}
.compact-user-table th:nth-child(3),.compact-user-table td:nth-child(3){width:16%}
.compact-user-table th:nth-child(4),.compact-user-table td:nth-child(4){width:6%;text-align:center}
.compact-user-table td:nth-child(1),.compact-user-table td:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:620px){.compact-user-table table{min-width:620px}}

/* Phase 5.18A2 - compact Manager Dashboard summary cards only */
.manager-dashboard-stats{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:14px 0 16px}
.manager-dashboard-stats .mstat{border-radius:10px;padding:8px 10px;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.manager-dashboard-stats .mstat span{font-size:.72rem;line-height:1.15}
.manager-dashboard-stats .mstat strong{font-size:1.25rem;line-height:1;font-weight:750}
@media(max-width:1180px){.manager-dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.manager-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-dashboard-stats .mstat{min-height:50px}}


/* Phase 5.19 - Projects member drill-down + compact Manager Dashboard issue view */
.compact-project-table table{font-size:12px}.compact-project-table th,.compact-project-table td{padding:7px 9px}.project-name-link{border:0;background:transparent;padding:0;color:#17324d;font:inherit;font-weight:750;cursor:pointer;text-align:left}.project-name-link:hover{text-decoration:underline}.project-name-link span{display:inline-block;font-size:10px;margin-left:4px;transition:transform .15s}.project-name-link.open span{transform:rotate(180deg)}
.project-member-drill-row>td{padding:0!important;background:#f8fafc}.project-member-inline{padding:7px 12px 10px 34px}.project-member-inline table{width:100%;font-size:11px;background:#fff;border:1px solid #e4e9ef}.project-member-inline th,.project-member-inline td{padding:5px 8px}.project-member-inline th{font-size:10px}.project-member-inline .status{font-size:10px;padding:2px 6px}
.manager-compact-table table{font-size:12px;table-layout:fixed;width:100%}.manager-compact-table th,.manager-compact-table td{padding:7px 9px}.manager-compact-table th:nth-child(1),.manager-compact-table td:nth-child(1){width:30%}.manager-compact-table th:nth-child(2),.manager-compact-table td:nth-child(2){width:52%}.manager-compact-table th:nth-child(3),.manager-compact-table td:nth-child(3),.manager-compact-table th:nth-child(4),.manager-compact-table td:nth-child(4){width:7%;text-align:center}.manager-compact-table th:nth-child(5),.manager-compact-table td:nth-child(5){width:4%;text-align:center}.manager-compact-table .sub{margin-top:2px;font-size:10px}.manager-issue-description{white-space:normal;line-height:1.3}
@media(max-width:700px){.compact-project-table table{min-width:650px}.project-member-inline{padding-left:12px}.manager-compact-table table{min-width:650px}}

/* Phase 5.20 compact work-report visibility */
.manager-work-report{margin-top:5px;padding-top:5px;border-top:1px solid var(--line,#e5e7eb)}
.issue-member-work{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:var(--muted,#667085);max-width:760px}
.compact-user-table td,.compact-user-table th{padding-top:7px;padding-bottom:7px}
/* Phase 5.24C Member Dashboard activity detail + multiple attachments */
.selected-attachments{display:flex;gap:8px;flex-wrap:wrap}.selected-file{display:inline-flex;align-items:center;gap:7px;background:#eef3f6;border-radius:8px;padding:7px 9px;font-size:.85rem}.selected-file button{border:0;background:#dce5eb;border-radius:999px;width:22px;height:22px;line-height:1}.dashboard-attachments{display:flex;gap:8px;flex-wrap:wrap;min-width:160px}.attachment-thumb,.attachment-file{border:1px solid #d7e0e6;background:#f8fafb;border-radius:9px;padding:7px 9px;max-width:190px;text-align:left}.attachment-thumb{display:grid;grid-template-columns:auto 1fr;gap:6px;align-items:center}.attachment-thumb span,.attachment-file{font-size:.78rem;overflow-wrap:anywhere}.manager-issue-description{min-width:320px;white-space:normal}.manager-work-report{margin-top:7px}

/* Phase 5.24C Rev2 - compact uniform Member Dashboard attachment tiles */
.dashboard-attachments{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:7px;min-width:170px;max-width:330px;align-items:start}
.attachment-tile{width:100%;min-width:0;height:76px;border:1px solid #d7e0e6;background:#f8fafb;border-radius:9px;padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;cursor:pointer;overflow:hidden}
.attachment-tile:hover{background:#eef3f6;border-color:#bccbd4}
.attachment-tile-icon{font-size:1.35rem;line-height:1}
.attachment-tile-name{display:block;width:100%;font-size:.70rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.dashboard-attachments{grid-template-columns:repeat(3,minmax(68px,1fr));max-width:none;min-width:0}.attachment-tile{height:70px}}

/* Phase 5.24C Rev3 - member activity table and attachment access refinement */
.member-activity-table table{table-layout:fixed;width:100%}
.member-activity-table th:nth-child(1),.member-activity-table td:nth-child(1){width:18%}
.member-activity-table th:nth-child(2),.member-activity-table td:nth-child(2){width:52%}
.member-activity-table th:nth-child(3),.member-activity-table td:nth-child(3){width:30%}
.member-report-detail{padding:3px 0 10px;border-bottom:1px solid #edf1f3}
.member-report-detail:last-child{border-bottom:0;padding-bottom:3px}
.member-issue-badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:5px}
.reportcard-attachments{margin-top:10px;max-width:100%}
@media(max-width:700px){.member-activity-table table{table-layout:auto}.member-activity-table th:nth-child(1),.member-activity-table td:nth-child(1),.member-activity-table th:nth-child(2),.member-activity-table td:nth-child(2),.member-activity-table th:nth-child(3),.member-activity-table td:nth-child(3){width:auto}}

/* Phase 5.24D: Manager Dashboard attachment visibility */
.manager-attachments-table th:nth-child(1){width:18%}
.manager-attachments-table th:nth-child(2){width:39%}
.manager-attachments-table th:nth-child(3){width:25%}
.manager-attachments-table th:nth-child(4),.manager-attachments-table th:nth-child(5){width:7%}
.manager-attachments-table th:nth-child(6){width:4%}
.manager-attachments-table .dashboard-attachments{justify-content:flex-start}

/* Phase 5.26 - Dashboard & navigation UI refinements */
.manager-dashboard-stats{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1180px){.manager-dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.manager-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Phase 5.27 - System Admin Custom Report Builder */
.custom-report-panel{background:#fff;border:1px solid var(--line,#e5e7eb);border-radius:14px;padding:18px;margin:0 0 18px;box-shadow:0 2px 10px rgba(20,35,50,.04)}
.custom-report-panel h2{margin:0 0 12px}.custom-report-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.custom-report-heading h2{margin-bottom:3px}
.data-platter{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.platter-group{border:1px solid #dce4e9;border-radius:12px;background:#f8fafb;padding:12px}.platter-group h3{margin:0 0 8px;font-size:.84rem;text-transform:uppercase;letter-spacing:.04em;color:#51606a}.platter-field{display:flex;gap:9px;align-items:center;padding:7px 5px;border-radius:7px;cursor:pointer}.platter-field:hover{background:#eef3f6}.platter-field input{width:17px;height:17px}.custom-preview table{min-width:900px}.custom-preview td{max-width:340px;white-space:normal;vertical-align:top}.custom-preview th{position:sticky;top:0;z-index:1}
@media(max-width:700px){.custom-report-heading{display:block}.custom-report-heading>button,.custom-report-heading>div:last-child{margin-top:10px}.data-platter{grid-template-columns:1fr}}
/* Phase 5.28 - Custom Report attachment package */
.evidence-download{margin-top:8px;padding-top:9px;border-top:1px dashed var(--line,#e5e7eb);font-weight:600}

/* Phase 5.29B: selected quick range highlight for Custom Report-1 only. */
[data-tab="customreport1"]{}
.custom-report-panel .quickranges button.active{background:#17324d;color:#fff;border-color:#17324d;font-weight:800;box-shadow:0 0 0 2px #17324d18}

/* Phase 5.31 - Dashboard Project Member Visibility */
.dashboard-project-filters{align-items:end}.project-members-link{height:42px;border:1px solid #cbd7df;background:#fff;color:#17324d;border-radius:10px;padding:0 14px;font-weight:750;cursor:pointer}.project-members-link:hover{background:#eef3f6}.project-members-modal{width:min(760px,100%)}.project-members-body{padding:20px 22px}.project-members-table{min-width:620px}@media(max-width:650px){.dashboard-project-filters .project-members-link{width:100%}}

/* Phase 5.32 - My Activity compact guidance and entry emphasis */
.activity-section-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.activity-section-title h2{margin:0}.info-button{width:25px;height:25px;border-radius:50%;border:1px solid #9eacb7;background:#f5f8fa;color:#17324d;font-weight:800;display:grid;place-items:center;padding:0;line-height:1}.info-button:hover,.info-button:focus-visible{background:#eaf0f5;border-color:#557189;outline:none}.report-info-box{padding:11px 13px;margin:0 0 15px;border:1px solid #dbe4ea;border-radius:10px;background:#f8fafb}.activity-entry{padding:11px 12px;border-radius:12px;border:1px solid transparent}.activity-entry textarea{background:rgba(255,255,255,.72)!important}.activity-entry-work{background:#f0f5f8;border-color:#cbdbe4}.activity-entry-critical{background:#fff0f0;border-color:#e8bcbc}.activity-entry-safety{background:#fff7df;border-color:#e7d18d}.activity-entry:focus-within{box-shadow:0 0 0 2px rgba(85,113,137,.12)}.activity-entry-critical:focus-within{border-color:#c96b6b}.activity-entry-safety:focus-within{border-color:#c6a43a}.workday-hint{font-size:.78rem;font-weight:500;color:#667684}@media(max-width:650px){.activity-section-title{align-items:center}.workday-hint{display:block;margin-top:4px}.activity-entry{padding:10px}}

/* Phase 5.32 - My Activity compact guidance and entry emphasis */
.activity-section-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.activity-section-title h2{margin:0}.info-button{width:25px;height:25px;border-radius:50%;border:1px solid #9eacb7;background:#f5f8fa;color:#17324d;font-weight:800;display:grid;place-items:center;padding:0;line-height:1}.info-button:hover,.info-button:focus-visible{background:#eaf0f5;border-color:#557189;outline:none}.report-info-box{padding:11px 13px;margin:0 0 15px;border:1px solid #dbe4ea;border-radius:10px;background:#f8fafb}.activity-entry{padding:11px 12px;border-radius:12px;border:1px solid transparent}.activity-entry textarea{background:rgba(255,255,255,.72)!important}.activity-entry-work{background:#f0f5f8;border-color:#cbdbe4}.activity-entry-critical{background:#fff0f0;border-color:#e8bcbc}.activity-entry-safety{background:#fff7df;border-color:#e7d18d}.activity-entry:focus-within{box-shadow:0 0 0 2px rgba(85,113,137,.12)}.activity-entry-critical:focus-within{border-color:#c96b6b}.activity-entry-safety:focus-within{border-color:#c6a43a}.workday-hint{font-size:.78rem;font-weight:500;color:#667684}@media(max-width:650px){.activity-section-title{align-items:center}.workday-hint{display:block;margin-top:4px}.activity-entry{padding:10px}}

/* Phase 5.32 Rev2 - Project Announcements visual distinction */
.announcementpanel{background:#eef8f5;border-color:#b9ddd3}
.announcementpanel .announcement{border-top-color:#cfe7e0}
.announcementpanel .olderannouncements{border-top-color:#cfe7e0}
