*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background-color:#e8e4d8;color:#4a4a4a;background-image:url('../images/backgrounds/background.jpg');background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed}body.is-loading::before{content:"";position:fixed;top:0px;left:0px;width:100%;height:100%;background-color:#000;opacity:0.3;z-index:30}body.is-loading::after{content:"";position:fixed;top:50%;left:50%;width:30px;height:30px;margin:-15px;border:4.5px solid #f3f3f3;border-top:4.5px solid #555;border-radius:50%;animation:spin 1s linear infinite;opacity:1;pointer-events:none;z-index:31}@keyframes spin{to{transform:rotate(360deg)}}a{color:#c5a474}#game-container{max-width:86vw;margin:20px auto;background-color:rgba(246,238,227,0.8);border-radius:15px;box-shadow:0 5px 25px rgba(0,0,0,0.1);padding:20px}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:2px solid #dddcd5}header h1{font-size:2em;color:#333}header p{font-style:italic}header nav button,header nav a{background:linear-gradient(to bottom,#fbfaf5,#e9e6de);border:1px solid #bfa88b;color:#5c4d3a;padding:10px 18px;border-radius:8px;text-decoration:none;margin-left:10px;margin-bottom:15px;cursor:pointer;font-weight:bold;text-shadow:1px 1px 1px rgba(255,255,255,0.7);box-shadow:0 2px 4px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.5);transition:all 0.2s ease-in-out}header nav button:hover,header nav a:hover{background:linear-gradient(to bottom,#ffffff,#f0ede6);color:#3e3527;border-color:#a88a5e;transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,0.15),inset 0 1px 0 rgba(255,255,255,0.5)}header nav button:active,header nav a:active{transform:translateY(0);background:linear-gradient(to top,#fbfaf5,#e9e6de);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15)}#main-columns{display:flex;gap:20px;margin-top:20px}.game-column{background-color:#eee7d7;border:1px solid #e9e6de;border-radius:10px;padding:15px}.game-column h2{padding-bottom:10px;margin-bottom:15px;border-bottom:1px solid #eee;text-align:center;font-weight:600}#ministers-column{flex:6;display:flex;flex-direction:column;height:max(68vh,600px);min-width:0}#memorials-column{flex:3;display:flex;flex-direction:column;height:max(68vh,600px);min-width:0}#treaties-column{flex:3;display:flex;flex-direction:column;height:max(68vh,600px);min-width:0}.minister-selection{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.minister-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px;border-radius:8px;border:1px solid #eee;background:#eee7d7;cursor:pointer;transition:all 0.2s ease}.minister-btn:hover,.minister-btn.active{transform:scale(1.05);background:#e9e6de;border-color:#d1ccc0}.minister-btn img{width:40px;height:40px;border-radius:50%}.minister-btn span{font-size:0.8em;text-align:center}.minister-btn{position:relative}.minister-btn.has-notification::after{content:'!';position:absolute;top:5px;right:8px;width:20px;height:20px;background-color:#DC143C;color:white;border-radius:50%;display:flex;justify-content:center;align-items:center;font-weight:bold;font-size:14px;box-shadow:0 0 8px rgba(220,20,60,0.8);animation:pulse-notification 1.5s infinite}@keyframes pulse-notification{0%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 8px rgba(220,20,60,0.8)}50%{transform:translate(-50%,-50%) scale(1.1);box-shadow:0 0 12px rgba(220,20,60,1)}100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 8px rgba(220,20,60,0.8)}}#chat-box{flex-grow:1;display:flex;flex-direction:column;min-height:0}#chat-history{flex-grow:1;border:1px solid #eee;border-radius:8px;padding:10px;margin-bottom:10px;overflow:auto}#chat-history p.typing{font-style:italic;color:#777}#chat-input-area{display:flex;gap:10px}#chat-input{flex-grow:1;padding:10px;border:1px solid #ccc;border-radius:8px}#send-chat-btn{padding:10px 20px;border:none;background-color:#c5a474;color:white;border-radius:8px;cursor:pointer;transition:all 0.2s ease}#send-chat-btn:hover{background-color:#c7a066;transform:scale(1.05)}#chat-char-counter{display:flex;align-items:center;padding:0 10px;font-size:0.9em;color:#888;white-space:nowrap}#chat-char-counter.limit-warning{color:#a16666;font-weight:bold}.item-list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-gutter:stable}.list-item{display:flex;align-items:center;gap:15px;padding:10px;background-color:#eee7d7;border:1px solid #eee;border-radius:8px;cursor:pointer}.list-item:hover{box-shadow:0 2px 8px rgba(0,0,0,0.08)}.list-item img{width:40px;height:40px}.list-item h3{font-size:1em;margin-bottom:3px}.list-item p{font-size:0.9em;color:#666}#map-container{margin-top:20px;background-color:#c4a788;border:2px solid #6b4f35;padding:10px;position:relative;overflow:hidden;width:100%}#map-container.is-loading #map-center-marker,#map-container.is-loading #map-controls,#map-container.is-loading #map-coords-display,#map-container.is-loading .map-tile{visibility:hidden}#map-container.is-loading::before{content:"";position:absolute;top:0px;left:0px;width:100%;height:100%;background-color:#000;opacity:0;z-index:60}#map-container.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:60px;height:60px;margin:-30px;border:6px solid #f3f3f3;border-top:6px solid #555;border-radius:50%;animation:spin 1s linear infinite;opacity:1;pointer-events:none;z-index:61}#map-grid{display:grid;grid-template-columns:repeat(21,1fr);grid-template-rows:repeat(21,1fr);gap:2px;cursor:grab;background-color:#c5b39f;background-image:url('../images/backgrounds/old_paper_texture.jpg');background-size:cover;background-repeat:no-repeat;background-position:center center;aspect-ratio:1 / 1}#map-grid.is-panning{cursor:grabbing}#map-center-marker{position:absolute;top:50%;left:50%;width:9vw;height:9vw;transform:translate(-50%,-50%);z-index:1000;pointer-events:none}#map-controls{position:absolute;bottom:90px;right:30px;display:grid;grid-template-areas:"pan pan pan""zoom zoom zoom" "jump jump jump";gap:5px;z-index:20;background-color:rgba(26,26,26,0.15);backdrop-filter:blur(1.5px);padding:15px;border-radius:12px;border:1px solid rgba(255,255,255,0.1)}#map-controls button{width:min(2.4vw,90px);height:min(2.4vw,90px);font-size:min(1.2vw,30px);border-radius:8px;background:linear-gradient(to bottom,#fbfaf5,#e9e6de);border:1px solid #bfa88b;color:#5c4d3a;text-shadow:1px 1px 1px rgba(255,255,255,0.7);box-shadow:0 2px 4px rgba(0,0,0,0.15),inset 0 1px 0 rgba(255,255,255,0.5);transition:all 0.2s ease-in-out;cursor:pointer}#map-controls button:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,0.2);background:linear-gradient(to bottom,#ffffff,#f0ede6)}#map-controls button:active{transform:translateY(0);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15)}.pan-container{grid-area:pan;display:grid;gap:5px;margin-top:10px;justify-content:center;grid-template-areas:". up .""left home right"". down ."}.pan-container button{width:auto}#map-pan-up{grid-area:up}#map-pan-left{grid-area:left}#map-home{grid-area:home;display:flex;justify-content:center;align-items:center;padding:5px}#map-home img{width:90%;height:90%;object-fit:contain;pointer-events:none}#map-pan-right{grid-area:right}#map-pan-down{grid-area:down}.zoom-container{grid-area:zoom;display:flex;gap:5px;margin-top:10px;justify-content:center;font-size:1.5em;font-weight:bold}.zoom-container button{width:auto}.jump-to-coords-container{grid-area:jump;display:flex;gap:5px;margin-top:10px;justify-content:center}.jump-to-coords-container input{width:min(6vw,120px);font-size:min(0.9vw,27px);padding:8px;text-align:center;border:1px solid #bfa88b;border-radius:8px;background-color:#fbfaf5;color:#5c4d3a;box-shadow:inset 0 1px 3px rgba(0,0,0,0.1)}.jump-to-coords-container input:focus{outline:none;border-color:#a88a5e;box-shadow:0 0 8px rgba(197,164,116,0.5)}.jump-to-coords-container button{width:auto}.zoom-container button#map-zoom-in,.zoom-container button#map-zoom-out,.jump-to-coords-container button#jump-to-btn{background:linear-gradient(to bottom,#d4a24e,#c58a3e);border-color:#b57a2e;color:white;text-shadow:1px 1px 2px rgba(0,0,0,0.3)}.zoom-container button#map-zoom-in:hover,.zoom-container button#map-zoom-out:hover,.jump-to-coords-container button#jump-to-btn:hover{background:linear-gradient(to bottom,#e4b25e,#d59a4e)}.map-tile{aspect-ratio:1 / 1;position:relative;border:1px solid #795548;transition:transform 0.2s ease;cursor:pointer;overflow:hidden;border-top-left-radius:255px 15px;border-top-right-radius:15px 225px;border-bottom-right-radius:225px 15px;border-bottom-left-radius:15px 255px;will-change:transform}.map-tile.border-n{border-top:0.15vw dashed #5d4037}.map-tile.border-e{border-right:0.15vw dashed #5d4037}.map-tile.border-s{border-bottom:0.15vw dashed #5d4037}.map-tile.border-w{border-left:0.15vw dashed #5d4037}.map-tile:hover{transform:scale(1.1);z-index:10}.map-tile::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--kingdom-color,transparent);border-radius:24%;opacity:0.8}.map-tile.empty::before{display:none}.tile-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70%;height:70%;object-fit:contain;z-index:2}.treasure-icon{width:30%;height:30%;z-index:6;opacity:0.8;animation:pulse-notification 2s infinite}.capital-marker{position:absolute;top:min(3px,0.09vw);right:min(3px,0.09vw);width:min(15px,0.9vw);height:min(15px,0.9vw);background-image:url('../images/icons/crown.png');background-size:contain;background-repeat:no-repeat;z-index:5;filter:drop-shadow(0 0 1px black)}.capital-info-banner{display:flex;align-items:center;background:linear-gradient(to right,#fdfaf3,#f5f2e9);padding:10px;margin-bottom:15px;border-radius:8px;border:1px solid #e9e6de}.capital-info-banner .capital-crest{width:50px;height:50px;border-radius:50%;margin-right:15px;border:2px solid #c5a474}.capital-info-banner .capital-text{font-size:1.1em;font-weight:bold;color:#5c4d3a;display:flex;align-items:center}.capital-info-banner .capital-text img{width:20px;height:20px;margin-right:8px}#modal-actions button{margin-left:5px;margin-bottom:10px;padding:10px 15px;border:1px solid #b57a2e;border-radius:6px;cursor:pointer;font-weight:bold;color:white;text-shadow:1px 1px 2px rgba(0,0,0,0.3);box-shadow:0 2px 3px rgba(0,0,0,0.2);transition:all 0.2s ease-in-out;background:linear-gradient(to bottom,#d4a24e,#c58a3e);color:white}#modal-actions button:hover{transform:translateY(-2px);box-shadow:0 4px 6px rgba(0,0,0,0.2);background:linear-gradient(to bottom,#e4b25e,#d59a4e);border-color:#c58a3e}#modal-actions button:active{transform:translateY(0);box-shadow:0 1px 2px rgba(0,0,0,0.2)}#modal-actions button:disabled,#modal-actions button:disabled:hover{background:linear-gradient(to bottom,#cccccc,#b3b3b3);border-color:#999999;color:#888888;cursor:not-allowed;box-shadow:none;transform:none;text-shadow:none}#modal-actions button[data-action="execute_send_message"],#modal-actions button[data-action="propose_treaty_ui"]{background:linear-gradient(to bottom,#5c8a99,#4a7a8a);border-color:#3a6a7a}#modal-actions button[data-action="execute_send_message"]:hover,#modal-actions button[data-action="propose_treaty_ui"]:hover{background:linear-gradient(to bottom,#6caab9,#5a9aa9)}#modal-actions button[data-action="execute_propose_treaty"]{background:linear-gradient(to bottom,#5c8a99,#4a7a8a);border-color:#3a6a7a}#modal-actions button[data-action="execute_propose_treaty"]:hover{background:linear-gradient(to bottom,#6caab9,#5a9aa9)}#modal-close-btn{background:linear-gradient(to bottom,#b98b4b,#a97d3b);border-color:#996d2b}#modal-close-btn:hover{background:linear-gradient(to bottom,#c99b5b,#b98d4b)}#modal-actions button[data-action="show_spy_options"]{background:linear-gradient(to bottom,#7c6d85,#6c5d75);border-color:#5c4d65}#modal-actions button[data-action="show_spy_options"]:hover{background:linear-gradient(to bottom,#8c7d95,#7c6d85)}#modal-actions button[data-action="show_fund_rebels_ui"]{background:linear-gradient(to bottom,#b98b4b,#a97d3b);border-color:#996d2b}#modal-actions button[data-action="show_fund_rebels_ui"]:hover{background:linear-gradient(to bottom,#c99b5b,#b98d4b)}#modal-actions button[data-action="show_attack_ui"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a}#modal-actions button[data-action="show_attack_ui"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a)}#modal-actions button[data-action="reject_treaty"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a}#modal-actions button[data-action="reject_treaty"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a)}#modal-actions button[data-action="accept_treaty"]{background:linear-gradient(to bottom,#6a9c58,#5a8a5c);border-color:#4a7a4c}#modal-actions button[data-action="accept_treaty"]:hover{background:linear-gradient(to bottom,#7ab668,#6a9a6c)}#modal-actions button[data-action="show_abandon_confirmation"],#modal-actions button[data-action="execute_abandon_tile"]{background:linear-gradient(to bottom,#4a4a4a,#333333);border-color:#222222;color:white}#modal-actions button[data-action="show_abandon_confirmation"]:hover,#modal-actions button[data-action="execute_abandon_tile"]:hover{background:linear-gradient(to bottom,#5a5a5a,#444444);border-color:#333333}#modal-actions button[data-action="show_abandon_confirmation"]:active,#modal-actions button[data-action="execute_abandon_tile"]:active{background:linear-gradient(to top,#4a4a4a,#333333)}#modal-actions button[data-action="show_build_list"]{background:linear-gradient(to bottom,#6a9c58,#5a8a5c);border-color:#4a7a4c}#modal-actions button[data-action="show_build_list"]:hover{background:linear-gradient(to bottom,#7ab668,#6a9a6c)}#modal-actions button[data-action="show_upgrade_confirmation"],#modal-actions button[data-action="execute_upgrade_confirmed"]{background:linear-gradient(to bottom,#6a9c58,#5a8a5c);border-color:#4a7a4c}#modal-actions button[data-action="upgrade_building"]:hover{background:linear-gradient(to bottom,#7ab668,#6a9a6c)}#modal-actions button[data-action="visit_palace"]{background:linear-gradient(to bottom,#8e44ad,#702f8a);border-color:#60257a}#modal-actions button[data-action="visit_palace"]:hover{background:linear-gradient(to bottom,#9e54bd,#803f9a)}#modal-actions button[data-action="cancel_treaty"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a}#modal-actions button[data-action="cancel_treaty"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a)}#modal-actions button[data-action="cancel_modal"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a}#modal-actions button[data-action="cancel_modal"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a)}#modal-actions button[data-action="show_destroy_confirm"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a}#modal-actions button[data-action="show_destroy_confirm"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a)}#modal-actions button[data-action="upgrade_building"],#modal-actions button[data-action="execute_colonize_confirmed"],#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="accept"],#modal-actions button[data-action="execute_organize_fair"]{background:linear-gradient(to bottom,#6a9c58,#5a8a5c);border-color:#4a7a4c;color:white}#modal-actions button[data-action="upgrade_building"]:hover,#modal-actions button[data-action="execute_colonize_confirmed"]:hover,#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="accept"]:hover,#modal-actions button[data-action="execute_organize_fair"]:hover{background:linear-gradient(to bottom,#7ab668,#6a9a6c);border-color:#5a8a5c}#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="reject"],#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="cancel"],#modal-actions button[data-action="execute_destroy"]{background:linear-gradient(to bottom,#d4a24e,#c58a3e);border-color:#b57a2e;color:white}#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="reject"]:hover,#modal-actions button[data-action="execute_treaty_action_confirmed"][data-actiontype="cancel"]:hover,#modal-actions button[data-action="execute_destroy"]:hover{background:linear-gradient(to bottom,#e4b25e,#d59a4e);border-color:#c58a3e}#modal-actions button[data-action="submit-solution-btn"],#modal-actions button[data-action="execute_propose_treaty"],#modal-actions button[data-action="execute_send_message"],#modal-actions button[data-action="execute_fund_rebels"]{background:linear-gradient(to bottom,#c5a474,#b59464);border-color:#a58454;color:white}#modal-actions button[data-action="submit-solution-btn"]:hover,#modal-actions button[data-action="execute_propose_treaty"]:hover,#modal-actions button[data-action="execute_send_message"]:hover,#modal-actions button[data-action="execute_fund_rebels"]:hover{background:linear-gradient(to bottom,#d5b484,#c5a474);border-color:#b59464}#modal-actions button[data-action="execute_suppress_dragon"]{background:linear-gradient(to bottom,#a16666,#8a5a5a);border-color:#7a4a4a;color:white}#modal-actions button[data-action="execute_suppress_dragon"]:hover{background:linear-gradient(to bottom,#b17676,#9a6a6a);border-color:#8a5a5a}#modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.6);display:flex;justify-content:center;align-items:center;z-index:1000}#modal-box{background-color:#fbfaf5;padding:0;border-radius:15px;max-width:72vw;min-width:30vw;box-shadow:0 5px 20px rgba(0,0,0,0.2)}#modal-title{color:#333}#modal-content{margin-bottom:20px}#modal-actions{text-align:right}#modal-image-container{width:100%;min-height:30vh;max-height:72vh;overflow:hidden;border-radius:12px 12px 0 0;background-color:#e9e6de;aspect-ratio:16 / 9;position:relative}#modal-image-container.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:30px;height:30px;margin:-15px;border:4.5px solid #f3f3f3;border-top:4.5px solid #555;border-radius:50%;animation:spin 1s linear infinite;opacity:1;pointer-events:none}#modal-image{width:100%;height:100%;object-fit:cover;display:block;object-position:center bottom}#modal-box h2,#modal-box #modal-content,#modal-box #modal-actions{padding:0 25px 20px 25px}#modal-box h2{padding-top:20px;padding-bottom:15px}#modal-box{display:flex;flex-direction:column;max-height:96vh}#modal-content{overflow-y:auto;overflow-x:hidden;flex-grow:1;padding-right:15px;color:#333}.hidden{display:none !important}.auth-page{background-color:#f5f5dc;display:flex;justify-content:center;align-items:center;min-height:100vh;font-family:sans-serif;padding:30px}.auth-container{background-color:#fdfdfd;padding:40px;border-radius:15px;box-shadow:0 4px 15px rgba(0,0,0,0.1);text-align:center;max-height:max(86vh,900px);max-width:540px}.auth-container h1{color:#333;margin-bottom:20px}.auth-container input{width:100%;padding:12px;margin-bottom:15px;border:1px solid #ccc;border-radius:8px;box-sizing:border-box}.auth-container button{width:100%;padding:12px;border:none;border-radius:8px;background-color:#c5a474;color:white;font-size:16px;cursor:pointer;transition:transform 0.2s ease}.auth-container button:hover{transform:scale(1.02)}.auth-container .g-recaptcha{display:inline-block;margin-bottom:15px}.auth-container p{margin-top:20px;color:#555}.auth-container a{color:#c5a474;text-decoration:none}.error-box,.success-box{padding:10px;margin-bottom:15px;border-radius:5px}.error-box p,.success-box p{margin:auto;color:white}.error-box{background-color:#8a5a5a}.success-box{background-color:#5a8a5c}.build-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.build-item{padding:15px;border:1px solid #e9e6de;border-radius:8px;text-align:center}.build-item h4{margin-bottom:5px}.build-item p{font-size:0.9em;margin-bottom:10px}.build-item button{width:100%;padding:8px;border-radius:8px;border:none;background-color:#5a8a5c;color:white;cursor:pointer}#modal-content{margin-bottom:20px;padding:0;line-height:1.6}.modal-info-header{background-color:#e9e6de;padding:0px 0px 25px 0px;border-bottom:2px solid #d1ccc0;border-radius:15px 15px 0 0;text-align:center}.modal-info-header h2{margin:0;color:#333}.modal-info-story-box{background-color:#fdfaf3;border:1px solid #e9e6de;border-left:5px solid #a88a5e;border-radius:8px;margin:20px;padding:15px 20px;box-shadow:0 3px 8px rgba(0,0,0,0.05)}.modal-info-story-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px dashed #d1ccc0}.modal-info-story-header h4{margin:0;font-size:1.1em;color:#5c4d3a;border:none;padding:0}.modal-info-story-icon{width:24px;height:24px;opacity:0.7}.modal-info-story-content p{margin:0;font-style:italic;color:#444;line-height:1.7;white-space:pre-wrap;background:none;padding:0;border:none}.modal-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0 20px;margin-bottom:20px}.info-item{background-color:#f9f9f9;padding:10px;border-radius:8px;border:1px solid #e9e6de;border-left:4px solid #c5a474}.info-label{font-weight:bold;color:#4a4a4a;display:block;margin-bottom:5px;font-size:0.9em}.info-value{display:flex;align-items:center;gap:8px;font-size:1.2em;font-weight:500;color:#333}.info-value-icon{width:24px;height:24px}.modal-building-card{background-color:#f5f2e9;border:1px solid #e9e6de;border-radius:8px;padding:15px;margin:0 20px;text-align:center}.modal-building-card h4{margin:0 0 10px 0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.2em}.modal-building-card p{margin:0;color:#666}.modal-building-card .max-level{font-weight:bold;color:#5a8a5c;margin-top:5px}.modal-buff-card{background:#f5e9f2;border:1px solid #e9e6de;border-radius:8px;padding:15px 15px 25px 15px;margin:20px 20px;text-align:center}.modal-buff-card h4{margin:0 0 10px 0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.2em}.modal-buff-card p{margin:0;color:#666}.building-level-indicator{position:absolute;bottom:2px;right:2px;background-color:rgba(0,0,0,0.75);color:white;font-size:0.8em;font-weight:bold;padding:1px 5px;border-radius:4px;z-index:3;line-height:1;pointer-events:none}.terrain-secondary-icon{position:absolute;bottom:2px;left:2px;width:35%;height:35%;object-fit:contain;z-index:3;opacity:0.9;transform:none;top:auto}.building-level-indicator{z-index:4}.unclaimed-info{text-align:center;padding:20px}textarea#diplomatic-message-input{width:100%;box-sizing:border-box;background-color:#f9f9f9;border:1px solid #d1ccc0;border-radius:8px;padding:12px;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;font-size:1em;color:#4a4a4a;margin-top:10px;resize:vertical;min-height:80px;transition:all 0.2s ease-in-out}textarea#diplomatic-message-input:focus{outline:none;border-color:#c5a474;box-shadow:0 0 8px rgba(197,164,116,0.5)}textarea#diplomatic-message-input::placeholder{color:#999;font-style:italic}.list-item{transition:all 0.2s ease;border-left:5px solid transparent}.list-item:hover{transform:translateX(3px);border-left-color:#c5a474}.list-item.proposed{border-left-color:#e0b43a}.list-item.active{border-left-color:#5a8a5c}.list-item.treaty{position:relative}.list-item.treaty.my-proposal::after,.list-item.treaty.their-proposal::after{position:absolute;top:10px;right:10px;font-weight:bold;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:22px;box-shadow:0 1px 2px rgba(0,0,0,0.2)}.list-item.treaty.my-proposal::after{content:'↗';background-color:#a88a5e;color:white}.list-item.treaty.their-proposal::after{content:'↙';background-color:#6a9c58;color:white}.memorial-modal-content .modal-info-header{text-align:center}.memorial-modal-content .memorial-story{padding:15px 20px;font-size:1.1em;line-height:1.7;color:#333;border-bottom:1px dashed #d1ccc0;margin-bottom:20px}.memorial-solution-area{padding:0 20px}.memorial-solution-area h4{margin-bottom:10px;font-size:1.2em;color:#4a4a4a}.memorial-solution-area textarea{width:100%;box-sizing:border-box;background-color:#fdfdfd;border:1px solid #d1ccc0;border-radius:8px;padding:12px;font-family:inherit;font-size:1em;resize:vertical;min-height:100px;transition:all 0.2s ease-in-out}.memorial-solution-area textarea:focus{outline:none;border-color:#c5a474;box-shadow:0 0 8px rgba(197,164,116,0.5)}.treaty-parties{display:flex;justify-content:space-around;align-items:center;padding:20px;text-align:center}.treaty-party img{width:60px;height:60px;border-radius:50%;border:3px solid #e9e6de;margin-bottom:10px}.treaty-party-name{font-weight:bold;font-size:1.1em}.treaty-status-banner{text-align:center;padding:10px;margin:0 20px 20px 20px;border-radius:8px;font-size:1.1em;font-weight:bold;color:white}.treaty-status-banner.proposed{background-color:#e0b43a}.treaty-status-banner.active{background-color:#5a8a5c}.treaty-status-banner.cancelled{background-color:#c76666}.treaty-details-content{padding:0 20px}.treaty-specific-info{background-color:#f5f2e9;border:1px solid #e9e6de;border-radius:8px;padding:15px;margin:20px}.treaty-specific-info h4{margin-top:0;margin-bottom:15px;padding-bottom:10px;border-bottom:1px dashed #d1ccc0;text-align:center;color:#5c4d3a}.treaty-specific-info .info-item{display:flex;justify-content:space-between;align-items:center;margin:10px;padding:10px}.treaty-specific-info .info-label{font-weight:500;color:#666}.treaty-specific-info .info-value{font-weight:bold;font-size:1.1em;display:flex;align-items:center;gap:8px}.treaty-specific-info .info-value-icon{width:20px;height:20px}.spy-report-content .modal-info-header{background-color:#585d62;color:white}.spy-report-content .modal-info-header h2{color:white}.spy-report-content .spy-report-cost{text-align:center;font-style:italic;color:#888;padding:10px 20px;background:#f0f0f0;margin-bottom:20px}.spy-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0 20px;margin-bottom:20px}.spy-report-item{background:#f9f9f9;border:1px solid #e9e6de;border-left:4px solid #c5a474;padding:12px;border-radius:8px}.spy-report-item .info-label{font-size:0.9em;font-weight:bold;color:#666;margin-bottom:5px;display:block}.spy-report-item .info-value{font-size:1.2em;font-weight:500;color:#333}.spy-narrative-box{background-color:#fdfaf3;border:1px solid #e9e6de;border-left:5px solid #a88a5e;border-radius:8px;margin:20px;padding:15px 20px;box-shadow:0 3px 8px rgba(0,0,0,0.05)}.spy-narrative-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px dashed #d1ccc0}.spy-narrative-header h4{margin:0;font-size:1.1em;color:#5c4d3a;border:none;padding:0}.spy-narrative-icon{width:24px;height:24px;opacity:0.7}.spy-narrative-content p{margin:0;font-style:italic;color:#444;line-height:1.7;white-space:pre-wrap;background:none;padding:0;border:none}.consequences-list{margin-top:20px;background-color:#fcf8e3;border:1px solid #e0b43a;border-radius:8px;padding:15px}.consequences-list h3{margin-top:0;margin-bottom:15px;text-align:center;color:#5c4d3a;border-bottom:1px dashed #d1b48a;padding-bottom:10px}.consequence-item{display:flex;align-items:center;font-size:1.1em;padding:8px 0}.consequence-item img{margin-right:12px}.consequence-item span{flex-grow:1;color:#4a4a4a}.consequence-item strong{font-size:1.2em;color:#333}.action-modal-header{padding:25px 20px;border-radius:15px 15px 0 0;color:white;text-align:center;border-bottom:3px solid rgba(0,0,0,0.2)}.action-modal-header.header-attack{background-color:#8a5a5a}.action-modal-header.header-espionage{background-color:#6c5d75}.action-modal-header h2,.action-modal-header h4{margin:0;padding:0 !important;text-shadow:1px 1px 3px rgba(0,0,0,0.4)}.action-modal-header h4{opacity:0.8;font-weight:normal;font-size:0.9em;margin-top:5px}.action-modal-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px;text-align:center}.action-modal-info-grid .info-item{background:#f5f2e9;padding:10px;border-radius:8px}.action-modal-info-grid .info-label{font-size:0.9em;color:#666;display:block;margin-bottom:5px}.action-modal-info-grid .info-value{font-size:1.2em;font-weight:bold;color:#333}.action-modal-input-group{margin-top:15px;text-align:center}.action-modal-input-group label{font-weight:bold;font-size:1.1em;margin-bottom:10px;display:block}.action-modal-input-group input[type="number"]{width:150px;padding:10px;font-size:1.2em;text-align:center;border:2px solid #ccc;border-radius:8px}.total-cost-display{margin-top:15px;background:#f9f9f9;padding:10px;border:1px dashed #ddd;border-radius:8px;font-size:1.1em}.total-cost-display .cost-value{font-weight:bold;color:#c5a474}.attack-ui-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;text-align:center}.attack-ui-panel{background-color:#fdfaf3;padding:15px;border-radius:8px;border:1px solid #e9e6de}.force-display{font-size:2em;font-weight:bold;margin:10px 0;color:#4a4a4a}.your-forces .force-display{color:#6a9c58}.enemy-forces .force-display{color:#a16666}#army-dispatch-input{width:80%;padding:8px;margin-top:10px;border-radius:6px;border:1px solid #d1ccc0}.action-modal-header{display:flex;align-items:center;justify-content:center;gap:15px;padding:20px;border-radius:8px 8px 0 0;color:white;text-align:left;border-bottom:3px solid rgba(0,0,0,0.2)}.action-modal-header .header-icon{width:48px;height:48px;flex-shrink:0}.action-modal-header .header-text h2,.action-modal-header .header-text h4{padding:0 !important;margin:0;text-shadow:1px 1px 3px rgba(0,0,0,0.4)}.action-modal-header .header-text h4{opacity:0.9;font-weight:normal}.action-modal-content .tile-stat-block{margin:15px 0}#report-reason{width:calc(100% - 20px);padding:15px;margin-top:15px;margin-bottom:15px;border:1px solid #ccc;border-radius:8px;font-size:16px;line-height:1.6;box-sizing:border-box;resize:vertical}#report-reason:focus{outline:none;border-color:#ff5733;box-shadow:0 0 5px rgba(92,184,92,0.5)}.propose-treaty-container{display:flex;flex-direction:column;gap:15px}.propose-treaty-header{text-align:center;padding-bottom:10px;border-bottom:1px solid #e9e6de}.propose-treaty-header h3{margin:0 0 5px 0;color:#4a4a4a}.propose-treaty-header p{margin:0;font-size:0.9em;color:#666}.treaty-options-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}.treaty-option-card{display:flex;align-items:center;gap:15px;background-color:#fdfaf3;border:2px solid #e9e6de;padding:15px;border-radius:8px;cursor:pointer;transition:all 0.2s ease-in-out}.treaty-option-card:hover{transform:translateY(-3px);box-shadow:0 4px 10px rgba(0,0,0,0.08);border-color:#d1b48a}.treaty-option-card.selected{border-color:#5a8a5c;background-color:#f2f8f2;transform:translateY(-3px);box-shadow:0 4px 12px rgba(90,138,92,0.2)}.treaty-option-card .treaty-icon{width:40px;height:40px;flex-shrink:0}.treaty-option-card .treaty-info h4{margin:0 0 5px 0;font-size:1.1em}.treaty-option-card .treaty-info p{margin:0;font-size:0.85em;color:#555;line-height:1.5}.penalty-tiers-container{margin-top:20px;border-top:1px solid #e9e6de;padding-top:15px}.penalty-tier-card{border:2px solid #e9e6de;padding:10px;border-radius:6px;margin-top:15px;cursor:pointer;transition:all 0.2s ease}.penalty-tier-card:hover{border-color:#d1b48a}.penalty-tier-card.selected{border-color:#5a8a5c;background-color:#f2f8f2}.penalty-tier-card h5{margin:0 0 5px 0}.penalty-tier-card p{margin:0;font-size:0.9em}.treaty-modal-content .modal-info-header{padding:0}.settings-page-container{max-width:86vw;margin:40px auto;background-color:#fbfaf5;padding:40px;border-radius:15px;box-shadow:0 5px 25px rgba(0,0,0,0.1);border:1px solid #e9e6de}.settings-page-container h1{text-align:center;margin-bottom:30px;margin-top:21px;font-size:2.5em;color:#4a4a4a;border-bottom:2px solid #e9e6de;padding-bottom:30px}.settings-grid{display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:flex-start;margin-top:40px;padding:36px;border-radius:8px;background-color:#f5f2e9;border:1px solid #e0d8c9;box-shadow:inset 0 0 15px rgba(92,77,58,0.15)}.settings-avatar-panel{text-align:center}.avatar-preview-wrapper{position:relative;width:150px;height:150px;margin:0 auto 20px auto}.avatar-preview{width:100%;height:100%;border-radius:50%;object-fit:cover;border:5px solid #e9e6de;box-shadow:0 4px 10px rgba(0,0,0,0.1)}.custom-file-upload{display:inline-block;padding:10px 20px;cursor:pointer;background-color:#c5a474;color:white;border-radius:8px;font-weight:bold;transition:transform 0.2s ease}.custom-file-upload:hover{transform:scale(1.05)}input[type="file"]{display:none}.file-name-display{margin-top:10px;font-size:0.9em;color:#666;font-style:italic}.settings-details-panel .form-group{margin-bottom:20px}.settings-details-panel label{display:block;margin-bottom:8px;font-weight:bold;color:#4a4a4a}.settings-details-panel label[for="color"]{margin-top:30px;font-size:1.3em}.settings-details-panel input[type="text"],.settings-details-panel input[type="color"]{width:100%;padding:12px;border-radius:8px;border:1px solid #d1ccc0;background-color:#fff;font-size:1em;box-sizing:border-box;transition:all 0.2s ease-in-out}.settings-details-panel input[type="text"]:focus{outline:none;border-color:#c5a474;box-shadow:0 0 8px rgba(197,164,116,0.5)}.settings-details-panel input[type="color"]{margin:9px 0 30px 0;padding:5px;width:120px;height:120px;cursor:pointer}.settings-details-panel button[type="submit"]{width:100%;padding:15px;font-size:1.2em;font-weight:bold;color:white;background-color:#c5a474;border:none;border-radius:8px;cursor:pointer;transition:transform 0.2s ease}.settings-details-panel button[type="submit"]:hover{transform:scale(1.02)}.store-page-container{max-width:86vw;margin:40px auto;padding:20px;background-color:#fbfaf5;border-radius:8px}.store-header{text-align:center;margin-bottom:40px}.store-header h1{font-size:3em;color:#4a4a4a;margin-bottom:10px}.store-header p{font-size:1.2em;color:#666;font-style:italic}.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:30px}.gold-package-card{background-color:#fbfaf5;border:1px solid #e9e6de;border-radius:15px;padding:25px;text-align:center;box-shadow:0 5px 15px rgba(0,0,0,0.05);transition:all 0.3s ease;display:flex;flex-direction:column}.gold-package-card:hover{transform:translateY(-10px);box-shadow:0 10px 25px rgba(0,0,0,0.1)}.gold-icon{width:80px;height:80px;margin:0 auto 20px auto}.gold-amount{font-size:2em;font-weight:bold;color:#c5a474;margin-bottom:10px}.gold-description{color:#666;margin-bottom:20px;flex-grow:1}.set-price{font-size:1.8em;font-weight:bold;color:#5a8a5c;margin:15px 0}.store-nav-link{display:inline-block;padding:12px 24px;margin:20px 20px 20px 20px;background:linear-gradient(to bottom,#d4a24e,#c58a3e);border:1px solid #b57a2e;border-radius:8px;color:white;font-size:1em;font-weight:bold;text-decoration:none;text-shadow:1px 1px 2px rgba(0,0,0,0.3);box-shadow:0 2px 4px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.3);transition:all 0.2s ease-in-out}.store-nav-link:hover{background:linear-gradient(to bottom,#e4b25e,#d59a4e);border-color:#c58a3e;color:white;transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,0.25),inset 0 1px 0 rgba(255,255,255,0.3)}.store-nav-link:active{transform:translateY(0);background:linear-gradient(to top,#d4a24e,#c58a3e);box-shadow:inset 0 2px 4px rgba(0,0,0,0.2)}.guide-container{max-width:86vw;margin:20px auto;background-color:#fbfaf5;padding:30px;border-radius:15px;line-height:1.7;color:#333}.guide-container h1,.guide-container h2,.guide-container h3{border-bottom:2px solid #e9e6de;padding-bottom:10px;margin-top:25px;margin-bottom:15px;color:#4a4a4a}.guide-container h1{font-size:2.2em}.guide-container h2{font-size:1.8em}.guide-container h3{font-size:1.4em;border-bottom-style:dashed}.guide-container ul,.guide-container ol{padding-left:25px}.guide-container code{background-color:#e9e6de;padding:2px 5px;border-radius:4px;font-family:Consolas,monaco,monospace}.guide-container .warning-box{background-color:#fff0f0;border:1px solid #c76666;border-left-width:5px;padding:15px;margin:20px 0;border-radius:5px}.guide-container .warning-box strong{color:#a16666}.npc-chat-container{display:flex;flex-direction:column;height:65vh;max-height:500px}.npc-chat-log{flex-grow:1;overflow-y:auto;padding:15px;background-color:#d8d2c4;border-radius:8px;border:1px solid #c5b39f;margin-bottom:15px}.chat-message{margin-bottom:12px;display:flex;flex-direction:column}.npc-message{align-self:flex-start}.player-message{align-self:flex-end}.message-sender{font-weight:bold;font-size:0.9em;margin-bottom:4px;color:#6d5f4c}.player-message .message-sender{text-align:right;color:#8a5a5c}.chat-message p{padding:10px 15px;border-radius:15px;margin:0;line-height:1.5;width:fit-content}.npc-message p{background-color:#fbfaf5;border:1px solid #e9e6de;border-top-left-radius:3px}.player-message p{background-color:#e8e4d8;border:1px solid #d1ccc0;align-self:flex-end;border-top-right-radius:3px}.npc-chat-input-area{display:flex;gap:10px}#npc-chat-input{flex-grow:1;padding:12px;border:1px solid #ccc;border-radius:8px;font-size:1em}#npc-chat-send-btn{padding:10px 20px;border:none;background-color:#c5a474;color:white;border-radius:8px;cursor:pointer;transition:background-color 0.2s ease}#npc-chat-send-btn:hover{background-color:#c7a066}.palace-container{display:flex;flex-direction:column;gap:0}.palace-tabs{display:flex;gap:5px;padding:0 10px;border-bottom:2px solid #a88a5e;background-color:#e4d7c4;border-radius:8px 8px 0 0}.palace-tab-btn{padding:12px 18px;border:none;border-top:2px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;background-color:transparent;cursor:pointer;font-size:1.05em;font-weight:600;color:#6e5c42;transition:all 0.2s ease-in-out;position:relative;bottom:-2px}.palace-tab-btn:hover{background-color:rgba(255,255,255,0.4)}.palace-tab-btn.active{background-color:#f8f4ec;color:#54483a;border-top:2px solid #c5a474;border-left:1px solid #a88a5e;border-right:1px solid #a88a5e;border-bottom:2px solid #f8f4ec;border-radius:6px 6px 0 0}.palace-tab-content{padding:20px;background-color:#f8f4ec;border:1px solid #a88a5e;border-top:none;border-radius:0 0 8px 8px;min-height:350px}.palace-chat-log{height:300px;overflow-y:auto;border:1px solid #d1c0a3;padding:15px;margin-bottom:15px;border-radius:8px;background-color:#fff;box-shadow:inset 0 1px 3px rgba(0,0,0,0.08)}.palace-chat-log p{margin:0 0 10px 0;line-height:1.5}.palace-chat-log strong{color:#8a5a5a}.palace-chat-input-area{display:flex;gap:10px}.post-announcement-area{margin-bottom:20px;padding-bottom:20px;border-bottom:1px dashed #d1c0a3;display:flex;flex-direction:column;gap:10px}.post-announcement-area textarea{min-height:80px;resize:vertical;flex-grow:1}.post-announcement-area button{margin-top:10px;padding:8px 15px;padding:8px 15px;align-self:flex-start}.announcement-list{max-height:300px;overflow-y:auto;padding-right:10px}.announcement-item{background-color:#fdfaf3;border:1px solid #e9e6de;border-radius:8px;padding:15px;margin-bottom:15px;box-shadow:0 2px 4px rgba(0,0,0,0.05)}.announcement-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #e9e6de}.announcement-header img{width:40px;height:40px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 2px rgba(0,0,0,0.2)}.announcement-header-info strong{font-size:1.1em;color:#4a4a4a}.announcement-header-info span{font-size:0.85em;color:#888;display:block}.announcement-body{font-size:1.05em;line-height:1.6;color:#333}.palace-tab-content input[type="text"],.palace-tab-content textarea{flex-grow:1;padding:12px;border:1px solid #d1c0a3;border-radius:6px;font-size:1em;background-color:#fff;color:#54483a;box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);transition:all 0.2s ease-in-out}.palace-tab-content input[type="text"]:focus,.palace-tab-content textarea:focus{outline:none;border-color:#c5a474;box-shadow:0 0 8px rgba(197,164,116,0.4)}.palace-tab-content button{padding:12px 20px;border:1px solid #8a7454;border-radius:6px;cursor:pointer;font-weight:bold;color:white;text-shadow:1px 1px 2px rgba(0,0,0,0.3);background:linear-gradient(to bottom,#a88a5e,#8a7454);box-shadow:0 2px 3px rgba(0,0,0,0.2);transition:all 0.2s ease-in-out}.palace-tab-content button:hover{transform:translateY(-2px);box-shadow:0 4px 6px rgba(0,0,0,0.2)}.palace-tab-content button:active{transform:translateY(0);box-shadow:0 1px 2px rgba(0,0,0,0.2)}.palace-tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:1px solid #e4d7c4;padding-bottom:10px}.palace-tab-header h4{margin:0;color:#54483a}.chat-refresh-btn{padding:5px 10px;font-size:0.9em;background:#f0e6d2;color:#6e5c42;border:1px solid #d1c0a3;border-radius:5px;cursor:pointer;transition:all 0.2s ease}.chat-refresh-btn:hover{background:#e4d7c4;border-color:#c5a474}.chat-refresh-btn:disabled{cursor:not-allowed;opacity:0.7}.proposal-desc{background-color:#fff;padding:15px;border-radius:8px;margin:15px 0;border-left:5px solid #c5a474;box-shadow:0 2px 4px rgba(0,0,0,0.05)}.proposal-item{margin-bottom:20px}.proposal-divider{border:none;border-top:1px dashed #d1c0a3;margin:25px 0}.proposal-form{margin-top:25px;padding-top:20px;border-top:2px solid #a88a5e}.proposal-form h3{margin-top:0}.proposal-form input,.proposal-form textarea{width:100%;margin-bottom:10px}.vote-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.vote-column h4{color:#54483a}.vote-column li{background-color:#ede4d1;color:#6e5c42}.vote-actions button[data-vote="support"]{background:linear-gradient(to bottom,#6a9c58,#5a8a5c);border-color:#4a7a4c}.vote-actions button[data-vote="oppose"]{background:linear-gradient(to bottom,#d17777,#c76666);border-color:#b75555}.news-list{max-height:350px;overflow-y:auto}.news-list li strong{color:#8a5a5a}.news-list li em{color:#888;font-size:0.9em}.ranking-table-wrapper{width:100%;overflow-x:auto;border:1px solid #e4d7c4;border-radius:8px}.ranking-table{width:100%;min-width:600px;border-collapse:collapse;text-align:left}.ranking-table th,.ranking-table td{padding:12px 15px;border-bottom:1px solid #e4d7c4;white-space:nowrap}.ranking-table td{color:#54483a}.ranking-table thead{background-color:#e4d7c4;color:#54483a;font-size:1.1em;position:sticky;top:0}.ranking-table tbody tr:nth-child(even){background-color:#fdfaf3}.ranking-table tbody tr:hover{background-color:#f0e6d2}.ranking-table tbody tr:last-child td{border-bottom:none}.ranking-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter-btn{padding:8px 15px;border:1px solid #d1c0a3;background-color:#f5f2e9;color:#6e5c42;border-radius:20px;cursor:pointer;font-size:0.9em;transition:all 0.2s ease}.filter-btn:hover{background-color:#e4d7c4;border-color:#c5a474}.filter-btn.active{background-color:#8a7454;color:white;border-color:#6e5c42;font-weight:bold}@keyframes pulse-danger-dragon{0%{box-shadow:0 0 0 0 rgba(220,53,69,0.4)}70%{box-shadow:0 0 0 10px rgba(220,53,69,0)}100%{box-shadow:0 0 0 0 rgba(220,53,69,0)}}@keyframes pulse-danger-plague{0%{box-shadow:0 0 0 0 rgba(75,100,74,0.4)}70%{box-shadow:0 0 0 10px rgba(75,100,74,0)}100%{box-shadow:0 0 0 0 rgba(75,100,74,0)}}@keyframes pulse-danger-golem{0%{box-shadow:0 0 0 0 rgba(168,138,94,0.4)}70%{box-shadow:0 0 0 10px rgba(168,138,94,0)}100%{box-shadow:0 0 0 0 rgba(168,138,94,0)}}.warning-box-dragon,.warning-box-plague,.warning-box-golem{background-color:#fff0f0;border:1px solid #c76666;border-left-width:5px;padding:15px;margin:20px 20px 20px 20px;border-radius:5px;display:flex;align-items:center;gap:15px}.warning-box-dragon h4,.warning-box-plague h4,.warning-box-golem h4{color:#a16666;margin:0}.warning-box-dragon p,.warning-box-plague p,.warning-box-golem p{margin:0}.warning-box-dragon{background-color:#f8d7da;border-color:#8a2c2c;animation:pulse-danger-dragon 2s infinite}.warning-box-plague{background-color:#e8f5e9;border-color:#4b644a;animation:pulse-danger-plague 2s infinite}.warning-box-golem{background-color:#fcf8e3;border-color:#a88a5e;animation:pulse-danger-golem 2s infinite}.evaluation-modal-content{display:flex;flex-direction:column;gap:20px;padding:10px}.evaluation-score-wrapper{display:flex;justify-content:center;align-items:center;padding:15px 0;border-bottom:1px dashed #d1ccc0}.evaluation-score-circle{width:120px;height:120px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;border-width:8px;border-style:solid;box-shadow:0 4px 15px rgba(0,0,0,0.1),inset 0 0 10px rgba(0,0,0,0.1)}.evaluation-score-circle[data-score-tier="high"]{border-color:#5a8a5c}.evaluation-score-circle[data-score-tier="medium"]{border-color:#c5a474}.evaluation-score-circle[data-score-tier="low"]{border-color:#a16666}.score-value{font-family:'Cinzel',serif;font-size:3.5em;font-weight:bold;line-height:1}.score-label{font-size:1em;color:#888;margin-top:-5px}.evaluation-rationale{background-color:#fdfaf3;border-left:5px solid #a88a5e;padding:15px 20px;border-radius:4px;font-style:italic;color:#444}.evaluation-rationale h4{font-style:normal;margin:0 0 5px 0;color:#5c4d3a}.evaluation-rationale p{margin:0}.evaluation-rewards{text-align:center}.evaluation-rewards h3{margin:0 0 15px 0;color:#4a4a4a}.reward-item{display:flex;align-items:center;justify-content:center;gap:10px;background-color:#f9f9f9;padding:10px;border-radius:8px;border:1px solid #e9e6de;margin-bottom:10px;width:60%;margin-left:auto;margin-right:auto}.reward-icon{width:24px;height:24px}.reward-text{font-size:1.2em;font-weight:500;color:#333}.br-container{background-color:#fbfaf5;color:#4a4a4a;padding:25px;border-radius:8px;border:1px solid #d1c0a3}.br-header{position:relative;text-align:center;padding:20px;margin-bottom:20px;border-bottom:2px solid #d1c0a3;border-radius:8px 8px 0 0;overflow:hidden;z-index:1}.br-header::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.5);z-index:-1}.br-header .br-outcome,.br-header .br-narrative{text-shadow:2px 2px 5px rgba(0,0,0,0.7)}.br-header{background-image:url('../images/backgrounds/battle.jpg');background-size:cover;background-position:center}.br-outcome{font-family:'Cinzel',serif;font-size:3.5em;font-weight:700;text-transform:uppercase;letter-spacing:4px;line-height:1.1}.br-outcome.victory{color:#449e48}.br-outcome.defeat{color:#d95050}.br-narrative{font-style:italic;font-size:1.1em;color:#fff;margin-top:10px;max-width:80%;margin-left:auto;margin-right:auto}.br-factions{display:flex;justify-content:space-around;align-items:center;gap:15px}.br-faction-card{background-color:#f5f2e9;border:1px solid #e9e6de;border-radius:8px;padding:20px;width:40%;text-align:center}.br-faction-card h3{margin:10px 0 15px 0;font-size:1.4em}.br-faction-crest{width:80px;height:80px;border-radius:50%;border:4px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,0.2)}.br-casualty-box{display:flex;align-items:center;justify-content:center;gap:15px;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px;margin-top:10px}.br-casualty-icon{width:32px;height:32px}.br-casualty-text{text-align:left}.br-casualty-text span{display:block;font-size:0.9em;color:#888}.br-casualty-text strong{font-size:1.8em;color:#a16666}.br-vs{font-family:'Cinzel',serif;font-size:3em;font-weight:700;color:#d1c0a3}.suppression-report-container{background-color:#fbfaf5;color:#333;padding:0;border-radius:8px;text-align:center}.suppression-image-wrapper{width:100%;height:250px;overflow:hidden;border-radius:8px 8px 0 0}.suppression-image{width:100%;height:100%;object-fit:cover}.suppression-content{padding:20px 25px 25px 25px}.suppression-outcome{font-family:'Cinzel',serif;font-size:2.8em;font-weight:700;text-transform:uppercase;letter-spacing:3px;margin-bottom:10px}.suppression-outcome.victory{color:#5a8a5c}.suppression-outcome.defeat{color:#a16666}.suppression-narrative{font-style:italic;color:#666;max-width:90%;margin:0 auto 20px auto;border-top:1px solid #e9e6de;border-bottom:1px solid #e9e6de;padding:15px 0}.suppression-losses{display:inline-flex;align-items:center;gap:15px;background-color:#f5f2e9;padding:10px 20px;border-radius:50px;border:1px solid #e0d8c9}.suppression-losses-icon{width:24px;height:24px}.suppression-losses p{margin:0;font-size:1.1em}.suppression-losses strong{font-size:1.4em;color:#a16666;margin-left:5px}.golem-report-container{background-color:#fbfaf5;color:#333;padding:0;border-radius:8px;text-align:center}.golem-image-wrapper{width:100%;height:250px;overflow:hidden;border-radius:8px 8px 0 0}.golem-image{width:100%;height:100%;object-fit:cover}.golem-content{padding:20px 25px 25px 25px}.golem-outcome{font-family:'Cinzel',serif;font-size:2.8em;font-weight:700;text-transform:uppercase;letter-spacing:3px;margin-bottom:10px}.golem-outcome.victory{color:#5a8a5c}.golem-outcome.defeat{color:#a16666}.golem-narrative{font-style:italic;color:#666;max-width:90%;margin:0 auto 20px auto;border-top:1px solid #e9e6de;border-bottom:1px solid #e9e6de;padding:15px 0}.golem-losses{display:inline-flex;align-items:center;gap:15px;background-color:#f5f2e9;padding:10px 20px;border-radius:50px;border:1px solid #e0d8c9}.golem-losses-icon{width:24px;height:24px}.golem-losses p{margin:0;font-size:1.1em}.golem-losses strong{font-size:1.4em;color:#a16666;margin-left:5px}.report-actions-container{padding:15px 20px;margin:0 25px;border-bottom:1px solid #e9e6de;background-color:#fdfaf3}.report-actions-icons{display:flex;justify-content:center;gap:30px;margin-bottom:15px}.report-action{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:transform 0.2s ease}.report-action:hover{transform:scale(1.1)}.report-action .report-icon{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(0,0,0,0.2))}.report-action .report-label{font-size:0.9em;color:#5c4d3a;font-weight:500;text-align:center}.report-action.loading .report-icon{animation:pulse 1.5s infinite;cursor:wait;opacity:0.5}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}100%{transform:scale(1)}}.ai-report-text-container{box-sizing:border-box;background-color:#f9f6f0;max-height:0;padding:0 15px;margin-top:0;overflow:hidden;transition:max-height 0.4s ease-out,padding 0.4s ease-out,margin-top 0.4s ease-out;font-style:italic;color:#4a4a4a;border-radius:4px;border:1px solid #e9e6de}.ai-report-text-container.expanded{max-height:30vh;margin-top:15px;padding:15px;overflow-y:auto}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#e9e6de;border-radius:10px}::-webkit-scrollbar-thumb{background:#bfa88b;border-radius:10px;border:2px solid #e9e6de}::-webkit-scrollbar-thumb:hover{background:#a88a5e}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#bfa88b #e9e6de}}#announcement-banner{background-color:#1a1a1a;color:#f0f0f0;width:100vw;margin:0 auto;border-radius:0 0 8px 8px;box-shadow:0 4px 10px rgba(0,0,0,0.2);overflow:hidden;max-height:0;padding:0 25px;transition:max-height 0.5s ease-in-out,padding 0.5s ease-in-out;display:flex;justify-content:space-between;align-items:center}#announcement-banner.visible{max-height:150px;padding:15px 25px;margin-bottom:20px}#announcement-banner p{margin:0;padding-right:20px;font-size:0.72em;line-height:1.6}#announcement-banner .close-btn{font-size:2em;font-weight:300;color:white;cursor:pointer;background:none;border:none;opacity:0.7;transition:opacity 0.2s ease}#announcement-banner .close-btn:hover{opacity:1}.btn-purchase{display:inline-block;background-color:#191919;color:white;padding:12px 25px;border-radius:8px;text-decoration:none;font-weight:bold;font-size:1.1em;border:none;cursor:pointer;transition:background-color 0.3s ease,transform 0.2s ease;box-shadow:0 4px 10px rgba(0,0,0,0.1)}.btn-purchase:hover{background-color:#4a7d4c;transform:translateY(-2px)}.content-container{max-width:max(86vw,900px);margin:40px auto;background-color:#fbfaf5;padding:30px 40px;border-radius:15px;color:#3d3b33;line-height:1.7;border:1px solid #e9e6de}.content-container h1{font-size:2.2em;color:#333;margin-bottom:5px}.content-container h2{font-size:1.8em;color:#333;border-bottom:2px solid #e9e6de;padding-bottom:10px;margin-top:40px}.content-container h4{font-size:1.2em;color:#555;margin-top:25px;margin-bottom:10px}.content-container .subtitle{font-size:1.1em;color:#777;margin-top:0;margin-bottom:25px}.content-container ul{padding-left:20px}.content-container li{margin-bottom:10px}.terms-hr{border:0;height:1px;background-color:#e0dccc;margin:40px 0}.history-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:0.95em}.history-table th,.history-table td{padding:15px;border:1px solid #e9e6de;text-align:left}.history-table th{background-color:#f5f2e9;font-weight:bold;color:#555}.history-table tr:nth-child(even){background-color:#fdfcf7}.history-table td:nth-child(2){font-family:'Courier New',Courier,monospace;color:#777}.redeem-product-form{max-height:0;overflow:hidden;transition:max-height 0.4s ease-out,margin-top 0.4s ease-out;margin-top:0}.gold-package-card.redeem-form-visible .redeem-product-form,.cosmetic-set-card.redeem-form-visible .redeem-product-form{max-height:150px;margin-top:20px}.redeem-input-group{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap;justify-content:center;align-items:center}.product-key-input{flex-grow:1;border:1px solid #d1ccc0;padding:10px;border-radius:6px;font-size:1em;min-width:150px;max-width:690px}.btn-redeem-key{padding:10px 15px;border:none;background-color:#5a8a5c;color:white;border-radius:6px;cursor:pointer;font-weight:bold;flex-grow:1;max-width:150px}.btn-get-key{display:block;text-align:center;color:#333;font-size:0.9em;text-decoration:underline}#map-coords-display{position:absolute;top:45%;left:50%;z-index:20;pointer-events:none;background-color:#fdfaf3;padding:0px 30px;box-shadow:3px 3px 8px rgba(0,0,0,0.25);transform:translateX(-50%) rotate(-3deg);clip-path:polygon( 0% 8%,5% 3%,10% 6%,15% 2%,20% 7%,25% 4%,30% 9%,35% 5%,40% 10%,45% 6%,50% 11%,55% 7%,60% 12%,65% 8%,70% 13%,75% 9%,80% 14%,85% 10%,90% 15%,95% 11%,100% 16%,98% 100%,100% 92%,95% 97%,90% 94%,85% 98%,80% 93%,75% 96%,70% 91%,65% 95%,60% 90%,55% 94%,50% 89%,45% 93%,40% 88%,35% 92%,30% 87%,25% 91%,20% 86%,15% 90%,10% 85%,5% 89%,0% 84%,2% 0% );transform:rotate(15deg)}#map-coords-display::before,#map-coords-display::after{content:'';position:absolute;width:30%;height:25px;background-color:rgba(255,229,153,0.3);border-left:1px solid rgba(0,0,0,0.05);border-right:1px solid rgba(0,0,0,0.05);box-shadow:inset 0 0 1px rgba(255,255,255,0.3)}#map-coords-display::before{top:-10px;left:15%;transform:rotate(-15deg)}#map-coords-display::after{bottom:-12px;right:20%;transform:rotate(10deg)}#map-coords-display svg path{fill:none;stroke:#4a2c2a;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--path-length);stroke-dashoffset:var(--path-length);animation:draw-stroke 0.15s ease-out forwards}@keyframes draw-stroke{to{stroke-dashoffset:0}}.legacy-info-box{background-color:#fcf8e3;border:1px solid #c5a474;border-left-width:5px;padding:15px 20px;margin:25px 0;border-radius:8px;color:#5c4d3a}.legacy-info-box h4{margin-top:0;font-size:1.2em}.legacy-info-box p{margin:6px;font-size:0.9em}.change-password-section{margin-top:40px;padding:25px;border-radius:8px;background-color:#f3f7fc;border:1px solid #a3b8d1;box-shadow:inset 0 0 15px rgba(90,110,138,0.1)}.change-password-section h3{display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.5em;color:#3a5a8a;margin:0 0 20px 0;padding:0;border:none}.change-password-section h3 svg{stroke:#3a5a8a}#change-password-form{max-width:450px;margin:0 auto}#change-password-form .form-group{margin-bottom:15px}#change-password-form label{display:block;margin-bottom:5px;font-weight:bold;color:#4a4a4a}#change-password-form input[type="password"]{width:100%;padding:12px;border-radius:8px;border:1px solid #d1ccc0;background-color:#fff;font-size:1em;box-sizing:border-box;transition:all 0.2s ease-in-out}#change-password-form input[type="password"]:focus{outline:none;border-color:#5c8a99;box-shadow:0 0 8px rgba(92,138,153,0.5)}#change-password-btn{width:100%;padding:12px;font-size:1.1em;font-weight:bold;color:white;background:linear-gradient(to bottom,#5c8a99,#4a7a8a);border:1px solid #3a6a7a;border-radius:8px;cursor:pointer;transition:all 0.2s ease}#change-password-btn:hover{background:linear-gradient(to bottom,#6caab9,#5a9aa9);transform:translateY(-2px)}.recovery-key-section{text-align:center;margin-top:40px;padding:25px;border-radius:8px;background-color:#f5f5f5;border:1px solid #ddd;box-shadow:inset 0 0 10px rgba(0,0,0,0.05)}.recovery-key-section h3{display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.5em;color:#555;margin:0 0 10px 0;padding:0;border:none}.recovery-key-section h3 svg{stroke:#555}.recovery-key-section p{color:#666;max-width:600px;margin:0 auto 20px auto;line-height:1.6}#confirm-password-for-key{width:100%;box-sizing:border-box;padding:10px;margin-bottom:10px;border:1px solid #ccc;border-radius:6px;font-size:1em}#new-key-display{background-color:#fff;border:1px solid #ccc;border-radius:8px;padding:20px;margin-top:25px;text-align:left}#new-key-display.hidden{display:none}#new-key-display h4{margin:0 0 5px 0;color:#444}#new-key-display p{font-size:0.9em;margin-bottom:15px;color:#666;max-width:none}#key-box{display:flex;align-items:center;gap:15px;background-color:#f0f0f0;padding:15px;border-radius:6px;border:1px solid #ddd}#generated-key-text{flex-grow:1;text-align:left;font-family:'Courier New',Courier,monospace;font-size:1.2em;font-weight:bold;color:#333;letter-spacing:1px;word-break:break-all}#copy-key-btn{padding:8px 15px;background-color:#6c757d;color:white;border:none;border-radius:6px;cursor:pointer;font-weight:bold}#generate-key-btn{padding:12px 25px;font-size:1.1em;font-weight:bold;color:white;background:linear-gradient(to bottom,#6c757d,#5a6268);border:1px solid #545b62;border-radius:8px;cursor:pointer;transition:all 0.2s ease}#generate-key-btn:hover{transform:translateY(-2px)}.terms-agreement-box{display:flex;align-items:flex-start;gap:10px;text-align:left;margin:0 0 15px 0;padding:15px;background-color:#f5f2e9;border-radius:8px;border:1px solid #e0d8c9}.terms-agreement-box input[type="checkbox"]{flex-shrink:0;margin-top:5px;width:18px;height:18px;accent-color:#5a8a5c}.terms-agreement-box label{font-size:0.9em;color:#555;line-height:1.5}.terms-agreement-box a{color:#c5a474;font-weight:bold}.dot-divider{display:flex;flex-direction:column;align-items:center;gap:36px;margin:72px 0 72px 0}.dot-divider span{width:9px;height:9px;background-color:#d1ccc0;border-radius:50%;display:block}.side-nav-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:900}.side-nav{position:absolute;bottom:9%;display:flex;flex-direction:column;gap:10px;pointer-events:auto}.side-nav.left{left:0}.side-tab{display:flex;align-items:center;background-color:#fbfaf5e0;backdrop-filter:blur(5px);color:#5c4d3a;box-shadow:2px 2px 8px rgba(0,0,0,0.15);cursor:pointer;text-decoration:none;font-weight:600;overflow:hidden;white-space:nowrap;transition:max-width 0.4s ease-in-out,background-color 0.3s ease,transform 0.3s ease}.side-tab svg{width:20px;height:20px;flex-shrink:0;margin:8px}.side-tab span{padding-right:12px;opacity:0;transition:opacity 0.3s ease-in-out;font-size:0.85em}.side-nav.left .side-tab{border-radius:0 8px 8px 0;border:1px solid #d1c0a3;border-left:none;flex-direction:row;max-width:36px}.side-nav.left .side-tab span{padding-left:0;padding-right:12px}.side-nav:hover .side-tab{max-width:250px;background-color:#fbfaf5}.side-nav:hover .side-tab span{opacity:1}.side-tab:hover{color:#c5a474}.side-nav.left .side-tab:hover{transform:translateX(3px)}.version-tab{cursor:default;color:#888}.version-tab:hover{color:#888}#music-controls{display:flex;align-items:center;gap:10px;width:0;opacity:0;overflow:hidden;transition:width 0.3s ease-in-out 0.1s,opacity 0.2s ease-in-out}.side-nav:hover #music-controls{width:120px;opacity:1;transition:width 0.4s ease-in-out,opacity 0.3s ease-in-out 0.2s}#music-controls #play-pause-btn{width:24px;height:24px;border-radius:50%;border:1px solid #888;background:#444;color:#eee;font-size:0.6em;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}#music-controls #volume-slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:#555;border-radius:5px;outline:none}#music-controls #volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;background:#c5a474;cursor:pointer;border-radius:50%;border:2px solid #fbfaf5}#music-controls #volume-slider::-moz-range-thumb{width:15px;height:15px;background:#c5a474;cursor:pointer;border-radius:50%;border:2px solid #fbfaf5}