:root{--ink: #2a241f;--muted: #6f675f;--accent: #c45c26;--accent-2: #8f3d16;--panel: rgba(255, 250, 245, .9);--panel-solid: #fffaf5;--line: rgba(42, 36, 31, .1);--shadow: 0 10px 40px rgba(42, 36, 31, .12);--radius: 16px;--font: "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#d9e2ea;font-family:var(--font);color:var(--ink)}#app,#view{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}button,input{font:inherit;color:inherit}button{cursor:pointer}#loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:linear-gradient(180deg,#e7eef4,#f4efe8);transition:opacity .5s ease,visibility .5s ease}#loader.done{opacity:0;visibility:hidden;pointer-events:none}.loader-card{text-align:center;width:min(360px,calc(100% - 48px))}.loader-kicker{margin:0 0 6px;letter-spacing:.18em;font-size:12px;color:var(--muted)}.loader-card h1{margin:0 0 22px;font-weight:650;font-size:28px;letter-spacing:.04em}.bar{height:4px;background:var(--line);border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;width:0%;background:var(--accent);border-radius:inherit;transition:width .15s linear}#load-text{margin:14px 0 0;color:var(--muted);font-size:13px}.topbar{position:fixed;top:18px;left:18px;right:18px;z-index:10;display:flex;gap:16px;align-items:flex-start;pointer-events:none}.brand,.search-wrap,.controls,.routes,.catalog,.card,.hint{pointer-events:auto}.brand{background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius);padding:12px 16px;min-width:180px}.brand strong{display:block;font-size:15px}.brand span{color:var(--muted);font-size:12px}.search-wrap{position:relative;flex:1;max-width:420px}#search{width:100%;border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);border-radius:999px;padding:12px 18px;outline:none}#search:focus{border-color:#e0a07a}#search-results{position:absolute;left:0;right:0;top:calc(100% + 8px);margin:0;padding:8px;list-style:none;background:var(--panel-solid);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);max-height:320px;overflow:auto}#search-results li{padding:8px 10px;border-radius:10px;cursor:pointer}#search-results li:hover,#search-results li.active{background:#f3e7dc}#search-results small{display:block;color:var(--muted);font-size:11px}.controls{position:fixed;top:86px;left:18px;z-index:10;display:flex;flex-direction:column;gap:8px}.seg{display:flex;align-items:center;gap:4px;background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:999px;padding:5px}.seg span{padding:0 8px;font-size:12px;color:var(--muted)}.seg button{border:0;background:transparent;border-radius:999px;padding:6px 12px;min-width:36px}.seg button.on{background:var(--ink);color:#fffaf5}.routes,.catalog,.card{background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}.routes{position:fixed;left:18px;bottom:52px;z-index:10;padding:12px;width:230px;display:flex;flex-direction:column;gap:6px}.routes p,.catalog-head p,.card-cat{margin:0;font-size:12px;color:var(--muted)}.routes button,#fly-again{border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;text-align:left}.routes button:hover,#fly-again:hover{border-color:#e0a07a}.routes button.on{background:#2a241f;color:#fffaf5;border-color:#2a241f}button.ghost{background:transparent;border:0;color:var(--muted);padding:4px 6px}.catalog{position:fixed;top:86px;right:18px;bottom:18px;z-index:10;width:280px;display:flex;flex-direction:column;min-height:0}.catalog.collapsed{bottom:auto}.catalog-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px 8px}#catalog-list{overflow:auto;padding:0 8px 12px}.cat-group{margin:0 0 10px}.cat-group h3{margin:0;padding:6px 8px;font-size:11px;letter-spacing:.08em;color:var(--muted);font-weight:600}.cat-item{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:10px;padding:7px 8px;font-size:13px}.cat-item:hover,.cat-item.on{background:#f3e7dc}.catalog.collapsed #catalog-list{display:none}.card{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:12;width:min(380px,calc(100% - 40px));padding:16px 18px 14px}.card h2{margin:2px 0 6px;font-size:20px;font-weight:650}.card-sub{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.55}.card .close{position:absolute;top:8px;right:10px;border:0;background:transparent;font-size:22px;color:var(--muted);line-height:1}#fly-again{width:100%;text-align:center;background:var(--accent);color:#fff;border:0;padding:9px 12px}.hint{position:fixed;left:260px;bottom:16px;z-index:8;margin:0;font-size:12px;color:var(--muted);text-shadow:0 1px 0 rgba(255,255,255,.6)}@media(max-width:820px){.catalog{width:calc(100% - 36px);top:auto;height:34vh}.topbar{flex-direction:column}.search-wrap{max-width:none;width:100%}.controls{top:auto;bottom:16px;left:12px}.routes,.hint{display:none}.card{bottom:36vh}}
