:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--obr-text, #e7e7ea);background:var(--obr-bg, #17181b);font-synthesis:none;--surface: var(--obr-paper, #23252a);--surface-2: color-mix(in srgb, var(--surface) 82%, var(--obr-text, white) 4%);--border: color-mix(in srgb, var(--obr-text, white) 18%, transparent);--muted: var(--obr-text-secondary, #a6a7ad);--accent: var(--obr-primary, #8f7cff);--danger: #e06565;--warning: #d7a64a}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--obr-bg, #17181b);color:var(--obr-text, #e7e7ea)}button,input,textarea,select{font:inherit;color:inherit}button{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:.55rem .75rem;cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);color:#fff;border-color:transparent;font-weight:700}input,textarea,select{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:7px;padding:.55rem .6rem;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}textarea{resize:vertical}h1,h2,p{margin-top:0}h1{font-size:1.35rem;margin-bottom:.2rem}h2{font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0}.popover-page{min-height:100vh;padding:14px}.centered{display:grid;align-content:center;justify-items:center;text-align:center;gap:12px}.page-header,.sheet-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-header.compact{margin-bottom:12px}.page-header p{color:var(--muted);margin-bottom:0;font-size:.9rem}.notice,.error,.empty{padding:.8rem;border-radius:8px;margin-bottom:12px}.notice{background:color-mix(in srgb,var(--warning) 16%,transparent);border:1px solid color-mix(in srgb,var(--warning) 35%,transparent)}.error{background:color-mix(in srgb,var(--danger) 14%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent)}.empty{border:1px dashed var(--border);color:var(--muted);text-align:center}.character-list{display:grid;gap:10px}.character-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.character-main{border:0;background:transparent;width:100%;text-align:left;display:grid;gap:3px;padding:.85rem;border-radius:0}.character-main strong{font-size:1rem}.character-main span,.character-main small{color:var(--muted)}.card-actions,.list-footer{display:flex;gap:6px;flex-wrap:wrap}.card-actions{padding:0 .7rem .7rem}.card-actions button{padding:.35rem .55rem;font-size:.8rem}.list-footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.danger-text{color:var(--danger)}.sheet-page{min-height:100vh;background:var(--obr-bg, #17181b)}.sheet-toolbar{position:sticky;top:0;z-index:10;padding:10px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--obr-bg, #17181b) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sheet-toolbar>div:first-child{display:flex;align-items:baseline;gap:12px}.toolbar-actions{display:flex;gap:8px;align-items:center}.toolbar-actions select{min-width:180px}.save-state{font-size:.78rem;color:var(--muted)}.save-state.error{color:var(--danger);background:none;border:0;padding:0;margin:0}.inline-error{margin:10px 14px 0}.sheet-content{width:min(1180px,100%);margin:0 auto;padding:14px;display:grid;gap:14px}.character-shell{display:grid;grid-template-columns:62px minmax(0,1fr);min-height:calc(100vh - 62px)}.sheet-view-tabs{position:sticky;top:62px;align-self:start;height:calc(100vh - 62px);padding:12px 7px;border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:10px}.sheet-view-tab{display:flex;justify-content:center;align-items:center;width:46px;height:46px;padding:10px;color:var(--muted)}.sheet-view-tab svg{width:27px;height:27px}.sheet-view-tab.active{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--surface))}.sheet-view-body{min-width:0}.read-only-encumbrance{display:flex;align-items:center;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:color-mix(in srgb,var(--surface) 90%,black 10%);font-weight:650}.sheet-section{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:12px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-heading button{padding:.35rem .6rem}.grid{display:grid;gap:10px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.character-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:10px}.character-grid>.field{grid-column:span 2}.character-grid>.field:nth-child(4),.character-grid>.field:nth-child(5),.character-grid>.field:nth-child(6),.character-grid>.field:nth-child(11){grid-column:span 1}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quarter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.field{display:grid;align-content:start;gap:4px;min-width:0}.field-label{color:var(--muted);font-size:.76rem;font-weight:650}.field small{color:var(--warning);font-size:.72rem}.attribute-grid,.saving-grid,.adventuring-grid{display:grid;gap:7px}.attribute-row{display:grid;grid-template-columns:48px 1fr 54px;gap:8px;align-items:center}.attribute-row output{text-align:center;font-size:1.1rem;font-weight:800;color:var(--accent)}.saving-row{display:grid;grid-template-columns:minmax(0,1fr) 64px 64px;gap:6px;align-items:center}.adventuring-row{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px;align-items:center}.adventuring-row strong{min-width:0;overflow-wrap:anywhere}.quarter-row .saving-row input,.quarter-row .adventuring-row input{padding:.45rem .35rem}.inline-input{display:flex;gap:5px}.inline-input button{flex:0 0 auto}.dynamic-list{display:grid;gap:8px}.dynamic-row{display:grid;gap:8px;align-items:center}.proficiency-row{grid-template-columns:minmax(0,1fr) 130px auto}.weapon-list{overflow-x:auto}.weapon-row{grid-template-columns:minmax(220px,2.6fr) minmax(90px,1fr) minmax(90px,1fr) minmax(110px,1.3fr) minmax(120px,1.4fr) auto;min-width:760px;align-items:end}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:7px}.icon-button svg{display:block;width:18px;height:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted);margin-bottom:0}.equipment-content{width:100%;max-width:1800px}.equipment-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;width:100%;min-width:0}.equipment-column{padding:10px 8px;min-width:0;align-self:start;transition:border-color .12s}.equipment-column-over{border-color:var(--accent)}.equipment-column h2{font-size:.77rem;letter-spacing:.04em}.equipment-sort{flex:0 0 auto;font-size:.75rem;padding:3px 7px;border:none;background:transparent;color:var(--muted)}.equipment-sort:hover{color:var(--accent)}.equipment-items,.coin-list{display:grid;gap:3px}.equipment-item-row{display:grid;grid-template-columns:17px 66px minmax(0,1fr) 26px;align-items:center;gap:4px;border-radius:6px;padding:3px 1px;min-height:38px;touch-action:manipulation}.equipment-item-row:hover,.equipment-item-row:focus-within,.equipment-item-row.row-selected{background:color-mix(in srgb,var(--accent) 9%,transparent)}.equipment-item-row.row-dragging{opacity:.4;background:color-mix(in srgb,var(--accent) 20%,transparent)}.equipment-drag-preview{padding:8px 12px;border:1px solid var(--accent);border-radius:7px;background:var(--surface);box-shadow:0 10px 25px #0007;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;cursor:grabbing}.equipment-item-row input{min-width:0;padding:6px 5px;height:34px;font-size:.87rem}.equipment-item-row.quantity-zero input,.equipment-item-row.quantity-zero .coin-label{color:var(--muted)}.item-drag-handle{border:0;background:transparent;padding:0;width:17px;height:26px;line-height:26px;cursor:grab;color:var(--muted);font-size:1.2rem;touch-action:none}.item-drag-handle:active{cursor:grabbing}.item-drag-spacer{width:17px}.item-quantity{display:flex;align-items:center;position:relative;min-width:0}.item-quantity input{width:100%;padding-right:17px;text-align:right}.item-stepper{display:flex;flex-direction:column;position:absolute;right:1px;top:0;height:34px}.item-stepper button{border:0;border-radius:0;background:transparent;padding:0;line-height:13px;font-size:.7rem;width:16px;height:17px;color:var(--muted)}.item-stepper button:hover{color:var(--accent)}.row-hover-actions{visibility:hidden;opacity:0;transition:opacity .12s}.equipment-item-row:hover .row-hover-actions,.equipment-item-row:focus-within .row-hover-actions,.equipment-item-row.row-selected .row-hover-actions{visibility:visible;opacity:1}.equipment-delete .icon-button{width:26px;height:32px;padding:3px}.equipment-delete svg{width:17px;height:17px}.equipment-add-row{margin-top:7px;border-top:1px dashed var(--border);padding-top:9px}.equipment-add-row>input{border-style:dashed}.equipment-add-row .item-add-button{width:26px;padding:0;font-size:1.2rem}.item-inline-error{grid-column:1 / -1;color:var(--danger)}.coin-row{grid-template-columns:17px 66px minmax(0,1fr)}.coin-label{padding-left:8px;font-weight:700}.gems-separator{color:var(--muted);border-bottom:1px solid var(--border);margin:9px 0 5px;padding-bottom:6px;text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;font-weight:700}.encumbrance-panel{padding:14px 18px}.encumbrance-summary{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap;margin-bottom:14px}.encumbrance-summary>strong{font-size:1.15rem}.encumbrance-summary>span:last-child{margin-left:auto;color:var(--muted);font-size:.86rem}.encumbrance-level{font-weight:750}.encumbrance-level.unbelastet{color:#4abf76}.encumbrance-level.leicht{color:#e9d34d}.encumbrance-level.mittel{color:#ed9850}.encumbrance-level.schwer{color:#e66060}.encumbrance-level.ueberladen{color:#af7bfc}.load-chart{padding:0 2px}.load-track{height:19px;width:100%;background:color-mix(in srgb,var(--surface) 65%,white 7%);border:1px solid var(--border);border-radius:5px;position:relative}.load-fill{height:100%;border-radius:4px;transition:width .16s}.load-fill.unbelastet{background:#3db36b}.load-fill.leicht{background:#e9d34d}.load-fill.mittel{background:#eb9b36}.load-fill.schwer{background:#d95757}.load-fill.ueberladen{background:#9c66e8}.load-marker{position:absolute;top:-4px;height:25px;width:1px;background:currentColor;opacity:.8;z-index:1}.load-labels{height:22px;position:relative;margin-top:5px;font-size:.73rem;color:var(--muted)}.load-label{position:absolute;transform:translate(-50%);white-space:nowrap}.load-label.first{transform:translate(0)}.load-label.last{transform:translate(-100%)}.encumbrance-panel .notice{margin:10px 0 0}.equipment-context-backdrop{position:fixed;inset:0;z-index:30}.equipment-context-menu{position:fixed;z-index:31;min-width:200px;background:var(--surface);box-shadow:0 9px 28px #0008;border:1px solid var(--border);border-radius:8px;padding:5px}.equipment-context-menu button,.equipment-recipient-menu button{display:flex;justify-content:space-between;gap:12px;background:transparent;border:0;text-align:left;width:100%;padding:8px 10px;border-radius:5px}.equipment-context-menu button:hover:not(:disabled),.equipment-recipient-menu button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 17%,transparent)}.equipment-menu-submenu{position:relative}.equipment-recipient-menu{position:absolute;left:calc(100% - 2px);top:-5px;max-height:min(320px,65vh);overflow:auto;min-width:190px;width:max-content;max-width:min(280px,50vw);border:1px solid var(--border);border-radius:8px;padding:5px;background:var(--surface);box-shadow:0 9px 28px #0008}.menu-open-left .equipment-recipient-menu{left:auto;right:calc(100% - 2px)}.menu-open-up .equipment-recipient-menu{top:auto;bottom:-5px}.equipment-dialog-backdrop{position:fixed;inset:0;z-index:40;background:#0009;display:grid;place-items:center;padding:18px}.equipment-transfer-dialog{width:min(400px,100%);box-shadow:0 16px 50px #0008;display:grid;gap:12px}.equipment-transfer-dialog h2,.equipment-transfer-dialog p{margin:0}.equipment-dialog-actions{display:flex;justify-content:flex-end;gap:8px}@media(hover:none){.equipment-item-row.row-selected .row-hover-actions,.equipment-item-row:focus-within .row-hover-actions{visibility:visible;opacity:1}.equipment-item-row .item-drag-handle{font-size:1.35rem}}@media(max-width:1100px){.quarter-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.quarter-row,.two-column{grid-template-columns:1fr}.grid-4,.grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sheet-toolbar{align-items:flex-start}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end}}@media(max-width:560px){.character-shell{grid-template-columns:52px minmax(0,1fr)}.sheet-view-tabs{padding:8px 4px}.sheet-view-tab{width:42px;height:42px}.encumbrance-summary>span:last-child{margin-left:0}.grid-2,.grid-3,.grid-4,.grid-6{grid-template-columns:1fr}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-grid>.field{grid-column:span 1}.saving-row{grid-template-columns:1fr 85px 85px}.proficiency-row{grid-template-columns:1fr 90px}.proficiency-row button{grid-column:1 / -1}}
