/* Calendar query controls own their layout; no dependency on time-tool CSS. */
.cal-query{padding:28px;border:1px solid #e7dfd3;border-radius:16px;background:#fff}
.cal-query-heading{margin-bottom:24px}.cal-query-heading h2{margin:0 0 6px;font-size:1.4rem}.cal-query-heading>p{margin:0;color:#827566;font-size:.85rem}
.cal-query-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:16px;align-items:stretch}
.cal-query-card{display:flex;flex-direction:column;min-width:0;padding:22px 20px 20px;border:1px solid #eee5d8;border-radius:12px;background:#fdfbf8}
.cal-query-card h3{margin:0 0 8px;font-size:1rem;font-weight:650;color:#493a2b}
.cal-card-description{margin:0 0 22px;min-height:2.8em;font-size:.78rem;line-height:1.6;color:#8a7a69}
.cal-form{display:flex;flex:1;flex-direction:column;gap:14px;min-width:0;margin:0}
.cal-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:8px 12px;align-content:start}.cal-fields-two{grid-template-columns:1.35fr 1fr}.cal-fields-three{grid-template-columns:1.35fr 1fr 1fr}
.cal-fields label{color:#766452;font-size:.78rem;line-height:1.5;min-width:0;margin:0}
.cal-fields input,.cal-fields select{display:block;box-sizing:border-box;min-width:0;width:100%;height:48px;margin:0;padding:10px 12px;border:1px solid #d9cbbb;border-radius:8px;background-color:#fff;color:#302b26;font:inherit;font-size:.95rem;line-height:1.3;box-shadow:0 1px 2px #52321405;transition:border-color .15s,box-shadow .15s}
.cal-fields select{appearance:none;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23917b61' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;cursor:pointer}
.cal-fields input[type=number]{appearance:textfield;-moz-appearance:textfield}.cal-fields input::-webkit-inner-spin-button,.cal-fields input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.cal-fields input[type=date]{color-scheme:light;-webkit-appearance:none;appearance:none}.cal-fields input[type=date]::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer;padding-left:8px}.cal-fields input[type=date]::-webkit-date-and-time-value{text-align:left}
.cal-fields input:hover,.cal-fields select:hover{border-color:#b79a77}.cal-fields input:focus,.cal-fields select:focus{border-color:#a66b30;box-shadow:0 0 0 3px #a66b3017;outline:none}
.cal-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:46px;margin-top:auto;padding:11px 14px;border:1px solid #92551c;border-radius:8px;background:#9a5a1d;color:#fff;font:inherit;font-size:.87rem;font-weight:600;cursor:pointer;transition:background .15s}
.cal-submit:hover{background:#7d4717}.cal-submit:focus-visible{outline:3px solid #c99860;outline-offset:3px}.cal-submit span{font-size:1rem;font-weight:400}
.cal-leap{display:flex;align-items:center;gap:7px;color:#766452;font-size:.78rem;cursor:pointer}.cal-leap input{width:16px;height:16px;margin:0;accent-color:#9a5a1d}.cal-leap input:focus-visible{outline:2px solid #a66b30;outline-offset:3px}
.cal-query-note{margin:18px 0 0;color:#8a7a69;font-size:.74rem;line-height:1.7}.cal-query>.wt-error{margin:0 0 20px}
@media(max-width:950px){.cal-query-grid{grid-template-columns:1fr 1fr}.cal-query-card:last-child{grid-column:1/-1}.cal-query-card:last-child .cal-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:24px}.cal-query-card:last-child .cal-fields{grid-column:1;grid-row:1/3}.cal-query-card:last-child .cal-leap{grid-column:2;grid-row:1}.cal-query-card:last-child .cal-submit{grid-column:2;grid-row:2;min-width:150px}.cal-card-description{min-height:0}}
@media(max-width:650px){.cal-query{padding:20px;border-radius:14px}.cal-query-heading{margin-bottom:20px}.cal-query-heading h2{font-size:1.25rem}.cal-query-grid{grid-template-columns:minmax(0,1fr);gap:14px}.cal-query-card{padding:20px 16px}.cal-query-card:last-child{grid-column:auto}.cal-query-card:last-child .cal-form{display:flex;gap:14px}.cal-card-description{margin-bottom:18px}.cal-fields input,.cal-fields select{font-size:16px}.cal-fields-three{column-gap:10px}.cal-query-card:last-child .cal-submit{min-width:0}.cal-leap{font-size:.85rem}.cal-submit{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.cal-fields input,.cal-fields select,.cal-submit{transition:none}}
