.flow-calendar{display:grid;grid-template-columns:218px minmax(0,1fr);border:1px solid #dddfe5;border-radius:8px;background:#fff;overflow:hidden;color:#333;font-size:13px}.flow-calendar *{box-sizing:border-box}.flow-calendar button,.flow-calendar select,.flow-calendar input{font:inherit}.flow-calendar button{cursor:pointer}.flow-calendar button:focus-visible,.flow-calendar input:focus-visible,.flow-calendar select:focus-visible{outline:2px solid #7461c9;outline-offset:1px}.flow-calendar .fc-sidebar{padding:20px 16px;border-right:1px solid #e8e8ec;background:#fff}.flow-calendar .fc-mini-head{display:flex;align-items:center;gap:3px}.flow-calendar .fc-mini-head input{width:58px;border:0;background:transparent;font-weight:600;padding:4px}.flow-calendar .fc-mini-head select{width:64px;border:0;padding:4px;background:transparent}.flow-calendar .fc-mini-head button{border:0;background:transparent;font-size:22px;padding:2px 5px}.flow-calendar .fc-mini-grid{display:grid;grid-template-columns:repeat(7,1fr);margin:10px 0 22px;text-align:center;gap:2px}.flow-calendar .fc-mini-grid span{font-size:11px;padding:4px 0;color:#8b8b94}.flow-calendar .fc-mini-grid button{border:0;border-radius:50%;background:transparent;min-height:24px;font-size:11px;padding:1px}.flow-calendar .fc-mini-grid button:hover{background:#f1edf9}.flow-calendar .fc-mini-grid .fc-selected{background:#7461c9;color:white}.flow-calendar .fc-outside{color:#b8bac2}.flow-calendar fieldset{border:0;padding:0;margin:20px 0}.flow-calendar legend{font-weight:700;margin-bottom:10px}.flow-calendar fieldset label{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12px}.flow-calendar input[type=radio],.flow-calendar input[type=checkbox]{accent-color:#7c62cb;margin:0}.flow-calendar .fc-main{min-width:0;overflow:hidden}.flow-calendar .fc-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;min-height:80px;padding:18px 20px}.flow-calendar .fc-nav,.flow-calendar .fc-controls{display:flex;align-items:center;gap:8px}.flow-calendar .fc-nav h2{font-size:19px;margin:0 4px;white-space:nowrap}.flow-calendar .fc-nav button{border:0;background:none;font-size:26px;padding:0 4px}.flow-calendar .fc-controls button,.flow-calendar .fc-controls select{border:1px solid #dcdde2;border-radius:5px;background:#fff;padding:7px 10px;white-space:nowrap}.flow-calendar .fc-controls input{border:1px solid #dcdde2;border-radius:4px;max-width:180px;padding:7px}.flow-calendar .fc-controls .fc-add{background:#7461c9;color:#fff;border-color:#7461c9}.flow-calendar .fc-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.flow-calendar .fc-weekday{text-align:center;padding:10px;border-top:1px solid #dddfe5;border-bottom:1px solid #dddfe5;color:#777}.flow-calendar .fc-weekday:first-child{color:#e46666}.flow-calendar .fc-weekday:nth-child(7){color:#6094cf}.flow-calendar .fc-month-day{min-height:122px;border-right:1px solid #e4e5e9;border-bottom:1px solid #e4e5e9;padding:5px;min-width:0}.flow-calendar .fc-month-day:nth-child(7n){border-right:0}.flow-calendar .fc-day-number{border:0;background:none;display:block;margin:0 0 5px auto;border-radius:50%;height:25px;min-width:25px;font-size:12px;color:inherit}.flow-calendar .fc-today .fc-day-number{background:#7461c9;color:#fff}.flow-calendar .fc-item{display:block;max-width:100%;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;margin:3px 0;padding:4px 6px;border:0;border-left:3px solid #9a7dd1;background:#f0eafa;color:#514270;border-radius:3px;font-size:12px;line-height:1.5}.flow-calendar .fc-task{border-color:#5c9bdc;background:#eaf2fc;color:#326897}.flow-calendar .fc-item:hover{filter:brightness(.96)}.flow-calendar .fc-item-time{font-size:11px;font-weight:500}.flow-calendar .fc-done{text-decoration:line-through;opacity:.65}.flow-calendar .fc-agenda-head,.flow-calendar .fc-all-day{display:grid;grid-template-columns:62px repeat(var(--fc-cols),minmax(0,1fr));border-top:1px solid #dddfe5}.flow-calendar .fc-agenda-head>*,.flow-calendar .fc-all-day>*{border-right:1px solid #e4e5e9;padding:9px;text-align:center}.flow-calendar .fc-agenda-head .fc-today{color:#7461c9;font-weight:bold}.flow-calendar .fc-all-day>span{font-size:11px;color:#999}.flow-calendar .fc-all-day>div{min-height:42px;padding:3px}.flow-calendar .fc-time-scroll{display:grid;grid-template-columns:62px repeat(var(--fc-cols),minmax(0,1fr));height:576px;overflow:auto;border-top:1px solid #dddfe5}.flow-calendar .fc-time-axis{height:1152px;display:grid;grid-template-rows:repeat(24,48px);color:#999;font-size:11px;text-align:right;padding-right:8px}.flow-calendar .fc-time-axis span{padding-top:5px}.flow-calendar .fc-time-day{height:1152px;border-right:1px solid #e4e5e9;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 23px,#f2f2f5 23px,#f2f2f5 24px,transparent 24px,transparent 47px,#e6e6eb 47px,#e6e6eb 48px)}.flow-calendar .fc-timed{position:absolute;margin:0;white-space:normal;overflow:hidden;padding:3px 5px;font-size:11px}.flow-calendar .fc-list{min-height:470px;border-top:1px solid #dddfe5}.flow-calendar .fc-list-day h3{background:#f6f6f8;padding:10px 16px;margin:0;border-bottom:1px solid #e8e8ed;font-size:13px}.flow-calendar .fc-list-day h3 span{float:right;color:#888;font-weight:400}.flow-calendar .fc-list-row{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;border-bottom:1px solid #eee;padding:6px 20px}.flow-calendar .fc-list-row time{font-size:12px;color:#777}.flow-calendar .fc-list-row .fc-item{background:transparent}.flow-calendar .fc-list-row .fc-item-time{display:none}.flow-calendar .fc-empty{display:grid;place-items:center;min-height:380px;color:#999}@media(max-width:1050px){.flow-calendar{grid-template-columns:180px minmax(0,1fr)}.flow-calendar .fc-sidebar{padding:15px 10px}.flow-calendar .fc-toolbar{padding:12px}.flow-calendar .fc-controls{gap:4px;flex-wrap:wrap}.flow-calendar .fc-nav h2{font-size:16px}.flow-calendar .fc-month-day{min-height:100px}}@media(max-width:700px){.flow-calendar{grid-template-columns:1fr}.flow-calendar .fc-sidebar{border-right:0;border-bottom:1px solid #e8e8ec;display:grid;grid-template-columns:1fr 1fr;gap:8px}.flow-calendar .fc-mini-head,.flow-calendar .fc-mini-grid{display:none}.flow-calendar fieldset{margin:4px}.flow-calendar fieldset:last-child{grid-column:1/-1}.flow-calendar fieldset label{font-size:11px}.flow-calendar .fc-month-day{min-height:85px;padding:2px}.flow-calendar .fc-item{font-size:10px;padding:3px}.flow-calendar .fc-item-time{display:none}.flow-calendar .fc-time-scroll,.flow-calendar .fc-agenda-head,.flow-calendar .fc-all-day{grid-template-columns:43px repeat(var(--fc-cols),minmax(0,1fr))}.flow-calendar .fc-agenda-head>*{padding:8px 1px;font-size:11px}.flow-calendar .fc-time-axis{font-size:9px;padding-right:3px}}
/* Reset host form input width so compact sidebar controls stay beside labels. */
.flow-calendar input[type=radio],.flow-calendar input[type=checkbox]{width:14px;height:14px;min-width:14px;flex:0 0 14px;padding:0;min-height:0;box-shadow:none}
.flow-calendar fieldset label{white-space:nowrap}
