/* Shared dashboard layout. Typography inherits the system's Google Sans tokens. */
.dashboard-attention{margin-bottom:20px}
.dashboard-statistics{display:grid;grid-template-columns:repeat(var(--dashboard-stat-count,4),minmax(0,1fr));gap:20px;margin-bottom:20px;align-items:stretch}
.dashboard-statistics:empty{display:none}
.dashboard-statistics>.dashboard-statistic{display:flex;flex-direction:column;min-width:0;margin:0}
.dashboard-statistic .card-head,.dashboard-statistic .analytics-heading{padding:22px 20px 0;min-height:94px;border:0;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:8px}
.dashboard-statistic .card-head h2,.dashboard-statistic .analytics-heading h2{font-size:var(--text-subheading);line-height:1.3;margin:0;font-weight:var(--font-semibold)}
.dashboard-statistic .card-head .right{margin-left:0}
.dashboard-statistic .card-head a{padding:0;font-size:var(--text-caption);line-height:1.6}
.dashboard-statistic .analytics-heading p{font-size:var(--text-caption);line-height:1.6;margin:0}
.dashboard-statistic .chart-body,.dashboard-statistic .severity-body{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:24px;min-height:0;padding:20px;flex:1}
.dashboard-statistic .donut{width:124px;flex-shrink:0}
.dashboard-statistic .donut>span{width:88px;height:88px;font-size:var(--text-heading)}
.dashboard-statistic .donut small{font-size:var(--text-caption)}
.dashboard-statistic .legend{display:grid;align-content:start;gap:12px;max-width:240px;width:100%;font-size:var(--text-small);text-align:left}
.dashboard-statistic .legend>div{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:9px;white-space:normal}
.dashboard-statistic .legend i{width:8px;height:8px;margin:0}
.dashboard-statistic .legend b{margin-left:0!important;font-weight:var(--font-medium)}
.dashboard-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:stretch}
.dashboard-bottom-grid>.card{min-width:0;margin:0}
.dashboard-bottom-grid .card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 24px;min-height:76px}
.dashboard-bottom-grid .card-head h2{font-size:var(--text-subheading);margin:0;font-weight:var(--font-semibold);line-height:1.35}
.dashboard-bottom-grid .card-head>a{font-size:var(--text-small);white-space:nowrap}
.dashboard-activity-list{padding:0 24px 10px}
.dashboard-activity-item{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.dashboard-activity-item:last-child{border:0}
.dashboard-activity-symbol{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:#fff1e8;color:#c64b00}
.dashboard-activity-symbol[data-activity-module=documents],.dashboard-activity-symbol[data-activity-module=capa]{background:#eaf7f3;color:#25806f}
.dashboard-activity-symbol[data-activity-module=risks]{background:#fff3d9;color:#946a14}
.dashboard-activity-symbol .ui-icon{width:18px;height:18px}
.dashboard-activity-item>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.dashboard-activity-item strong{font-size:var(--text-small);line-height:1.5;font-weight:var(--font-medium)}
.dashboard-activity-item a{font-size:var(--text-small);line-height:1.5;overflow-wrap:anywhere}
.dashboard-activity-item p,.dashboard-activity-item time{font-size:var(--text-caption);color:var(--text-secondary);line-height:1.6;margin:0}
.dashboard-activity-empty{padding:26px 0;color:var(--text-secondary);font-size:var(--text-small);line-height:1.7}
.dashboard-calendar .card-head>button{font-size:var(--text-caption);padding:6px 12px;min-height:32px}
.qms-calendar-content{display:flex;flex-direction:column;gap:20px;padding:16px 24px 24px}
.qms-month-nav{display:flex;justify-content:space-between;align-items:center;gap:12px}
.qms-month-nav h3{font-size:var(--text-body);font-weight:var(--font-semibold);line-height:1.5;margin:0;text-align:center}
.qms-month-nav>button{display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:8px;border:0;background:transparent;border-radius:8px}
.qms-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));column-gap:8px;row-gap:10px;justify-items:center;align-items:center}
.qms-weekday{font-size:var(--text-caption);font-weight:var(--font-regular);line-height:1.5;color:var(--text-tertiary);padding-bottom:3px}
.qms-date{position:relative;display:grid;place-items:center;width:32px;min-height:32px;height:32px;padding:0;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--ink);font-size:var(--text-small);font-weight:var(--font-medium);line-height:1.4}
.qms-date.outside-month{color:var(--text-tertiary);font-weight:var(--font-regular);opacity:.65}
.qms-date:hover{background:#f4f4f4}
.qms-date.is-today{border-color:var(--color-orange)}
.qms-date[aria-pressed=true]{background:#c3ebfa;color:#242424;border-color:transparent;opacity:1}
.qms-due-dot{width:3px;height:3px;border-radius:50%;background:var(--color-orange);position:absolute;bottom:2px;left:calc(50% - 1.5px)}
.qms-agenda-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.qms-agenda-heading h3{font-size:var(--text-small);font-weight:var(--font-semibold);line-height:1.5;margin:0 0 5px}
.qms-agenda-heading p{font-size:var(--text-caption);color:var(--text-secondary);line-height:1.5;margin:0}
.qms-agenda-heading button{padding:0;min-height:26px;border:0;background:transparent;color:var(--text-tertiary);font-size:var(--text-caption);font-weight:var(--font-regular);white-space:nowrap}
.qms-agenda-list{display:flex;flex-direction:column;gap:16px;max-height:260px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.qms-agenda-item{display:flex;flex-direction:column;align-items:flex-start;gap:5px;border-left:3px solid var(--agenda-color);padding:0 14px}
.qms-agenda-item time{font-size:var(--text-caption);line-height:1.5;color:var(--text-tertiary)}
.qms-agenda-item>a{font-size:var(--text-small);line-height:1.5;font-weight:var(--font-medium);color:var(--ink);overflow-wrap:anywhere}
.qms-agenda-item>span{background:#f7f8fa;color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--font-medium);line-height:1.5;padding:3px 6px;border-radius:6px}
.qms-agenda-empty{margin:0;line-height:1.6;font-size:var(--text-small);color:var(--text-secondary);min-height:100px}
.qms-agenda-more{font-size:var(--text-caption);min-height:34px;padding:7px 12px;align-self:flex-start}
html[data-theme=dark] .qms-date:hover{background:#343434}
html[data-theme=dark] .qms-date[aria-pressed=true]{background:#c3ebfa;color:#242424}
html[data-theme] .dashboard-calendar .qms-date{border-color:transparent;background:transparent}
html[data-theme] .dashboard-calendar .qms-date.is-today{border-color:var(--color-orange)}
html[data-theme] .dashboard-calendar .qms-date[aria-pressed=true]{border-color:transparent;background:#c3ebfa;color:#242424}
html[data-theme=dark] .qms-agenda-item>span{background:#303030}
html[data-theme=dark] .dashboard-activity-symbol{background:#422d20;color:#ffa367}
html[data-theme=dark] .dashboard-activity-symbol[data-activity-module=documents],html[data-theme=dark] .dashboard-activity-symbol[data-activity-module=capa]{background:#233a32;color:#7bcbb0}
html[data-theme=dark] .dashboard-activity-symbol[data-activity-module=risks]{background:#403620;color:#e7bf65}
/* The homepage's scaled workspace uses the same four-card row and equal lower panels. */
.public-demo-screen .dashboard-statistics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.public-demo-screen .dashboard-statistic .card-head,.public-demo-screen .dashboard-statistic .analytics-heading{min-height:84px;padding:20px 16px 0;gap:7px}
.public-demo-screen .dashboard-statistic .card-head h2,.public-demo-screen .dashboard-statistic .analytics-heading h2{font-size:18px}
.public-demo-screen .dashboard-statistic .card-head a,.public-demo-screen .dashboard-statistic .analytics-heading p{font-size:11px}
.public-demo-screen .dashboard-statistic .chart-body,.public-demo-screen .dashboard-statistic .severity-body{flex-direction:column;padding:18px 16px;gap:22px}
.public-demo-screen .dashboard-statistic .donut{width:110px}
.public-demo-screen .dashboard-statistic .donut>span{width:78px;height:78px;font-size:23px}
.public-demo-screen .dashboard-statistic .donut small{font-size:10px}
.public-demo-screen .dashboard-statistic .legend{font-size:12px;gap:10px}
.public-demo-screen .dashboard-bottom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.public-demo-screen .dashboard-bottom-grid .card-head h2{font-size:20px}
.public-demo-screen .dashboard-bottom-grid .card-head>a{font-size:12px}
.public-demo-screen .dashboard-activity-item strong,.public-demo-screen .dashboard-activity-item a{font-size:14px}
.public-demo-screen .dashboard-activity-item p,.public-demo-screen .dashboard-activity-item time{font-size:12px}
@media(max-width:1100px){.dashboard-statistics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.dashboard-bottom-grid{grid-template-columns:1fr}}
@media(max-width:600px){.dashboard-statistics{grid-template-columns:1fr}.dashboard-bottom-grid .card-head{padding:20px}.qms-calendar-content{padding:14px 20px 20px}.dashboard-activity-list{padding:0 20px 10px}.qms-month-grid{column-gap:4px;row-gap:9px}.qms-date{width:30px;height:30px;min-height:30px}}
@media(max-width:699px){.home-dashboard-dialog .public-demo-screen .dashboard-statistics,.home-dashboard-dialog .public-demo-screen .dashboard-bottom-grid{grid-template-columns:1fr}.home-dashboard-dialog .public-demo-screen .dashboard-statistic .legend{max-width:230px}}
@media print{.dashboard-statistics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dashboard-bottom-grid{grid-template-columns:1fr 1fr}.dashboard-bottom-grid>.card{break-inside:avoid}.qms-month-nav button,.qms-agenda-heading button,.qms-agenda-more,.dashboard-calendar .card-head>button{display:none}.qms-agenda-list{max-height:none;overflow:visible}.qms-date[aria-pressed=true]{print-color-adjust:exact}}
