/* Employee shell appears only after server-verified sign-in. */
body main #result .portal-nav #open-calendar,body main #result .portal-nav #open-year{display:block!important}
#calendar>h2{display:none}
body main:has(#result:not([hidden])){max-width:1480px;margin:20px auto;padding:0;border:1px solid #ded7dc;background:#fff;border-radius:18px;overflow:hidden}
main:has(#result:not([hidden]))>h1,main:has(#result:not([hidden]))>p:not(#status){display:none}
#result:not([hidden]){display:grid;grid-template-columns:228px minmax(0,1fr);min-height:76vh}
.portal-sidebar{background:#f6f2f5;border-right:1px solid #e6dfe4;padding:30px 20px;display:flex;flex-direction:column;gap:18px}
.portal-sidebar .brand{margin:0;font-size:20px}.portal-kicker{font-size:11px;letter-spacing:1.7px;font-weight:700;text-transform:uppercase;color:#806e7b}
.portal-nav{display:grid;gap:6px}.portal-nav button,body main #result #open-calendar,body main #result #open-year{display:block;width:100%;margin:0;text-align:left;padding:12px 14px;background:transparent;color:#594652;font-size:15px}
.portal-nav button[aria-current=page]{background:#69003d!important;color:#fff!important}.portal-nav button:disabled{cursor:not-allowed;opacity:.55}.portal-nav small{display:block;font-size:11px;font-weight:400}.portal-sidebar .sidebar-note{font-size:12px;color:#766572;margin-top:auto}.portal-sidebar #logout{font-size:14px;margin:0;background:white;border:1px solid #ccbfc8;color:#69003d;width:100%}
.portal-body{padding:32px;min-width:0}.workspace-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid #ece6ea;padding-bottom:22px;margin-bottom:26px}.workspace-heading h2{font:34px/1.1 Georgia,serif;margin:8px 0 0}.portal-identity{font-size:12px;color:#77636e;text-align:right;overflow-wrap:anywhere;max-width:330px}.portal-identity p{margin:8px 0}.pilot-badge{display:inline-block;border:1px solid #deced8;background:#f8f2f6;color:#69003d;border-radius:30px;padding:5px 12px;font-size:11px}
.dashboard-hero{background:#69003d;color:white;border-radius:14px;padding:28px}.dashboard-hero .portal-kicker{color:#e3bfce}.dashboard-hero h3{font:30px Georgia,serif;margin:10px 0}.dashboard-hero p{font-size:14px;color:#ead9e3;margin-bottom:0}
.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.dashboard-stat{border:1px solid #e5dfe3;border-radius:12px;padding:20px}.dashboard-stat p{font-size:12px;color:#786b74;margin:0}.dashboard-stat strong{display:block;font:32px Georgia,serif;color:#69003d;margin:12px 0}.dashboard-stat small{font-size:11px;color:#786b74}
.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px}.dashboard-card{border:1px solid #e5dfe3;border-radius:12px;padding:22px}.dashboard-card h3{font-size:17px;margin:0 0 18px}.dashboard-card p{font-size:14px;color:#786b74}.dashboard-card button{font-size:14px;margin:8px 8px 0 0}.dashboard-card ul{padding:0;margin:0;list-style:none}.dashboard-card li{padding:14px 0;border-top:1px solid #eee7ec;font-size:14px}.dashboard-card li:first-child{border:0}.dashboard-card li span,.dashboard-card li small{display:block;color:#796875;margin-top:4px;font-size:12px}
.dashboard-feed{font-size:12px;color:#77636e}.dashboard-feed button{background:transparent;color:#69003d;text-decoration:underline;padding:4px 0;margin:0 0 0 12px;font-size:12px;min-height:32px}.coming-soon{background:#faf8f9;border-radius:8px;padding:12px;margin-bottom:10px}.coming-soon strong{font-size:13px}.coming-soon p{font-size:12px;margin:4px 0 0}
main:has(#result:not([hidden]))>#status{padding:14px 24px;margin:0;border-top:1px solid #e6dfe4;font-size:12px;background:#faf8f9}#calendar>p{font-size:14px;color:#77636e}#calendar .calendar-day{min-height:72px}#year-planning{min-width:0}#team-board .tb-head{padding:20px}#team-board .tb-controls,#team-board .tb-filterbar{flex-wrap:wrap;padding:16px}#team-board .tb-periods{flex-wrap:wrap}
@media(max-width:950px){#result:not([hidden]){grid-template-columns:180px minmax(0,1fr)}.portal-body{padding:22px}.portal-sidebar{padding:24px 12px}.dashboard-columns{grid-template-columns:1fr}.dashboard-stats{gap:8px}.dashboard-stat{padding:12px}.workspace-heading{display:block}.portal-identity{text-align:left;max-width:none;margin-top:14px}}
@media(max-width:620px){body{padding:10px}body main:has(#result:not([hidden])){margin:10px auto}#result:not([hidden]){display:block}.portal-sidebar{border-right:0;border-bottom:1px solid #e6dfe4;padding:18px;gap:10px}.portal-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-nav button,body main #result #open-calendar,body main #result #open-year{font-size:12px;text-align:center;padding:9px 5px}.portal-nav button:disabled{display:none}.portal-sidebar .sidebar-note{display:none}.portal-sidebar #logout{min-height:40px}.portal-body{padding:18px}.dashboard-hero{padding:20px}.dashboard-hero h3{font-size:25px}.dashboard-stats{grid-template-columns:1fr}.dashboard-stat{display:grid;grid-template-columns:1fr auto;align-items:center}.dashboard-stat strong{grid-column:2;grid-row:1 / 3;margin:0;font-size:27px}.dashboard-stat small{grid-column:1}.dashboard-card{padding:16px}.dashboard-card button{width:100%;margin:8px 0}.workspace-heading h2{font-size:29px}#calendar .calendar-day{min-height:48px}.portal-identity{font-size:11px}}

/* Rollout: readable document cards and controls at desktop and phone widths. */
#documents>h2{display:none}
#documents-list{display:grid;gap:16px;margin-top:20px}
#documents-list .dashboard-card{min-width:0;overflow-wrap:anywhere}
#documents-list button{max-width:100%;white-space:normal;overflow-wrap:anywhere;min-height:44px}
.portal-nav small,.dashboard-stat small,.dashboard-feed,.sidebar-note{font-size:13px}
#team-board input,#team-board select,#team-board button{min-height:40px}
#team-board button:disabled,#team-board input:disabled,#team-board select:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:600px){.workspace-heading{flex-direction:column}.portal-identity{text-align:left;max-width:100%}.portal-body{padding:18px}.dashboard-hero{padding:20px}.dashboard-hero h3{font-size:26px}}
