/* Shared fantasy administration theme. */
:root{--gold:#ba985d;--gold-bright:#ead7ac;--muted:#a39d90;--text:#e9e5da;--line:rgba(184,151,88,.27);--panel:#171a1c;--field:#0d1012}
body{background:radial-gradient(ellipse at 50% -10%,#414345 0,transparent 50%),radial-gradient(ellipse at 5% 60%,#242b2e 0,transparent 45%),linear-gradient(120deg,#0d1115,#15191c 50%,#080b0e);background-attachment:fixed;color:var(--text)}
body::before{background-image:repeating-linear-gradient(112deg,transparent 0 5px,rgba(255,255,255,.015) 6px,transparent 7px 15px);background-size:auto;mask-image:none;opacity:.65}
body::after{content:"";position:fixed;inset:14px;border:1px solid rgba(182,150,91,.13);pointer-events:none;z-index:-1}
.app-shell{width:min(100%,1440px);padding:38px 38px 30px}
.topbar{min-height:126px;padding:24px 30px;border:1px solid #665538;border-top:2px solid #b29259;background:linear-gradient(105deg,rgba(40,44,45,.98),rgba(15,19,22,.98) 65%);box-shadow:0 12px 45px #0007,inset 0 0 0 5px #11181a,inset 0 0 0 6px #8e764426;position:relative}
.topbar::after{content:"REALM ADMINISTRATION";position:absolute;right:124px;bottom:29px;font-size:9px;letter-spacing:3px;color:#7e817d}
.brand-mark,.mark{border:1px solid #baa06b;outline:1px solid #887044;outline-offset:5px;background:radial-gradient(ellipse at top,#665337,#20282a 65%);box-shadow:0 0 30px #b6985a1f,inset 0 0 18px #0009;transform:rotate(45deg);font-family:Georgia,serif;color:#f3e0ae}
.brand-mark{width:55px;height:55px;margin:5px 17px 5px 6px;font-size:29px}
.crest-letter{display:block;transform:rotate(-45deg)}
.page-title{font-family:"DFKai-SB","KaiTi","PMingLiU",serif;font-weight:700;font-size:34px;letter-spacing:4px;color:#eee2c9;text-shadow:0 2px 4px #000}
.eyebrow{font-size:10px;letter-spacing:3px;color:#bca274;margin-bottom:10px}
.logout-btn{background:linear-gradient(#303337,#1a1e22);border:1px solid #776242;color:#d9c69f;box-shadow:inset 0 1px #ffffff0d;border-radius:2px;min-width:76px;text-align:center}
.view-tabs{display:flex;gap:0;padding:0;margin-top:25px;border:0;border-bottom:1px solid #665538;background:#0c1013b3}
.view-tab{min-height:57px;min-width:180px;padding:12px 30px;letter-spacing:2px;font-size:14px;border-bottom:2px solid transparent}
.view-tab.active{background:linear-gradient(0deg,#a88b4c1e,transparent);border:0;border-bottom:2px solid #d0ae6e;color:#ead6ac;box-shadow:none}
.view-tab:hover{color:#f4e5c4;background-color:#b1975910}
.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:28px;margin-top:26px}
.main-card{padding:26px;margin-bottom:23px;position:relative;border-color:#66553880;background:linear-gradient(135deg,#24292ce8,#15191cf5 80%);box-shadow:0 8px 22px #0004,inset 0 1px #ffffff08}
.main-card::after{content:"";position:absolute;top:-1px;left:-1px;width:22px;height:22px;border-top:2px solid #c1a16c;border-left:2px solid #c1a16c;pointer-events:none}
.section-title{font-family:"PMingLiU",serif;letter-spacing:1px;font-size:18px;margin-bottom:22px;color:#dfcda5;font-weight:700}
.section-title::before{width:8px;height:8px;transform:rotate(45deg);background:#c3a56f;box-shadow:0 0 0 3px #c3a56f20;margin-right:4px}
.form-control,.form-select{border-color:#565344;background-color:#0e1215;border-radius:2px;color:#ebe6da;box-shadow:inset 0 2px 5px #0005}
.form-control-lg,.form-select-lg{min-height:51px;font-size:16px}
.form-control::placeholder{color:#7e807a;font-size:14px}
.form-control:focus,.form-select:focus{background:#151b1f;border-color:#baa16d;box-shadow:0 0 0 3px #bea36a16;color:#fff0d2}
.form-select{color-scheme:dark}.form-select option{background:#171c20}
.status-box{border-color:#6c6d5529;background:#0b111660;padding:10px 14px;color:#a5a89e}
.category-row{gap:9px;margin-bottom:16px}
.category-row label{background:linear-gradient(#282d30,#1a1f23);border:1px solid #4d504a;color:#aaa99f;border-radius:2px;min-height:45px;letter-spacing:2px}
.category-row input:checked+label{background:linear-gradient(#51442f,#302a21);border-color:#b79a62;color:#f1dfb8;box-shadow:inset 0 0 0 2px #151717,0 0 12px #b79a620d}
.search-results{background:#151b1f;border-color:#8a744c;box-shadow:0 16px 35px #000b}
.search-item{padding:14px 17px;border-color:#8e79532a}.search-item:hover{background:#bca16a12}
.cart-item{background:#10161b;border-color:#6e66533d;padding:17px 14px}
.input-group-text{background:#252b2e;color:#bca77f;border-color:#565344}
.btn-action,.btn-login{background:linear-gradient(#81392e,#52221e);border:1px solid #b58a58;border-radius:2px;box-shadow:inset 0 1px #e4bf7b40,inset 0 -3px #280e0b66,0 6px 18px #0004;color:#f5e3c0;letter-spacing:3px;font-weight:700;min-height:54px}
.btn-action:hover,.btn-login:hover{background:linear-gradient(#9d4c38,#693025);color:#fff2cf;border-color:#e6c38a}
.btn-action:disabled{opacity:.5}.empty-state{padding:30px 20px;border:1px dashed #85734d50;background:#0b11154d;line-height:1.8;font-size:14px;color:#90958f}
.history-card{padding:20px 18px;margin-bottom:13px;border:1px solid #59594766;border-left:2px solid #92794c;background:linear-gradient(110deg,#22282bd9,#151a1de6);box-shadow:0 5px 14px #0002;transition:border-color .18s,background .18s}
.history-card:hover{border-color:#b59b65;background:linear-gradient(110deg,#303332,#1b2227)}
.realm-badge,.add-badge{border-radius:2px;background:#a38b5420;border-color:#b49a5f60;color:#d4bd8c;font-size:10px;letter-spacing:.5px;padding:5px 7px}
.time-text{font-family:Consolas,monospace;font-size:11px;color:#8e958f}.delete-link{font-size:12px;color:#c58373}
.history-card .text-secondary{line-height:1.85;font-size:13px}.text-muted,.text-secondary{color:#a6a89e!important}
.settings-help{color:#a6a89e;line-height:1.9}.settings-row{padding-bottom:14px;border-bottom:1px solid #8b795329;margin-bottom:15px}.settings-panel .main-card{padding:28px}
.icon-btn{border-radius:2px;background:#242b2e;border-color:#72634570;color:#d3bd92}.icon-btn:hover{background:#383b32}
button:focus-visible,a:focus-visible{outline:2px solid #e1c68a;outline-offset:4px}
.login-card{width:min(100%,470px);padding:48px 42px;border:1px solid #897249;border-top:2px solid #c5a56e;background:linear-gradient(145deg,#2a3033f5,#11181bf5);box-shadow:0 30px 90px #0009,inset 0 0 0 6px #111719,inset 0 0 0 7px #b49a5f26}
.login-card .mark{margin:12px auto 35px;width:64px;height:64px}.login-card h1{font-family:"DFKai-SB","PMingLiU",serif;letter-spacing:3px;color:#ead9b6;font-size:30px}.login-card .hint{font-size:13px;line-height:1.8;margin:16px 0 30px}.login-card .eyebrow{font-size:9px;letter-spacing:2px}.login-card .form-control{text-align:center}.login-footer{font-size:10px;letter-spacing:2px;color:#747d7d;margin:27px 0 0}
@media(min-width:1100px){.content-grid>aside{border-left:1px solid #aa92512b;padding-left:26px}}
@media(max-width:1000px){.app-shell{padding:24px 20px}.content-grid{grid-template-columns:1fr}.settings-row{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-labels{display:none}}
@media(max-width:560px){.app-shell{padding:14px 12px}.topbar{padding:24px 18px;min-height:105px}.topbar::after{display:none}.brand-mark{width:34px;height:34px;font-size:21px;margin-right:10px}.page-title{font-size:23px;letter-spacing:1px}.eyebrow{font-size:8px;letter-spacing:1px}.logout-btn{min-width:48px;padding:8px;font-size:12px}.topbar>.d-flex{gap:8px!important}.view-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:18px}.view-tab{min-width:0;min-height:49px;padding:10px;font-size:13px}.main-card,.settings-panel .main-card{padding:20px 16px}.content-grid{gap:12px;margin-top:20px}.category-row{grid-template-columns:repeat(3,minmax(0,1fr))}.section-title{font-size:16px}.settings-row{grid-template-columns:1fr}.history-card{padding:17px 14px}.login-card{padding:36px 24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* Cinematic realm artwork and refined in-game panels. */
body{background-color:#090d12;background-image:linear-gradient(180deg,rgba(7,11,16,.52),rgba(7,11,16,.93) 850px),url('assets/realm-castle.png');background-position:center top;background-size:cover;background-attachment:fixed}
body::before{opacity:.2}body::after{border-color:#bca16a26;z-index:0;inset:12px}
.app-shell{position:relative;z-index:1;max-width:1400px;padding-top:25px}
.topbar{min-height:96px;border:0;border-bottom:1px solid #b2975866;border-top:1px solid #b2975833;background:linear-gradient(90deg,#10161be8,#141a20b3);box-shadow:0 10px 35px #0004;padding:22px 28px}
.topbar::after{bottom:22px}.page-title{font-size:29px;letter-spacing:3px}.brand-mark{width:44px;height:44px;font-size:25px}
.realm-banner{min-height:240px;position:relative;display:flex;align-items:center;overflow:hidden;margin-top:22px;border:1px solid #b9a16b66;background-image:linear-gradient(90deg,#0a1018f5 0%,#0a1018b8 45%,#0a101815 80%),url('assets/realm-castle.png');background-size:cover;background-position:center 43%;box-shadow:0 18px 50px #0005,inset 0 0 0 5px #0e151844}
.realm-banner::before,.realm-banner::after{content:"";position:absolute;width:30px;height:30px;pointer-events:none}.realm-banner::before{left:8px;top:8px;border-left:1px solid #d2b67e;border-top:1px solid #d2b67e}.realm-banner::after{right:8px;bottom:8px;border-right:1px solid #d2b67e;border-bottom:1px solid #d2b67e}
.realm-banner-content{position:relative;padding:34px 38px;z-index:1}.realm-kicker{font-size:10px;letter-spacing:2.4px;color:#c3ac7c;margin:0 0 17px}.realm-banner h2{font-family:"PMingLiU",serif;font-size:32px;letter-spacing:3px;color:#f0e3c6;text-shadow:0 2px 10px #000;margin:0 0 14px}.realm-description{font-size:13px;color:#babdc0;line-height:1.8;margin:0}.realm-banner-meta{display:flex;align-items:center;gap:16px;font-size:11px;color:#c0ad86;margin-top:24px;letter-spacing:1.5px}.realm-banner-meta i{width:3px;height:3px;background:#b79a61;transform:rotate(45deg)}
.realm-banner-seal{position:absolute;right:35px;bottom:25px;text-align:center;font:42px Georgia,serif;color:#e1cc9e88;line-height:.7;text-shadow:0 3px 15px #000}.realm-banner-seal small{font-size:8px;letter-spacing:4px}
.view-tabs{margin-top:24px;background:#10161bd9;border:1px solid #9f875b40;box-shadow:0 5px 20px #0003}.view-tab{min-height:51px;font-weight:500}.view-tab.active{background:linear-gradient(180deg,#a78b4e06,#b5965b22);color:#f0dcad}
.main-card{background:linear-gradient(135deg,#1d252cf5,#111820f5);border:1px solid #8e7d554f;box-shadow:0 12px 35px #0005,inset 0 1px #e5c67e0d;padding:25px 26px 27px}.main-card::after{width:15px;height:15px;border-width:1px;top:6px;left:6px}
.main-card::before{content:"";position:absolute;right:6px;bottom:6px;width:15px;height:15px;border-right:1px solid #ac9258;border-bottom:1px solid #ac9258;pointer-events:none}
.section-title{font-size:17px;letter-spacing:1px;padding-bottom:16px;border-bottom:1px solid #a88d5126;margin-bottom:20px}.section-title::before{height:6px;width:6px;background:#cbb17a;box-shadow:0 0 9px #ddbd6f44}
.content-grid>aside>.section-title{padding:8px 0 17px}.history-card{border-left:1px solid #7a6a474d;background:linear-gradient(120deg,#1a232ce8,#101820ed);padding:18px 18px 18px 22px}.history-card::before{content:"";position:absolute;left:0;top:21px;bottom:21px;width:2px;background:linear-gradient(transparent,#c2a368,transparent)}
.history-card:hover{background:linear-gradient(120deg,#28313ae8,#18222ded);box-shadow:0 6px 22px #0004}.realm-badge{background:#b79b5d12;color:#d8bd84;border-color:#ac92584d}.form-control,.form-select{border-color:#b19b633d;background-color:#080e15;min-height:40px}.form-control-lg,.form-select-lg{min-height:51px}.form-control:focus,.form-select:focus{background:#0f1821}.status-box{background:#0b1219a6;border-color:#a08c5826}.empty-state{background:radial-gradient(ellipse at center,#b79b5d09,transparent 75%),#0a121966;border-color:#a88d5140;min-height:100px;display:grid;place-items:center}
.category-row label{background:linear-gradient(#242e37,#141e28);font-size:14px}.category-row input:checked+label{background:linear-gradient(#514833,#28251d);box-shadow:inset 0 0 0 2px #0d141a,inset 0 1px #e8d6aa22}.btn-action,.btn-login{background:linear-gradient(180deg,#844438,#52271f);border-color:#bc9b64;box-shadow:inset 0 0 0 3px #391d1977,inset 0 1px #f0d39b66,0 6px 20px #0005}.search-results{background:#111c27}.cart-item{background:#0b141e;border-color:#b09a5d30}.input-group-text{background:#202b34}
.login-page{background-image:linear-gradient(90deg,#060b12a6,#080e1633 65%,#080e1655),url('assets/realm-castle.png');background-position:center;background-size:cover}.login-card{margin-right:min(32vw,480px);background:linear-gradient(145deg,#1c2730f5,#0c141def);border-color:#ac925b99;backdrop-filter:blur(12px);padding:50px 42px}.login-card::after{content:"";position:absolute;inset:12px;border:1px solid #bca16a26;pointer-events:none}.login-card .mark{background:radial-gradient(ellipse at top,#685535,#18232d 70%)}.login-footer{color:#a0957d}
@media(min-width:1100px){.content-grid>aside{padding-left:25px;border-left-color:#c6aa6726}}
@media(max-width:800px){.realm-banner{min-height:210px}.realm-banner h2{font-size:27px}.login-card{margin-right:0}.realm-banner-content{padding:30px}.topbar::after{display:none}}
@media(max-width:560px){body{background-attachment:scroll;background-size:auto 850px;background-repeat:no-repeat}.topbar{padding:18px 14px;min-height:92px}.page-title{font-size:22px;letter-spacing:1px}.realm-banner{min-height:210px;margin-top:15px;background-position:62% center}.realm-banner-content{padding:28px 22px}.realm-kicker{font-size:8px;letter-spacing:1px}.realm-banner h2{font-size:23px;letter-spacing:1px;max-width:250px;line-height:1.5}.realm-description{font-size:11px;max-width:245px}.realm-banner-meta{gap:10px;font-size:10px;letter-spacing:0;margin-top:19px}.realm-banner-seal{right:18px;bottom:20px;font-size:30px}.main-card{padding:22px 16px}.login-card{padding:40px 27px}.login-page{background-size:cover}}

/* Independent heraldic logo and illustrated royal navigation. */
.brand-art-title{margin:0;width:min(390px,calc(100% - 110px));line-height:0;position:relative;z-index:1}
.brand-art{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 9px #0009)}
.topbar{padding:12px 28px;min-height:122px;background:linear-gradient(90deg,#080f17e8,#151b21b3)}
.topbar::after{content:"KINGDOM MANAGEMENT";right:30px;bottom:20px;font-size:8px;letter-spacing:2px}
.view-tabs{display:flex;gap:0;border:1px solid #9f875b40;background:#10161bd9;box-shadow:0 5px 20px #0003;margin-top:24px;padding:0}
.view-tab{display:block;min-width:180px;min-height:51px;padding:12px 30px;border:0;border-bottom:2px solid transparent;background:transparent;box-shadow:none;color:var(--muted);font-size:14px;font-weight:500;letter-spacing:2px}
.view-tab.active{background:linear-gradient(180deg,#a78b4e06,#b5965b22);border:0;border-bottom:2px solid #d0ae6e;color:#f0dcad;box-shadow:none}
.view-tab:hover{color:#f4e5c4;background-color:#b1975910}
.nav-art-text{font-family:"DFKai-SB","KaiTi","PMingLiU",serif;font-size:25px;font-weight:900;letter-spacing:5px;background:linear-gradient(#fff1cb 10%,#c29a4f 48%,#f9e5ad 55%,#b2833e 95%);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 2px 1px #000);line-height:1.1}
.view-tab small{font-family:Georgia,serif;font-size:8px;letter-spacing:3px;color:#dac496;line-height:1.2}
.section-title{font-family:"DFKai-SB","KaiTi","PMingLiU",serif;font-size:20px;color:#e8d2a0;text-shadow:0 2px 1px #000,0 0 16px #c8a15d22}
.realm-banner h2{font-family:"DFKai-SB","KaiTi","PMingLiU",serif;font-weight:900;background:linear-gradient(#fff3d5,#bc9559 60%,#f3dbab);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 3px 2px #000)}
.category-row label,.btn-action,.btn-login{font-family:"DFKai-SB","KaiTi","PMingLiU",serif;font-size:18px;text-shadow:0 2px 1px #000;letter-spacing:3px}
.login-card .brand-art-title{width:calc(100% + 36px);margin:0 -18px 24px}.login-card .eyebrow{margin-bottom:20px}.login-card{width:min(100%,500px)}
@media(max-width:800px){.topbar{min-height:112px}.brand-art-title{width:min(350px,calc(100% - 80px))}}
@media(max-width:560px){.topbar{min-height:90px;padding:12px 10px}.brand-art-title{width:min(260px,calc(100% - 70px))}.topbar::after{display:none}.view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;margin-top:18px}.view-tab{min-width:0;min-height:49px;padding:10px;font-size:13px}.section-title{font-size:18px}.login-card .brand-art-title{width:calc(100% + 28px);margin:0 -14px 22px}}
