:root{--nat-ink: #1d2433;--nat-ink-soft: #5a6275;--nat-paper: #fbf8f3;--nat-card: #ffffff;--nat-line: #e6dfd3;--nat-accent: #8c2f39;--nat-accent-dark: #6e222b;--nat-accent-soft: #f6e9ea;--nat-teal: #1f6f78;--nat-teal-soft: #e5f1f2;--nat-shadow: 0 10px 30px rgb(29 36 51 / 8%);--primary: #8c2f39;--primary-dark: #6e222b;--border: #e6dfd3;--surface: #ffffff;--shadow-soft: 0 10px 30px rgb(29 36 51 / 8%);--surface-muted: #fbf8f3;--text-main: #1d2433;--text-muted: #5a6275;}
.nat-tool{display: grid;grid-template-columns: minmax(0, 340px) minmax(0, 1fr);gap: 1.5rem;margin: 1.5rem 0 2.5rem;align-items: start;}
.nat-panel{background: var(--nat-paper);border: 1px solid var(--nat-line);border-radius: 14px;padding: 1.25rem;display: flex;flex-direction: column;gap: 1.1rem;}
.nat-byline{display: flex;flex-direction: column;gap: .15rem;font-size: .8rem;color: var(--nat-ink-soft);padding-bottom: .9rem;border-bottom: 1px dashed var(--nat-line);}
.nat-byline-author a,.nat-byline .author-link{color: var(--nat-accent);font-weight: 600;text-decoration: none;}
.nat-field{border: 0;padding: 0;margin: 0;}
.nat-field legend{font-size: .72rem;font-weight: 700;letter-spacing: .08em;text-transform: uppercase;color: var(--nat-ink-soft);margin-bottom: .5rem;}
.nat-chips{display: flex;flex-wrap: wrap;gap: .4rem;}
.nat-chip input,.nat-seg-item input{position: absolute;opacity: 0;pointer-events: none;}
.nat-chip span{display: inline-flex;align-items: center;gap: .35rem;padding: .4rem .7rem;border: 1px solid var(--nat-line);border-radius: 999px;background: var(--nat-card);font-size: .88rem;color: var(--nat-ink);cursor: pointer;transition: background .15s, border-color .15s;}
.nat-chip em{font-style: normal;font-size: .72rem;color: var(--nat-ink-soft);font-variant-numeric: tabular-nums;}
.nat-chip input:checked + span{background: var(--nat-accent);border-color: var(--nat-accent);color: #fff;}
.nat-chip input:checked + span em{color: rgb(255 255 255 / 80%);}
.nat-chip input:focus-visible + span,.nat-seg-item input:focus-visible + span,.nat-toggle input:focus-visible + .nat-toggle-box{outline: 2px solid var(--nat-teal);outline-offset: 2px;}
.nat-seg{display: grid;grid-template-columns: repeat(2, 1fr);border: 1px solid var(--nat-line);border-radius: 10px;overflow: hidden;background: var(--nat-card);}
.nat-seg-item span{display: block;text-align: center;padding: .5rem 0;font-weight: 600;font-size: .92rem;cursor: pointer;color: var(--nat-ink);border-right: 1px solid var(--nat-line);}
.nat-seg-item:last-child span{border-right: 0;}
.nat-seg-item input:checked + span{background: var(--nat-ink);color: #fff;}
.nat-toggle{display: flex;gap: .7rem;align-items: flex-start;cursor: pointer;}
.nat-toggle input{position: absolute;opacity: 0;}
.nat-toggle-box{flex: 0 0 auto;width: 38px;height: 22px;border-radius: 999px;background: var(--nat-line);position: relative;margin-top: .1rem;transition: background .15s;}
.nat-toggle-box::after{content: "";position: absolute;top: 3px;left: 3px;width: 16px;height: 16px;border-radius: 50%;background: #fff;transition: transform .15s;box-shadow: 0 1px 2px rgb(0 0 0 / 20%);}
.nat-toggle input:checked + .nat-toggle-box{background: var(--nat-teal);}
.nat-toggle input:checked + .nat-toggle-box::after{transform: translateX(16px);}
.nat-toggle strong{display: block;font-size: .95rem;color: var(--nat-ink);}
.nat-toggle small{display: block;font-size: .8rem;color: var(--nat-ink-soft);line-height: 1.4;}
.nat-go{border: 0;border-radius: 10px;background: var(--nat-accent);color: #fff;font-weight: 700;font-size: 1rem;padding: .8rem 1rem;cursor: pointer;transition: background .15s;}
.nat-go:hover{background: var(--nat-accent-dark);}
.nat-go:disabled{opacity: .6;cursor: wait;}
.nat-status{margin: 0;font-size: .82rem;color: var(--nat-ink-soft);min-height: 1.2em;}
.nat-status.is-error{color: var(--nat-accent);font-weight: 600;}
.nat-board{background: var(--nat-card);border: 1px solid var(--nat-line);border-radius: 14px;box-shadow: var(--nat-shadow);padding: 1rem 1.25rem;}
.nat-board-meta{margin: 0 0 .5rem;font-size: .8rem;color: var(--nat-ink-soft);font-variant-numeric: tabular-nums;text-transform: uppercase;letter-spacing: .06em;}
.nat-card{display: flex;flex-direction: column;align-items: center;text-align: center;gap: .5rem;padding: 1.75rem 1rem 1.5rem;border: 2px dashed var(--nat-line);border-radius: 12px;background: var(--nat-paper);min-height: 300px;justify-content: center;}
.nat-card.is-new{animation: natIn .3s ease both;}
.nat-flag{font-size: 4rem;line-height: 1;}
.nat-word{margin: 0;font-size: clamp(2rem, 5vw, 2.8rem);font-weight: 800;color: var(--nat-ink);line-height: 1.1;}
.nat-country{margin: 0;color: var(--nat-ink-soft);font-size: 1.05rem;}
.nat-region{display: inline-block;margin-left: .35rem;padding: .05rem .45rem;border-radius: 4px;background: var(--nat-teal-soft);color: var(--nat-teal);font-size: .72rem;font-weight: 600;}
.nat-note{margin: .5rem 0 0;max-width: 460px;padding: .6rem .8rem;border-left: 3px solid var(--nat-accent);background: var(--nat-accent-soft);border-radius: 0 6px 6px 0;font-size: .9rem;color: var(--nat-ink);line-height: 1.45;text-align: left;}
.nat-codes{display: flex;gap: .3rem;}
.nat-codes code{font-family: ui-monospace, SFMono-Regular, Consolas, monospace;font-size: .85rem;padding: .2rem .5rem;border: 1px solid var(--nat-line);border-radius: 4px;color: var(--nat-ink);background: var(--nat-card);}
.nat-hidden{border: 2px dashed var(--nat-accent);border-radius: 10px;background: var(--nat-accent-soft);color: var(--nat-accent);font-weight: 800;font-size: 1.4rem;padding: .5rem 1.6rem;cursor: pointer;}
.nat-hidden:hover{background: #f0dadc;}
.nat-actions{display: flex;flex-wrap: wrap;gap: .5rem;margin-top: 1rem;padding-top: .9rem;border-top: 1px solid var(--nat-line);}
.nat-act{border: 1px solid var(--nat-line);background: var(--nat-paper);color: var(--nat-ink);border-radius: 8px;padding: .45rem .8rem;font-size: .85rem;font-weight: 600;cursor: pointer;}
.nat-act:hover{border-color: var(--nat-ink);}
.nat-act.is-done{background: var(--nat-teal);border-color: var(--nat-teal);color: #fff;}
.nat-copy{margin: 0 auto 2.5rem;color: var(--nat-ink);line-height: 1.7;}
.nat-copy h2{font-size: 1.5rem;font-weight: 800;margin-bottom: .75rem;}
.nat-copy h3{font-size: 1.1rem;font-weight: 700;margin: 1.4rem 0 .4rem;}
.nat-copy code{background: var(--nat-paper);border: 1px solid var(--nat-line);border-radius: 4px;padding: .05rem .35rem;font-size: .88em;color: var(--nat-accent-dark);}
.nat-copy a{color: var(--nat-accent);}
.nat-walk{list-style: none;padding: 0;}
.nat-walk li{padding: .6rem 0 .6rem 1rem;border-left: 3px solid var(--nat-accent);margin-bottom: .6rem;background: linear-gradient(90deg, var(--nat-accent-soft), transparent 70%);}
.nat-split{display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);gap: 1.5rem;}
.nat-defs{margin: 0;}
.nat-defs dt{font-weight: 800;color: var(--nat-teal);}
.nat-defs dd{margin: 0 0 1rem;}
.nat-table{width: 100%;border-collapse: collapse;font-size: .92rem;margin: .5rem 0 1rem;}
.nat-table th,.nat-table td{text-align: left;padding: .55rem .5rem;border-bottom: 1px solid var(--nat-line);vertical-align: middle;}
.nat-table thead th{font-size: .72rem;text-transform: uppercase;letter-spacing: .06em;color: var(--nat-ink-soft);border-bottom: 2px solid var(--nat-ink);}
.nat-table td:nth-child(2){white-space: nowrap;font-variant-numeric: tabular-nums;width: 9rem;}
.nat-bar{display: inline-block;height: 8px;width: calc(var(--w) * .6);min-width: 3px;background: var(--nat-teal);border-radius: 4px;margin-right: .45rem;vertical-align: middle;}
.nat-limits ul{padding-left: 1.1rem;}
.nat-limits li{margin-bottom: .55rem;}
@keyframes natIn{from{opacity: 0;transform: translateY(4px);}to{opacity: 1;transform: none;}}
@media (max-width: 900px){.nat-tool{grid-template-columns: 1fr;}.nat-split{grid-template-columns: 1fr;gap: .5rem;}}
@media (max-width: 520px){.nat-card{min-height: 240px;}.nat-flag{font-size: 3rem;}.nat-table td:nth-child(3){display: none;}.nat-table th:nth-child(3){display: none;}}
@media (prefers-reduced-motion: reduce){.nat-card.is-new{animation: none;}}