:root{color-scheme:dark;font-family:'Segoe UI',Arial,sans-serif;color:rgb(232,223,201);background:#111315}*{box-sizing:border-box}body{margin:0;overflow:hidden}#gui{position:fixed;inset:0;background:radial-gradient(ellipse at center,#272b2e,#0b0d0f)}.ghi-stage{position:absolute;left:50%;top:50%;transform-origin:center}.ghi-control{position:absolute;margin:0;font:13px 'Segoe UI',Arial,sans-serif;color:inherit}.ghi-window,.ghi-panel{background:rgb(32,35,38);border:1px solid rgb(168,146,93);box-shadow:inset 0 0 0 2px rgb(82,73,53),0 4px 10px #050607}.ghi-panel{border-color:#524935}.ghi-inset{background:#111315}.ghi-divider{background:#524935;border:0;box-shadow:none}.ghi-caption{position:absolute;left:16px;top:13px;font-size:15px;font-weight:600;color:#dcc797;letter-spacing:.5px}.ghi-text{display:flex;align-items:center;white-space:pre;overflow:hidden;pointer-events:none}.ghi-muted,.ghi-text.ghi-muted{color:#aea694}.ghi-important{color:#dcc797}.ghi-font-small{font-size:10px}.ghi-font-heading{font-size:15px;font-weight:600}.ghi-button,.ghi-list-row{background:linear-gradient(#31312b,#202326);border:1px solid #a8925d;box-shadow:inset 0 1px #cab681,inset 0 -2px #070809,0 1px #08090a;border-radius:3px;cursor:pointer;font:inherit;color:#ebe2cd;text-shadow:0 1px #050607}.ghi-button:hover:not(:disabled),.ghi-list-row:hover{background:#37342b;border-color:#dec58c}.ghi-button:active:not(:disabled){background:#111315}.ghi-action{font-weight:600;color:#f5ebd6;background:linear-gradient(#43433d,#262726 45%,#141618)}.ghi-character{font-weight:600}.ghi-input,.ghi-dropdown{background:#111315;color:#e8dfc9;border:1px solid #5b513a;border-radius:3px;padding:5px 8px;font:inherit;outline:none}.ghi-dropdown{cursor:pointer}.ghi-checkbox{accent-color:#b09760;cursor:pointer}.ghi-list{background:#111315;border:1px solid #524935;overflow:auto;padding:3px;scrollbar-color:#6a5c3e #141618}.ghi-list-row{display:block;position:relative;width:100%;min-height:var(--row-height);padding:8px;text-align:left;white-space:pre-line;margin:0 0 3px;font-size:15px;line-height:1.4;border-color:#4a4333;background:#1a1c1e}.ghi-list-row[aria-selected=true]{background:#373329;border-color:#d6bf88;box-shadow:inset 0 1px #433d2f}.ghi-scrollbar{pointer-events:none}.ghi-button:disabled,.ghi-checkbox:disabled,.ghi-dropdown:disabled{opacity:.45;cursor:default}.ghi-control:focus-visible,.ghi-list-row:focus-visible{outline:2px solid #dec58c;outline-offset:1px}[hidden]{display:none!important}#fatal{position:fixed;inset:40% 15%;color:#e8dfc9;text-align:center;font:16px 'Segoe UI',Arial,sans-serif}

.ghi-checkbox{appearance:none;background:none;border:0}.ghi-checkbox::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:18px;height:18px;background:#111315;border:1px solid #5b513a;border-radius:2px;box-shadow:inset 0 1px 3px #050607}.ghi-checkbox:checked::after{content:"✓";position:absolute;left:2px;top:50%;transform:translateY(-54%);font:19px Arial;color:#dcc797}

.ghi-button{font-size:11px}.ghi-button.ghi-font-heading{font-size:15px}

.ghi-log-row{font:11px/13px "Segoe UI",Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;min-height:13px;color:#e8dfc9}.ghi-list.ghi-textlog{padding:0 3px;border:0;background:transparent}.ghi-panel.ghi-chat{background:rgba(17,19,21,.8)}

.ghi-progressbar{background:#111315;border:1px solid #524935;overflow:hidden;pointer-events:none}.ghi-progress-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(#c6a753,#73602e)}.ghi-health .ghi-progress-fill{background:linear-gradient(#a14a42,#632621)}.ghi-mana .ghi-progress-fill{background:linear-gradient(#4376ae,#24476c)}.ghi-progress-label{position:absolute;inset:0;text-align:center;font:10px/12px "Segoe UI",Arial,sans-serif;text-shadow:0 1px 2px black;color:#e8dfc9}

.ghi-image{object-fit:contain;pointer-events:none}.ghi-inventory .ghi-window{pointer-events:auto}.ghi-inventory .ghi-window.ghi-concept{background:transparent;border:0;box-shadow:none}.ghi-inventory .ghi-button{pointer-events:auto;padding:0}.ghi-inventory .ghi-input{pointer-events:auto}.ghi-inventory .ghi-concept-slot{border:1px solid #6d5940;border-radius:2px;background:#181818;box-shadow:inset 0 0 3px #000}.ghi-inventory .ghi-concept-slot:hover{border-color:#d2ba72}.ghi-inventory .ghi-button[data-selected=true]{outline:1px solid #e6ca84}.ghi-inventory .ghi-button-text{pointer-events:none}.ghi-inventory .ghi-text{justify-content:flex-start;white-space:pre-wrap;text-shadow:0 1px 2px #000}.ghi-inventory .ghi-text[style*="text-align: right"]{justify-content:flex-end}.ghi-inventory-modal{position:absolute;inset:0;z-index:39;pointer-events:auto;background:#0005}

.ghi-inventory .ghi-concept{font-family:Georgia,'Times New Roman',serif}.ghi-inventory .ghi-concept-slot,.ghi-inventory .ghi-concept-close{border:1px solid rgb(168,146,93);border-radius:0;background:rgb(17,19,21);box-shadow:inset 0 0 0 2px rgb(17,19,21),inset 0 0 0 3px rgb(82,73,53)}.ghi-inventory .ghi-concept-slot:hover,.ghi-inventory .ghi-concept-close:hover{border-color:rgb(248,235,204);background:rgb(17,19,21)}.ghi-inventory .ghi-control[data-selected=true]{outline:2px solid rgb(248,235,204);outline-offset:2px}.ghi-inventory .ghi-text{color:rgb(232,223,201)}

#fatal:empty{display:none}

/* Native concept controls use DrawFontFamily::Serif (Palatino Linotype). */
.ghi-inventory .ghi-concept,.ghi-inventory .ghi-concept-slot,.ghi-inventory .ghi-concept-close,.ghi-inventory .ghi-concept-tab{font-family:'Palatino Linotype',Palatino,serif}.ghi-inventory [data-color=gold]{color:rgb(220,199,151)}.ghi-inventory [data-color=pale]{color:rgb(232,223,201)}.ghi-inventory [data-color=muted]{color:rgb(174,166,148)}.ghi-inventory .ghi-container{border:0;background:transparent}.ghi-inventory .ghi-panel.ghi-row{background:#181b1e;box-shadow:none;border:0}.ghi-inventory .ghi-icon{background:#111315;border:1px solid #a8925d;border-radius:0;box-shadow:inset 0 0 0 2px #111315,inset 0 0 0 3px #524935}.ghi-inventory .ghi-panel:not(.ghi-inset):not(.ghi-row){pointer-events:none}.ghi-inventory .ghi-button,.ghi-inventory .ghi-input,.ghi-inventory .ghi-dropdown,.ghi-inventory .ghi-list,.ghi-inventory .ghi-checkbox{pointer-events:auto}

.ghi-inventory .ghi-button.ghi-native-control{border:0!important;box-shadow:none!important;border-radius:0!important;background-color:transparent!important;background-size:100% 100%;background-repeat:no-repeat}.ghi-inventory .ghi-button.ghi-native-control[data-selected=true]{outline:0!important}.ghi-inventory .ghi-button-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ghi-inventory .ghi-native-control:disabled{opacity:1}

.ghi-inventory .ghi-window.ghi-native-control,.ghi-inventory .ghi-panel.ghi-native-control{border:0;box-shadow:none;background-color:transparent;background-size:100% 100%;background-repeat:no-repeat}

.ghi-inventory .ghi-progressbar{background:rgb(17,19,21);border:1px solid rgb(168,146,93)}.ghi-inventory .ghi-progress-fill{background:rgb(167,137,75)}.ghi-inventory .ghi-health .ghi-progress-fill{background:rgb(132,39,45)}.ghi-inventory .ghi-mana .ghi-progress-fill{background:rgb(53,84,119)}.ghi-inventory .ghi-canvas>svg{display:block;width:100%;height:100%;pointer-events:none}

/* Match the native GUI DrawBitmap destination rectangle from the .ghi document. */
.ghi-inventory .ghi-image{object-fit:fill}

.ghi-inventory .ghi-native-slider>svg{display:block;width:100%;height:100%}.ghi-inventory .ghi-native-slider-input{appearance:none;background:transparent;pointer-events:auto;cursor:pointer;padding:0;border:0}.ghi-native-slider-input::-webkit-slider-runnable-track{background:transparent;height:100%}.ghi-native-slider-input::-webkit-slider-thumb{appearance:none;width:1px;height:100%;background:transparent}.ghi-native-slider-input::-moz-range-track{background:transparent}.ghi-native-slider-input::-moz-range-thumb{width:1px;height:100%;background:transparent;border:0}.ghi-checkbox-text{position:absolute;display:flex;align-items:center;pointer-events:none;font:13px 'Segoe UI',Arial,sans-serif;color:inherit}

/* Mobile GUI is enabled by the touch-device adapter, never by PC window size. */
.ghi-mobile{touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent}
.ghi-mobile .ghi-button,.ghi-mobile .ghi-list-row,.ghi-mobile .ghi-input,.ghi-mobile .ghi-dropdown{touch-action:manipulation}
.ghi-mobile .mobile-toolbar,.ghi-mobile .mobile-menu{position:absolute;right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));display:flex;gap:6px;pointer-events:auto;z-index:35}
.ghi-mobile .mobile-menu{top:max(60px,calc(env(safe-area-inset-top) + 60px));display:grid;grid-template-columns:repeat(2, minmax(100px,1fr));padding:8px;background:#111315f5;border:1px solid #a8925d}
.ghi-mobile .mobile-toolbar button,.ghi-mobile .mobile-menu button,.ghi-mobile .mobile-window-header button{min-width:48px;min-height:44px;padding:8px 10px;border:1px solid #a8925d;background:#242724;color:#e8dfc9;font:14px 'Segoe UI',sans-serif;touch-action:manipulation}
.ghi-mobile .mobile-window{position:absolute;inset:0;overflow:auto;overscroll-behavior:contain;background:#101315ed;pointer-events:auto;padding:0 0 max(12px,env(safe-area-inset-bottom));touch-action:pan-x pan-y}
.ghi-mobile .mobile-window-header{position:sticky;top:0;left:0;width:100vw;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(4px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) 4px max(8px,env(safe-area-inset-left));background:#171b20;border-bottom:1px solid #a8925d;font:14px 'Segoe UI',sans-serif;pointer-events:auto}
.ghi-mobile .mobile-window-content{position:relative}
.ghi-mobile [data-gui-name=ActionBar]{padding-bottom:env(safe-area-inset-bottom);transform:translateY(calc(-1 * env(safe-area-inset-bottom)))}
.ghi-mobile [data-gui-name=ActionBar] .ghi-canvas>svg{width:100%;height:100%}
.ghi-mobile .mobile-chat-close{position:absolute;left:8px;top:4px;min-height:44px;padding:8px 12px;background:#242724;color:#e8dfc9;border:1px solid #a8925d;font:14px 'Segoe UI',sans-serif;pointer-events:auto;touch-action:manipulation}
.ghi-mobile .ghi-textlog .ghi-log-row{font-size:14px;line-height:18px;min-height:18px}
@media(max-width:380px){.ghi-mobile .mobile-toolbar{flex-direction:column;width:90px}.ghi-mobile .mobile-menu{top:164px}}
