/* Ravenacore: dawn, warm parchment and aged gold. Layout stays shared. */
:root{--ink:#293a4a;--muted:#59636a;--paper:#ede3d0;--line:#c7b99e;--navy:#22364c;--gold:#d3ae67}
html{background:#24364a;color-scheme:light}
body{background-color:#24364a;background-image:linear-gradient(#21334b08,#24364a40 450px,#24364af0 1150px),url('/res/images/ravenacore-dawn.png');background-size:cover;background-attachment:fixed;color:#e5e8ea}
.topbar{background:#1c2d43ed;border-bottom:1px solid #a98a51;color:#d1d9df}.topbar a{color:#e5e2d5}.topbar strong{color:#f0ce86}
.brand,.brand:hover{color:#203247;text-shadow:0 1px 0 #fff2d6,0 0 28px #fff1d7b0}
.raven-mark{color:#785528;text-shadow:0 1px #fff4df}.masthead p,.masthead small{color:#263849;text-shadow:0 1px 3px #fff2d5,0 0 18px #fff2d5}
.quicknav{background:#253a50f5;border-color:#b19664;box-shadow:0 4px 15px #12223630}.quicknav a{color:#eee6d3}.quicknav a:hover,.quicknav a[aria-current=page]{background:#3a5063;color:#ffe1a1}
.menu{background:#22364cf5;border-color:#617083;box-shadow:0 4px 12px #17243428}.menu h2{background:linear-gradient(110deg,#30485f,#26394e);color:#eed2a0;border-bottom-color:#8d7854}.menu h2:before{content:'◆';font-size:8px;color:#d3ae67;margin-right:7px;vertical-align:middle}
.menu>a{color:#dbe2e7;border-color:#73849740}.menu>a:hover,.menu>a[aria-current=page]{background:#384f65;color:#ffe0a1;border-left:2px solid #d3ae67}
.side-content,.login-box{color:#dde3e7}.side-content a,.login-box a:not(.register){color:#f0cf91}.login-box label{color:#dde3e7}
.login-box input{background:#f1ebdf;color:#273747;border-color:#91a0a9;color-scheme:light}
main{color:var(--ink);background:var(--paper);border:1px solid #b5a47f;box-shadow:0 7px 24px #15243345}
.page-title{background:linear-gradient(110deg,#304a62,#23394f);color:#f4dfb5;border-bottom:2px solid #c5a365}.page-title:before{color:#dabf8b}
.page-body{background:linear-gradient(120deg,#f5edde70,transparent);color:var(--ink)}
.box{background:#f5eddc;border-color:#ccbea3;box-shadow:inset 0 1px #fff8ec;color:var(--ink)}
.box h1,.box h2{color:#2a4053;border-color:#cabb9d}.box a{color:#765122}.box a:hover{color:#4e3517;text-decoration:underline}
.intro{color:#3e5260}.note,.section-intro{color:var(--muted)}.section-kicker{color:#7c5b2d}
.box label{color:#374b59}.box input:not([type=submit]),.box select{background:#fffaf0;color:#293a4a;border-color:#a69b85;color-scheme:light}
.box input::placeholder{color:#6c7479}.login-box input:focus,.box input:focus,.box select:focus{outline:2px solid #9f7936;outline-offset:2px}
.login-box button,.register,.gold-button,.box input[type=submit],.box button,.box .action-link{background:linear-gradient(#e1c181,#cba15c);border:1px solid #9a763d;color:#263446;text-shadow:none;box-shadow:inset 0 1px #fae3b0}
.login-box button:hover,.register:hover,.gold-button:hover,.box input[type=submit]:hover,.box button:hover,.box .action-link:hover{background:#e8cc96;color:#172b3d;text-decoration:none}
.box .action-link.secondary{background:#e4dbc8;border-color:#b6a98e;color:#334b5b;box-shadow:none}.box .action-link.secondary:hover{background:#d9cbae}
th{background:#3c5267;color:#faf0db}td{color:#293d4b;border-color:#cbbb9f}tr:nth-child(even) td{background:#e6dbc660}table.info th{color:#3d505d;border-color:#cbbb9f}
.directory-filters{background:#e7dcc6;border-color:#c2b18e}.result-heading{border-color:#c1af8c}.directory-table small,td>small{color:#626967}
.status-pill{background:#e5ddc9;color:#485246;border-color:#aaa486}.status-pill.online{background:#d8e7cb;color:#315032;border-color:#8aab78}
.property-stats>div{background:#e8ddc8;border-color:#c1b18e;border-top:2px solid #b58f4d}.property-stats small{color:#606966}.property-stats strong{color:#2d4659}
.guild-card,.guild-membership{background:#e9dfcc;border-color:#c2b08c}.guild-card small,.guild-membership small{color:#5c686b}.guild-seal{background:#2e455c;border-color:#b7965f;color:#e1bf7f}
.empty-state{border-color:#b8a27a;background:#eee3ce}.private-field summary{color:#765122}.quiet-link{color:#765122}.danger-link{color:#973f31!important}
.house-plan{background:#e4d7bd;border-color:#b39b70}.house-plan figcaption{color:#586369}
.guild-help{border-color:#beaf92}.guild-help summary{color:#6a502c}.guild-tools a{background:#ddd0b7;border-color:#b59e77;color:#364a57}.guild-tools a:hover{background:#cfbd9a}
.guild-feedback,.guild-invitation{background:#dfe7d2;border-color:#9eae86;color:#334b37}.guild-warning{border-color:#ad7255;color:#773a29}
.box [style*="#A11"]{color:#9b342d!important}.box [style*="#1A1"]{color:#326335!important}
.site-footer{color:#e1ded4;text-shadow:0 1px 2px #172a40}
a,button,input[type=submit]{transition:background-color .15s ease,color .15s ease,border-color .15s ease}a:focus-visible,button:focus-visible{outline:2px solid #c4974f;outline-offset:3px}
@media(prefers-reduced-motion:reduce){a,button,input[type=submit]{transition:none}}
@media(max-width:620px){body{background-size:cover}.masthead p{color:#263849}.brand{font-size:40px}.menu h2:before{display:none}}

/* Public character sheet: clear labels, compact rows, Ravenacore palette. */
.box.character-profile{padding:0;overflow:hidden}
.profile-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;background:#293e51;border-bottom:2px solid #c6a366}
.box .profile-heading h1{margin:0;padding:0;border:0;color:#ead7b0;font-size:21px}
.profile-heading .status-pill{margin:0;flex-shrink:0}
.profile-info{margin:0;font-size:15px;line-height:1.6;table-layout:fixed}
.profile-info th,.profile-info td{padding:13px 20px;border-bottom:1px solid #cebea0;vertical-align:top;overflow-wrap:anywhere}
.profile-info th{width:29%;background:#e4d7bd;color:#293a4a;font-weight:bold}
.profile-info td{background:#f4ead6;color:#293a4a}
.profile-info tr:nth-child(even) td{background:#ede1c9}
.profile-info tr:last-child>*{border-bottom:0}
.profile-name{font-weight:bold}.profile-premium{color:#426344;font-weight:bold}
.character-link{font-weight:bold;text-decoration:underline;text-underline-offset:3px}
.character-search-row{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.box .character-search-row input[type=submit]{margin:0}.profile-back{display:inline-block;margin-top:18px;font-size:13px}
@media(max-width:620px){.profile-heading{padding:13px 12px}.box .profile-heading h1{font-size:18px}.profile-info{font-size:13px}.profile-info th,.profile-info td{padding:11px 12px}.profile-info th{width:36%}.character-search-row input[type=text]{flex:1;min-width:120px}}
/* Framed section plaques, matching the raven-and-gold identity. */
.menu h2{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:62px;margin:-1px -1px 8px;padding:13px 14px;text-align:center;font:bold 18px/1.25 Georgia,'Times New Roman',serif;font-variant:small-caps;letter-spacing:.7px;color:#ead29e;background:linear-gradient(110deg,#ffffff08,transparent 38%,#00000018),linear-gradient(#354b60 0%,#23384c 48%,#192c3e 51%,#263c50 100%);border:1px solid #af915b;border-top-color:#dec38c;border-bottom:2px solid #977848;box-shadow:inset 0 0 0 3px #152636,inset 0 0 0 4px #ab8d534d,0 3px 7px #101d2959;text-shadow:0 1px 2px #07101b;border-radius:3px 3px 0 0}
.menu h2:before{content:none}
.menu h2:after{content:'';position:absolute;left:22%;right:22%;bottom:6px;height:1px;background:linear-gradient(90deg,transparent,#d5b16a99,transparent)}
@media(max-width:620px){.menu h2{font-size:16px;letter-spacing:.3px;min-height:58px;padding:12px 9px}}
/* Transparent raven emblem in the shared site header. */
.masthead{height:auto;min-height:0;padding:24px 16px 28px}
.masthead .brand-logo{display:block;width:min(600px,100%);margin:0 auto;font-size:0;line-height:0;text-shadow:none}
.brand-logo img{display:block;width:100%;height:auto;aspect-ratio:1984/800;object-fit:contain;filter:drop-shadow(0 3px 5px #14223655)}
.masthead p{margin:12px 0 9px}
@media(max-width:620px){.masthead{height:auto;padding:18px 14px 20px}.masthead p{font-size:15px}.masthead small{font-size:9px;letter-spacing:2px}}
/* Contain footer margins so the root background cannot form a bottom strip. */
body{display:flow-root;padding-bottom:14px}
.site-footer{width:calc(100% - 28px);max-width:1272px;margin:28px auto 0;padding:18px 24px;text-align:center;background:linear-gradient(115deg,#344c60f5,#192d40f5 55%,#243c51f5);border:1px solid #ae905b;border-top-color:#ddc08a;border-radius:4px;box-shadow:inset 0 0 0 3px #13253699,inset 0 0 0 4px #d2ac5e24,0 3px 12px #10202c55;color:#e0c58c;text-shadow:0 1px 2px #081724}
.site-footer .footer-title{margin:0;font:small-caps 15px/1.7 Georgia,'Times New Roman',serif;letter-spacing:1px}
.footer-title span{padding:0 12px;color:#b99a5c;font-size:10px}
.site-footer .footer-legal{margin:5px 0 0;color:#c5cbd0;font:11px/1.6 Verdana,Arial,sans-serif}
@media(max-width:620px){.site-footer{width:calc(100% - 18px);padding:16px 14px;margin-top:18px}.site-footer .footer-title{font-size:13px;letter-spacing:.5px}.footer-title span{padding:0 5px}}
/* News typography: compact editorial text within the existing Ravenacore theme. */
.box.news-article{padding:24px 28px;font:15px/1.7 Georgia,'Times New Roman',serif;overflow-wrap:break-word}
.news-article .news-heading{margin-bottom:18px;padding-bottom:13px;border-bottom:1px solid #cabb9d}
.box.news-article .news-date{margin:0 0 7px;font:11px/1.5 Verdana,Arial,sans-serif;color:#6b655b;letter-spacing:.3px}
.box.news-article h1{margin:0;padding:0;border:0;font:bold 23px/1.3 Georgia,'Times New Roman',serif}
.box.news-article h2{margin:23px 0 9px;padding:0;border:0;font:bold 18px/1.4 Georgia,'Times New Roman',serif}
.box.news-article p{margin:0 0 13px;line-height:1.7}
.box.news-article .news-lead{font:15px/1.7 Georgia,'Times New Roman',serif;color:var(--ink)}
.box.news-article ul{padding-left:22px;margin:10px 0 17px}
.box.news-article li{margin:5px 0;line-height:1.65}
.box.news-article .news-author{margin:23px 0 0;padding-top:12px;border-top:1px solid #cabb9d;text-align:right;font:italic 12px/1.6 Georgia,'Times New Roman',serif;color:#686152}
.news-article .news-links{display:block;margin-top:17px;font-size:13px;text-align:right}
@media(max-width:620px){.box.news-article{padding:18px 15px;font-size:15px}.box.news-article h1{font-size:21px}.box.news-article h2{font-size:17px}.news-article .news-links{text-align:left}}
