/* Small, focused polish for Flowlo Bot, navigation, and the home calendar. */

/* Keep long names inside the sidebar rows. */
#sidebar,.side-section,.side-section>div,.side-file{min-width:0;max-width:100%;box-sizing:border-box}
.side-file{overflow:hidden}
.side-file>span:not(.material-symbols-rounded){min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* File tab labels begin at the same edge regardless of title length. */
#tabs .tab-canvas{text-align:left!important}
#tabs .tab-canvas .tab-title{min-width:0;text-align:left!important;text-overflow:ellipsis!important;mask-image:none!important;-webkit-mask-image:none!important}

/* Past appointments stay visible but calm; overdue tasks retain their alert color. */
.cal-item-v147.event.is-past-v2,.cal-month-item-v147.event.is-past-v2{--cal-color:#9aa3af!important;opacity:.58;filter:grayscale(.72)}
.cal-item-v147.event.is-past-v2 b,.cal-month-item-v147.event.is-past-v2 span{color:var(--muted)!important}
.cal-item-v147.task.is-missed-v162,.cal-month-item-v147.task.is-missed-v162{--cal-color:#d95757!important}

/* The assistant is a real, reorderable Home widget. */
.ai-home-bot-widget-v2{display:grid;gap:10px}
.ai-home-bot-widget-v2>header{display:flex;align-items:center;gap:10px}
.ai-home-bot-face-v2{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;flex:none}
.ai-home-bot-widget-v2>header>span:nth-child(2){display:grid;gap:3px;min-width:0}
.ai-home-bot-widget-v2>header b{font-size:13px}
.ai-home-bot-widget-v2>header small,.ai-home-empty-v2{color:var(--muted);font-size:11px;line-height:1.45}
.ai-home-bot-widget-v2>[data-ai-home-items]{display:grid;gap:7px}
.ai-home-bot-widget-v2 article{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.ai-home-bot-widget-v2 article>span{display:grid;gap:4px;min-width:0}
.ai-home-bot-widget-v2 article b{overflow-wrap:anywhere;font-size:12px}
.ai-home-bot-widget-v2 article small{color:var(--muted);font-size:10px;line-height:1.35}
.ai-home-bot-widget-v2 article button{flex:none;padding:7px 10px;border:0;border-radius:8px;background:linear-gradient(110deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#cc7be7));color:#fff;font-size:10px;font-weight:750;cursor:pointer}
.ai-home-empty-v2{margin:0;padding:9px 2px}

/* A 7- or 30-day record of actions, incremented by database triggers. */
.flowlo-activity-v2{display:grid;gap:12px}
.flowlo-activity-v2>header,.flowlo-activity-v2>footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.flowlo-activity-v2>header>span:first-child{display:grid;gap:3px}
.flowlo-activity-v2>header b{font-size:13px}
.flowlo-activity-v2>header small,.flowlo-activity-v2>footer{color:var(--muted);font-size:10px}
.flowlo-activity-range-v2{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.flowlo-activity-range-v2 button{padding:5px 8px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:10px;font-weight:700;cursor:pointer}
.flowlo-activity-range-v2 button.active{background:linear-gradient(110deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#cc7be7));color:#fff}
.flowlo-activity-chart-v2{display:grid;gap:5px;min-height:50px;align-items:center}
.flowlo-activity-chart-v2>p{margin:0;color:var(--muted);font-size:11px}
.flowlo-activity-weekdays-v2,.flowlo-activity-grid-v2{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.flowlo-activity-weekdays-v2 span{text-align:center;color:var(--muted);font-size:9px}
.flowlo-activity-grid-v2.is-week{grid-template-columns:repeat(7,minmax(24px,1fr));max-width:320px;margin:auto;width:100%}
.flowlo-activity-grid-v2>i,.flowlo-activity-cell-v2{aspect-ratio:1;min-width:0;border-radius:5px}
.flowlo-activity-grid-v2>i{visibility:hidden}
.flowlo-activity-cell-v2{background:var(--line);border:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.flowlo-activity-cell-v2.level-1{background:color-mix(in srgb,var(--accent) 22%,var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}
.flowlo-activity-cell-v2.level-2{background:color-mix(in srgb,var(--accent) 42%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.flowlo-activity-cell-v2.level-3{background:color-mix(in srgb,var(--accent) 66%,var(--surface));border-color:color-mix(in srgb,var(--accent) 68%,var(--line))}
.flowlo-activity-cell-v2.level-4{background:var(--accent);border-color:var(--accent)}
.flowlo-activity-v2>footer{padding-top:1px}
.flowlo-activity-legend-v2{display:inline-flex;align-items:center;gap:5px}
.flowlo-activity-legend-v2 i{width:9px;height:9px;border-radius:3px;background:linear-gradient(110deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#cc7be7))}

.ai-bot-shuffle-row-v2{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}
.ai-bot-shuffle-row-v2 .button{display:inline-flex;align-items:center;gap:6px;min-height:34px;font-size:11px}
.ai-work-status-v2{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))!important;background:color-mix(in srgb,var(--accent) 8%,var(--surface))!important}
.ai-automation-controls-v2 button{border-color:#aab0bc!important;background:transparent!important}
.ai-automation-controls-v2 button i{background:#aab0bc!important}
.ai-automation-controls-v2 button.is-enabled{border-color:var(--accent)!important;background:transparent!important;color:var(--ink)!important}
.ai-automation-controls-v2 button.is-enabled i{background:var(--accent)!important}
.ai-bot-actions-v2 button.ai-bot-action-primary-v2{border-color:var(--accent);background:var(--accent);color:#fff}
.ai-bot-actions-v2 button.ai-bot-action-primary-v2:hover{border-color:color-mix(in srgb,var(--accent) 82%,#000);background:color-mix(in srgb,var(--accent) 88%,#000)}
.ai-duplicate-threshold-v2{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 2px;border-top:1px solid var(--line)}
.ai-duplicate-threshold-v2>span{display:grid;gap:3px}
.ai-duplicate-threshold-v2 b{font-size:12px}
.ai-duplicate-threshold-v2 small{font-size:10px;color:var(--muted);line-height:1.4}
.ai-duplicate-threshold-v2 select{min-width:86px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px}
.ai-bots-head-v2>strong{min-width:0;flex:1}

@media(max-width:600px){
  .ai-home-bot-widget-v2 article{align-items:flex-start}
  .ai-home-bot-widget-v2 article button{padding:7px 8px}
  .flowlo-activity-weekdays-v2,.flowlo-activity-grid-v2{gap:4px}
  .flowlo-activity-grid-v2.is-week{max-width:100%}
}
