.tour-library{max-width:1500px;margin:auto;color:#0b1f3a}.tl-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 4px 18px;border-bottom:1px solid #cadafa;margin-bottom:18px}.tl-heading h1{font-size:30px;color:#3069ee;font-weight:850;margin:0 0 6px;letter-spacing:-.6px}.tl-heading p,.tl-panel p,.tl-batch-bar p{font-size:14px;color:#64758f;line-height:1.6;margin:0}.tl-head-actions,.tl-tabs,.tl-card-actions,.tl-import-actions{display:flex;gap:8px;flex-wrap:wrap}.tl-tabs{margin-bottom:16px}.tl-note,.tl-alert{padding:12px 15px;border-radius:10px;margin:12px 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.tl-note{background:#eef4ff;color:#456087}.tl-alert{border:1px solid #eccb9f;background:#fff8eb;color:#845719}.tl-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.tl-metric{background:white;border:1px solid #dbe4ef;border-radius:12px;padding:15px 18px}.tl-metric strong{display:block;color:#3069ee;font-size:26px}.tl-metric span{font-size:12px;color:#65778f;font-weight:650}.tl-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0}.tour-library label{display:flex;flex-direction:column;gap:7px;font-weight:650;font-size:13px;color:#526782}.tour-library input,.tour-library textarea,.tour-library select{border:1px solid #d5e0f0;border-radius:9px;background:white;padding:10px 12px;min-height:43px;font:inherit;color:#17304d;width:100%;box-sizing:border-box}.tour-library textarea{min-height:100px;resize:vertical}.tl-filters label:first-child{flex:1;min-width:210px}.tl-filters select{min-width:150px}.tour-library .tl-check{flex-direction:row;align-items:center;min-height:43px}.tour-library .tl-check input{width:18px;min-height:18px;margin:0}.tl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tl-card{display:flex;flex-direction:column;min-width:0;background:linear-gradient(170deg,#f7faff,#fff 44%);border:1px solid #d5e0ef;border-radius:17px;padding:18px;box-shadow:0 5px 18px #19375b08;transition:box-shadow .15s,border-color .15s}.tl-card:hover{border-color:#8faff8;box-shadow:0 9px 25px #285dde17}.tl-card[hidden]{display:none}.tl-card-open{display:flex;flex-direction:column;align-items:flex-start;gap:8px;cursor:pointer;text-align:left;border:0;background:none;color:#0b1f3a;padding:0;font:inherit;width:100%}.tl-card-open:focus-visible{outline:3px solid #3069ee;outline-offset:5px;border-radius:8px}.tl-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#f0efff;color:#7441de;font-weight:850;font-size:13px;flex-shrink:0}.tl-card strong{font-size:16px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}.tl-card-open>span:not(.tl-icon),.tl-card-open small{font-size:13px;line-height:1.5;color:#62748e}.tl-source{font-size:12px;color:#75869d;margin:12px 0 9px;overflow-wrap:anywhere}.tl-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:15px}.tl-tags span{font-size:11px;background:#edf3ff;color:#54739f;border-radius:5px;padding:4px 7px;overflow-wrap:anywhere}.tl-card-actions{margin-top:auto}.tl-card-actions .btn{font-size:12px;white-space:normal}.tl-empty{text-align:center;padding:30px 15px;color:#65778f;font-size:14px}.tl-import-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.tl-panel{padding:20px;border:1px solid #dbe4ef;background:white;border-radius:16px;min-width:0;display:flex;flex-direction:column;gap:13px}.tl-panel h2{font-size:17px;margin:0}.tl-panel textarea{min-height:140px}.tl-panel .btn{margin-top:auto;align-self:flex-start}.tl-panel input[type=file]{font-size:12px}.tl-batch-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:24px 0 16px}.tl-batch-bar h2{font-size:20px;margin:0 0 7px}.tl-import-item{padding:22px;border:1px solid #dbe4ef;border-radius:16px;background:#fff;margin:18px 0;overflow-wrap:anywhere}.tl-import-item-head{display:flex;gap:12px;justify-content:space-between;align-items:start;margin-bottom:18px}.tl-import-item-head strong{font-size:16px;max-width:75%;overflow-wrap:anywhere}.tl-import-item-head>span{font-size:12px;color:#62748e}.tl-meta-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.tl-editor h3{font-size:17px;margin:22px 0 14px}.tl-day{border:1px solid #e0e7f1;border-radius:11px;padding:16px;margin:15px 0;min-width:0}.tl-day legend{font-size:13px;font-weight:750;color:#3069ee;padding:0 8px}.tl-day label{margin:8px 0}.tl-day-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tl-day .btn{margin-top:10px}.tl-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:24px 0}.tl-sections textarea{min-height:150px}.tl-editor details{margin:18px 0;font-size:13px;color:#65778f}.tl-editor summary{cursor:pointer;margin-bottom:12px}.tl-import-actions{margin-top:20px}.tl-dialog form>button{margin-top:15px}.tour-library [role=alert]{color:#a32929;font-size:13px;line-height:1.6}.tour-library input[readonly],.tour-library textarea[readonly],.tour-library select:disabled{background:#f8faff}.tl-dialog>.btn{margin:0 8px 15px 0}.tl-dialog{padding:0}.modal.wide .tl-dialog{max-width:1200px}.tour-library button:disabled{cursor:default;opacity:.55}
@media(max-width:1200px){.tl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tl-import-sources{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.tl-heading{flex-direction:column;align-items:flex-start;padding:12px 0}.tl-heading h1{font-size:25px}.tl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tl-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tl-import-sources{grid-template-columns:1fr}.tl-sections{grid-template-columns:1fr}.tl-card{padding:16px}.tl-card-actions .btn{min-height:40px}.tl-batch-bar{flex-direction:column;align-items:flex-start}.tl-day-meta{grid-template-columns:1fr 1fr}.tl-meta-fields{grid-template-columns:1fr}.tl-import-item{padding:16px}.tl-filters label{flex:1;min-width:140px}.tl-filters .tl-check{flex-basis:100%}.tl-import-item-head{flex-direction:column}.tl-import-item-head strong{max-width:100%}}
@media(max-width:380px){.tl-grid{grid-template-columns:1fr}.tl-day-meta{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tl-card{transition:none}}
