/* Portfolio alignment: employee/admin demo workflows. No network dependencies. */
[hidden]{display:none !important}
.role-button{border:1px solid #cad5e9;border-radius:8px;background:#f2f5ff;color:#223667;font:inherit;font-size:10px;font-weight:800;line-height:1.3;letter-spacing:.06em;padding:10px 13px;cursor:pointer;white-space:nowrap;transition:background .18s,border-color .18s}
.role-button:hover{background:#e0e8ff;border-color:#829aff}
.role-button:focus-visible,.case-study-link:focus-visible{outline:3px solid #5975f8;outline-offset:3px}
.sidebar-caption.role-section-employee{margin-top:36px}
.case-study-link{color:#a6baff;text-decoration:none;margin-bottom:7px}
.scope-list{display:grid;gap:10px;margin:18px 0;padding:0;list-style:none;counter-reset:scope}
.scope-list li{counter-increment:scope;padding:13px 14px 13px 40px;position:relative;border:1px solid #e4e9f4;border-radius:10px;background:#f8faff;color:#334260;font-size:13px;line-height:1.6}
.scope-list li:before{content:counter(scope,decimal-leading-zero);position:absolute;left:12px;top:14px;font-size:10px;color:#4763ef;font-weight:900}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.review-grid>div{background:#f5f7fd;border:1px solid #e6ebf5;padding:14px;border-radius:9px;display:grid;gap:7px;min-width:0}
.review-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#677796;font-weight:800}
.review-grid strong{font-size:13px;overflow-wrap:anywhere;color:#172544}
.review-grid .span2{grid-column:1/-1}
.details-section{border-top:1px solid #e9ecf3;padding-top:18px;margin-top:23px}
.details-section h3{font-size:15px;color:#162343;margin-bottom:6px}
.history-list{list-style:none;padding:0;display:grid;gap:9px;margin:16px 0}
.history-list li{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:11px 13px;border-radius:8px;background:#f7f8fc;font-size:12px}
.history-list time{color:#73809d;margin-left:auto;font-variant-numeric:tabular-nums}
.history-list small{flex-basis:100%;color:#52607d}
.review-note{padding:12px;background:#f4f6fb;border:1px solid #e8edf6;border-radius:9px;margin:9px 0;overflow-wrap:anywhere}
.review-note p{margin:5px 0 0;color:#2d3e5e;font-size:13px}
.review-note .mono{color:#7d8aa4;font-size:10px}
#noteForm{margin-top:15px;display:grid;gap:10px}
#noteForm textarea{width:100%;min-height:80px;resize:vertical;background:white;border:1px solid #d9e1f0;border-radius:8px;padding:12px;color:#233250;font:inherit}
#noteForm .btn{justify-self:start}
.review-notes{margin-top:16px;padding:12px;background:#f7f8fd;border-radius:9px}
.review-notes p{font-size:13px;color:#3f4e6a;overflow-wrap:anywhere}
.tracker-actions{margin-top:18px}
@media (max-width:720px){.role-button{font-size:9px;padding:9px 10px}.top-demo-dot,.top-demo-label{display:none!important}.topbar-right{gap:8px!important}.review-grid{grid-template-columns:1fr}.review-grid .span2{grid-column:auto}.history-list time{margin:0}}
@media (max-width:390px){.topbar-right .avatar{display:none!important}.role-button{max-width:116px;white-space:normal}}
@media print{body{background:white!important}body>.app-shell,body>.drawer-overlay,body>.toast{display:none!important}body>dialog{display:block!important;position:static!important;inset:auto!important;margin:0!important;border:0!important;box-shadow:none!important;max-width:100%!important;max-height:none!important;overflow:visible!important}body>dialog::backdrop{display:none}body>dialog .dialog-actions,body>dialog #noteForm,body>dialog .security-note{display:none!important}.request-print{padding:0!important}body>dialog .result-content{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important}body>dialog .history-list,body>dialog .details-section{break-inside:avoid}}

/* On narrow phones, provide an independently scrollable timetable rather than shrinking every day cell. */
@media (max-width:480px){.schedule{overflow-x:auto;overscroll-behavior-inline:contain}.schedule-head,.schedule-item,.schedule-legend{min-width:560px}.schedule-head,.schedule-item{grid-template-columns:145px minmax(0,1fr)}.schedule-day strong,.schedule-day small{font-size:10px}.schedule-device strong{font-size:11px}.schedule-slot{min-height:25px}}
