.calendar-header{display:flex;justify-content:center;align-items:center;gap:6px}.calendar{width:100%;margin:16px 0;font-size:14px;border-collapse:separate;border-spacing:0 8px}.calendar th{text-align:center;font-size:12px;font-weight:400;color:#666;padding-bottom:12px;border-bottom:1px solid #f3f3f3}.calendar td{font-size:14px;font-weight:600;text-align:center;padding:8px;cursor:pointer;width:14.28%;color:#222}.calendar td.end,.calendar td.start{background:#00b295;color:#fff;font-weight:700}.calendar td.start{border-top-left-radius:6px;border-bottom-left-radius:6px}.calendar td.end{border-top-right-radius:6px;border-bottom-right-radius:6px}.calendar td.red,.calendar th.red{color:#dc4840}.calendar td.date{background:#00c1a2;font-weight:700;border-radius:6px}.calendar td .day{color:#222}.calendar td .price{color:#999}.calendar td.date .day,.calendar td.date .price{color:#fff}.calendar td.in-range{background:#d2f3ed}.calendar td.red .day,.calendar th.red{color:#dc4840!important}.list-box{background:#fff;padding:20px 16px;border-radius:6px;border:1px solid #ddd;margin-bottom:12px}.list-box>div{display:flex;align-items:center;gap:4px}.list-box h3{color:#222;font-size:14px;font-weight:600}.list-box p{font-size:12px;font-weight:400;color:#666}.list-box p span{font-size:16px;font-weight:600;color:#222;padding-left:4px}.impossible{border-radius:4px;border:1px solid #dc4840;color:#dc4840}.impossible,.leftover{font-size:10px;font-weight:600;padding:2px 6px}.leftover{border-radius:4px;border:1px solid #229986;color:#229986}.calendar td.disabled{color:#ccc!important;cursor:not-allowed;pointer-events:none;opacity:.3}.calendar td.disabled:hover{background-color:transparent}