*{box-sizing:border-box}html,body{margin:0;height:100%;font:14px/1.4 system-ui,-apple-system,sans-serif;color:#222}body{display:flex}#sidebar{width:380px;display:flex;flex-direction:column;overflow:auto;border-right:1px solid #ddd;background:#fafafa}#map{flex:1}.top{padding:14px 14px 6px;position:sticky;top:0;background:#fafafa;z-index:2;border-bottom:1px solid #eee}h1{font-size:19px;margin:0 0 8px}.row{display:flex;gap:6px;align-items:center}.row select{flex:1;min-width:0}select,button,input[type=file]{font:inherit}select{padding:5px;border-radius:6px;border:1px solid #bbb;background:#fff}button{padding:5px 10px;border-radius:6px;border:1px solid #999;background:#fff;cursor:pointer}button:hover{background:#f0f0f0}.muted{color:#777}.small{font-size:12px}#search{margin:6px 0}#search gmp-place-autocomplete{width:100%}#place{padding:0 14px}.card{position:relative;background:#fff;border:1px solid #ddd;border-radius:10px;padding:10px 12px;margin:10px 0;box-shadow:0 2px 6px #0001}.card .x{position:absolute;top:4px;right:4px;border:none;background:none;font-size:18px;padding:0 6px}.card .row{margin-top:8px}.pack{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid #eee}#days{padding:6px 10px 20px}.day{background:#fff;border:1px solid #e3e3e3;border-radius:10px;margin:6px 0;padding:6px 8px}.day.sel{border-color:#1a73e8;box-shadow:0 0 0 1px #1a73e8}.overview{cursor:pointer}.dayhead{display:flex;gap:6px;align-items:flex-start;cursor:pointer}.dayhead .dt{flex:1}.dayhead small{color:#666;white-space:nowrap}.handle{cursor:grab;color:#aaa;padding:0 2px;-webkit-user-select:none;user-select:none}ol.stops{list-style:none;margin:4px 0 2px;padding:0;min-height:10px}ol.stops li{display:flex;gap:6px;align-items:center;padding:3px 4px;border-radius:6px;cursor:grab}ol.stops li:hover{background:#f3f6fb}ol.stops .num{display:inline-block;min-width:18px;height:18px;border-radius:9px;background:#d93025;color:#fff;font-size:11px;text-align:center;line-height:18px}.day:not(.sel) ol.stops .num{background:#9aa0a6}ol.stops .nm{flex:1}ol.stops .del{border:none;background:none;color:#999;padding:0 4px;visibility:hidden}ol.stops li:hover .del{visibility:visible}.sortable-ghost{opacity:.4}.hotel,.notes{font-size:12px;color:#555;margin:4px 0 2px 4px}#status{padding:0 14px 14px}@media(max-width:760px){body{flex-direction:column-reverse}#sidebar{width:100%;height:50%;border-right:none;border-top:1px solid #ddd}}
