:root{font-family:system-ui,sans-serif;color:#243449;background:#f4f7fc}body{margin:0}header,main,footer{max-width:1200px;margin:auto;padding:24px}header{padding-top:40px}h1{font-size:36px;margin:8px 0}h2{font-size:21px}p{line-height:1.7}header span{color:#315f9d;font-weight:700}.intro,.toolbar{background:white;border:1px solid #d4ddeb;border-radius:16px;padding:22px;margin-bottom:20px}.toolbar{position:relative;box-shadow:0 6px 18px #23375312}.toolbar h2{margin-top:0}.toolbar p{margin:8px 0}button,input{font:inherit}button{cursor:pointer;border:1px solid #aabdd6;background:white;border-radius:8px;padding:10px 14px;color:#243449}button:hover{background:#e8f0ff}button:focus-visible,input:focus-visible{outline:3px solid #efaa21;outline-offset:3px}button:disabled{cursor:default;opacity:.45}input:not([type=file]):not([type=checkbox]){padding:10px;border:1px solid #aabdd6;border-radius:6px;max-width:200px}#destinations{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}button.active,#save{background:#225cbe;color:white}#grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:20px 0}.page{background:white;border:2px solid #dae2ed;border-radius:12px;padding:10px}.page.selected{border:3px solid #225cbe;background:#eef4ff;padding:9px}.pick{display:block;width:100%;padding:8px;border:none;background:transparent}.pick canvas{max-width:100%;height:auto;box-shadow:0 2px 7px #0002}.page strong,.page small{display:block;margin:6px 0}.badge{font-size:13px;color:#1c559b;min-height:22px;overflow-wrap:anywhere}.page .enlarge{width:100%;font-size:14px}.row{padding:16px;border:1px solid #d4ddeb;border-radius:12px;margin:12px 0}.row h3{margin-top:0;overflow-wrap:anywhere}.thumbs{display:flex;gap:6px;overflow-x:auto;margin-bottom:10px}.thumbs button{min-width:92px;max-width:120px;font-size:12px}.thumbs img{width:76px;display:block;margin:auto}.row label{display:block;padding:10px 0}#save{margin-top:16px;font-weight:bold}#status.error{color:#a52424}dialog{max-width:min(90vw,900px);max-height:92vh;border:0;border-radius:16px;padding:20px}dialog::backdrop{background:#11223bbb}#large{max-width:100%;max-height:calc(88vh - 130px);width:auto;height:auto;object-fit:contain;display:block;margin:auto}footer{font-size:12px;color:#65778c}@media(max-width:650px){header,main{padding:16px}h1{font-size:28px}.toolbar{position:static}#grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.intro,.toolbar{padding:16px}.pick{padding:0}}
