:root{--rt-ink: #2a1f17;--rt-muted: #65564a;--rt-paper: #fbf6ea;--rt-parch: #f2e6cb;--rt-line: #e0d2b4;--rt-brick: #96391f;--rt-brick-dark: #742a16;--rt-sign: #00634a;--rt-sign-dark: #004a37;--rt-amber: #e8a93a;--rt-serif: Georgia, "Times New Roman", serif;--rt-shadow: 0 12px 30px rgb(42 31 23 / 10%);--primary: #96391f;--primary-dark: #742a16;--border: #e0d2b4;--surface: #ffffff;--shadow-soft: 0 12px 30px rgb(42 31 23 / 10%);--surface-muted: #fbf6ea;--text-main: #2a1f17;--text-muted: #65564a;}
.rt-tool{display: grid;grid-template-columns: minmax(0, 1fr);gap: 1.25rem;margin: 1.5rem 0 1rem;}
.rt-desk{background: var(--rt-ink);color: #f6ecd8;border-radius: 16px;padding: 1.25rem;display: flex;flex-direction: column;gap: 1.1rem;align-self: start;}
.rt-group{border: 0;margin: 0;padding: 0;min-width: 0;}
.rt-group legend{font-size: .72rem;font-weight: 700;letter-spacing: .09em;text-transform: uppercase;color: #d9c7a4;margin-bottom: .45rem;float: none;width: auto;padding: 0;}
.rt-sub{font-family: var(--rt-serif);font-size: .85rem;font-style: italic;color: #d9c7a4;margin: .6rem 0 .3rem;}
.rt-chips{display: flex;flex-wrap: wrap;gap: .35rem;}
.rt-chip{position: relative;margin: 0;}
.rt-chip input{position: absolute;opacity: 0;pointer-events: none;}
.rt-chip span{display: inline-block;padding: .36rem .68rem;border: 1px solid #5c4a3a;border-radius: 999px;font-size: .85rem;color: #f6ecd8;cursor: pointer;transition: background .15s, border-color .15s;}
.rt-chip span:hover{border-color: var(--rt-amber);}
.rt-chip input:checked + span{background: var(--rt-amber);border-color: var(--rt-amber);color: var(--rt-ink);font-weight: 700;}
.rt-chip input:focus-visible + span{outline: 2px solid #fff;outline-offset: 2px;}
.rt-go{border: 0;border-radius: 10px;background: var(--rt-amber);color: var(--rt-ink);font-weight: 800;font-size: 1.02rem;padding: .75rem 1rem;cursor: pointer;}
.rt-go:hover{background: #f2bc5b;}
.rt-go:disabled{opacity: .65;cursor: progress;}
.rt-go:focus-visible{outline: 2px solid #fff;outline-offset: 2px;}
.rt-status{margin: 0;font-size: .82rem;line-height: 1.45;color: #d9c7a4;}
.rt-status.is-error{color: #ffc9b8;font-weight: 600;}
.rt-board{display: flex;flex-direction: column;gap: 1rem;min-width: 0;}
.rt-card{background: #fff;border: 1px solid var(--rt-line);border-radius: 16px;box-shadow: var(--rt-shadow);overflow: hidden;}
.rt-card.is-new{animation: rtRise .28s ease-out;}
@keyframes rtRise{from{opacity: .35;transform: translateY(6px);}to{opacity: 1;transform: none;}}
.rt-sign{position: relative;padding: 1.35rem 1.25rem;text-align: center;}
.rt-kicker{margin: 0;font-size: .75rem;letter-spacing: .14em;text-transform: uppercase;}
.rt-name{margin: .15rem 0;font-size: clamp(1.9rem, 6vw, 2.8rem);line-height: 1.1;overflow-wrap: anywhere;}
.rt-pop{margin: 0;font-size: .95rem;}
.rt-seal{position: absolute;right: 1rem;top: 1rem;width: 44px;height: 44px;border-radius: 50%;background: var(--rt-brick);color: #f9e5d3;font-family: var(--rt-serif);font-size: 1.3rem;font-weight: 700;display: flex;align-items: center;justify-content: center;box-shadow: inset 0 0 0 3px rgb(255 255 255 / 18%);}
.rt-card[data-world="fantasy"] .rt-sign{background: var(--rt-parch);color: var(--rt-ink);border-bottom: 3px double #b7a076;font-family: var(--rt-serif);}
.rt-card[data-world="fantasy"] .rt-name{font-family: var(--rt-serif);font-weight: 700;color: var(--rt-ink);}
.rt-card[data-world="fantasy"] .rt-pop{font-style: italic;}
.rt-card[data-world="modern"] .rt-sign{background: var(--rt-sign);color: #fff;box-shadow: inset 0 0 0 5px var(--rt-sign), inset 0 0 0 7px #fff;}
.rt-card[data-world="modern"] .rt-name{font-weight: 800;color: #fff;letter-spacing: -.01em;}
.rt-card[data-world="modern"] .rt-pop{font-weight: 700;letter-spacing: .05em;text-transform: uppercase;}
.rt-card[data-world="modern"] .rt-seal{display: none;}
.rt-tags{display: flex;flex-wrap: wrap;justify-content: center;gap: .3rem;list-style: none;margin: .7rem 0 0;padding: 0;font-size: .78rem;}
.rt-tags li{padding: .1rem .55rem;border-radius: 999px;background: rgb(42 31 23 / 8%);}
.rt-card[data-world="modern"] .rt-tags li{background: rgb(255 255 255 / 18%);}
.rt-body{display: grid;grid-template-columns: minmax(0, 1fr);gap: 1rem;padding: 1rem 1.25rem 1.25rem;}
.rt-map{margin: 0;}
.rt-sketch{display: block;width: 100%;height: auto;aspect-ratio: 360 / 220;border-radius: 10px;border: 1px solid var(--rt-line);}
.rt-map figcaption{font-size: .76rem;color: var(--rt-muted);margin-top: .3rem;}
.rt-sk-road,.rt-sk-river,.rt-sk-hwy,.rt-sk-wall,.rt-sk-dune{fill: none;stroke-linecap: round;stroke-linejoin: round;}
.rt-sk-river{stroke-width: 11;}
.rt-sk-hwy{stroke-width: 5;stroke: #e8a93a;}
.rt-sk-wall{stroke: #5d4228;stroke-width: 2.4;stroke-dasharray: 9 1.5;}
.rt-sk-peak{stroke-width: 1.2;}
.rt-sk-dune{stroke-width: 1.2;}
.rt-sk-pin{fill: #96391f;stroke: #fff;stroke-width: 1.5;}
.rt-card[data-world="fantasy"] .rt-sk-bg{fill: #efe2c4;}
.rt-card[data-world="fantasy"] .rt-sk-road{stroke: #b59a70;stroke-width: 2.2;}
.rt-card[data-world="fantasy"] .rt-sk-house{fill: #5d4228;}
.rt-card[data-world="fantasy"] .rt-sk-river{stroke: #9dbcb8;}
.rt-card[data-world="fantasy"] .rt-sk-water{fill: #9dbcb8;}
.rt-card[data-world="fantasy"] .rt-sk-tree{fill: #a7ae7c;}
.rt-card[data-world="fantasy"] .rt-sk-peak{fill: #d6c6a3;stroke: #7c6547;}
.rt-card[data-world="fantasy"] .rt-sk-field{fill: #e4d3a6;stroke: #d3bd8b;}
.rt-card[data-world="fantasy"] .rt-sk-dune{stroke: #c9ae7c;}
.rt-card[data-world="modern"] .rt-sk-bg{fill: #eef1ea;}
.rt-card[data-world="modern"] .rt-sk-road{stroke: #fff;stroke-width: 2.6;}
.rt-card[data-world="modern"] .rt-sk-house{fill: #5b6870;}
.rt-card[data-world="modern"] .rt-sk-river{stroke: #a5d0e3;}
.rt-card[data-world="modern"] .rt-sk-water{fill: #a5d0e3;}
.rt-card[data-world="modern"] .rt-sk-tree{fill: #b6d2a8;}
.rt-card[data-world="modern"] .rt-sk-peak{fill: #d9dcd6;stroke: #9aa39b;}
.rt-card[data-world="modern"] .rt-sk-field{fill: #e0e8cc;stroke: #cdd8b2;}
.rt-card[data-world="modern"] .rt-sk-dune{stroke: #d8c79e;}
.rt-gloss{margin: 0 0 .8rem;padding: .6rem .75rem;background: var(--rt-paper);border-left: 3px solid var(--rt-brick);font-size: .92rem;color: var(--rt-ink);}
.rt-card[data-world="modern"] .rt-gloss{border-left-color: var(--rt-sign);}
.rt-facts{margin: 0;display: grid;gap: .55rem;}
.rt-facts dt{font-size: .7rem;letter-spacing: .08em;text-transform: uppercase;color: var(--rt-muted);font-weight: 700;}
.rt-facts dd{margin: 0;font-size: .95rem;color: var(--rt-ink);}
.rt-marks{margin: .15rem 0 0;padding-left: 1.05rem;}
.rt-actions{display: flex;flex-wrap: wrap;gap: .4rem;padding: .8rem 1.25rem;border-top: 1px solid var(--rt-line);background: var(--rt-paper);}
.rt-act{border: 1px solid var(--rt-line);background: #fff;color: var(--rt-ink);border-radius: 8px;padding: .4rem .75rem;font-size: .85rem;font-weight: 600;cursor: pointer;}
.rt-act:hover{border-color: var(--rt-brick);color: var(--rt-brick);}
.rt-act:focus-visible{outline: 2px solid var(--rt-brick);outline-offset: 2px;}
.rt-act-main{background: var(--rt-brick);border-color: var(--rt-brick);color: #fff;}
.rt-act-main:hover{background: var(--rt-brick-dark);border-color: var(--rt-brick-dark);color: #fff;}
.rt-act-main:disabled{opacity: .65;cursor: progress;}
.rt-act.is-done{background: var(--rt-sign);border-color: var(--rt-sign);color: #fff;}
.rt-alts,.rt-kept{background: #fff;border: 1px solid var(--rt-line);border-radius: 14px;padding: 1rem 1.25rem;}
.rt-alts h3,.rt-kept h3{font-size: 1.02rem;margin: 0 0 .2rem;color: var(--rt-ink);}
.rt-alts p{margin: 0 0 .7rem;font-size: .85rem;color: var(--rt-muted);}
.rt-alt-list{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));gap: .4rem;}
.rt-alt{width: 100%;text-align: left;border: 1px solid var(--rt-line);border-radius: 8px;background: var(--rt-paper);padding: .4rem .6rem;cursor: pointer;color: var(--rt-ink);}
.rt-alt strong{display: block;font-size: .92rem;overflow-wrap: anywhere;}
.rt-alt span{font-size: .72rem;color: var(--rt-muted);}
.rt-alt:hover{border-color: var(--rt-brick);}
.rt-alt:focus-visible{outline: 2px solid var(--rt-brick);outline-offset: 2px;}
.rt-kept-head{display: flex;align-items: center;justify-content: space-between;gap: .6rem;margin-bottom: .4rem;}
.rt-kept ol{margin: 0;padding-left: 1.2rem;font-size: .92rem;}
.rt-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: .3rem 1rem;padding: .6rem 0 1.5rem;font-size: .85rem;color: var(--rt-muted);border-bottom: 1px solid var(--rt-line);margin-bottom: 2rem;}
.rt-byline a{color: var(--rt-brick);}
.rt-copy{margin: 0 auto 2.5rem;color: var(--rt-ink);line-height: 1.7;}
.rt-copy h2{font-family: var(--rt-serif);font-size: clamp(1.45rem, 3.6vw, 1.85rem);line-height: 1.25;margin: 0 0 .7rem;color: var(--rt-ink);}
.rt-copy h3{font-size: 1.08rem;margin: 1.3rem 0 .35rem;color: var(--rt-ink);}
.rt-copy a{color: var(--rt-brick);}
.rt-copy code{background: var(--rt-parch);color: var(--rt-ink);padding: 0 .3em;border-radius: 4px;font-size: .92em;}
.rt-scroll{overflow-x: auto;margin: 1rem 0;border: 1px solid var(--rt-line);border-radius: 10px;}
.rt-table{width: 100%;min-width: 520px;border-collapse: collapse;font-size: .92rem;background: #fff;}
.rt-table th{background: var(--rt-parch);text-align: left;padding: .5rem .7rem;font-size: .8rem;white-space: nowrap;}
.rt-table td{padding: .5rem .7rem;border-top: 1px solid var(--rt-line);vertical-align: top;}
.rt-table td.rt-num{font-variant-numeric: tabular-nums;}
.rt-note{background: var(--rt-paper);border: 1px solid var(--rt-line);border-radius: 12px;padding: .9rem 1.1rem;margin: 1.2rem 0;}
.rt-note h3{margin-top: 0;}
.rt-note p:last-child{margin-bottom: 0;}
.rt-tongues{display: grid;grid-template-columns: minmax(0, 1fr);gap: .8rem;margin: 1rem 0;}
.rt-tongue{border-top: 3px solid var(--rt-brick);background: #fff;box-shadow: 0 1px 0 var(--rt-line);padding: .7rem .9rem .9rem;}
.rt-tongue h3{margin: 0 0 .25rem;font-family: var(--rt-serif);}
.rt-tongue p{margin: 0 0 .4rem;font-size: .95rem;}
.rt-tongue .rt-eg{margin: 0;font-family: var(--rt-serif);font-style: italic;color: var(--rt-muted);}
.rt-steps{padding-left: 1.3rem;}
.rt-steps li{margin-bottom: .55rem;}
.rt-limits{border-left: 4px solid var(--rt-sign);padding-left: 1.1rem;}
.rt-limits ul{padding-left: 1.1rem;}
.rt-limits li{margin-bottom: .55rem;}
.rt-closing{display: grid;grid-template-columns: minmax(0, 1fr);gap: 1.25rem;align-items: start;margin-top: 1rem;}
.rt-closing > section{margin: 0;min-width: 0;}
@media (min-width: 640px){.rt-tongues{grid-template-columns: repeat(2, minmax(0, 1fr));}.rt-body{grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);}}
@media (min-width: 992px){.rt-tool{grid-template-columns: 300px minmax(0, 1fr);}.rt-closing{grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);}}
@media (prefers-reduced-motion: reduce){.rt-card.is-new{animation: none;}}