/* RoadReady V30 — accessible informational components; does not override existing app behavior */
.rr30-guide,.rr30-utility{max-width:1100px;margin:32px auto;padding:clamp(22px,3vw,38px);background:#f8fbff;color:#152945;border:1px solid #d3e3f2;border-radius:24px;box-shadow:0 12px 32px rgba(8,42,74,.08);font:inherit;line-height:1.65}
.rr30-guide h2,.rr30-utility h2{margin:0 0 12px;color:#0b365c;font-size:clamp(1.4rem,2.1vw,2rem);line-height:1.22}
.rr30-guide h3,.rr30-utility h3{margin:0 0 8px;color:#124465;font-size:1.06rem;line-height:1.35}
.rr30-guide p,.rr30-utility p{line-height:1.75;margin:8px 0 16px;max-width:77ch}
.rr30-eyebrow{display:inline-block;color:#066a63;font-weight:800;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.rr30-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0 26px}
.rr30-card{background:white;border:1px solid #d7e6f2;border-radius:16px;padding:20px;min-width:0}
.rr30-card p{font-size:.96rem;margin:0;color:#355672}
.rr30-callout{background:#e6f7f1;border-left:5px solid #087a66;padding:15px 18px;border-radius:12px;margin:18px 0;color:#143f45}
.rr30-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.rr30-links a,.rr30-link{display:inline-block;background:#125c9d;color:white!important;text-decoration:none!important;padding:11px 17px;border-radius:11px;font-weight:750;line-height:1.4}
.rr30-links a:hover,.rr30-links a:focus-visible,.rr30-link:hover,.rr30-link:focus-visible{background:#093e70;outline:2px solid #81c8f6;outline-offset:2px}
.rr30-guide details{border:1px solid #d7e4ee;border-radius:12px;background:#fff;margin:10px 0;padding:15px 18px}
.rr30-guide summary{cursor:pointer;font-weight:750;color:#0c426d}
.rr30-guide details p{margin:12px 0 3px}
.rr30-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.rr30-checks label{display:flex;gap:12px;align-items:flex-start;background:#fff;padding:13px;border:1px solid #d4e4ee;border-radius:12px;cursor:pointer}
.rr30-checks input{width:19px;height:19px;flex:none;margin:4px 0 0;accent-color:#116fa9}
.rr30-small{color:#405f77;font-size:.9rem}
.rr30-directory{max-width:1150px;margin:32px auto;padding:24px;border:1px solid #284d71;border-radius:20px;background:linear-gradient(140deg,#0d2a49,#113b59);color:#eef9ff}
.rr30-directory h2{color:#fff;font-size:clamp(1.35rem,2.1vw,1.9rem);margin:0 0 10px}
.rr30-directory p{color:#dceefa;line-height:1.65}
.rr30-directory .rr30-links a{background:#e3f4ff;color:#084168!important}
.rr30-directory .rr30-links a:hover{background:#b4e2fb}
.rr30-source{font-size:.88rem;color:#526b80}
.rr30-utility h1{font-size:clamp(2rem,4vw,3rem);color:#0c3355;margin:10px 0}
.rr30-utility a:not(.rr30-link){color:#0b619b;text-underline-offset:3px}
.rr30-utility ol,.rr30-utility ul{padding-left:26px}
.rr30-utility li{padding:5px 0}
.rr30-meta{color:#496078;font-size:.9rem}
.rr30-planner-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:19px 0}
.rr30-planner-controls select,.rr30-planner-controls button{min-height:44px;max-width:100%;font:inherit;padding:9px 13px;border-radius:10px;border:1px solid #9bb8d1;background:white;color:#113f64}
.rr30-planner-controls button{background:#0d649e;color:#fff;cursor:pointer;font-weight:700}
.rr30-planner-controls label{font-weight:650}
.rr30-day{border:1px solid #d2e4ef;border-radius:15px;background:#fff;padding:17px;margin:11px 0}
.rr30-day label{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.rr30-day input{width:21px;height:21px;margin-top:3px;accent-color:#137b73}
.rr30-day h3{margin:0 0 6px}
.rr30-day p{margin:0;color:#415d76}
.rr30-progress{height:12px;border-radius:10px;background:#d5e8f0;overflow:hidden}
.rr30-progress div{height:100%;width:0;background:#198873;transition:width .2s}
@media(max-width:800px){.rr30-cards,.rr30-checks{grid-template-columns:1fr}.rr30-guide,.rr30-utility{margin:22px 12px}.rr30-directory{margin:24px 12px}}
@media print{header,nav,footer,.rr30-links,.rr30-planner-controls button{display:none!important}.rr30-guide,.rr30-utility{box-shadow:none;border:0}.rr30-day{break-inside:avoid}}

.rr30-share{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:24px 0 3px}.rr30-share-button{border:1px solid #127a74;border-radius:11px;background:#e7f7f4;color:#07554e;font:inherit;padding:12px 17px;font-weight:750;cursor:pointer}.rr30-share-button:hover,.rr30-share-button:focus-visible{background:#c7eee6;outline:2px solid #57b2a5;outline-offset:2px}.rr30-share-status{color:#164f58;font-size:.9rem}
