/* Imperial baroque: ivory, carved gold, emerald silk. Rules and saved games are unchanged. */
:root,body[data-game=imperatritsa] {--accent:#28523e;--paper:#f5efdf;--ink:#263d30;--plum:#173e32;--muted:#746d54;--gold:#b39151;--line:#cbb98b;--sage:#4b6745;--serif:Georgia,'Times New Roman',serif}
body {background:radial-gradient(ellipse at 50% 0,#fff9e9,transparent 65%),repeating-linear-gradient(45deg,#b6995410 0 1px,transparent 1px 24px),#f5efdf;color:#263d30;font-family:'Segoe UI',Arial,sans-serif}
button,input,textarea,select {font-family:inherit}
h1,h2,h3 {font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#234c38;letter-spacing:-.025em}
button {border-color:#baa477;border-radius:3px;background:#fff9e9;box-shadow:inset 0 1px #fff9}
button:hover:not(:disabled) {border-color:#9d7837;box-shadow:0 3px 12px #5f59281a}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {outline:3px solid #bc7d26;outline-offset:4px}
.primary {background:linear-gradient(120deg,#234f3b,#173e32);color:#fff3d1;border:1px solid #a48b4b;border-radius:3px;box-shadow:inset 0 0 0 3px #f3d79c12,0 6px 15px #294d3318;font-weight:500}
.primary:hover:not(:disabled) {background:#34674d;color:#fff3d1}
.eyebrow {color:#86703f;letter-spacing:.16em;font-size:10px;font-weight:500;line-height:1.7}
.muted,.quiet {color:#746d54}
input:not([type=radio]),textarea,select {background:#fffdf6;border:1px solid #b6ad8b;border-radius:3px;color:#284130;padding:12px;line-height:1.6}
textarea::placeholder,input::placeholder {color:#85806c}
#game {max-width:1500px;padding:0 4vw}
#game>header {position:relative;margin:0 -4vw;padding:22px 4vw;background:linear-gradient(120deg,#244936,#103b2f);color:#faedca;border-bottom:3px double #b89856;min-height:92px}
#game>header .lgr-brand {color:#f9edc9}
#game>header nav button {background:transparent;border-color:#c4a36288;color:#f6e8c2;border-radius:3px;padding:10px 17px;font-size:12px}
#game>header .lgr-sail {color:#dbc18b}
#game>.save-line {font-size:11px;color:#6f7559;padding:12px 0}
.welcome {position:relative;grid-template-columns:1.15fr .85fr;gap:65px;padding:25px 0 65px;align-items:center}
.welcome:after {content:'';position:absolute;left:0;right:0;bottom:10px;height:40px;background:url('./ornament.svg') center/250px 40px no-repeat;opacity:.85;pointer-events:none}
.welcome-art[data-lgr-scene=imperatritsa] {max-width:none;max-height:none;aspect-ratio:1.5/1;border-radius:180px 180px 4px 4px;border:7px solid #eee2c5;outline:1px solid #b99c5b;box-shadow:0 0 0 10px #fff7e43d,0 18px 30px #46441f20;overflow:hidden;margin:10px 0 32px}
.welcome-art[data-lgr-scene=imperatritsa]>img {object-fit:cover}
.welcome h1 {font-size:clamp(38px,4.1vw,61px);line-height:1.05;margin:15px 0 22px}
.welcome .lead {font:italic 21px/1.65 Georgia,serif;color:#385941;max-width:600px}
.welcome>div>p:not(.eyebrow):not(.lead) {font-size:14px;line-height:1.85;color:#706b54}
.welcome form {position:relative;background:linear-gradient(145deg,#28503a,#13382c);color:#f4e8c6;border:1px solid #ad8a46;border-radius:100px 100px 4px 4px;padding:68px 36px 30px;box-shadow:inset 0 0 0 5px #1c3b2f,inset 0 0 0 6px #b493515c,0 16px 30px #2941301c;align-self:center}
.welcome form:before {content:'';position:absolute;top:20px;left:15%;width:70%;height:34px;background:url('./ornament.svg') center/contain no-repeat}
.welcome form h2 {color:#f8ebc7;font-size:33px;line-height:1.15;margin-bottom:28px}
.welcome form label {font-size:13px;line-height:1.65;margin:22px 0;color:#f0e4c2}
.welcome form .muted {color:#c9cfb0;font-size:12px;line-height:1.8;margin:24px 0}
.welcome form textarea {background:#fffaec;color:#264331;border-color:#bea977}
.welcome form .primary {background:linear-gradient(120deg,#dcc18b,#b79550);color:#233d2d;border-color:#e5d0a4;width:100%;min-height:52px;font-size:15px}
.welcome form [role=alert] {color:#ffd29b}
.game-heading {margin:24px 0 20px;gap:25px}
.game-heading h1 {font-size:39px;color:#214b35;margin-bottom:7px}
.players button {background:#fff8e7;border:1px solid #bfa568;border-radius:3px;font-size:13px}
.players [aria-pressed=true] {background:#28543e;color:#f9edca;box-shadow:inset 0 0 0 3px #f3d39515}
.resource-bar {border:1px solid #b79b62;border-radius:3px;background:linear-gradient(90deg,#fff8e7,#f0e7cc,#fff8e7);box-shadow:0 3px 0 #d0c09a50;margin:18px 0 28px}
.resource-bar>div {padding:14px 24px;border-color:#bcac7a66}
.resource-bar span {font-size:12px;color:#766541;letter-spacing:.06em}
.resource-bar strong {font:400 34px/1.2 Georgia,serif;color:#2f5438;margin-top:5px}
.resource-bar small {font:12px 'Segoe UI',sans-serif;color:#887856}
.play-layout {gap:32px}
.board {border:6px solid #d6c08b;outline:1px solid #ae8c43;border-radius:3px;background:#fff8e7;box-shadow:inset 0 0 0 2px #fbf0cf,0 12px 25px #594e2718;top:16px;overflow:visible}
.board-title {background:linear-gradient(110deg,#31533a,#123c2e);color:#f7e9be;border-bottom:1px solid #ba9d57;padding:16px 20px;font-size:13px;letter-spacing:.04em}
.board-art {background:#e4dcc2;overflow:hidden}
.board-art>.board-scene {opacity:.83;object-fit:cover;object-position:center}
.board-art svg>polyline {stroke:#d2b167;stroke-width:5;filter:drop-shadow(0 1px 2px #163625)}
.board-art svg>g>circle {stroke:#a27b31;stroke-width:3;filter:drop-shadow(0 2px 3px #132e3155)}
.board-art svg text {font-family:Georgia,serif}
.board-art svg>g>text:last-child {fill:#183d2a;paint-order:stroke;stroke:#fffae9;stroke-width:3px;font-size:15px}
.board-art svg>text {font-size:20px;letter-spacing:.03em}
.board .legend {padding:13px 12px;background:#f9f0d9;color:#685b3b;border-top:1px solid #c6ad70;font-size:11px}
.board details {font-size:13px;padding:12px 18px;background:#fff9ea}
.board-zoom {border-color:#ba9a56;color:#30523c;background:#fff8e5;font-size:11px}
.turn-panel {position:relative;background:linear-gradient(100deg,#eee5d0,#fffbef 6%,#fff8e8);border:1px solid #bfa264;border-radius:3px;padding:39px 30px 30px;box-shadow:inset 0 0 0 5px #f8f0df,inset 0 0 0 6px #b99c5344,6px 7px 0 -2px #e1d5b5,6px 7px 0 -1px #baa46b}
.turn-panel:before {content:'';display:block;width:180px;height:27px;background:url('./ornament.svg') center/contain no-repeat;margin:0 auto 25px}
.turn-panel h2 {font-size:35px;line-height:1.12;color:#28533c}
.turn-panel>p {font-size:15px;line-height:1.8}
.turn-panel .eyebrow {font-size:10px;line-height:1.6;color:#8e7133}
.die-button {background:linear-gradient(115deg,#315c40,#173f2f);gap:26px;min-height:115px;border-color:#b6964f;font-size:16px}
.route-choice {border:1px solid #c4b283;background:#fdf7e8;border-radius:3px;padding:15px 18px}
.route-choice>b {font:400 21px Georgia,serif;color:#31523a}
.route-choice span {font-size:13px;line-height:1.7;color:#726447}
.route-choice:hover {background:#eee9d1;border-color:#a3823f}
.entry {border-color:#c6b489;border-radius:3px;background:#fff9e9;padding:15px 17px}
.entry summary {color:#31553d}
.entry summary span {font-size:12px;color:#807252}
blockquote {border-color:#b68f42;color:#39543c;background:#e9e5ce66;padding:12px 15px;font:italic 18px/1.7 Georgia,serif}
.insight {background:#e3e9d3}
dialog {background:linear-gradient(120deg,#fffbee,#f3e9d0);border:5px double #b59959;border-radius:4px;color:#2b4432;box-shadow:0 25px 100px #0a291c77;padding:34px}
dialog::backdrop {background:#0d3025ba;backdrop-filter:blur(6px)}
dialog h2 {font-size:36px;line-height:1.13;color:#2c533b}
dialog .eyebrow {font-size:10px;color:#896c34}
dialog .close {background:#fbf1d8;color:#2c4d34;border:1px solid #bba067;border-radius:50%;width:40px;height:40px;min-height:40px;line-height:1}
.prompt {color:#354f39;font-size:17px;line-height:1.8}
.choice {border-color:#c7b480;background:#fff9e9;border-radius:3px;padding:17px;font-size:13px;line-height:1.75}
.choice.selected {background:#e7ecd7;border:2px solid #6b8150;padding:16px}
.choice b {color:#35533b;font-weight:600}
.choice small,.choice span {font-size:12px;color:#74674b}
.resource-question {border-color:#6a8151}
.resource-question.loss {border-color:#b68b3c}
.mak-image .lgr-card-frame {border-color:#b09250;box-shadow:0 12px 25px #61512220}
.lgr-card-seal {color:#b59148}
.lgr-signed,.lgr-trace {color:#66814c}
#game>footer {border-top:3px double #b69b5d;padding:25px 0;color:#746b51;line-height:1.8;font-size:11px}
#game>footer button,.import-button {border:1px solid #b9a16b;border-radius:3px;background:#fff8e6;color:#4b6343;font-size:11px}
.import-button {padding:8px 12px}
.board-scroll {padding:10px;background:#e5dbc0}
.large-board {border:5px double #ae8d4b}

/* The older saved-game and group screens use the same palace materials. */
.header {background:#214a36;color:#f5e7c2;border-bottom:3px double #bc9b53}
.header .brand,.header .edition,.header .eyebrow,.header .brand small {color:#f4e7c4}
.header .brand img {filter:sepia(1) brightness(1.5)}
.header button,.header .current {color:#eee1b8;border-color:#c5a563}
.heading h1 em {color:#907037}
.estate {border:6px solid #d3be8c;outline:1px solid #a98946;box-shadow:0 14px 30px #5a4b251a}
.board-top {background:#1e4835;color:#f3e5bf;border-bottom:1px solid #b99950}
.board-top button {color:#f1e5c4;background:transparent}
.board-wrap {background:#eee4c9}
#shade stop {stop-color:#a98946}
.audience #screen-status {color:#dacba6}
.board-bottom {background:#f5ebd2;color:#74643e}
.desk .resources {border-color:#ba9d5d;background:linear-gradient(110deg,#f7efd9,#e9dfbf)}
.desk .resources>div {border-color:#c8b88b}
.panel-card {border:1px solid #b89c61;background:#fffaeb;box-shadow:inset 0 0 0 4px #f4ecd7,inset 0 0 0 5px #d0bc8450}
.panel-card h2 {color:#2d533b}
.panel-card:before {border-color:#b38c42}
.audience .play-layout {padding-top:30px}

/* Public landing and privacy page. */
.imperial-landing header,.imperial-landing main,.imperial-landing footer {max-width:1440px;padding-left:5vw;padding-right:5vw}
.imperial-landing header {max-width:none;padding-top:25px;padding-bottom:25px;background:#214936;color:#f5e6c2;border-bottom:3px double #b6944e;align-items:center}
.imperial-landing header .lgr-brand {color:#f5e6c2}
.imperial-landing header>a:last-child {font-size:12px;letter-spacing:.04em;border-bottom:1px solid #d5ba78;padding:8px 0}
.imperial-landing .hero {position:relative;grid-template-columns:.85fr 1.15fr;gap:55px;padding:75px 0 85px;min-height:0;background:none;color:#294731;max-height:none;height:auto;overflow:visible}
.imperial-landing h1 {font-size:clamp(48px,5.1vw,76px);letter-spacing:-.035em;line-height:1.05;margin:24px 0 30px;color:#214b34}
.imperial-landing h1 em {color:#9e7737;display:block;font-style:italic;font-weight:400}
.imperial-landing .hero>div>p:not(.eyebrow):not(.quiet) {font:italic 22px/1.65 Georgia,serif;max-width:440px;color:#456044}
.imperial-landing .hero .landing-art {border-radius:160px 160px 3px 3px;overflow:hidden;border:8px solid #e9dab7;outline:1px solid #b2924e;box-shadow:0 0 0 12px #fff8e53d,0 25px 45px #4c442329}
.imperial-landing .hero img {border:0;aspect-ratio:1.15/1;object-fit:cover;object-position:center;width:100%;height:auto}
.imperial-landing .button {background:linear-gradient(120deg,#2e593e,#153f2e);color:#fff2ce;border:1px solid #ac8d47;border-radius:3px;padding:16px 29px;font:18px Georgia,serif;box-shadow:inset 0 0 0 3px #f4d98d12,0 7px 19px #29453115;margin:20px 0;text-decoration:none}
.imperial-landing .button:hover {background:#396947}
.imperial-landing .quiet {font-size:12px;line-height:1.9;color:#776b50}
.imperial-landing .features {border-top:3px double #bca46c;gap:25px;padding:60px 0}
.imperial-landing .features article {position:relative;background:linear-gradient(145deg,#fff9e8,#eee3c8);border:1px solid #c3ad77;padding:35px 27px 28px;border-radius:75px 75px 3px 3px;text-align:center;box-shadow:0 10px 25px #554b2810}
.imperial-landing .features article:before {content:'';display:block;height:27px;background:url('./ornament.svg') center/160px 27px no-repeat;margin:0 0 22px}
.imperial-landing .features .eyebrow {font-size:9px;letter-spacing:.1em;line-height:1.9}
.imperial-landing .features h3 {font:28px/1.17 Georgia,serif;margin:18px 0;color:#33583c}
.imperial-landing .features p:not(.eyebrow) {font-size:14px;line-height:1.85;color:#6d664e}
.imperial-landing .host {background:linear-gradient(135deg,#305238,#113b2e);color:#f5eaca;border:5px double #b99a56;padding:60px 7%;box-shadow:0 20px 30px #39482c14;margin:20px 0 45px}
.imperial-landing .host .eyebrow {color:#d7bd80}
.imperial-landing .host h2 {font:46px/1.1 Georgia,serif;color:#f7eac7;max-width:700px;margin:20px 0 35px}
.imperial-landing .host ol {display:grid;grid-template-columns:1fr 1fr;gap:25px 45px;list-style:none;counter-reset:rooms;padding:0}
.imperial-landing .host li {counter-increment:rooms;font-size:15px;line-height:1.9;margin:0;position:relative;padding-left:48px;color:#e4dfc4}
.imperial-landing .host li:before {content:'0' counter(rooms);position:absolute;left:0;top:0;font:italic 29px Georgia,serif;color:#cdb072}
.imperial-landing .host .quiet {color:#c8cfab;margin-top:35px;max-width:850px}
.imperial-landing .quote {font:italic clamp(29px,3.3vw,46px)/1.5 Georgia,serif;color:#637448;text-align:center;margin:40px auto;max-width:920px;padding:30px 30px 65px;background:url('./ornament.svg') center bottom/270px 45px no-repeat}
.imperial-landing .android {border:0;padding:45px 0 65px;max-width:900px;margin:auto;text-align:center}
.imperial-landing .android h2 {font:45px Georgia,serif;margin-bottom:23px}
.imperial-landing .android>p:not(.quiet) {font-size:16px;line-height:1.85;color:#6d684f}
.imperial-landing .android>a:not(.button) {font-size:14px;color:#526b45;text-underline-offset:5px}
.imperial-landing footer {max-width:none;background:#183d2e;color:#e6d9b3;border-top:3px double #b6934e;padding:30px 5vw;font-size:12px}
.imperial-landing .landing-motion {max-width:1440px;margin:auto;text-align:right;padding:0 5vw 25px}
.imperial-landing .lgr-motion {color:#6b764e;border-color:#baaa79}
.imperial-privacy {max-width:850px;margin:50px auto;padding:45px 45px 35px;border:5px double #bba26b;background:#fff9e9;box-shadow:0 20px 50px #4b442619;font:16px/1.85 'Segoe UI',sans-serif}
.imperial-privacy h1 {font:46px/1.12 Georgia,serif;margin:35px 0;color:#2d533a}
.imperial-privacy>a:first-child {font-size:12px;letter-spacing:.08em;color:#8c743a;text-underline-offset:5px}
.imperial-privacy p {color:#546046}
@media(max-width:1100px) {
 .welcome {gap:35px}
 .welcome form {padding:62px 26px 25px}
 .welcome form h2 {font-size:29px}
 .play-layout {gap:23px;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)}
 .turn-panel {padding:32px 24px 24px}
 .turn-panel h2 {font-size:31px}
 .imperial-landing .hero {gap:30px}
 .imperial-landing h1 {font-size:54px}
 .imperial-landing .features {gap:16px}
 .imperial-landing .features article {padding:30px 20px 20px}
 .imperial-landing .features h3 {font-size:25px}
}
@media(max-width:850px) {
 #game {padding:0 22px}
 #game>header {margin:0 -22px;padding:20px 22px}
 .welcome {grid-template-columns:1fr;gap:22px;padding-top:16px;padding-bottom:70px}
 .welcome>div {max-width:660px;margin:auto}
 .welcome-art[data-lgr-scene=imperatritsa] {max-width:none;max-height:none;aspect-ratio:1.5/1;border-radius:130px 130px 3px 3px;margin-top:10px}
 .welcome h1 {font-size:47px}
 .welcome .lead {font-size:21px}
 .welcome form {width:100%;max-width:650px;justify-self:center;padding:65px 35px 30px;border-radius:90px 90px 4px 4px}
 .welcome form h2 {font-size:33px}
 .play-layout {grid-template-columns:1fr;gap:28px}
 .board {position:static;max-width:680px;width:100%;margin:auto}
 .game-heading h1 {font-size:33px}
 .game-heading .players {margin-top:17px}
 .resource-bar>div {padding:12px 18px}
 .turn-panel {padding:32px 25px 25px}
 .turn-panel h2 {font-size:33px}
 .encounter-grid.with-image {grid-template-columns:1fr}
 .choices {grid-template-columns:1fr}
 dialog {padding:25px}
 .imperial-landing .hero {grid-template-columns:1fr;padding:38px 0 50px;gap:35px}
 .imperial-landing .hero>div:first-child {order:1}
 .imperial-landing .hero .landing-art {order:0;max-width:620px;width:100%;margin:auto;border-radius:130px 130px 3px 3px}
 .imperial-landing .hero img {aspect-ratio:1.5/1}
 .imperial-landing h1 {font-size:57px;margin:18px 0 25px}
 .imperial-landing .hero>div>p:not(.eyebrow):not(.quiet) {max-width:620px}
 .imperial-landing .features {grid-template-columns:1fr;padding:40px 0;gap:22px}
 .imperial-landing .features article {border-radius:4px 70px 4px 4px;padding:28px 30px;text-align:left}
 .imperial-landing .features article:before {position:absolute;right:24px;top:19px;width:90px;height:20px;background-size:90px 20px;opacity:.7}
 .imperial-landing .features h3 {font-size:29px;margin:20px 0 15px}
 .imperial-landing .host {padding:35px 28px;margin-top:10px}
 .imperial-landing .host h2 {font-size:38px}
 .imperial-landing .host ol {grid-template-columns:1fr;gap:24px}
 .imperial-landing .quote {padding:20px 5px 55px;font-size:31px}
 .imperial-landing .android {padding-top:20px}
 .imperial-privacy {margin:20px 18px;padding:30px 25px;font-size:15px}
 .imperial-privacy h1 {font-size:38px}
}
@media(max-width:450px) {
 #game {padding:0 15px}
 #game>header {margin:0 -15px;padding:16px 15px;min-height:78px;gap:12px}
 #game>header nav {gap:6px;flex-wrap:wrap;justify-content:flex-end}
 #game>header nav button {padding:8px 10px;font-size:11px}
 #game>header .lgr-brand {gap:7px}
 #game>header .lgr-brand b {font-size:12px}
 #game>header .lgr-brand small {font-size:8px;max-width:100px}
 #game>header .lgr-sail {width:30px;height:30px}
 .welcome-art[data-lgr-scene=imperatritsa] {border-width:5px;border-radius:85px 85px 3px 3px;margin-bottom:28px}
 .welcome h1 {font-size:39px}
 .welcome .lead {font-size:19px}
 .welcome>div>p:not(.eyebrow):not(.lead) {font-size:13px}
 .welcome form {padding:60px 23px 25px;border-radius:75px 75px 3px 3px}
 .welcome form h2 {font-size:29px}
 .welcome form label {font-size:12px}
 input:not([type=radio]),textarea,select {font-size:16px}
 .game-heading h1 {font-size:30px}
 .game-heading .eyebrow {font-size:9px}
 .players {gap:6px}
 .players button {padding:10px 12px;font-size:12px}
 .resource-bar>div {padding:10px 13px}
 .resource-bar strong {font-size:29px}
 .resource-bar span {font-size:11px}
 .board {border-width:4px}
 .board-title {padding:13px;font-size:12px}
 .board .legend {font-size:10px;gap:8px}
 .turn-panel {padding:28px 22px 24px}
 .turn-panel h2 {font-size:30px}
 .turn-panel>p {font-size:14px}
 .die-button {font-size:15px;gap:17px;padding:12px}
 dialog {padding:23px 17px;width:calc(100% - 16px);border-width:3px;border-radius:3px}
 dialog h2 {font-size:30px}
 .prompt {font-size:16px}
 .choice {padding:15px}
 .choice.selected {padding:14px}
 .choice b {font-size:14px}
 .commit-row .primary {font-size:14px;line-height:1.6;width:100%}
 #game>footer {gap:14px;font-size:11px}
 #game>footer>div {gap:7px}
 #game>footer button,.import-button {font-size:10px;min-height:40px}
 .imperial-landing header,.imperial-landing main,.imperial-landing footer {padding-left:21px;padding-right:21px}
 .imperial-landing header {padding-top:18px;padding-bottom:18px;gap:15px}
 .imperial-landing header .lgr-sail {width:32px;height:32px}
 .imperial-landing header .lgr-brand {gap:8px}
 .imperial-landing header .lgr-brand b {font-size:12px}
 .imperial-landing header .lgr-brand small {font-size:8px;max-width:125px}
 .imperial-landing header>a:last-child {font-size:10px;white-space:nowrap}
 .imperial-landing .hero .landing-art {border-width:5px;border-radius:85px 85px 3px 3px}
 .imperial-landing h1 {font-size:47px}
 .imperial-landing .hero>div>p:not(.eyebrow):not(.quiet) {font-size:20px}
 .imperial-landing .button {font-size:17px;padding:16px 23px}
 .imperial-landing .features article {padding:26px 24px}
 .imperial-landing .features article:before {display:none}
 .imperial-landing .host {padding:30px 23px}
 .imperial-landing .host h2 {font-size:33px}
 .imperial-landing .host li {font-size:14px;padding-left:38px}
 .imperial-landing .android h2 {font-size:38px}
 .imperial-landing .android>p:not(.quiet) {font-size:14px}
 .imperial-landing footer {display:flex;flex-direction:column;align-items:flex-start;gap:16px}
 .imperial-privacy {padding:26px 20px;margin:15px 12px;font-size:14px}
 .imperial-privacy h1 {font-size:34px}
}
@media(prefers-reduced-motion:reduce) {*,*:before,*:after {animation:none!important;transition:none!important}}
