.isw-cal-page{width:100%;min-height:100vh;background:#f4f6f8;display:flex;flex-direction:column;}
.isw-cal-topbar{background:#1a2744;color:#fff;padding:12px 18px;display:flex;align-items:center;gap:14px;}
.isw-cal-title{font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px;}
.isw-cal-back{margin-left:auto;color:#fff;text-decoration:none;font-size:12px;font-weight:700;background:rgba(255,255,255,.15);padding:6px 12px;}
.isw-cal-filters{display:flex;gap:8px;padding:12px 18px;flex-wrap:wrap;align-items:center;}
.isw-cal-filters select{padding:6px 8px;border:1px solid #ccc;font-size:12px;background:#fff;max-width:220px;}
.isw-cal-btn-sec{background:#2c3e50;color:#fff;border:none;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;}
.isw-cal-btn-pri{background:#27ae60;color:#fff;border:none;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;}
.isw-cal-grid{display:grid;grid-template-columns:1fr 320px;gap:14px;padding:0 18px 18px;align-items:start;}
.isw-cal-main{background:#fff;padding:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);}
.isw-cal-panel{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08);display:none;}
.isw-cal-panel.isw-cal-panel-open{display:block;}
.isw-cal-panel-head{background:#2c3e50;color:#fff;padding:10px 12px;font-size:12px;font-weight:700;display:flex;align-items:center;}
.isw-cal-panel-head button{margin-left:auto;background:none;border:none;color:#fff;font-size:14px;cursor:pointer;}
.isw-cal-panel-body{padding:12px;display:flex;flex-direction:column;gap:8px;}
.isw-cal-empty{color:#999;font-size:12px;text-align:center;padding:12px;}
.isw-cal-det-title{font-size:14px;font-weight:700;color:#2c3e50;padding-left:8px;}
.isw-cal-det-row{font-size:12px;color:#555;display:flex;align-items:center;gap:8px;}
.isw-cal-det-row i{color:#3498db;width:14px;}
.isw-cal-det-desc{font-size:12px;color:#666;background:#fafafa;border:1px solid #eee;padding:8px;}
.isw-cal-det-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;}
.isw-cal-det-btn{background:#3498db;color:#fff !important;border:none;padding:6px 10px;font-size:11px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:5px;}
.isw-cal-det-btn:hover{background:#2980b9;}
.isw-cal-cats-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);z-index:105000;align-items:center;justify-content:center;}
.isw-cal-cats-modal{background:#fff;width:420px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 30px rgba(0,0,0,.3);}
.isw-cal-cats-body{padding:12px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;}
.isw-cal-cat-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #eee;font-size:12px;}
.isw-cal-cat-off{opacity:.5;}
.isw-cal-cat-dot{width:14px;height:14px;flex-shrink:0;}
.isw-cal-cat-lbl{flex:1;}
.isw-cal-cat-edit,.isw-cal-cat-del{background:none;border:none;cursor:pointer;font-size:11px;color:#3498db;}
.isw-cal-cat-del{color:#e74c3c;}
.isw-cal-cats-form{display:flex;gap:6px;align-items:center;border-top:1px solid #eee;padding-top:10px;}
.isw-cal-cats-form input[type=text]{flex:1;padding:6px 8px;border:1px solid #ccc;font-size:12px;}
.isw-cal-cats-form input[type=color]{width:38px;height:32px;border:1px solid #ccc;padding:2px;background:#fff;cursor:pointer;}
.fc .fc-button{border-radius:0 !important;}
.fc .fc-event{border-radius:0 !important;font-size:11px;cursor:pointer;}
@media (max-width: 900px){
    .isw-cal-grid{grid-template-columns:1fr;}
    .isw-cal-panel{position:fixed;bottom:0;left:0;right:0;max-height:60vh;overflow-y:auto;z-index:9000;box-shadow:0 -4px 16px rgba(0,0,0,.2);}
    .isw-cal-filters select{flex:1;min-width:130px;max-width:none;}
    .fc .fc-toolbar{flex-direction:column;gap:6px;}
    .fc .fc-toolbar-title{font-size:16px;}
    .fc .fc-button{padding:8px 10px;font-size:12px;min-height:38px;}
    .fc .fc-daygrid-day-number{font-size:12px;padding:4px;}
    .fc .fc-event{min-height:22px;}
}
