.os-dashboards-page,.os-dashboards-page *{box-sizing:border-box}.os-dashboards-page{width:min(1120px,100%);color:var(--color-text-primary,#221d17);margin:0 auto;padding:32px 28px 56px;font-family:inherit}.os-dashboard-library-header,.os-dashboard-detail-header,.os-dashboard-sharing>header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.os-dashboard-library-header{align-items:center;margin-bottom:24px}.os-dashboard-library-header h1,.os-dashboard-detail-header h1{letter-spacing:-.025em;margin:0;font-size:24px;font-weight:650;line-height:1.2}.os-dashboard-library-header p,.os-dashboard-detail-header p,.os-dashboard-sharing p,.os-dashboard-section-header p,.os-dashboard-widget-header p{color:var(--color-text-secondary,#5c5a55);margin:5px 0 0;font-size:12px;line-height:1.6}.os-dashboard-button{border:1px solid var(--color-border,#e5e3de);min-height:34px;color:var(--color-text-primary,#221d17);background:var(--color-surface,#fff);cursor:pointer;appearance:none;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:550;line-height:1;text-decoration:none;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex}.os-dashboard-button svg{width:14px;height:14px}.os-dashboard-button:hover{border-color:var(--color-border-hover,#d4cec1);background:var(--color-surface-tertiary,#f0eeea)}.os-dashboard-button.is-primary{border-color:var(--color-primary,#b87514);background:var(--color-primary,#b87514);color:#fff}.os-dashboard-button.is-primary:hover{border-color:var(--color-primary-hover,#9a6210);background:var(--color-primary-hover,#9a6210)}.os-dashboard-page-state,.os-dashboard-empty{border:1px dashed var(--color-border,#e5e3de);background:var(--color-surface,#fff);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:32px;display:flex}.os-dashboard-page-state>svg,.os-dashboard-empty>svg{width:22px;height:22px;color:var(--color-text-muted,#9c9a95)}.os-dashboard-page-state h2,.os-dashboard-empty h2{margin:13px 0 0;font-size:14px;font-weight:600}.os-dashboard-page-state p,.os-dashboard-empty p{max-width:440px;color:var(--color-text-secondary,#5c5a55);margin:6px 0 18px;font-size:12px;line-height:1.6}.is-spinning{animation:.9s linear infinite os-dashboard-spin}@keyframes os-dashboard-spin{to{transform:rotate(360deg)}}.os-dashboard-list{border:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);border-radius:10px;overflow:hidden}.os-dashboard-list-item{border-bottom:1px solid var(--color-surface-tertiary,#f0eeea);min-height:76px;color:inherit;grid-template-columns:34px minmax(0,1fr) auto 18px;align-items:center;gap:13px;padding:14px 16px;text-decoration:none;transition:background-color .14s;display:grid}.os-dashboard-list-item:last-child{border-bottom:0}.os-dashboard-list-item:hover{background:var(--color-surface-secondary,#fafaf8)}.os-dashboard-list-icon{border:1px solid var(--color-border,#e5e3de);background:var(--color-surface-secondary,#fafaf8);width:34px;height:34px;color:var(--color-primary,#b87514);border-radius:8px;justify-content:center;align-items:center;display:flex}.os-dashboard-list-icon svg{width:16px;height:16px}.os-dashboard-list-copy,.os-dashboard-list-meta{flex-direction:column;gap:4px;min-width:0;display:flex}.os-dashboard-list-copy>span:not(.os-dashboard-list-title),.os-dashboard-list-meta small{color:var(--color-text-muted,#9c9a95);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.4;overflow:hidden}.os-dashboard-list-title{align-items:center;gap:8px;min-width:0;display:flex}.os-dashboard-list-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.os-dashboard-list-meta{align-items:flex-end}.os-dashboard-list-chevron{width:15px;height:15px;color:var(--color-text-muted,#9c9a95)}.os-dashboard-status{text-transform:capitalize;white-space:nowrap;border-radius:5px;align-items:center;width:max-content;padding:3px 6px;font-size:9px;font-weight:600;line-height:1;display:inline-flex}.os-dashboard-status.is-live{background:var(--color-success-light,#f0fdf4);color:var(--color-success,#16a34a)}.os-dashboard-status.is-published{color:#1d4ed8;background:#eff6ff}.os-dashboard-status.is-draft{background:var(--color-primary-light,#fdf4e6);color:var(--color-primary-hover,#9a6210)}.os-dashboard-back{color:var(--color-text-secondary,#5c5a55);align-items:center;gap:6px;margin-bottom:18px;font-size:11px;font-weight:500;text-decoration:none;display:inline-flex}.os-dashboard-back:hover{color:var(--color-primary,#b87514)}.os-dashboard-back svg{width:14px;height:14px}.os-dashboard-detail-header{border-bottom:1px solid var(--color-border,#e5e3de);margin-bottom:30px;padding-bottom:24px}.os-dashboard-title-line,.os-dashboard-header-actions,.os-dashboard-updated,.os-dashboard-locked{align-items:center;display:flex}.os-dashboard-title-line{flex-wrap:wrap;gap:8px}.os-dashboard-header-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px}.os-dashboard-header-actions select{border:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);height:34px;color:var(--color-text-secondary,#5c5a55);font:inherit;border-radius:8px;outline:0;padding:0 30px 0 10px;font-size:11px}.os-dashboard-header-actions select:focus{border-color:var(--color-primary,#b87514)}.os-dashboard-updated,.os-dashboard-locked{color:var(--color-text-muted,#9c9a95);gap:5px;font-size:10px;font-weight:450}.os-dashboard-updated{margin-top:10px}.os-dashboard-updated svg,.os-dashboard-locked svg{width:12px;height:12px}.os-dashboard-renderer{flex-direction:column;gap:34px;display:flex}.os-dashboard-section-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:11px;display:flex}.os-dashboard-section-header h2,.os-dashboard-sharing h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:620}.os-dashboard-section-header>svg{width:14px;height:14px;color:var(--color-text-muted,#9c9a95)}.os-dashboard-grid{display:grid}.os-dashboard-grid.gap-sm{gap:12px}.os-dashboard-grid.gap-md{gap:16px}.os-dashboard-grid.gap-lg{gap:24px}.os-dashboard-widget{grid-column:span var(--os-dashboard-mobile,12);border:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);border-radius:10px;min-width:0;overflow:hidden}.os-dashboard-grid[data-mode=full]>.os-dashboard-widget{grid-column:1/-1}.os-dashboard-widget-header{border-bottom:1px solid var(--color-surface-tertiary,#f0eeea);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 15px;display:flex}.os-dashboard-widget-header h3{margin:0;font-size:13px;font-weight:600}.os-dashboard-widget-header p{font-size:10px}.os-dashboard-widget-header>svg{width:14px;height:14px;color:var(--color-text-muted,#9c9a95);flex-shrink:0}.os-dashboard-widget-content{padding:15px}.os-dashboard-filters{border-bottom:1px solid var(--color-surface-tertiary,#f0eeea);padding:12px 15px}.os-dashboard-filter-label{color:var(--color-text-secondary,#5c5a55);align-items:center;gap:5px;margin-bottom:8px;font-size:10px;font-weight:550;display:flex}.os-dashboard-filter-label svg{width:12px;height:12px}.os-dashboard-filter-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;display:grid}.os-dashboard-filter-grid label{flex-direction:column;gap:5px;min-width:0;display:flex}.os-dashboard-filter-grid label>span,.os-dashboard-filter-grid label>small{color:var(--color-text-secondary,#5c5a55);font-size:10px}.os-dashboard-filter-grid label>small{color:var(--color-text-muted,#9c9a95)}.os-dashboard-filter-grid input,.os-dashboard-filter-grid select{border:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);width:100%;min-height:32px;color:var(--color-text-primary,#221d17);font:inherit;border-radius:7px;outline:0;padding:5px 9px;font-size:11px}.os-dashboard-filter-grid input:focus,.os-dashboard-filter-grid select:focus{border-color:var(--color-primary,#b87514);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary,#b87514) 12%, transparent)}.os-dashboard-filter-grid input:disabled,.os-dashboard-filter-grid select:disabled{cursor:not-allowed;background:var(--color-surface-secondary,#fafaf8);color:var(--color-text-muted,#9c9a95)}.os-dashboard-date-range{grid-template-columns:1fr 1fr;gap:6px;display:grid}.os-dashboard-query-state{min-height:176px;color:var(--color-text-muted,#9c9a95);justify-content:center;align-items:center;display:flex}.os-dashboard-query-state>svg{width:17px;height:17px}.os-dashboard-query-error{background:var(--color-surface-secondary,#fafaf8);color:var(--color-text-secondary,#5c5a55);border-radius:8px;flex-direction:column;gap:10px;font-size:12px}.os-dashboard-query-error button,.os-dashboard-drilldown-actions button{color:var(--color-primary,#b87514);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:5px 7px;font-size:10px;font-weight:550;display:inline-flex}.os-dashboard-query-error button:hover,.os-dashboard-drilldown-actions button:hover{background:var(--color-primary-light,#fdf4e6)}.os-dashboard-query-error button svg,.os-dashboard-drilldown-actions button svg{width:12px;height:12px}.os-dashboard-metric{width:100%;min-height:112px;color:inherit;text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:20px;padding:12px 4px;display:flex}.os-dashboard-metric:not(:disabled){cursor:pointer}.os-dashboard-metric:not(:disabled):hover{background:var(--color-surface-secondary,#fafaf8)}.os-dashboard-metric>span{flex-direction:column;gap:8px;display:flex}.os-dashboard-metric small{color:var(--color-text-secondary,#5c5a55);font-size:11px}.os-dashboard-metric strong{letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:650;line-height:1}.os-dashboard-metric em{color:var(--color-primary,#b87514);align-items:center;gap:4px;font-size:10px;font-style:normal;font-weight:550;display:inline-flex}.os-dashboard-metric em svg{width:13px;height:13px}.os-dashboard-chart{width:100%;height:280px;font-size:10px}.os-dashboard-chart-tooltip{border:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);border-radius:8px;min-width:128px;padding:9px 11px;box-shadow:0 10px 28px #221d171a}.os-dashboard-chart-tooltip>strong{color:var(--color-text-secondary,#5c5a55);margin-bottom:6px;font-size:10px;display:block}.os-dashboard-chart-tooltip>span{grid-template-columns:8px 1fr auto;align-items:center;gap:6px;margin-top:4px;font-size:10px;display:grid}.os-dashboard-chart-tooltip i{border-radius:2px;width:7px;height:7px}.os-dashboard-chart-tooltip em{color:var(--color-text-secondary,#5c5a55);font-style:normal}.os-dashboard-chart-tooltip b{font-variant-numeric:tabular-nums;font-weight:600}.os-dashboard-table-wrap{border:1px solid var(--color-border,#e5e3de);border-radius:8px;overflow:hidden}.os-dashboard-table-scroll{overflow-x:auto}.os-dashboard-table{border-collapse:collapse;text-align:left;width:100%;font-size:11px}.os-dashboard-table thead{background:var(--color-surface-secondary,#fafaf8)}.os-dashboard-table th{border-bottom:1px solid var(--color-border,#e5e3de);color:var(--color-text-secondary,#5c5a55);text-transform:capitalize;white-space:nowrap;padding:8px 10px;font-size:10px;font-weight:550}.os-dashboard-table td{border-bottom:1px solid var(--color-surface-tertiary,#f0eeea);max-width:360px;color:var(--color-text-secondary,#5c5a55);text-overflow:ellipsis;white-space:nowrap;padding:8px 10px;overflow:hidden}.os-dashboard-table tbody tr:last-child td{border-bottom:0}.os-dashboard-table tr.is-clickable{cursor:pointer}.os-dashboard-table tr.is-clickable:hover{background:var(--color-primary-light,#fdf4e6)}.os-dashboard-pagination{border-top:1px solid var(--color-border,#e5e3de);background:var(--color-surface-secondary,#fafaf8);color:var(--color-text-muted,#9c9a95);justify-content:space-between;align-items:center;padding:7px 10px;font-size:10px;display:flex}.os-dashboard-pagination>div{gap:3px;display:flex}.os-dashboard-pagination button,.os-dashboard-drilldown>header button{width:27px;height:27px;color:var(--color-text-secondary,#5c5a55);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:flex}.os-dashboard-pagination button:hover,.os-dashboard-drilldown>header button:hover{background:var(--color-surface-tertiary,#f0eeea)}.os-dashboard-pagination button:disabled{opacity:.35;cursor:not-allowed}.os-dashboard-pagination button svg,.os-dashboard-drilldown>header button svg{width:14px;height:14px}.os-dashboard-drilldown-actions{border-top:1px solid var(--color-surface-tertiary,#f0eeea);flex-wrap:wrap;gap:4px;margin-top:11px;padding-top:9px;display:flex}.os-dashboard-truncated{color:var(--color-text-muted,#9c9a95);margin-top:7px;font-size:10px}.os-dashboard-overlay{z-index:100;background:#221d1738;display:flex;position:fixed;inset:0}.os-dashboard-drilldown{border-left:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);width:100%;height:100%;margin-left:auto;overflow:auto;box-shadow:-14px 0 40px #221d171a}.os-dashboard-overlay.is-modal{justify-content:center;align-items:center;padding:20px}.os-dashboard-overlay.is-modal .os-dashboard-drilldown{border:1px solid var(--color-border,#e5e3de);border-radius:12px;height:auto;max-height:88vh;margin:0}.os-dashboard-drilldown.is-sm{max-width:448px}.os-dashboard-drilldown.is-md{max-width:672px}.os-dashboard-drilldown.is-lg{max-width:896px}.os-dashboard-drilldown.is-full{max-width:calc(100vw - 32px)}.os-dashboard-drilldown>header{z-index:2;border-bottom:1px solid var(--color-border,#e5e3de);background:var(--color-surface,#fff);justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;display:flex;position:sticky;top:0}.os-dashboard-drilldown>header h3{margin:0;font-size:14px;font-weight:620}.os-dashboard-drilldown-content{padding:18px}.os-dashboard-sharing{border-top:1px solid var(--color-border,#e5e3de);margin-top:40px;padding-top:24px;scroll-margin-top:20px}.os-dashboard-sharing-grid{grid-template-columns:1fr 1fr;gap:40px;margin-top:20px;display:grid}.os-dashboard-sharing-grid h3{align-items:center;gap:6px;margin:0 0 5px;font-size:11px;font-weight:600;display:flex}.os-dashboard-sharing-grid h3 svg{width:14px;height:14px;color:var(--color-text-muted,#9c9a95)}.os-dashboard-share-row{border-top:1px solid var(--color-surface-tertiary,#f0eeea);justify-content:space-between;align-items:center;gap:18px;padding:10px 0;display:flex}.os-dashboard-share-row>span{flex-direction:column;gap:3px;min-width:0;display:flex}.os-dashboard-share-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:550;overflow:hidden}.os-dashboard-share-row small,.os-dashboard-sharing-empty{color:var(--color-text-muted,#9c9a95);text-transform:capitalize;font-size:10px}@media (min-width:640px){.os-dashboard-widget{grid-column:span var(--os-dashboard-tablet,12)}}@media (min-width:1024px){.os-dashboard-widget{grid-column:span var(--os-dashboard-desktop,12)}}@media (max-width:760px){.os-dashboards-page{padding:22px 16px 40px}.os-dashboard-library-header,.os-dashboard-detail-header,.os-dashboard-sharing>header{flex-direction:column;align-items:stretch}.os-dashboard-header-actions{justify-content:flex-start}.os-dashboard-list-item{grid-template-columns:32px minmax(0,1fr) 16px}.os-dashboard-list-meta{display:none}.os-dashboard-sharing-grid{grid-template-columns:1fr;gap:24px}}
