#okite_task_cal{--otc-start:#2e7d32;--otc-due:#9b2c2c;--otc-late:#c62828;--otc-line:#e3e3e3}
#okite_task_cal .otc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
#okite_task_cal .otc-title{font-size:1.35rem;font-weight:600;margin:0}
#okite_task_cal .otc-nav{display:flex;gap:6px}
#okite_task_cal .otc-legend{display:flex;gap:16px;font-size:.85rem;color:#555;margin-bottom:10px;flex-wrap:wrap}
#okite_task_cal .otc-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:middle}
#okite_task_cal .otc-l-start::before{background:var(--otc-start)}
#okite_task_cal .otc-l-due::before{background:var(--otc-due)}
#okite_task_cal .otc-l-late::before{background:var(--otc-late);outline:2px dashed var(--otc-late);outline-offset:1px}
#okite_task_cal .otc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--otc-line);border-left:1px solid var(--otc-line)}
#okite_task_cal .otc-dow{font-size:.75rem;font-weight:600;text-transform:uppercase;color:#666;padding:6px;border-right:1px solid var(--otc-line);border-bottom:1px solid var(--otc-line);background:#fafafa}
#okite_task_cal .otc-day{min-height:96px;padding:4px;border-right:1px solid var(--otc-line);border-bottom:1px solid var(--otc-line);overflow:hidden}
#okite_task_cal .otc-has{cursor:pointer}
#okite_task_cal .otc-has:hover{background:#fbf6f6}
#okite_task_cal .otc-out{background:#fcfcfc}
#okite_task_cal .otc-out .otc-num{color:#bbb}
#okite_task_cal .otc-num{font-size:.8rem;color:#444;margin-bottom:2px}
#okite_task_cal .otc-today .otc-num{display:inline-block;background:var(--otc-due);color:#fff;border-radius:10px;padding:0 7px}
#okite_task_cal .otc-ev{display:block;font-size:.72rem;line-height:1.3;padding:1px 5px;margin-top:2px;border-radius:3px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
#okite_task_cal a.otc-ev:hover{filter:brightness(1.1);color:#fff}
#okite_task_cal .otc-ev.otc-start{background:var(--otc-start)}
#okite_task_cal .otc-ev.otc-due{background:var(--otc-due)}
#okite_task_cal .otc-ev.otc-late{background:#fff;color:var(--otc-late);border:1px dashed var(--otc-late)}
#okite_task_cal .otc-more{font-size:.7rem;color:#666;margin-top:2px}
#okite_task_cal .otc-detail{display:none;margin-top:14px;border:1px solid var(--otc-line);border-radius:6px;padding:12px 14px}
#okite_task_cal .otc-detail-h{font-weight:600;margin-bottom:8px;text-transform:capitalize}
#okite_task_cal .otc-row{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;padding:4px 0;border-top:1px solid #f0f0f0}
#okite_task_cal .otc-tag{font-size:.7rem;font-weight:600;text-transform:uppercase;padding:1px 6px;border-radius:3px;color:#fff}
#okite_task_cal .otc-tag.otc-start{background:var(--otc-start)}
#okite_task_cal .otc-tag.otc-due{background:var(--otc-due)}
#okite_task_cal .otc-tag.otc-late{background:var(--otc-late)}
#okite_task_cal .otc-name{font-weight:500}
#okite_task_cal .otc-meta{font-size:.8rem;color:#777}
@media (max-width:767px){#okite_task_cal .otc-day{min-height:56px}#okite_task_cal .otc-ev{font-size:0;height:6px;padding:0;margin-top:2px}#okite_task_cal .otc-dow{font-size:.65rem;padding:4px 2px}}
#okite_task_cal .otc-nav button{min-width:40px;height:34px;padding:0 12px;font-size:1rem;line-height:1;border:1px solid #c9c9c9;border-radius:4px;background:#fff;color:#333;cursor:pointer}
#okite_task_cal .otc-nav button:hover{background:#f3f3f3}
#okite_task_cal .otc-ev{cursor:default;pointer-events:none}
