/* --- Base Styles --- */ body { font-family: sans-serif; background-color: #222; color: #ddd; margin: 0; padding: 15px; line-height: 1.6; } h1, h2, h3 { color: #eee; } h1 { text-align: center; margin-bottom: 20px; } a { color: #8af; } p { margin-bottom: 1em; } /* --- Layout --- */ .game-container { display: flex; flex-wrap: wrap; /* Allow wrapping on smaller screens */ gap: 20px; } #scene-container { flex: 2; /* Takes up more space */ min-width: 300px; /* Minimum width */ min-height: 400px; /* Minimum height */ background-color: #111; /* Fallback bg */ border: 1px solid #444; position: relative; /* Needed for potential overlays */ overflow: hidden; /* Hide anything overflowing canvas */ } #scene-container canvas { display: block; /* Remove extra space below canvas */ } .ui-container { flex: 1; /* Takes up less space */ min-width: 300px; display: flex; flex-direction: column; gap: 20px; } .panel { background-color: #333; border: 1px solid #555; padding: 15px; border-radius: 5px; } /* --- Story UI --- */ #story-ui h2 { margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid #666; padding-bottom: 5px; } #story-content p:last-child { margin-bottom: 0; } #choices { margin-top: 20px; display: flex; flex-direction: column; gap: 10px; } .choice-button { background-color: #4a4a4a; border: 1px solid #666; color: #eee; padding: 10px 15px; border-radius: 4px; cursor: pointer; text-align: left; transition: background-color 0.2s, border-color 0.2s; width: 100%; /* Make buttons fill container */ } .choice-button:hover:not(:disabled) { background-color: #5a5a5a; border-color: #888; } .choice-button:active:not(:disabled) { background-color: #404040; } .choice-button:disabled { opacity: 0.6; cursor: not-allowed; background-color: #404040; border-color: #555; color: #aaa; } /* --- Character Sheet Styling --- */ #character-sheet-container { background-color: #3a3a3a; /* Styles from previous step */ padding: 15px; border: 1px solid #555; border-radius: 5px; display: flex; flex-direction: column; gap: 15px; color: #eee; /* max-width: 450px; /* Removed max-width to let flexbox handle it */ } #character-sheet-container h2, #character-sheet-container h3 { margin: 0 0 10px 0; color: #f0f0f0; border-bottom: 1px solid #666; padding-bottom: 5px; } .char-section { background-color: #444; padding: 10px; border-radius: 4px; } .char-header { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; } .char-header label { font-weight: bold; } #char-name { flex-grow: 1; background-color: #555; border: 1px solid #777; color: #fff; padding: 4px 6px; border-radius: 3px; min-width: 100px; } .char-details { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; } .char-details label, .char-level-xp label { font-weight: bold; color: #ccc; } .char-details span, .char-level-xp span { color: #fff; } .char-level-xp { display: flex; justify-content: space-around; align-items: center; gap: 15px; flex-wrap: wrap; } .char-level-xp div{ display: flex; align-items: center; gap: 5px; } .char-stats h3 { margin-bottom: 5px; } .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 5px 10px; margin-bottom: 10px; } .stats-grid div { background-color: #333; padding: 3px 6px; border-radius: 3px; display: flex; justify-content: space-between; align-items: center; } .stats-grid span { margin-right: 5px; } .char-stats small { color: #aaa; display: block; text-align: center; margin-top: 5px; /* Added space */ } .char-possessions h3 { margin-bottom: 5px; } #char-inventory-list { list-style: decimal; margin: 0; padding-left: 25px; max-height: 180px; overflow-y: auto; background-color: #333; border-radius: 3px; padding-top: 5px; padding-bottom: 5px; } #char-inventory-list li { margin-bottom: 3px; color: #ccc; padding: 2px 5px; min-height: 1.2em; } #char-inventory-list li span:not(.item-slot) { background-color: #5a5a5a; padding: 1px 4px; border-radius: 2px; color: #fff; font-size: 0.9em; cursor: default; } .item-slot { color: #666; font-style: italic; font-size: 0.9em; } /* --- Character Sheet Button Styling --- */ .sheet-button { background-color: #555; border: 1px solid #777; color: #eee; padding: 4px 8px; border-radius: 4px; cursor: pointer; font-size: 0.9rem; line-height: 1.2; transition: background-color 0.2s, border-color 0.2s; text-align: center; white-space: nowrap; /* Prevent wrapping on small buttons */ } .sheet-button:hover:not(:disabled) { background-color: #666; border-color: #999; } .sheet-button:active:not(:disabled) { background-color: #444; } .sheet-button:disabled { opacity: 0.6; cursor: not-allowed; background-color: #484848; border-color: #666; color: #aaa; } /* Stat increase buttons (+) */ .stat-increase { font-size: 1rem; font-weight: bold; padding: 0px 6px; line-height: 1; min-width: 25px; } /* --- Item Type Styling (Example) --- */ /* Add specific styles for item types if desired */ .item-weapon { /* background-color: #733 !important; */ /* border: 1px solid #a55; */ } .item-armor { /* background-color: #367 !important; */ } .item-spell { /* background-color: #737 !important; */ /* font-style: italic; */ } .item-quest { /* color: #fc5 !important; */ /* font-weight: bold; */ }