.character-builder-launch{min-height:38px;white-space:nowrap}.character-builder-host[hidden],[data-authoring-static][hidden]{display:none!important}.character-builder-shell{display:grid;gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel-soft) 65%,var(--panel)),var(--panel))}.character-builder-shell[aria-busy=true]{opacity:.7;pointer-events:none}.character-builder-heading,.character-builder-summary,.character-builder-step>summary,.character-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.character-builder-heading{align-items:flex-start}.character-builder-heading h4,.character-builder-heading p,.character-builder-summary strong,.character-builder-summary span{margin:0}.character-builder-heading p,.character-builder-summary span,.character-builder-choice p,.character-builder-missing li span,.character-builder-grants li{color:var(--muted);font-size:.82rem}.character-builder-request{display:grid;grid-template-columns:minmax(220px,1fr) minmax(110px,150px) auto;align-items:end;gap:12px}.character-builder-request .inline-field{min-height:42px}.character-builder-summary{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.character-builder-warnings,.character-builder-problems{margin:0;padding-left:20px;color:var(--warn)}.character-builder-timeline{display:grid;gap:8px}.character-builder-step{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.character-builder-step>summary{min-height:48px;padding:8px 12px;cursor:pointer;list-style:none}.character-builder-step>summary::-webkit-details-marker{display:none}.character-builder-step>summary strong{flex:1}.character-builder-step>summary i{color:var(--muted);font-size:.76rem;font-style:normal;text-transform:uppercase;letter-spacing:.05em}.character-builder-step.is-complete>summary{background:color-mix(in srgb,var(--accent) 7%,var(--panel))}.character-builder-step.is-blocked>summary{background:color-mix(in srgb,var(--warn) 6%,var(--panel))}.character-builder-status{display:inline-grid;width:24px;height:24px;place-items:center;border-radius:999px;background:var(--panel-soft);color:var(--muted);font-weight:800}.is-complete .character-builder-status,.is-ready .character-builder-status{color:var(--accent-strong)}.is-blocked .character-builder-status{color:var(--warn)}.character-builder-step-body{display:grid;gap:12px;padding:14px;border-top:1px solid var(--line)}.character-builder-choice{display:grid;min-width:0;gap:8px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px}.character-builder-choice legend{padding:0 6px;font-weight:700}.character-builder-choice legend i{color:var(--muted);font-size:.74rem;font-style:normal}.character-builder-choice select[multiple],.character-builder-choice textarea{width:100%;min-height:86px}.character-builder-choice select[multiple] option{padding:5px 7px}.character-builder-variant-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.character-builder-variant-values label,.character-builder-variant-mode{display:grid;gap:5px}.character-builder-variant-values span,.character-builder-variant-mode span{color:var(--muted);font-size:.78rem}.character-builder-missing,.character-builder-grants{display:grid;gap:6px}.character-builder-missing ul,.character-builder-grants ul{display:grid;gap:5px;margin:0;padding-left:20px}.character-builder-reference{border:0;background:transparent;color:var(--accent-strong);padding:0;text-decoration:underline;cursor:pointer}.character-builder-actions{flex-wrap:wrap;justify-content:flex-end}.character-builder-error{padding:16px;border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--warn) 7%,var(--panel))}@media(max-width:860px){.character-builder-request{grid-template-columns:1fr}.character-builder-heading,.character-builder-summary{align-items:stretch;flex-direction:column}}.note-images{min-width:0}.note-images .note-image-preview{width:100%;height:140px;object-fit:contain;border-radius:8px;background:var(--panel-soft)}.note-images [hidden]{display:none}.note-images [role=status]:empty{display:none}.note-images .token-drop{cursor:pointer}.note-images .token-gallery{max-height:360px;overflow:auto}.note-images .field:has(.token-gallery){min-width:0}.remote-vault-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--line, #6c727b);border-radius:16px;background:var(--panel, #20232a);color:var(--ink, #f3f3f3)}.remote-vault-dialog::backdrop{background:#0009}.remote-vault-form{display:grid;gap:20px}.remote-vault-form header{display:flex;align-items:center;justify-content:space-between;gap:16px}.remote-vault-form h2{margin:0;font-size:1.2rem}.remote-vault-form [data-fields]{display:grid;gap:16px}.remote-vault-form label{display:grid;gap:6px}.remote-vault-form label[hidden]{display:none}.remote-vault-form input{box-sizing:border-box;width:100%}.remote-vault-form .remote-vault-remember{display:flex;align-items:center;gap:8px}.remote-vault-remember input{width:auto;margin:0}.remote-vault-list{display:grid;gap:10px}.remote-vault-list button{padding:16px;text-align:left;font-size:1rem}.remote-vault-actions{display:flex;justify-content:flex-end;gap:12px}.remote-vault-status{margin:0;font-size:.9rem}.remote-vault-status:empty{display:none}.remote-vault-form[aria-busy=true] .remote-vault-status:before{content:"";display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:remote-vault-loading .8s linear infinite}@keyframes remote-vault-loading{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.remote-vault-form[aria-busy=true] .remote-vault-status:before{animation:none}}.vault-mirror-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--line, #6c727b);border-radius:16px;background:var(--panel, #20232a);color:var(--ink, #f3f3f3)}.vault-mirror-dialog::backdrop{background:#0009}.vault-mirror-dialog h2{margin:0 0 16px;font-size:1.2rem}.vault-mirror-body{display:grid;gap:12px}.vault-mirror-body p{margin:0;line-height:1.45}.vault-mirror-lead{font-weight:600}.vault-mirror-warning{padding:10px 12px;border-left:3px solid var(--warning, #e0a84b);border-radius:6px;background:color-mix(in srgb,var(--warning, #e0a84b) 12%,transparent)}.vault-mirror-note{font-size:.88rem;opacity:.8}.vault-mirror-paths summary{cursor:pointer}.vault-mirror-paths ul{max-height:180px;overflow:auto;margin:8px 0 0;padding-left:20px;font-size:.85rem;overflow-wrap:anywhere}.vault-mirror-more{list-style:none;opacity:.7}.vault-mirror-option{display:flex;align-items:center;gap:8px;font-weight:600}.vault-mirror-option input{width:auto;margin:0}.vault-mirror-status{margin:16px 0 0;font-size:.9rem}.vault-mirror-status:empty{display:none}.vault-mirror-dialog[aria-busy=true] .vault-mirror-status:before{content:"";display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:vault-mirror-loading .8s linear infinite}@keyframes vault-mirror-loading{to{transform:rotate(360deg)}}.vault-mirror-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.vault-mirror-actions:empty{display:none}.project-mirror{display:grid;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line, #6c727b)}.project-mirror[hidden]{display:none}.project-mirror>span{font-size:.8rem;font-weight:650;opacity:.8}.project-mirror small{font-size:.78rem;opacity:.75;overflow-wrap:anywhere}.project-icon-setting{display:flex;align-items:center;gap:16px;margin:16px 0}.project-icon-preview{position:relative;display:grid;place-items:center;width:80px;height:80px;flex:0 0 80px;overflow:hidden;border:1px solid var(--line);border-radius:12px;font:36px Georgia,serif;color:var(--accent)}.project-icon-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.project-icon-controls{display:grid;gap:8px;min-width:0;flex:1}.project-icon-controls label{display:grid;gap:6px}.project-icon-controls select{width:100%;min-width:0}.project-icon-buttons{display:flex;flex-wrap:wrap;gap:8px}.project-icon-controls small:empty{display:none}.action-parameter-definition{border:1px solid var(--line, #658289);border-radius:8px;padding:.8rem;margin:.6rem 0}.action-parameter-row{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem;margin:.4rem 0}.action-parameter-field{display:flex;flex:1 1 110px;flex-direction:column;gap:.25rem;min-width:0}.action-parameter-field span{font-size:.85em}.action-parameter-field input,.action-parameter-field select,.action-parameter-field textarea{box-sizing:border-box;width:100%;min-width:0}.action-parameter-field:has(input[type=checkbox]){flex-direction:row-reverse;justify-content:start;align-items:center;margin:.6rem 0}.action-parameter-field input[type=checkbox]{width:auto}.action-parameter-default{display:grid;gap:.5rem;margin:.7rem 0}.action-parameter-limits{margin-top:.7rem}.action-parameter-limits .field{margin:.4rem 0}.action-parameter-literal>input,.action-parameter-literal>select{width:100%}.action-parameter-form{display:grid;gap:1rem;padding:1rem}.action-parameter-window .ui-window-body{display:block;overflow:auto}.action-parameter-form footer{display:flex;justify-content:end;gap:.6rem}.action-parameter-form [role=alert]{color:var(--danger, #ffad9e);margin:0}.effect-editor{padding:14px;border:1px solid var(--line);border-radius:8px;color:var(--ink, var(--text))}.effect-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.effect-editor-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px}.effect-editor-field input,.effect-editor-field select,.effect-editor-field textarea{box-sizing:border-box;width:100%;min-width:0;padding:8px;color:inherit;background:var(--field, var(--field-bg));border:1px solid var(--line);border-radius:5px;font:inherit}.effect-editor-field:has(textarea),.effect-editor-check,.effect-editor-image{grid-column:1 / -1}.effect-editor-check{flex-direction:row;align-items:center;justify-content:space-between}.effect-editor-check input{width:auto}.effect-editor-preview{display:flex;align-items:center;gap:12px;padding-bottom:12px}.effect-editor-badge{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:6px;font-size:24px}.effect-editor-badge img{width:36px;height:36px;object-fit:contain}.effect-editor-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.effect-editor-advanced{margin-top:14px}.effect-editor-advanced summary{margin-bottom:12px;cursor:pointer;color:var(--muted)}.effect-editor-alert,.effect-editor-hint{display:block;color:var(--muted);margin-top:8px}.effect-editor [hidden]{display:none!important}.effect-image-dialog{width:min(700px,calc(100vw - 40px));max-height:85vh;overflow:auto;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:20px}.effect-image-dialog::backdrop{background:#0008}.effect-image-dialog>footer{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.effect-step-template{display:flex;align-items:end;gap:10px;margin-bottom:10px}.effect-step-template label{flex:1}@media(max-width:550px){.effect-editor-grid{grid-template-columns:minmax(0,1fr)}}.image-picker-dialog{width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:18px;border:1px solid var(--line, #3a4a50);border-radius:12px;background:var(--panel, #172227);color:inherit}.image-picker-dialog::backdrop{background:#0000008c}.image-picker-dialog h2{margin:0 0 12px;font-size:1.05rem}.image-picker-body{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;align-items:start}.image-picker-list{display:grid;gap:8px;min-width:0}.image-picker-list select{width:100%;min-height:220px}.image-picker-preview{display:grid;place-items:center;aspect-ratio:1;border:1px dashed var(--line, #3a4a50);border-radius:10px;color:var(--muted, #9fb0b4);text-align:center;padding:8px}.image-picker-preview img{max-width:100%;max-height:100%;object-fit:contain}.image-picker-preview [hidden]{display:none}.image-picker-status{display:block;min-height:1.2em;margin-top:8px;color:var(--muted, #9fb0b4)}.image-picker-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:10px}@media(max-width:560px){.image-picker-body{grid-template-columns:1fr}.image-picker-preview{max-width:180px}}.writing-outline{display:grid;gap:4px}.writing-section-row{position:relative;display:flex;align-items:center;min-width:0;margin-left:calc(var(--section-depth, 0) * 16px);border:1px solid transparent;border-radius:6px;color:var(--ink)}.writing-section-row:hover,.writing-section-row:focus-within,.writing-section-row.is-selected{border-color:var(--line);background:var(--panel-soft)}.writing-section-row.is-selected{box-shadow:inset 3px 0 var(--accent)}.writing-section-select{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:56px;padding:8px 6px 8px 10px;border:0;background:transparent;color:inherit;text-align:left}.writing-section-select[data-movable=true]{cursor:grab;-webkit-user-select:none;user-select:none}.writing-section-select:active{cursor:grabbing}.writing-section-order{flex:0 0 auto;min-width:30px;max-width:68px;padding:5px;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:11px;text-align:center;overflow-wrap:anywhere;touch-action:none}.writing-section-copy{display:grid;gap:3px;min-width:0}.writing-section-copy strong,.writing-section-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.writing-section-copy small{color:var(--muted);font-size:11px}.writing-section-delete{flex:0 0 26px;width:26px;height:28px;padding:0;margin-right:4px;border:0;border-radius:4px;color:var(--muted);background:transparent;font-size:20px;opacity:0}.writing-section-row:hover .writing-section-delete,.writing-section-row:focus-within .writing-section-delete{opacity:1}.writing-section-delete:hover{color:var(--danger, #cf6767);background:color-mix(in srgb,currentColor 10%,transparent)}.writing-section-row.is-drag-source{opacity:.45}.writing-section-row[data-drop]:after{content:attr(data-drop-label);position:absolute;z-index:3;left:0;right:0;padding:2px 6px;color:var(--ink);background:var(--panel-strong);border:1px solid var(--accent);border-radius:3px;font-size:10px;pointer-events:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.writing-section-row[data-drop=before]:after{top:-12px;border-top-width:3px}.writing-section-row[data-drop=after]:after{bottom:-12px;border-bottom-width:3px}.writing-section-row[data-drop=inside]{outline:2px solid var(--accent);outline-offset:-2px}.writing-section-row[data-drop=inside]:after{bottom:-6px;left:24px}.writing-outline-end{display:none;min-height:40px;align-items:center;justify-content:center;color:var(--muted);border:1px dashed var(--line);border-radius:6px;font-size:12px}.writing-outline.is-dragging .writing-outline-end{display:flex}.writing-outline-end.is-drop-target{color:var(--ink);border-color:var(--accent);background:var(--panel-soft)}.writing-outline-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.writing-outline[aria-busy=true]{opacity:.65;pointer-events:none}@media(hover:none){.writing-section-delete{opacity:1}}.writing-collection-tabs,.writing-journal-tabs{display:flex;gap:5px}.writing-collection-tabs{position:sticky;top:-12px;z-index:2;padding:10px 0;background:var(--panel)}.writing-collection-tabs button{flex:1}.writing-collection-tabs [aria-pressed=true],.writing-journal-tabs [aria-pressed=true]{border-color:var(--accent);background:var(--panel-soft);color:var(--ink);box-shadow:inset 0 -2px var(--accent)}.writing-journal-list{display:grid;align-content:start;gap:5px;min-width:0}.writing-journal-row{display:grid;gap:4px;min-width:0;width:100%;padding:12px;text-align:left;border:1px solid transparent;border-radius:6px;color:var(--ink);background:transparent}.writing-journal-row small{color:var(--muted)}.writing-journal-row strong,.writing-journal-row small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.writing-journal-row:hover,.writing-journal-row[aria-pressed=true]{border-color:var(--line);background:var(--panel-soft)}.writing-journal-row[aria-pressed=true]{box-shadow:inset 3px 0 var(--accent)}.writing-journal-workspace{display:flex;flex-direction:column;height:100%;min-height:0;color:var(--ink)}.writing-journal-header,.writing-journal-controls,.writing-journal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;flex:0 0 auto;border-bottom:1px solid var(--line);flex-wrap:wrap}.writing-journal-header h3{margin:0 0 3px;font-size:19px}.writing-journal-header small,.writing-journal-footer{color:var(--muted);font-size:12px}.writing-journal-workspace .inline-actions,.writing-book-dialog .inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.writing-journal-controls [data-page-actions]{margin-left:auto}.writing-journal-controls .icon-action{width:28px;height:30px;border:1px solid var(--line);border-radius:5px;color:var(--muted);background:transparent}.writing-journal-controls .icon-action:hover{color:var(--danger, #cf6767)}.writing-journal-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(120px,170px) minmax(0,1fr)}.writing-journal-pages{overflow-y:auto;padding:10px;border-right:1px solid var(--line)}.writing-journal-bookmark{display:block;width:100%;padding:10px;margin-bottom:4px;border:0;border-radius:5px;background:transparent;color:var(--muted);text-align:left;overflow-wrap:anywhere}.writing-journal-bookmark:hover,.writing-journal-bookmark[aria-current=page]{color:var(--ink);background:var(--panel-soft)}.writing-journal-page{display:flex;flex-direction:column;min-width:0;min-height:0}.writing-journal-page article,.writing-journal-page textarea{flex:1;min-height:0;width:100%;box-sizing:border-box;padding:24px;margin:0;overflow:auto}.writing-journal-page article{font-size:16px;line-height:1.7}.writing-journal-page .rich-image{display:block;max-width:100%;max-height:450px;object-fit:contain}.writing-journal-page .rich-image-link,.writing-journal-page .rich-entity-image{max-width:100%;padding:0;background:none;border:0;color:inherit}.writing-journal-page .rich-link{color:var(--accent)}.writing-journal-page textarea{border:0;border-radius:0;resize:none;background:var(--field);color:var(--ink);font:15px/1.7 ui-monospace,monospace}.writing-journal-page textarea:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.writing-journal-format{display:flex;flex-wrap:wrap;gap:5px;padding:8px 12px;border-bottom:1px solid var(--line)}.writing-journal-format button{padding:4px 8px;font-size:12px}.writing-journal-footer{border-top:1px solid var(--line);border-bottom:0;padding-block:8px}.writing-journal-alert,.writing-journal-conflict{padding:10px 16px;color:var(--ink);background:var(--panel-soft);border-left:3px solid var(--accent)}.writing-journal-alert button{margin-left:12px}.writing-journal-conflict{max-height:35%;overflow:auto}.writing-journal-conflict pre{white-space:pre-wrap;max-height:150px;overflow:auto}.writing-book-dialog{width:min(480px,calc(100vw - 40px));padding:22px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:10px}.writing-book-dialog::backdrop{background:#0008}.writing-book-dialog h3{margin:0 0 8px}.writing-book-dialog .field input,.writing-book-dialog .field select{width:100%;box-sizing:border-box}.writing-book-hint{font-size:12px;color:var(--muted)}.writing-journal-workspace [hidden],.writing-book-dialog [hidden]{display:none!important}@media(max-width:900px){.writing-journal-body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.writing-journal-pages{display:flex;max-height:90px;border-right:0;border-bottom:1px solid var(--line);gap:4px}.writing-journal-bookmark{width:auto;min-width:100px;margin:0}.writing-journal-page article,.writing-journal-page textarea{padding:16px}}.ichorolude-recovery-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px)}.ichorolude-recovery-dialog h2{margin:0;font-size:1.15rem}.ichorolude-recovery-dialog section{display:grid;gap:14px;min-width:0}.ichorolude-recovery-dialog ul{margin:0;padding-left:20px;overflow-wrap:anywhere}.ichorolude-recovery-dialog article{border-top:1px solid var(--line);padding-top:12px;min-width:0}.ichorolude-recovery-dialog label{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,1fr);align-items:center;gap:12px;overflow-wrap:anywhere}.ichorolude-recovery-dialog details{margin-top:10px}.ichorolude-recovery-dialog pre{max-height:200px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem}.ichorolude-recovery-dialog footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.ichorolude-recovery-dialog footer button{white-space:normal}@media(max-width:480px){.ichorolude-recovery-dialog label{grid-template-columns:1fr}}.entity-reception-status{position:sticky;top:0;z-index:5;padding:.4rem .7rem;border-radius:.35rem;background:#293c4a;color:#f0f6fc;font-size:.8rem}.entity-reception-status[hidden]{display:none}.is-receiving{cursor:progress}.is-receiving>.entity-reception-status:before{content:"";display:inline-block;width:.65rem;height:.65rem;margin-right:.5rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:entity-reception-spin .8s linear infinite}.entity-reception-status.is-error{background:#5a3431}@keyframes entity-reception-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.is-receiving>.entity-reception-status:before{animation:none}}.mapmaking{display:flex;flex-direction:column;min-height:600px;height:calc(100vh - 170px);color:var(--ink, #ddd);background:var(--panel);--border:var(--line)}:root[data-view=mapmaking] .detail-pane{padding:0;overflow:hidden}:root[data-view=mapmaking] .workspace .content-grid{grid-template-columns:minmax(0,1fr)}:root[data-view=mapmaking] .content-grid>.list-pane,:root[data-view=mapmaking] .content-grid>.panel-resizer{display:none}:root[data-view=mapmaking] .mapmaking{height:100%;min-height:0}.mapmaking button,.mapmaking input,.mapmaking select{font:inherit;max-width:100%}.mapmaking button{cursor:pointer;border:1px solid var(--line);border-radius:5px;background:var(--panel-soft);color:var(--ink);padding:7px 10px}.mapmaking button.primary-action{background:var(--accent);color:#fff;border-color:var(--accent)}.mapmaking input,.mapmaking select{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:6px}.mapmaking button:disabled{opacity:.55;cursor:default}.mapmaking-top{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border, #394246);flex-wrap:wrap}.mapmaking-top [data-name]{flex:1;min-width:130px}.mapmaking-top [data-saved]{max-width:200px}.mapmaking-body{flex:1;min-height:0;display:grid;grid-template-columns:268px minmax(0,1fr)}.mapmaking aside{overflow:auto;border-right:1px solid var(--border, #394246);padding:16px}.mapmaking fieldset{padding:0;margin:0;border:0;display:grid;gap:12px;min-width:0}.mapmaking label{display:grid;gap:5px;font-size:12px;min-width:0}.mapmaking input:not([type=checkbox]):not([type=color]),.mapmaking select{width:100%;min-width:0;box-sizing:border-box}.mapmaking input[type=number]{padding:7px}.mapmaking input[type=range]{accent-color:var(--accent, #c49b5c)}.mapmaking-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.mapmaking-seed{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.mapmaking details{border-top:1px solid var(--border, #394246);padding-top:12px}.mapmaking details[open]{display:grid;gap:12px}.mapmaking summary{cursor:pointer;font-weight:600;font-size:13px}.mapmaking details[open]>:not(summary){margin-top:10px}.mapmaking p{font-size:11px;line-height:1.55;opacity:.7;margin:0}.mapmaking .mapmaking-check{display:flex;gap:7px;align-items:center}.mapmaking-check input{margin:0}.mapmaking-palette{display:flex;gap:6px}.mapmaking-palette label{flex:1;text-align:center;font-size:9px}.mapmaking input[type=color]{width:100%;height:30px;padding:2px;border:1px solid var(--border, #394246);background:none;cursor:pointer}.mapmaking-texture{display:flex;flex-wrap:wrap;gap:6px}.mapmaking-texture small{width:100%;overflow:hidden;text-overflow:ellipsis;font-size:10px}.mapmaking-preview{display:flex;flex-direction:column;min-width:0;min-height:0}.mapmaking-preview nav{display:flex;gap:16px;align-items:center;padding:10px 16px;flex-wrap:wrap}.mapmaking-preview [data-scale]{margin-left:auto;font-size:11px;opacity:.7}.mapmaking-preview .mapmaking-resolution{display:flex;align-items:center;gap:6px;margin-left:auto}.mapmaking-resolution select{width:auto}.mapmaking [data-output]{font-variant-numeric:tabular-nums;opacity:.8}.mapmaking-viewport{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:24px;min-height:250px;background:radial-gradient(ellipse at 50% 50%,#293338,#141b20)}.mapmaking-sheet{position:relative;flex:none;box-shadow:0 12px 40px #0008}.mapmaking-region{position:relative;flex:none}.mapmaking-viewport{align-items:safe center;justify-content:safe center;overscroll-behavior:contain}.mapmaking:focus{outline:none}.mapmaking-region.has-neighbours{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0}.has-neighbours .mapmaking-sheet{grid-area:2 / 2;z-index:1;outline:2px solid var(--accent, #c49b5c);outline-offset:-2px}.mapmaking button.mapmaking-neighbour{position:relative;overflow:hidden;border-radius:0;border:1px solid #ffffff30;padding:0;background:#1d292d}.mapmaking-neighbour img{display:block;width:100%;height:100%;object-fit:fill;opacity:.8}.mapmaking-neighbour:hover img,.mapmaking-neighbour.is-saved img{opacity:1}.mapmaking-neighbour span{position:absolute;bottom:5px;left:5px;color:#fff;background:#142023d9;padding:3px 6px;font-size:11px;border-radius:3px}.mapmaking button.mapmaking-neighbour:disabled{opacity:.8}.mapmaking-viewport.is-detail{display:block}.mapmaking-sheet>img{display:block;width:100%;height:100%;object-fit:contain}.mapmaking-sheet>img:not([src]){min-height:280px;background:#1d292d}.mapmaking-sheet svg{position:absolute;inset:0;width:100%;height:100%;touch-action:none;pointer-events:none}.mapmaking-sheet svg.is-drawing{pointer-events:auto;cursor:crosshair}.mapmaking-sheet circle{fill:#f5d18a;stroke:#243033;stroke-width:3;vector-effect:non-scaling-stroke;cursor:grab}.mapmaking-sheet circle:focus{stroke:#fff;outline:none}.mapmaking [aria-pressed=true]{background:var(--accent, #b38d58);color:#171d23}.mapmaking footer{padding:10px 16px;display:flex;gap:12px;flex-wrap:wrap;font-size:11px;min-height:34px}.mapmaking [data-warnings]{color:var(--warn)}.mapmaking [data-probe]{position:absolute;bottom:8px;left:8px;color:#fff;background:#142023dd;font-size:11px;border-radius:4px;padding:4px 7px;pointer-events:none}.mapmaking [data-probe]:empty{display:none}@media(max-width:850px){.mapmaking-body{grid-template-columns:220px minmax(0,1fr)}.mapmaking-viewport{padding:12px}.mapmaking-preview [data-scale]{display:none}.mapmaking-preview nav{gap:8px}}@media(max-width:580px){.mapmaking,:root[data-view=mapmaking] .mapmaking{height:auto}:root[data-view=mapmaking] .detail-pane{overflow:auto}.mapmaking-body{grid-template-columns:1fr}.mapmaking aside{max-height:360px}.mapmaking-preview{min-height:400px}}.mapmaking-studio{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--panel);color:var(--ink)}.mapmaking-studio-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 14px;border-bottom:1px solid var(--line)}.mapmaking-studio-nav label{display:flex;align-items:center;gap:8px;font-size:12px}.mapmaking-studio-nav select{max-width:260px}.mapmaking-studio-nav [data-open]{margin-left:auto}.mapmaking-studio-nav [role=tablist]{display:flex;gap:5px}.mapmaking-studio-nav button,.mapmaking-studio-nav select{padding:7px 10px;border:1px solid var(--line);border-radius:5px;color:var(--ink);background:var(--panel-soft);font:inherit}.mapmaking-studio-nav [aria-selected=true]{background:var(--accent);color:#fff}.mapmaking-studio-nav button{cursor:pointer}.mapmaking-studio-nav button:disabled{opacity:.5}.mapmaking-studio>[data-view]{flex:1;min-height:0;overflow:hidden}.mapmaking-studio>[data-view]>p{padding:24px;font-size:14px}@media(max-width:650px){.mapmaking-studio-nav{gap:7px}.mapmaking-studio-nav select{max-width:180px}.map-zone-editor.map-zone-embedded main{grid-template-columns:190px minmax(0,1fr)}}.asset-slicer{display:flex;flex-direction:column;height:100%;min-height:0;color:var(--ink);background:var(--panel)}.asset-slicer header,.asset-slicer footer{display:flex;align-items:center;gap:8px;padding:12px;flex-wrap:wrap}.asset-slicer footer [data-status]{flex:1;font-size:12px}.asset-slicer main{display:grid;grid-template-columns:250px minmax(0,1fr);flex:1;min-height:0}.asset-slicer aside{display:flex;flex-direction:column;gap:10px;overflow:auto;padding:12px;border-right:1px solid var(--line)}.asset-slicer aside>*{flex-shrink:0}.asset-slicer aside button{white-space:normal;overflow-wrap:anywhere;font-size:12px}.asset-slicer .asset-slicer-list:not(:empty){min-height:90px}.asset-slicer .asset-slicer-list:empty{display:none}.asset-slicer button,.asset-slicer input{background:var(--panel-soft);color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:7px;font:inherit;min-width:0;box-sizing:border-box}.asset-slicer button{cursor:pointer}.asset-slicer button:disabled{opacity:.45}.asset-slicer label{display:grid;gap:4px;font-size:12px}.asset-slicer input{width:100%}.asset-slicer-file input{max-width:220px;font-size:11px}.asset-slicer small{font-size:11px;opacity:.75;line-height:1.5}.asset-slicer details label{margin-top:8px}.asset-slicer-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px}.asset-slicer-list{display:grid;gap:4px;max-height:200px;overflow:auto}.asset-slicer-list button{text-align:left;font-size:12px}.asset-slicer [data-fields]{display:grid;gap:5px}.asset-slicer .is-selected,.asset-slicer [aria-pressed=true]{outline:2px solid var(--accent,#b38d58);outline-offset:-2px}.asset-slicer-scroll{overflow:auto;padding:20px;background:#192327}.asset-slicer-stage{position:relative;margin:0 auto;background:repeating-conic-gradient(#414b4c 0% 25%,#30383a 0% 50%) 0 0/20px 20px;touch-action:none;-webkit-user-select:none;user-select:none}.asset-slicer-stage[hidden]{display:none}.asset-slicer-stage>img{display:block;width:100%;height:100%;pointer-events:none}.asset-slicer [data-boxes]{position:absolute;inset:0}.asset-slicer [data-contours]{position:absolute;inset:0;width:100%;height:100%;overflow:visible;outline:0;touch-action:none}.asset-slice-shape{fill:#e8c27a06;stroke:#f0c782;stroke-width:1;vector-effect:non-scaling-stroke;cursor:move}.asset-slicer [data-contours] .is-selected{outline:0}.asset-slicer .is-selected .asset-slice-shape{fill:#8be0e717;stroke:#8be0e7;stroke-width:2}.asset-slicer [data-contours] text{fill:#fff;paint-order:stroke;stroke:#15242d;stroke-width:2;font-family:sans-serif;font-weight:700;pointer-events:none}.asset-slice-frame{fill:none;stroke:#8be0e777;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;pointer-events:none}.asset-slice-vertex,.asset-slice-resize{fill:#8be0e7;stroke:#132629;stroke-width:1;vector-effect:non-scaling-stroke;cursor:move}.asset-slice-resize{cursor:nwse-resize}.asset-slice-draft{fill:#8be0e717;stroke:#8be0e7;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.asset-slicer-stage.is-drawing,.asset-slicer-stage.is-drawing .asset-slice-shape{cursor:crosshair}.asset-slicer [data-drawing]{display:flex;align-items:center;gap:8px;padding:0 12px 8px;font-size:12px}.asset-slicer [data-drawing][hidden]{display:none}.asset-slicer [data-drawing]>span{flex:1}.asset-slicer [data-preview]:not(:empty){background:repeating-conic-gradient(#414b4c 0% 25%,#30383a 0% 50%) 0 0/12px 12px;border-radius:4px;padding:5px}.asset-slicer [data-preview] svg{display:block;width:100%;height:105px}.asset-slicer header button{font-size:12px}.asset-slicer button.primary-action{background:var(--accent);color:#fff}.asset-slicer [data-empty]{color:#ddd;font-size:13px}@media(max-width:650px){.asset-slicer main{grid-template-columns:190px minmax(0,1fr)}.asset-slicer-scroll{padding:8px}}:is(.project-ui-sample,.ui-window .sheet-instance,.ui-window .sheet-layout-section,.shortcut-groups,.settings-scenes)>summary{list-style:none}:is(.project-ui-sample,.ui-window .sheet-instance,.ui-window .sheet-layout-section,.shortcut-groups,.settings-scenes)>summary::-webkit-details-marker{display:none}:is(.project-ui-sample,.ui-window .sheet-instance,.ui-window .sheet-layout-section,.shortcut-groups,.settings-scenes)>summary:before{content:"";display:var(--ui-chevron-display, inline-block);flex:none;width:var(--ui-chevron-size, 6px);height:var(--ui-chevron-size, 6px);margin-right:10px;border-right:var(--ui-chevron-width, 1.5px) solid currentColor;border-bottom:var(--ui-chevron-width, 1.5px) solid currentColor;transform:rotate(-45deg);vertical-align:2px}:is(.project-ui-sample,.ui-window .sheet-instance,.ui-window .sheet-layout-section,.shortcut-groups,.settings-scenes)[open]>summary:before{transform:rotate(45deg)}.project-ui-settings>summary{cursor:pointer;font-weight:600;padding:8px 0}.project-ui-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,1fr);gap:20px;align-items:start;padding-top:12px}.project-ui-controls{display:grid;gap:10px;min-width:0}.project-ui-controls select{max-width:100%;width:100%}.project-ui-geometry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.project-ui-geometry input{width:100%;min-width:0}.project-ui-palette{display:grid;gap:8px}.project-ui-color{display:grid;grid-template-columns:minmax(100px,1fr) 32px minmax(55px,90px) 34px;align-items:center;gap:6px;font-size:12px}.project-ui-color label{display:flex;align-items:center;gap:6px}.project-ui-color input[type=range]{width:100%;min-width:0;padding:0;accent-color:var(--accent)}.project-ui-color output{text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.project-ui-color input[type=color]{width:32px;height:27px;padding:2px;flex-shrink:0}.project-ui-color input[type=checkbox]{width:14px;height:14px;margin:0}.project-ui-section summary{cursor:pointer;padding:8px 0}.project-ui-section .field{margin:6px 0}.project-ui-edges{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:5px;margin:10px 0;font-size:12px}.project-ui-edges input{min-width:0;width:100%;padding:5px}.project-ui-preview{position:sticky;top:10px;background:repeating-conic-gradient(#ffffff16 0 25%,transparent 0 50%) 0 / 24px 24px,var(--ui-background,#11191c);padding:20px;min-height:280px;overflow:auto;border-radius:8px}.project-ui-card{resize:both;overflow:auto;width:280px;max-width:100%;min-width:160px;min-height:220px;border:var(--ui-border-width,2px) solid var(--line,#96734b);border-radius:var(--ui-radius,9px);font-family:var(--content-font,Georgia,serif)}.project-ui-card header{padding:14px;background:var(--background-window-image,none) center / cover,var(--ui-surface,#463020);color:var(--ui-ink,#e7cfa3);font-weight:600}.project-ui-card-body{min-height:200px;padding:18px;background:var(--background-paper-image,none) center / cover,var(--paper-surface,#e9d6ae);color:var(--paper-ink,#392b1e)}.project-ui-sample>summary{cursor:pointer;font-weight:600}.project-ui-background-status:empty{display:none}.project-ui-card-body p{font-size:13px;line-height:1.5;margin:12px 0 22px}.project-ui-card-body button{border:var(--ui-border-width,1px) solid var(--paper-line,#96734b);border-radius:var(--ui-radius,7px);padding:8px 14px;color:var(--paper-ink,#392b1e);background:var(--paper-input,#f4e8c9);font:inherit}.project-ui-image-preview{position:relative;width:200px;margin:12px auto;line-height:0;background:repeating-conic-gradient(#eee 0 25%,#bfc2c3 0 50%) 0 / 16px 16px}.project-ui-image-preview[hidden]{display:none}.project-ui-image-preview img{display:block;width:100%;height:auto}.project-ui-image-preview .project-ui-guide{position:absolute;padding:0;margin:0;min-height:0;background:none;border:0;border-radius:0;touch-action:none}.project-ui-image-preview .project-ui-guide[data-side="0"],.project-ui-image-preview .project-ui-guide[data-side="2"]{left:0;width:100%;height:9px;transform:translateY(-50%);cursor:ns-resize;background:linear-gradient(transparent 4px,#f11 4px 5px,transparent 5px)}.project-ui-image-preview .project-ui-guide[data-side="1"],.project-ui-image-preview .project-ui-guide[data-side="3"]{top:0;height:100%;width:9px;transform:translate(-50%);cursor:ew-resize;background:linear-gradient(90deg,transparent 4px,#f11 4px 5px,transparent 5px)}.project-ui-guide:focus-visible{outline:2px solid #eaa813}@media(max-width:720px){.project-ui-grid{grid-template-columns:1fr}.project-ui-preview{position:static}}.roll-spectacle{--roll-light:#a7eeff;position:relative;isolation:isolate;width:100%;height:100%;min-height:300px;color:#f1f9ff;font-family:system-ui,sans-serif;opacity:0;transition:opacity .2s;pointer-events:none;text-align:center;font-variant-numeric:tabular-nums}.roll-spectacle.is-active{opacity:1}.roll-spectacle:before{content:"";position:absolute;z-index:-1;inset:9% 2%;border-radius:50%;background:radial-gradient(ellipse,#07121fd9 0%,#07121f99 34%,#07121f33 57%,transparent 73%)}.roll-spectacle.is-held:before{inset:2%;border-radius:24px;background:radial-gradient(ellipse,#050c15f5 0%,#050c15db 58%,#050c1599 85%,transparent)}.roll-spectacle.variant-2{--roll-light:#d5b7ff}.roll-spectacle.variant-3{--roll-light:#adffe2}.roll-spectacle-canvas{position:absolute;inset:0;width:100%;height:100%}.roll-spectacle-heading{display:block;position:absolute;inset:22px 18px auto;line-height:1.35;border:0;padding:0;margin:0;background:none}.roll-spectacle-author{color:var(--roll-light);font-size:10px;letter-spacing:.2em;text-transform:uppercase;opacity:.72}.roll-spectacle-title{font:500 18px/1.7 Georgia,serif;color:#f5f2dc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 8px #000}.roll-spectacle-calculation{max-width:450px;margin:auto;font-size:10px;line-height:1.55;color:#c5d6de;text-wrap:balance;max-height:32px;overflow:hidden;opacity:.82}.roll-spectacle-body{position:absolute;inset:102px 12px 82px;display:flex;align-items:center;justify-content:center;gap:18px}.roll-spectacle-score{position:absolute;top:4px;left:0;right:0;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#a7bcc7}.roll-spectacle-number{font-size:clamp(38px,6vw,66px);font-weight:250;letter-spacing:-.035em;line-height:1.3;background:linear-gradient(170deg,#fff 28%,var(--roll-light) 65%,#90b3c2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px #97edff50);padding:12px}.roll-spectacle-result{position:absolute;top:263px;left:12px;right:12px;color:#f3d89e;font-size:12px;letter-spacing:.07em;opacity:0;transform:translateY(5px);transition:opacity .28s,transform .28s}.roll-spectacle.is-settled .roll-spectacle-result{opacity:1;transform:none}.roll-spectacle.is-settled .roll-spectacle-number{filter:drop-shadow(0 0 13px #a7eeff70)}.roll-spectacle-caption{position:absolute;top:292px;left:12px;right:12px;color:#9cb6c3;text-transform:uppercase;letter-spacing:.23em;font-size:8px;opacity:.75}.roll-spectacle-dice{display:flex;align-items:center;justify-content:center;gap:6px;max-width:72%}.roll-spectacle-die{position:relative;width:128px;height:128px;flex-shrink:0}.roll-spectacle-die svg{width:100%;height:100%;overflow:visible;fill:#172736e8;stroke:#ead4a4;stroke-width:.75;filter:drop-shadow(0 0 6px #ebc77724)}.roll-spectacle-die span{position:absolute;inset:28% 10%;display:grid;place-items:center;font:500 40px/1 system-ui,sans-serif;color:#fff9e8;text-shadow:0 1px 10px #000;background:radial-gradient(ellipse,#172736d9,transparent 72%)}.roll-spectacle-die small{position:absolute;left:0;right:0;bottom:4px;font-size:9px;color:#b8c9d3}.roll-spectacle-dice.has-many{flex-wrap:wrap;max-width:330px}.roll-spectacle-dice.has-many .roll-spectacle-die{width:76px;height:76px}.roll-spectacle-dice.has-many .roll-spectacle-die span{font-size:25px}.roll-spectacle-die.is-discarded{opacity:.32}.roll-spectacle-die.is-discarded span{text-decoration:line-through}.roll-spectacle-modifiers{max-width:135px;font-size:12px;color:#ebd9b5;text-align:left;line-height:1.7}.roll-spectacle-modifiers div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roll-spectacle-overflow{color:#d6c9a8;font-size:10px}.roll-spectacle.is-cosmic .roll-spectacle-dice,.roll-spectacle.is-cosmic .roll-spectacle-modifiers,.roll-spectacle.is-dice[data-kind=dice] .roll-spectacle-score,.roll-spectacle.is-dice[data-kind=dice] .roll-spectacle-number{display:none}.roll-spectacle-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.roll-spectacle.is-reduced,.roll-spectacle.is-reduced .roll-spectacle-result{transition:none}.project-roll-controls{display:flex;align-items:end;gap:8px}.project-roll-controls .field{flex:1}.project-roll-preview{position:relative;width:100%;height:350px;border-radius:10px;overflow:hidden;background:radial-gradient(ellipse at 50% 52%,#153148,#060d19 72%);border:1px solid #8fc3d528}.project-roll-preview:has(.roll-spectacle:not(.is-active)):after{content:"Aperçu du jet";position:absolute;inset:0;display:grid;place-items:center;color:#a6c0cd;font-size:13px;pointer-events:none}@media(max-width:480px){.roll-spectacle-number{font-size:44px}.roll-spectacle-calculation{font-size:9px}.roll-spectacle-dice.has-many .roll-spectacle-die{width:56px;height:56px}}.composition-editor{margin-block:12px;border:1px solid var(--paper-line);border-radius:10px;padding:14px;min-width:0}.composition-editor h3{margin:0 0 12px;font-size:1rem}.composition-toolbar,.composition-part-actions{display:flex;flex-wrap:wrap;gap:8px}.composition-toolbar{margin-bottom:14px}.composition-editor button{padding:7px 10px;border:1px solid var(--paper-line);border-radius:6px;background:transparent;color:var(--paper-ink);cursor:pointer}.composition-editor button:hover,.composition-editor button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:var(--accent)}.composition-editor button:disabled{opacity:.4;cursor:default}.composition-editor button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.composition-panels{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(200px,1.2fr);gap:18px}.composition-panels nav{min-width:0}.composition-tree{list-style:none;margin:0;padding:0;max-height:460px;overflow:auto}.composition-tree li{padding-left:calc(var(--part-depth, 0) * 12px)}.composition-tree-row{display:flex;align-items:center;gap:2px;margin-bottom:4px}.composition-tree-row button[data-part-select]{display:flex;gap:8px;align-items:center;justify-content:space-between;text-align:left;min-width:0;flex:1}.composition-tree-row button[data-part-select] span{overflow-wrap:anywhere}.composition-tree-row small{color:var(--paper-muted)}.composition-editor .composition-fold,.composition-leaf{width:24px;flex:0 0 24px;text-align:center;padding:5px 0;border-color:transparent}.composition-detail{display:grid;align-content:start;gap:12px;min-width:0}.composition-detail input,.composition-detail textarea,.composition-detail select{width:100%;box-sizing:border-box}.character-window .composition-detail .sheet-field textarea{min-height:72px;resize:vertical}.composition-detail strong{white-space:pre-wrap;overflow-wrap:anywhere}.composition-part-actions{margin-top:6px}.composition-remove{border:1px solid var(--paper-line);padding:10px;border-radius:6px}.composition-remove[hidden]{display:none}.composition-remove p{margin-top:0}.composition-status{margin:8px 0 0;color:var(--paper-muted);font-size:.85rem}.composition-status:empty{display:none}.composition-tree-row{position:relative}.composition-tree-row[data-part-insertion=before]:before,.composition-tree-row[data-part-insertion=after]:after{content:"";position:absolute;left:20px;right:0;height:2px;background:var(--accent,#78bdc2);pointer-events:none}.composition-tree-row[data-part-insertion=before]:before{top:-2px}.composition-tree-row[data-part-insertion=after]:after{bottom:-2px}.composition-tree-row[data-part-insertion=inside]{outline:1px dashed var(--accent,#78bdc2);outline-offset:2px}.composition-connections{color:var(--paper-muted)}.composition-editor{--paper-line: var(--border-color, #53767a);--paper-ink: var(--text-color, inherit)}.composition-editor .part-state{display:grid;gap:4px;min-width:46px;text-align:right;white-space:nowrap;color:var(--state-color);font-size:.75rem}.part-state[data-tone=good]{--state-color: #6cbcab}.part-state[data-tone=fair]{--state-color: #c1c77f}.part-state[data-tone=poor]{--state-color: #e2b967}.part-state[data-tone=bad]{--state-color: #e08a78}.part-state[data-tone=off],.part-state[data-tone=unknown]{--state-color: #a3a8b5}.part-state i{height:3px;border-radius:3px;background:linear-gradient(to right,var(--state-color) var(--integrity),#87989933 var(--integrity))}.part-detached{display:block;font-size:.7rem}.part-references>span,.composition-object-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;opacity:.8}.part-references>ul{list-style:none;padding:0;margin:5px 0;display:flex;flex-wrap:wrap;gap:6px}.part-references>ul>li{border:1px solid var(--paper-line);border-radius:12px;padding:3px 7px;font-size:.85rem}.part-references>ul>li:has(.parameter-field){width:100%;min-width:0;box-sizing:border-box}.part-references [data-part-unlink]{border:0;padding:0 3px}.part-reference-choices{max-height:160px;overflow:auto;margin-top:6px}.part-reference-choices button{display:block;width:100%;text-align:left;margin:3px 0}.part-reference-choices[hidden],.part-reference-choices button[hidden]{display:none}.composition-detail details{border-top:1px solid var(--paper-line);padding-block:8px}.composition-detail details>label{margin-top:10px}.composition-reference{margin-top:12px;font-size:.8rem}.composition-editor summary{cursor:pointer}.composition-editor input[type=range]{accent-color:var(--accent, #78bdc2);padding:4px 0}.composition-features{display:grid;gap:12px}.composition-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.composition-identity .sheet-field{min-width:0}.composition-identity:has(textarea){grid-template-columns:1fr}.composition-feature-list{display:flex;flex-wrap:wrap;gap:6px}.composition-feature-list .searchable-select{flex:0 1 190px;min-width:140px}.composition-feature-list select{width:auto;max-width:100%;min-width:140px;border-style:dashed}.composition-feature-parameters{padding:12px 0;border-block:1px solid var(--paper-line)}.composition-feature-parameters[open]>:not(summary){margin-top:12px}.composition-feature-parameters>summary{cursor:pointer;list-style:none}.composition-feature-parameters>summary:before{content:"";display:var(--ui-chevron-display,inline-block);width:var(--ui-chevron-size,6px);height:var(--ui-chevron-size,6px);border-right:var(--ui-chevron-width,1px) solid currentColor;border-bottom:var(--ui-chevron-width,1px) solid currentColor;transform:rotate(-45deg)}.composition-feature-parameters[open]>summary:before{transform:rotate(45deg)}.composition-feature-heading strong{flex:1}.composition-feature-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.composition-feature-heading button{border:0;padding:2px 8px;font-size:1.1rem}.composition-feature-list .searchable-select{flex:1 1 200px;max-width:380px}.composition-action-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin-block:10px}.composition-action-shortcuts>strong{flex-basis:100%;font-size:.8rem}.sheet-action-source{display:block;font-weight:400;opacity:.75}.sheet-character-badges{margin:0 0 0 auto;display:grid;gap:6px;flex:0 0 auto}.sheet-character-badges>div{border:1px solid var(--paper-line, #53767a);border-radius:16px 4px;padding:6px 14px;min-width:104px;text-align:center;background:color-mix(in srgb,var(--accent, #b2ffff) 5%,transparent)}.sheet-character-badges dt{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em}.sheet-character-badges dd{font-size:1.1rem;margin:0;font-variant-numeric:tabular-nums}.sheet-character-badges dd small{font-size:.7rem;opacity:.75}.sheet-character-header:has(.sheet-character-badges){margin:4px 0 12px;gap:16px}.sheet-character-header:has(.sheet-character-badges) .sheet-seal{width:64px;height:64px;font-size:30px}.sheet-character-header:has(.sheet-character-badges) .sheet-field input{font-size:20px;padding:7px}.component-transfer-dialog{background:var(--paper, #142831);color:var(--paper-ink, #dcebee);border:1px solid #53767a;border-radius:10px;max-width:min(400px,90vw);padding:20px}.component-transfer-dialog label{display:grid;gap:6px;margin:14px 0}.component-transfer-dialog select{min-height:34px}.component-transfer-dialog button{margin:0 8px 0 0;padding:6px 12px}@container (max-width: 560px){.composition-panels{grid-template-columns:1fr}.composition-tree{max-height:220px}}@media(max-width:600px){.composition-panels{grid-template-columns:1fr}.composition-tree{max-height:220px}}.component-collection{min-width:0;margin:8px 0;padding:8px;border:1px solid var(--paper-line,#9e81585e);border-radius:4px}.component-collection [data-quantity-row]{display:grid;grid-template-columns:minmax(0,1fr) minmax(54px,.65fr) auto;align-items:center;gap:6px;margin:4px 0}.component-collection .sheet-field{min-width:0;margin:0}.component-links .sheet-field{display:flex;flex-direction:row;align-items:center;gap:8px;padding:3px 0}.component-links input[type=checkbox]{flex:0 0 18px;width:18px;height:18px}.unit-settings>header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.unit-preferences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.unit-settings-row{display:grid;grid-template-columns:1.2fr .6fr 1fr 1.5fr auto;gap:8px;align-items:end;margin:12px 0}.unit-settings-row label{display:grid;min-width:0;gap:5px}.unit-settings-row label>span{font-size:12px;color:var(--muted)}.unit-settings-row input,.unit-settings-row select{width:100%;min-width:0}.unit-settings-row input,.unit-settings-row select{border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--panel-soft);color:var(--ink);font:inherit}.unit-settings [data-unit-rows]{max-height:340px;overflow-y:auto}.unit-settings-error{color:var(--danger, #e69a86)}.unit-settings-error:empty{display:none}@media(max-width:640px){.unit-preferences{grid-template-columns:1fr}.unit-settings-row{grid-template-columns:1fr 1fr auto}.unit-settings-row>button{grid-column:3;grid-row:1 / 3;align-self:center}}.calendar-editor-actions,.calendar-levels,.decimal-calendar-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.calendar-definition-editor:not(:empty){margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px}.calendar-editor-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.calendar-editor-rows{display:grid;gap:8px;margin:12px 0;max-height:320px;overflow:auto}[data-calendar-row]{display:grid;grid-template-columns:minmax(120px,1fr) minmax(100px,160px) 36px;gap:8px;align-items:end}.calendar-definition-editor output{display:block;margin:16px 0;overflow-wrap:anywhere;color:var(--muted)}.calendar-definition-editor output.is-invalid,.calendar-editor-status{color:var(--muted)}.decimal-calendar{display:grid;gap:16px;min-width:0}.decimal-calendar-controls .decimal-coordinate{flex:1;min-width:min(100%,26ch)}.decimal-calendar-controls input{width:100%;font-variant-numeric:tabular-nums}.calendar-levels [aria-pressed=true],.decimal-calendar-slot.is-selected{border-color:var(--accent);background:var(--panel)}.decimal-calendar-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.decimal-calendar-slot{display:flex;flex-direction:column;gap:8px;align-items:flex-start;min-width:0;text-align:left;overflow-wrap:anywhere}.decimal-calendar-slot small{font-weight:400}.decimal-grouped-date{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.decimal-picker-level{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0}.decimal-calendar-events{display:grid;gap:8px;max-height:320px;overflow:auto}.decimal-calendar-events button{text-align:left;overflow-wrap:anywhere}.faerun-calendar>[data-calendar-period]{grid-column:1/-1}.project-date-days{max-height:320px;overflow:auto}.project-date-control>input{flex:1 0 100%;min-width:0;width:100%;font-variant-numeric:tabular-nums}@media(max-width:700px){.decimal-calendar-strip,.calendar-editor-fields{grid-template-columns:1fr}}
