@font-face{font-family:Tenor;src:url(assets/tenor.woff2)}@font-face{font-family:Constantia;src:url(assets/constantia.ttf)}:root{--ink:#382d20;--paper:#eee1be;--gold:#d8b973;--green:#193f39}*{box-sizing:border-box}body{margin:0;background:#172e30;color:var(--ink);font-family:Constantia,Georgia,serif;font-size:18px;line-height:1.55}body:before{content:'';position:fixed;inset:0;background:linear-gradient(#102b35aa,#132d32d9),url(assets/map.png) center/cover;z-index:-1}h1,h2,h3,.brand,nav{font-family:Tenor,Georgia,serif;font-weight:400}h1{font-size:clamp(38px,5vw,76px);line-height:1.1;margin:14px 0 24px}h2{font-size:32px;line-height:1.2}h3{font-size:23px;line-height:1.25}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}button,.button{cursor:pointer;border:1px solid #8a754e;background:#254a40;color:#fff4d6;padding:11px 22px;border-radius:3px;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#3b6152}button.secondary,.secondary{background:transparent;color:var(--ink)}button[aria-pressed=true],.tabs a.active{background:#d9bb7f;color:#30291c}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:3px solid #e4ab39;outline-offset:4px}header{min-height:94px;display:flex;align-items:center;justify-content:space-between;padding:16px 4%;gap:24px;color:#f6e8c5;border-bottom:1px solid #bca47055;background:#132e32ec}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;letter-spacing:4px;font-size:25px}.brand>span{font-size:43px;color:var(--gold)}.brand small{display:block;font-size:9px;letter-spacing:2px}nav{display:flex;gap:28px;font-size:15px}nav a{text-decoration:none;padding:9px 0;border-bottom:1px solid transparent}nav a.active{color:var(--gold);border-color:var(--gold)}#readable{padding:7px 11px;background:none;border-color:#bca470;color:#f6e8c5}.skip{position:absolute;left:10px;top:-100px}.skip:focus{top:10px;background:white;z-index:100}main{min-height:80vh}.wrap{width:min(1260px,92%);margin:40px auto}.paper{background:linear-gradient(110deg,#f3e7c9,#ded0a8);padding:36px;border:1px solid #b39b6b;box-shadow:0 12px 40px #0003;border-radius:3px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;color:#7c6033}.light{color:#f6e8c5}.light .eyebrow{color:#d5b77a}.hero{text-align:center;padding:40px 20px 0;position:relative}.hero h1{font-size:clamp(44px,6vw,84px);margin:10px 0}.hero p{max-width:760px;margin:16px auto}.hero .eyebrow{letter-spacing:5px}.hero .actions{justify-content:center}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.hero .button{background:#e5cea0;color:#342b1e}.hero .secondary{background:#163c38;color:#f2dfb8}.atlas{position:relative;aspect-ratio:1672/941;background:url(assets/map.png) center/100% 100%;border:1px solid #c5ad76;overflow:hidden;box-shadow:0 12px 45px #0005}.home-atlas{width:min(1030px,94%);margin:25px auto 0}.map-label{position:absolute;top:4%;left:4%;font-size:12px;letter-spacing:2px;background:#f4e6cbe8;padding:5px 12px}.map-note{position:absolute;bottom:2%;right:2%;font-size:11px;background:#f4e6cbe8;padding:4px 8px;max-width:70%;text-align:right}.pin{position:absolute;transform:translate(-50%,-50%);padding:0;border:2px solid #e8d4a9;width:38px;height:38px;border-radius:50%;background:#315046;box-shadow:0 0 0 4px #3a38295e;z-index:2;font-weight:bold}.pin:hover,.pin.selected{background:#a0442c;scale:1.12}.map-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.map-lines polyline{fill:none;stroke:#923e28;stroke-width:.65;stroke-dasharray:1.2 .7;filter:drop-shadow(0 1px 1px #eedcaf)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid.four{grid-template-columns:repeat(4,1fr)}.card{background:#f1e3bf;padding:24px;border:1px solid #b99e6c}.card p{font-size:16px}.card .number{font-size:35px;color:#88623b}.card img{width:100%;height:155px;object-fit:cover}.intro{margin-top:0;border-top:4px solid #ab8650}.intro h2{margin-top:0}.muted{font-size:14px;color:#77654c}.route-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:24px;align-items:start}.route-layout .atlas{position:sticky;top:20px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.tabs button,.tabs a{padding:8px 16px}.tabs a{background:#ead9b3;text-decoration:none;border:1px solid #a88b58;border-radius:2px}.stop-photo{width:100%;height:220px;object-fit:cover}.stop-card h2{margin:12px 0}.meta{font-size:14px;display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #b8a17a;border-bottom:1px solid #b8a17a;padding:10px 0;margin:18px 0}.source-link{font-size:14px;display:inline-block;margin:6px 16px 6px 0}.chapter-nav{justify-content:center}.book{background:url(assets/book.png) center/100% 100%;padding:9% 12% 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%;min-height:780px;filter:drop-shadow(0 12px 15px #0006)}.book p,.book li{font-size:17px}.book h2{font-size:29px;margin:8px 0 18px}.book figure{margin:0 0 15px}.book img{width:100%;max-height:240px;object-fit:cover}.book figcaption{font-size:11px;line-height:1.4}.book .eyebrow{font-size:10px}.book ul{padding-left:20px}.task{padding:16px;border:1px solid #ab8c52;background:#c8ad7140}.book-controls{display:flex;justify-content:space-between;align-items:center;color:#f1dfb9;gap:16px}.book-controls a{color:#f1dfb9}.journal-grid{display:grid;grid-template-columns:240px 1fr;gap:28px}.journal-nav{display:flex;flex-direction:column;gap:10px}.journal-nav button{text-align:left}label{display:block;margin:16px 0 6px}textarea,input,select{width:100%;padding:11px;border:1px solid #a18960;background:#fff9e8;color:#362e22;border-radius:2px}textarea{min-height:120px;resize:vertical}input[type=radio]{width:auto;margin-right:10px}.quiz{border-top:1px solid #b49a6a;margin-top:32px;padding-top:22px}.quiz fieldset{margin:20px 0;border:1px solid #baa379;padding:16px}.quiz legend{font-size:17px}.quiz label{font-size:16px}.quiz-result{padding:16px;background:#c7d0aa}.source{padding:22px 0;border-bottom:1px solid #b7a276}.source h3{margin:0}details{margin:20px 0;border:1px solid #b7a276;padding:18px}summary{cursor:pointer;font-size:21px}footer{padding:26px 4%;display:flex;justify-content:space-between;gap:20px;color:#cbbd98;border-top:1px solid #bdac7a55;font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#183e34;color:white;padding:14px 24px;border:1px solid #d5b46d;display:none;z-index:99}dialog{width:min(660px,92%);background:#ecdebb;padding:32px;border:1px solid #a58a58}dialog::backdrop{background:#071e23b8}#close-modal{float:right}.readable{font-family:Arial,sans-serif;font-size:20px}.readable .book p,.readable .book li{font-size:19px}.print-area{display:none}.food-image{max-height:290px!important;object-position:center}ol li,ul li{margin:8px 0}.route-list{display:flex;gap:12px;margin:22px 0;flex-wrap:wrap}.route-list a{background:#f0dfb9;padding:10px 15px;text-decoration:none;font-size:15px}.journal-status{min-height:24px;font-size:13px;color:#415e3b}.lead{font-size:21px}.back{color:#e8d6ad}.empty{padding:18px;background:#d9caa4}
@media(min-width:1500px){.book{min-height:870px}}@media(max-width:950px){header{flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;gap:25px}.route-layout{grid-template-columns:1fr}.route-layout .atlas{position:relative;top:0}.grid.four{grid-template-columns:repeat(2,1fr)}.book{background:#eddfba;padding:32px;gap:40px;min-height:0;border:8px solid #bda276}.journal-grid{grid-template-columns:1fr}.journal-nav{flex-direction:row;flex-wrap:wrap}}@media(max-width:620px){body{font-size:17px}header{padding:12px 5%;gap:10px}.brand{font-size:21px}nav{gap:16px;justify-content:flex-start;overflow:auto;font-size:13px;white-space:nowrap}.wrap{margin:24px auto}.paper{padding:23px}.hero{padding-top:25px}.hero p{font-size:16px}.hero h1{font-size:41px}.grid,.grid.four,.book{grid-template-columns:1fr}.map-label{font-size:8px;max-width:65%;padding:3px 5px}.map-note{font-size:8px}.pin{width:29px;height:29px;font-size:13px}.book{padding:24px;gap:25px}.book p,.book li{font-size:17px}.book-controls{font-size:13px}.book-controls .button{padding:9px 12px}footer{flex-direction:column;gap:8px}.tabs button{font-size:14px;padding:8px 10px}.stop-photo{height:200px}}@media print{body{background:white;color:black;font:12pt Georgia}body:before,header,footer,main,#toast,dialog{display:none!important}.print-area{display:block!important}.print-area section{break-inside:avoid;border-bottom:1px solid #aaa;padding:15px 0}.print-area h1{font-size:26pt}.print-area h2{font-size:18pt}.print-area a{overflow-wrap:anywhere}}
.atlas-controls{display:grid;grid-template-columns:1.5fr 1fr auto;gap:22px;align-items:end}.atlas-controls label{margin-top:0}.city-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}.city-card{display:flex;gap:18px;background:linear-gradient(120deg,#ead7ad,#d4bd8d);padding:23px;text-decoration:none;border:1px solid #b59a65;transition:transform .15s}.city-card:hover{transform:translateY(-3px);background:#f1e1bc}.city-card[hidden]{display:none}.city-serial{color:#8f7048;font-size:18px;padding-top:4px}.city-card h3{margin:0 0 8px}.city-card p{font-size:14px;margin:0 0 8px}.city-card span:last-child{font-size:12px}.atlas-results-heading{display:flex;justify-content:space-between;align-items:center}.atlas-places{margin-top:26px}.place-card{height:100%;display:flex;flex-direction:column}.place-card h3{margin:14px 0 4px}.place-card .muted{margin:4px 0}.place-card>p{margin-bottom:18px}.place-top{display:flex;align-items:center;gap:14px}.place-num{display:inline-flex;border:1px solid #997344;border-radius:50%;width:39px;height:39px;align-items:center;justify-content:center;flex:none;color:#754c28}.place-links{margin-top:auto;display:flex;gap:14px;font-size:13px;flex-wrap:wrap}.place-card .actions{margin:18px 0 0;align-items:center;font-size:14px}.place-card .actions button{font-size:14px;padding:9px 12px}.city-map-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.city-map{width:100%;height:370px;border:1px solid #aa8e5e;background:#e5dcc3}.city-map-layout h2{margin-top:0}.city-map-layout ol{padding-left:23px}.city-map-layout p{font-size:16px}.atlas-places>div{scroll-margin-top:20px}@media(max-width:1000px){.city-grid,.atlas-places{grid-template-columns:repeat(2,1fr)}.atlas-controls{grid-template-columns:1fr 1fr}.atlas-controls>.button{grid-column:1/-1;text-align:center}.city-map-layout{grid-template-columns:1fr}}@media(max-width:620px){.city-grid,.atlas-places,.atlas-controls{grid-template-columns:1fr}.city-map{height:300px}.city-card{padding:18px}.atlas-results-heading{align-items:start;flex-direction:column}.atlas-results-heading h2{margin-bottom:8px}nav{gap:14px}}
@media(min-width:951px){.book{padding-top:12%;padding-bottom:11%}}
/* Оформление исходного атласа: единая карта, золотой заголовок, пергаментные вкладки. */
body{background:#705036}body:before{background:linear-gradient(#3c291a55,#32251b77),url(assets/map.png) center/cover}header{background:#68482fd9;border-color:#a98954;color:#593b26;padding:12px 3%;min-height:65px}.brand{display:none}nav{flex:1;justify-content:center;gap:10px}nav a{background:#f3dfafea;border:1px solid #ad8c59;border-radius:3px;padding:8px 17px;box-shadow:0 2px 5px #321b2440;font-size:14px}nav a.active,nav a:hover{background:#785033;color:#fff0c7}#readable{color:#64452d;background:#f2ddad;border:1px solid #aa8956}.paper,.card{background:linear-gradient(105deg,#f5e5c1,#e9d4a7);color:#513820}.button,button{background:#785334;color:#ffefc6;border-color:#aa854e}button:hover,.button:hover{background:#91623b}.paper h1{font-family:Constantia,Georgia,serif}.map-home:before{display:none}.map-home header{position:relative;background:transparent;z-index:3}.map-home main{min-height:0}.original-scene{position:relative;width:100%;aspect-ratio:1672/941;background:url(assets/map.png) center/100% 100%;overflow:visible}.scene-title{position:absolute;left:50%;top:2%;width:44%;height:auto;transform:translateX(-50%);pointer-events:none}.scene-hint{position:absolute;left:50%;top:23%;transform:translateX(-50%);color:#fff0c6;background:#533923be;border:1px solid #b99a66;padding:4px 12px;font-size:clamp(10px,1.1vw,16px);white-space:nowrap}.city-dot{position:absolute;transform:translate(-50%,-50%);z-index:4;text-decoration:none;color:#57381f;line-height:1}.city-dot>span{display:flex;align-items:center;justify-content:center;width:clamp(20px,2vw,30px);height:clamp(20px,2vw,30px);background:radial-gradient(#fff4d2,#d2ad68);border:2px solid #8b6237;border-radius:50%;box-shadow:0 1px 5px #172922b0;font:bold clamp(10px,1vw,14px) Georgia}.city-dot b{display:none;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#f5e3b9;border:1px solid #916334;border-radius:3px;padding:6px 10px;font:16px Constantia;color:#51351f;box-shadow:0 2px 7px #0004}.city-dot:hover,.city-dot:focus-visible{z-index:8}.city-dot:hover b,.city-dot:focus-visible b{display:block}.city-dot:hover>span{background:#fff2bc;box-shadow:0 0 0 4px #e3b65088}.original-tiles{position:absolute;left:23%;bottom:5%;width:54%;aspect-ratio:1041/209;background:url(assets/main-buttons.png) center/100% 100%;display:grid;grid-template-columns:repeat(3,1fr)}.original-tiles a{display:flex;align-items:center;justify-content:flex-end;padding:10% 7% 4% 37%;text-decoration:none;color:#573b26;font:clamp(10px,1.4vw,23px)/1.15 Constantia;text-align:center}.original-tiles a:hover{filter:brightness(1.15);text-decoration:underline}.scene-note{position:absolute;bottom:1%;left:2%;font:clamp(8px,.75vw,12px)/1.3 Constantia;color:#fff0d1;max-width:180px;text-shadow:0 1px 3px #13241e}.scene-directory{padding:18px 4% 30px;color:#f4e2be;background:#705036}.scene-directory p{font-size:15px}.scene-directory>div{display:flex;gap:8px;flex-wrap:wrap}.scene-directory a{font-size:13px;padding:5px 10px;color:#604024;background:#efdcaf;border:1px solid #ba985d;text-decoration:none}.map-home footer{background:#65462e}.map-home .original-scene{box-shadow:0 0 35px #36261855}@media(min-width:1000px){.map-home header{position:absolute;top:1%;left:3%;right:3%}.map-home nav a{font-size:clamp(12px,1vw,18px)}.scene-title{top:7%;width:39%}.scene-hint{top:25%}}@media(max-width:650px){header{padding:10px 3%}nav{gap:6px;flex-wrap:wrap;overflow:visible;white-space:normal}nav a{font-size:12px;padding:5px 9px}#readable{padding:4px 7px}.original-scene{min-width:820px}.map-home main{overflow-x:auto}.scene-title{width:38%;top:1%}.scene-hint{top:22%;font-size:12px}.city-dot>span{width:22px;height:22px;font-size:11px}.original-tiles a{font-size:15px}.scene-directory{position:sticky;left:0;width:100vw}.scene-directory:before{content:'Карту можно прокручивать вправо и влево';font-size:13px;color:#f2d597}.scene-note{font-size:10px}}
@media(min-width:1000px){.scene-title{left:56%;top:8%;width:30%}.scene-hint{left:56%;top:23%}}

.atlas-map-wrap{overflow-x:auto;margin:0 0 30px;border:1px solid #a98954;border-radius:3px;box-shadow:0 12px 40px #0004}
.atlas-scene{min-width:820px}
.place-dot>span{width:20px;height:20px;font-size:10px}
.place-dot b small{display:block;margin-top:3px;font:13px Constantia;color:#7a5a37}

.atlas-stage{position:relative}
.atlas-scroll{overflow-x:auto}
.atlas-scene{min-width:820px;box-shadow:none}
button.place-dot{background:none;border:0;padding:0;font:inherit;cursor:pointer}
.place-dot{transition:opacity .2s}
.place-dot.dim{opacity:.22;pointer-events:none}
.place-dot.on{z-index:9}
.place-dot.on>span{background:#fff2bc;box-shadow:0 0 0 5px #e3b650aa;transform:scale(1.25)}
.atlas-hud{position:absolute;top:86px;left:3%;z-index:12;display:flex;flex-direction:column;gap:10px;width:min(340px,calc(100% - 6%))}
.hud-search{position:relative}
.hud-search input{background:#f7ebcbf2;border:1px solid #ad8c59;box-shadow:0 3px 12px #321b2455;font:17px Constantia;padding:11px 14px}
.hud-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#f7ebcbf8;border:1px solid #ad8c59;border-radius:3px;box-shadow:0 8px 24px #0005;max-height:320px;overflow:auto}
.hud-results button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #c9b385;padding:9px 14px;font:16px Constantia;color:#51351f;cursor:pointer}
.hud-results button:hover,.hud-results button:focus-visible{background:#ead6a4}
.hud-results small{display:block;font-size:13px;color:#7a5a37}
.hud-more{display:block;padding:9px 14px;font-size:14px;color:#7a5a37}
.hud-chips{display:flex;flex-wrap:wrap;gap:6px}
.hud-chips button{background:#f3dfafea;border:1px solid #ad8c59;border-radius:3px;padding:5px 11px;font:14px Constantia;color:#51351f;cursor:pointer;box-shadow:0 2px 5px #321b2440}
.hud-chips button[aria-pressed=true]{background:#254a40;color:#fff4d6;border-color:#254a40}
.hud-trip{position:absolute;top:86px;right:3%;z-index:12;box-shadow:0 3px 12px #321b2466}
.atlas-panel{position:absolute;top:86px;right:3%;z-index:14;width:min(380px,calc(100% - 6%));max-height:calc(100% - 110px);overflow:auto;padding:24px 26px;background:linear-gradient(105deg,#f7e8c5,#ead5a8);color:#513820;border:1px solid #a98954;border-radius:3px;box-shadow:0 14px 44px #0007}
.atlas-panel.left{right:auto;left:3%;top:200px;max-height:calc(100% - 224px)}
.atlas-panel[hidden]{display:none}
.atlas-panel h2{margin:4px 0 4px;font-size:26px;line-height:1.2}
.atlas-panel .actions{margin-top:14px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.panel-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:0;background:none;font-size:26px;line-height:1;color:#51351f;cursor:pointer}
.panel-sibs{margin-top:16px;padding-top:12px;border-top:1px solid #c9b385;display:flex;flex-wrap:wrap;gap:6px}
.panel-sibs span{width:100%;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#7a5a37}
.panel-sibs button{background:#f3dfaf;border:1px solid #ad8c59;border-radius:3px;padding:4px 10px;font:14px Constantia;color:#51351f;cursor:pointer;text-align:left}
@media(max-width:760px){.atlas-scene{min-width:1100px}.atlas-hud{top:120px}.hud-trip{display:none}.atlas-panel,.atlas-panel.left{position:fixed;top:auto;left:0;right:0;bottom:0;width:auto;max-height:55vh;border-radius:12px 12px 0 0}}
.place-dot>span{width:13px;height:13px;font-size:0}
.place-dot.in>span{width:24px;height:24px;font-size:12px;background:radial-gradient(#3f7a66,#1d4a3d);color:#fff4d6;border-color:#f0d58a}
.place-dot.on>span{transform:scale(1.25);box-shadow:0 0 0 5px #e3b650aa}
.route-line{z-index:3}
.hud-trip{cursor:pointer;font:17px Constantia}
.linklike{background:none;border:0;padding:0;margin-top:12px;color:#254a40;text-decoration:underline;font:16px Constantia;cursor:pointer}
.route-items{list-style:none;margin:14px 0;padding:0;counter-reset:r}
.route-items li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #c9b385;counter-increment:r}
.route-items li:before{content:counter(r);flex:none;width:26px;height:26px;border-radius:50%;background:#1d4a3d;color:#fff4d6;font:bold 13px/26px Georgia;text-align:center}
.ri-name{flex:1;min-width:0;text-align:left;background:none;border:0;padding:0;font:16px Constantia;color:#51351f;cursor:pointer}
.ri-name small{display:block;font-size:13px;color:#7a5a37}
.ri-btns{display:flex;gap:4px}
.ri-btns button{width:30px;height:30px;border:1px solid #ad8c59;background:#f3dfaf;border-radius:3px;color:#51351f;cursor:pointer;font-size:16px}
.ri-btns button:disabled{opacity:.35;cursor:default}
@media(max-width:760px){.hud-trip{display:inline-block;top:auto;bottom:12px;right:12px}}
header{justify-content:center}
nav{flex:1;display:flex;justify-content:center;align-items:stretch;gap:10px;flex-wrap:nowrap;overflow:visible;white-space:nowrap}
nav a{flex:0 0 auto;min-width:148px;height:42px;display:flex;align-items:center;justify-content:center;padding:0 20px;text-align:center;font-size:15px;letter-spacing:.04em;background:linear-gradient(#f8e9c3,#ecd49d);border:1px solid #a98954;border-radius:4px;box-shadow:inset 0 1px 0 #fff6;color:#54381f;transition:background .15s,color .15s,transform .15s}
nav a:hover{background:linear-gradient(#fff3cd,#f1dca6);color:#54381f;transform:translateY(-1px)}
nav a.active{background:linear-gradient(#8a5d3b,#6b4528);color:#fff0c7;border-color:#4d321c}
.map-home nav a{font-size:15px}
@media(max-width:760px){nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%}nav a{min-width:0;height:36px;padding:0 6px;font-size:13px}.atlas-hud{top:140px}}
.place-dot>span{width:26px;height:26px;font-size:12px}
.place-dot.in>span{width:26px;height:26px;font-size:12px}
.place-dot.on>span{transform:scale(1.2)}
.city-places li{padding:6px 0}
.mini-pick{flex:none;width:32px;height:32px;border:1px solid #ad8c59;background:#f3dfaf;border-radius:50%;color:#51351f;font-size:18px;line-height:1;cursor:pointer}
.mini-pick.on{background:#1d4a3d;border-color:#1d4a3d;color:#fff4d6}
.city-places li:before{display:none}
.mini-pick{padding:0;min-width:0;display:flex;align-items:center;justify-content:center}
.atlas-panel .linklike{display:block}
.city-dot b small{display:block;margin-top:3px;font-size:13px;color:#7a5a37}
