:root{--ink:#1d3557;--muted:#5a6b80;--line:#e1e6ee;--panel:#fffffff5;--ok:#2e9e57;--bad:#d64545}html,body{-webkit-user-select:none;user-select:none;touch-action:none;word-break:keep-all;height:100%;color:var(--ink);background:#bfe3f5;margin:0;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,sans-serif;overflow:hidden}#app{position:fixed;inset:0}#app canvas{display:block}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.45;cursor:default}.top-left,.top-right{top:max(12px, env(safe-area-inset-top));gap:8px;display:flex;position:absolute}.top-left{pointer-events:none;flex-direction:column;align-items:flex-start;left:16px}.top-right{right:16px}.pill{background:#ffffffe0;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700;box-shadow:0 2px 6px #0000001a}.pill.money{font-size:16px}.round{background:#ffffffe6;border:0;border-radius:999px;width:44px;height:44px;font-size:20px;font-weight:700;box-shadow:0 2px 6px #0000001f}.toast{top:calc(max(12px, env(safe-area-inset-top)) + 96px);color:#fff;white-space:nowrap;pointer-events:none;background:#1d3557eb;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700;animation:.18s ease-out toast-in;position:absolute;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-6px)}}.bottom-bar{left:50%;bottom:max(16px, env(safe-area-inset-bottom));gap:10px;display:flex;position:absolute;transform:translate(-50%)}.big{border:0;border-radius:16px;min-width:120px;height:52px;padding:0 20px;font-size:17px;font-weight:800;box-shadow:0 4px 12px #00000026}.primary{background:var(--ink);color:#fff}.secondary{color:var(--ink);background:#fff}.danger{background:var(--bad);color:#fff}.sheet{box-sizing:border-box;width:min(560px,100%);padding:18px 16px max(16px, env(safe-area-inset-bottom));background:var(--panel);border-radius:20px 20px 0 0;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 20px #00000026}.sheet h2{margin:0 0 4px;font-size:18px}.sheet-header{justify-content:space-between;align-items:center;display:flex}.sheet-hint{color:var(--muted);margin:2px 0 0;font-size:13px}.style-picker .sheet-hint{margin-bottom:14px}.icon{background:var(--line);border:0;border-radius:999px;width:36px;height:36px;font-size:16px}.sheet-actions{gap:8px;margin-top:14px;display:flex}.sheet-actions button{border:0;border-radius:12px;flex:1;height:48px;font-size:16px;font-weight:700}.sheet-actions .secondary{background:var(--line)}.card-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.card{border:2px solid var(--line);text-align:left;background:#fff;border-radius:14px;flex-direction:column;gap:4px;padding:12px 10px;display:flex}.card strong{font-size:14px}.card span{color:var(--muted);font-size:12px}.card.active{border-color:var(--ink);background:#eef3fa}.card.disabled{opacity:.5}.tabs{gap:6px;margin:10px 0;display:flex;overflow-x:auto}.tabs button{background:var(--line);border:0;border-radius:999px;flex:none;padding:8px 14px;font-size:14px;font-weight:700}.tabs button.active{background:var(--ink);color:#fff}.card-row{touch-action:pan-x;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.facility-card{flex:none;width:150px}.facility-card .meta{color:var(--ink);margin-top:auto}.place-info strong{font-size:16px}.status{margin-top:6px;font-size:14px;font-weight:700}.status.ok{color:var(--ok)}.status.bad{color:var(--bad)}
