.rn-dialog { width:min(520px,calc(100vw - 28px)); max-height:min(800px,calc(100vh - 48px)); max-height:min(800px,calc(100dvh - 48px)); margin:auto; padding:0; border:0; border-radius:22px; color:#263347; background:#fff; box-shadow:0 24px 80px #16396040; overflow:hidden; }
.rn-dialog::backdrop { background:#12253a70; backdrop-filter:blur(3px); }
.rn-shell { display:flex; flex-direction:column; max-height:min(800px,calc(100vh - 48px)); max-height:min(800px,calc(100dvh - 48px)); }
.rn-head { flex-shrink:0; padding:28px 26px 20px; background:linear-gradient(125deg,#edf5ff,#f8fbff 68%,#effbf6); position:relative; border-bottom:1px solid #e9eff7; }
.rn-kicker { color:#6285b5; font-size:9px; font-weight:700; letter-spacing:2.1px; margin-bottom:12px; }
.rn-head h2 { font-size:24px; line-height:1.4; margin:0 28px 10px 0; letter-spacing:.3px; }
.rn-meta { color:#61738c; font-size:12px; display:flex; gap:9px; align-items:center; }
.rn-badge { background:#4277db; color:#fff; padding:4px 9px; border-radius:7px; font-weight:700; }
.rn-close { position:absolute; top:14px; right:14px; width:36px; height:36px; border:0; border-radius:50%; background:#ffffffa8; color:#61738c; font-size:25px; cursor:pointer; }
.rn-scroll { overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; padding:20px 22px 24px; min-height:0; background:#fcfdff; }
.rn-intro { font-size:13px; line-height:1.7; color:#7d8ca2; margin:0 3px 20px; }
.rn-list { list-style:none; display:grid; gap:14px; padding:0; margin:0; }
.rn-item { min-width:0; }
.rn-item-button { width:100%; display:grid; grid-template-columns:44px minmax(0,1fr); align-items:center; gap:14px; padding:15px; border:1px solid #e8eef7; border-radius:16px; background:#fff; box-shadow:0 3px 12px #1c468304; font:inherit; text-align:left; cursor:pointer; color:inherit; -webkit-tap-highlight-color:#4277db12; }
.rn-item-button:hover { border-color:#bfd1ee; background:#fafdff; }
.rn-item-button:active { background:#f1f6ff; }
.rn-item-body { min-width:0; }
.rn-item-number { width:44px; height:48px; display:grid; place-items:center; border-radius:14px; background:linear-gradient(145deg,#edf4ff,#dce9ff); color:#467ce0; font-size:28px; line-height:1; font-weight:700; font-variant-numeric:tabular-nums; box-shadow:inset 0 1px 0 #fff,0 4px 8px #4277db12; }
.rn-item:nth-child(2) .rn-item-number { background:linear-gradient(145deg,#ecfbfa,#d9f3ed);color:#289782;box-shadow:inset 0 1px 0 #fff,0 4px 8px #28978212; }
.rn-item:nth-child(3) .rn-item-number { background:linear-gradient(145deg,#f5f1ff,#eae1ff);color:#8861c7;box-shadow:inset 0 1px 0 #fff,0 4px 8px #8861c712; }
.rn-item:nth-child(4) .rn-item-number { background:linear-gradient(145deg,#fff7e9,#ffecd1);color:#bd893b;box-shadow:inset 0 1px 0 #fff,0 4px 8px #bd893b12; }
.rn-item-title { display:flex; align-items:center; justify-content:space-between; gap:6px; font-size:15px; line-height:1.5; margin:0 0 5px; font-weight:650; color:#2a405c; }
.rn-item-arrow { flex-shrink:0; color:#92a8c5; font-size:23px; line-height:1; font-weight:400; }
.rn-item-text { display:block; font-size:12px; line-height:1.75; color:#667991; margin:0; overflow-wrap:anywhere; }
.rn-location { padding:15px 16px; border:1px solid #dce8f7; border-radius:14px; background:#f0f6ff; }
.rn-section-label { display:block; color:#5b7dac; font-size:11px; font-weight:650; letter-spacing:1px; }
.rn-location p { color:#3c5c85; font-size:13px; font-weight:600; line-height:1.9; margin:5px 0 0; overflow-wrap:anywhere; }
.rn-detail-intro { color:#75869c; font-size:13px; line-height:1.85; margin:15px 2px 26px; }
.rn-detail-section { margin:0 2px 27px; }
.rn-detail-section h3, .rn-examples h3 { color:#2c4565; font-size:15px; line-height:1.65; margin:0 0 10px; font-weight:650; }
.rn-detail-section h3 { border-left:3px solid #91b4ed; padding-left:10px; }
.rn-detail-section p { color:#52657e; font-size:14px; line-height:1.95; margin:0; overflow-wrap:anywhere; }
.rn-examples { border-top:1px solid #e6edf6; padding:22px 2px 0; margin:0 0 25px; }
.rn-example-hint { color:#788aa0; font-size:12px; line-height:1.75; margin:-3px 0 13px; }
.rn-examples ul { padding:0; margin:0; list-style:none; display:grid; gap:10px; }
.rn-examples li { background:#f0f5fd; padding:12px 14px; border-radius:11px; font-size:13px; line-height:1.85; color:#4b6891; overflow-wrap:anywhere; }
.rn-detail-note { border:1px solid #efe7d8; border-radius:13px; padding:14px 16px; background:#fffaf0; }
.rn-detail-note strong { color:#8a7550; font-size:12px; }
.rn-detail-note p { color:#897c66; font-size:12px; line-height:1.85; margin:6px 0 0; overflow-wrap:anywhere; }
.rn-footer { flex-shrink:0; padding:13px 20px max(15px,env(safe-area-inset-bottom)); border-top:1px solid #edf0f5; display:flex; gap:10px; background:#fff; }
.rn-footer button { flex:1; min-height:43px; border-radius:12px; font-size:13px; font-weight:600; cursor:pointer; padding:8px; }
.rn-secondary { border:1px solid #dce5f1; background:#f7f9fc; color:#587192; }
.rn-primary { border:1px solid #4779df; background:#4779df; color:#fff; }
.rn-history { display:grid; gap:12px; }
.rn-history-card { width:100%; text-align:left; border:1px solid #e1e8f2; background:#fff; padding:16px; border-radius:14px; cursor:pointer; color:inherit; }
.rn-history-card strong { display:block; font-size:15px; margin:10px 0 6px; }
.rn-history-card p { color:#75839a; font-size:12px; line-height:1.7; margin:0; }
.rn-dialog button:focus-visible { outline:2px solid #244fbd; outline-offset:2px; }
.rn-version-entry { display:flex; justify-content:space-between; align-items:center; width:100%; margin:12px 0 0; border:1px solid #e1e9f3; background:#f8faff; border-radius:12px; padding:13px 15px; cursor:pointer; color:#466187; font-size:14px; }
.rn-version-entry small { color:#7d91af; font-size:11px; margin-right:7px; }
.rn-preview-entry { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; margin:8px 0 14px; padding:13px 15px; border:1px dashed #b6cae9; border-radius:12px; background:#f5f9ff; color:#466c9b; font-size:13px; cursor:pointer; text-align:left; }
.rn-preview-entry span { font-size:10px; color:#7e93ad; }
.rn-preview-entry[hidden] { display:none; }
@media(max-width:380px) { .rn-head {padding:23px 20px 17px;} .rn-scroll {padding:17px 16px 21px;} .rn-head h2 {font-size:21px;} .rn-item-button {grid-template-columns:38px minmax(0,1fr);padding:15px 12px;gap:11px;} .rn-item-number {width:38px;height:44px;font-size:25px;} .rn-item-title {font-size:14px;} .rn-footer {padding-left:14px;padding-right:14px;} .rn-location {padding:12px 13px;} }
@media(prefers-reduced-motion:reduce) { .rn-dialog {scroll-behavior:auto;} }

.rn-guide-entry{display:block;width:100%;margin:18px 0 0;padding:13px;border:1px solid #cdddf3;border-radius:12px;background:#eef5ff;color:#315e98;font:inherit;font-size:13px;cursor:pointer}.rn-guide-open{margin-top:12px;padding:10px 14px;border:1px solid #cdddf3;border-radius:10px;background:#f3f7fe;color:#315e98;font:inherit;font-size:13px;cursor:pointer}
