.checkin-page{display:flex;flex-direction:column;gap:14px;max-width:720px;margin:0 auto}
.checkin-page h1{font-size:28px}
.checkin-page h2{font-size:18px;margin:0}
.checkin-back{margin:0;font-size:16px}
.checkin-back a{color:#1a4e42;font-weight:650}
.checkin-tags{display:flex;flex-direction:column;gap:16px}
.checkin-tag{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;break-inside:avoid}
.checkin-tag h2{margin:0 0 6px}
.checkin-qr{display:flex;justify-content:center;margin:12px 0;background:#fff}
.checkin-qr svg{width:180px;height:180px}
.checkin-url{margin:0;font-size:13px;line-height:1.4;color:#5c6d64;word-break:break-all}
.checkin-list{display:flex;flex-direction:column;gap:8px}
.checkin-row{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-height:64px;font-size:16px}
.checkin-row input{width:22px;height:22px;margin-top:2px;flex:0 0 auto}
.checkin-row span{display:flex;flex-direction:column;gap:2px;min-width:0}
.checkin-row small{color:#5c6d64;font-size:14px}
.checkin-batch{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;display:flex;flex-direction:column;gap:8px}
.checkin-batch legend{font-weight:700;padding:0 6px}
.checkin-here{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}
.checkin-here ul{list-style:none;margin:8px 0 0;padding:0}
.checkin-here li{padding:8px 0;border-top:1px solid var(--line);font-size:16px}
.checkin-here span{display:block;color:#1a4e42;font-weight:650}
.checkin-undo .button{min-height:48px}
.checkin-actions .button{min-height:48px;font-size:16px}
.checkin-page .button.block{width:100%}
.map-here{background:#e7f3ea;border:1px solid #1a4e42;border-radius:12px;padding:12px 14px;margin:0 0 12px}
.map-here p{margin:0 0 6px;font-size:16px;line-height:1.35}
.map-here p:last-child{margin:0}
.map-here span{display:block;color:#1a4e42;font-weight:650}
.map-where{margin-top:8px}
.map-where h2{font-size:18px;margin:0 0 6px}
.map-where-note{margin:0 0 10px;color:#5c6d64;font-size:14px;line-height:1.4}
.map-stop{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 10px}
.map-stop h3{margin:0 0 6px;font-size:16px}
.map-stop ul{list-style:none;margin:0;padding:0}
.map-stop li{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:16px}
.map-stop small{flex-basis:100%;color:#5c6d64;font-size:14px}
.map-area.here .map-zone{stroke:#173e35;stroke-width:4}
.journey-where{margin:4px 0 0;font-size:16px;font-weight:650;color:#1a4e42}
@media print{
 .sidebar,.topbar,.demo-banner,.legal-footer,.connection-status,.checkin-actions,.checkin-back{display:none !important}
 .main-shell{display:block}
 .checkin-tag{border:1px solid #111}
}
