/* Grimorio Carmesí · Navegación reorganizada · Capa visual no invasiva */
:root { --gc-nav-width: 224px; --gc-panel:#170f0b; --gc-edge:rgba(201,164,92,.28); }
body { padding: 112px 30px 110px calc(var(--gc-nav-width) + 30px); align-items:stretch; }
body::before { z-index:0; }
#gc-sidebar, #gc-topbar, #gc-tools, #gc-actions-toggle { font-family:var(--font-ui); }
#gc-sidebar { position:fixed; inset:0 auto 0 0; width:var(--gc-nav-width); z-index:10001; display:flex; flex-direction:column; padding:26px 13px 18px; border-right:1px solid #78552e; background: radial-gradient(circle at 30% 0,rgba(133,39,29,.23),transparent 55%),linear-gradient(180deg,#20140f 0%,#0d0807 100%); box-shadow:10px 0 28px rgba(0,0,0,.45); }
.gc-brand { display:flex;gap:12px;align-items:center;padding:8px 8px 24px;border-bottom:1px solid var(--gc-edge);color:#f0d69a;font-family:var(--font-title);line-height:1.45;letter-spacing:.08em;font-size:16px; }
.gc-brand-mark { color:#c69d58;font-size:32px; }
.gc-brand small { display:block;font:11px var(--font-ui);letter-spacing:.04em;color:#baa387;margin-top:4px; }
#gc-navigation {display:flex;flex-direction:column;gap:7px;margin-top:24px;}
.gc-nav-button {appearance:none;background:transparent;border:1px solid transparent;border-radius:8px;display:flex;gap:12px;align-items:center;padding:11px 12px;color:#e9dec6;text-align:left;cursor:pointer;font:600 16px var(--font-ui);transition:background .18s,border .18s;min-height:58px;}
.gc-nav-button >span:first-child {flex:none;font-size:23px;width:27px;text-align:center;color:#b99759;}
.gc-nav-button small {display:block;font:12px var(--font-ui);color:#ac9984;margin-top:2px;}
.gc-nav-button:hover,.gc-nav-button:focus-visible {background:rgba(201,164,92,.1);border-color:var(--gc-edge);outline:none;}
.gc-nav-button[aria-current="page"] {background:linear-gradient(90deg,rgba(144,39,28,.36),rgba(201,164,92,.1));border-color:#8e5b3a;color:#ffe4b4;box-shadow:inset 3px 0 #c9a45c;}
.gc-sidebar-footer {margin-top:auto;padding:16px 9px 3px;display:flex;align-items:center;gap:10px;border-top:1px solid var(--gc-edge);font:13px var(--font-ui);color:#c9b18f;}
.gc-sidebar-footer small{color:#9f8a77}.gc-status-dot{height:8px;width:8px;background:#79b894;border-radius:50%;box-shadow:0 0 7px #79b894;}
#gc-topbar {position:fixed;top:0;left:var(--gc-nav-width);right:0;z-index:10000;height:82px;display:flex;align-items:center;gap:16px;padding:9px 26px;background:linear-gradient(90deg,rgba(19,12,9,.98),rgba(36,19,13,.97));border-bottom:1px solid #6d4b2d;box-shadow:0 10px 25px rgba(0,0,0,.4);}
.gc-heading{flex:1;min-width:0}.gc-eyebrow{font:10px var(--font-title);letter-spacing:.18em;color:#a99272}.gc-heading h1{font:700 clamp(18px,2vw,26px) var(--font-title);color:#f0d69a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 0;}
.gc-top-stats{display:flex;gap:8px;align-items:center}.gc-top-stats span{white-space:nowrap;border:1px solid #5c442e;background:#241814;border-radius:7px;padding:7px 10px;color:#ca9d76;font:13px var(--font-ui)}.gc-top-stats b{color:#f4dfbd;}
.gc-top-action,#gc-menu-toggle {background:linear-gradient(#463020,#291c15);color:#f3d69b;border:1px solid #956e39;border-radius:6px;padding:9px 11px;cursor:pointer;font:600 13px var(--font-ui)}.gc-top-action:hover{filter:brightness(1.18)}
#gc-menu-toggle {display:none;font-size:19px;}
#gc-tools {max-width:1400px;width:100%;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 16px;margin:0 auto 23px;border:1px solid var(--gc-edge);border-radius:9px;background:linear-gradient(90deg,rgba(52,31,22,.96),rgba(20,13,10,.95));box-shadow:0 8px 25px rgba(0,0,0,.24)}
#gc-tools[hidden]{display:none}
.gc-search-label{font:12px var(--font-title);color:#d6ba85;white-space:nowrap}.gc-search-row{display:flex;gap:5px;flex:1 1 240px;max-width:460px}.gc-search-row input{width:100%;min-width:0;padding:9px 12px;color:#f3e6cc;border:1px solid #6b5138;background:#100b09;border-radius:5px;font:14px var(--font-ui);}.gc-search-row input:focus{outline:1px solid #c9a45c}.gc-search-row button{padding:0 11px;background:#302019;color:#e9cfaa;border:1px solid #6b5138;border-radius:5px;cursor:pointer;font-size:19px}.gc-search-status{font:12px var(--font-ui);color:#b8a187}
.gc-filter-row{display:flex;gap:6px;flex-wrap:wrap}.gc-filter-row[hidden]{display:none}.gc-filter-row button{border:1px solid #705439;border-radius:14px;background:#221610;color:#c5ae8a;padding:5px 10px;cursor:pointer;font:12px var(--font-ui)}.gc-filter-row button[aria-pressed="true"]{border-color:#b9904a;background:#67402c;color:#fff1ce;}
body[data-gc-view] .page {display:none; max-width:1400px;margin:0 auto 35px;min-width:0;}
body[data-gc-view="character"] #page-1,body[data-gc-view="combat"] #page-1,body[data-gc-view="inventory"] #page-2,body[data-gc-view="campaign"] #page-2,body[data-gc-view="chronicles"] #page-2,body[data-gc-view="spells"] #page-3 {display:flex;}
body[data-gc-view="character"] #page-1 .main-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
body[data-gc-view="character"] #page-1 .col-2 {display:none}
body[data-gc-view="combat"] #page-1 .col-1,body[data-gc-view="combat"] #page-1 .col-3,body[data-gc-view="combat"] #page-1 .header-top{display:none}
body[data-gc-view="combat"] #page-1 .main-grid{grid-template-columns:minmax(0,1fr)}
body[data-gc-view="combat"] #page-1 .col-2{width:100%;max-width:1100px;margin:auto}
body[data-gc-view="inventory"] #page-2 > :not(.page-title-divider):not([data-gc-part="inventory"]),
body[data-gc-view="campaign"] #page-2 > [data-gc-part="inventory"],
body[data-gc-view="chronicles"] #page-2 > :not(.page-title-divider):not([data-gc-part="lore"]) {display:none}
body[data-gc-view="chronicles"] #page-2 > [data-gc-part="lore"] > :first-child {display:none}
body[data-gc-view="chronicles"] #page-2 > [data-gc-part="lore"] {grid-template-columns:minmax(0,1fr)!important}
body[data-gc-view="chronicles"] #page-2 > [data-gc-part="lore"] > :nth-child(2) > .box:not(:last-child) {display:none}
#gc-actions-toggle {position:fixed;right:22px;bottom:16px;z-index:999998;border:1px solid #bd9257;background:linear-gradient(135deg,#743327,#362015);color:#fff2d0;border-radius:22px;padding:12px 18px;font:600 13px var(--font-title);box-shadow:0 7px 25px rgba(0,0,0,.65);cursor:pointer}
body:not(.gc-actions-open) #gc-action-bar {display:none}
body.gc-actions-open #gc-action-bar {display:flex;max-height:min(65vh,450px);overflow:auto;padding-bottom:75px;}
body.gc-actions-open #gc-actions-toggle {bottom:15px;}
body .bottom-action-bar{left:var(--gc-nav-width);width:calc(100% - var(--gc-nav-width));z-index:999997;}
#gc-mobile-shade {display:none;}
/* Refine existing cards and reading contrast without modifying input values */
body[data-gc-view] .page {border-radius:9px;box-shadow:0 16px 60px rgba(0,0,0,.6),inset 0 0 60px rgba(0,0,0,.28);}
body[data-gc-view] .box,body[data-gc-view] .combat-stat {border-radius:7px;}
body[data-gc-view] .page-title-divider {font-size:clamp(15px,1.8vw,21px);letter-spacing:.08em;}
body[data-gc-view] button:focus-visible {outline:2px solid #e6c078;outline-offset:2px;}
body[data-gc-view] .table-responsive {scrollbar-color:#ad864d #211710;}
@media(max-width:1200px){:root{--gc-nav-width:190px}body{padding-left:calc(var(--gc-nav-width) + 18px);padding-right:18px}.gc-nav-button{padding:8px;font-size:14px}#gc-topbar{padding:8px 14px}.gc-top-stats span{padding:6px 7px}}
@media(max-width:900px){:root{--gc-nav-width:0px}body{padding:95px 14px 105px}#gc-sidebar{width:248px;transform:translateX(-103%);transition:transform .2s;z-index:100003}body.gc-mobile-menu-open #gc-sidebar{transform:translateX(0)}#gc-mobile-shade{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:100002}body.gc-mobile-menu-open #gc-mobile-shade{display:block}#gc-menu-toggle{display:inline-flex}#gc-topbar{left:0;height:74px}.gc-top-stats{gap:3px}.gc-top-stats span{font-size:11px;padding:5px}.gc-top-action span{display:none}.gc-top-action{padding:8px}body[data-gc-view="character"] #page-1 .main-grid{grid-template-columns:minmax(0,1fr)}.bottom-action-bar{left:0!important;width:100%!important}#gc-actions-toggle{right:12px;bottom:12px}}
@media(max-width:540px){body{padding:86px 9px 95px}#gc-topbar{padding:8px 9px;gap:7px}.gc-eyebrow{font-size:8px;letter-spacing:.08em}.gc-heading h1{font-size:16px}.gc-top-stats span:last-child{display:none}.gc-top-stats span{font-size:10px}.gc-top-action{padding:6px}.gc-search-label{width:100%}#gc-tools{padding:10px;margin-bottom:12px;gap:7px}.page{padding:23px 12px!important}.gc-nav-button{min-height:54px}#gc-actions-toggle{font-size:11px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){#gc-sidebar{transition:none}}
