@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;600;700&family=Source+Sans+3:wght@400;600;700&display=swap";:root{--ink-900:#202122;--ink-700:#54595d;--paper:#fff;--paper-soft:#f8f9fa;--paper-muted:#eaecf0;--line:#a2a9b1;--line-soft:#c8ccd1;--link:#0645ad;--link-hover:#0b0080;--warning:#b32424;--radius:2px;--radius-sm:2px;--font-body:"Source Sans 3", "Segoe UI", sans-serif;--font-display:"Source Serif 4", Georgia, serif}*{box-sizing:border-box}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}html,body,#app{min-height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink-900);background:var(--paper-muted);line-height:1.55}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}.app-root{min-height:100vh}.app-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.left-nav{border-right:1px solid var(--line-soft);background:var(--paper-soft);height:100vh;color:var(--ink-900);flex-direction:column;align-self:start;gap:.8rem;padding:1rem;display:flex;position:sticky;top:0}.nav-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-700);margin:0;font-size:.78rem}.left-nav h1{font-family:var(--font-display);margin:.25rem 0;font-size:1.45rem;font-weight:700}.nav-user{color:var(--ink-700);margin:0;font-size:.82rem}.nav-links{flex-direction:column;gap:.45rem;margin-top:.5rem;padding-right:.2rem;display:flex;overflow-y:auto}.nav-link{border-radius:var(--radius-sm);color:var(--link);border-bottom:1px solid #0000;padding:.3rem .15rem;font-weight:600;text-decoration:none;transition:border-color .12s;display:block}.nav-link:hover{border-color:var(--line-soft)}.nav-link.router-link-active{color:var(--ink-900);border-color:var(--line)}.logout-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink-900);font-family:var(--font-body);cursor:pointer;margin-top:auto;padding:.55rem .8rem;font-size:.9rem;font-weight:600}.logout-button:hover{background:var(--paper-soft)}.content-area{width:100%;max-width:1100px;padding:1.2rem}.public-shell{place-items:center;min-height:100vh;padding:1rem;display:grid}.view-header{margin-bottom:1rem}.view-header h1,.view-header h2{font-family:var(--font-display);border-bottom:1px solid var(--line-soft);margin:0;padding-bottom:.22rem;font-size:clamp(1.65rem,2.4vw,2.15rem)}.view-header p{color:var(--ink-700);margin-top:.5rem}.core-data-section{padding:.9rem 1rem}.entity-overview{display:flow-root}.entity-facts{float:left;border:1px solid #000;min-width:260px;max-width:420px;margin:0 1.75rem .8rem 0;padding:.75rem .9rem}.entity-long-description{min-width:260px}.entity-long-description h4{font-family:var(--font-display);color:var(--ink-700);margin:0 0 .35rem;font-size:1rem}.entity-long-description p{white-space:pre-wrap;margin:0}.section-heading-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.row-actions-end{gap:.5rem;display:flex}.history-record-actions{float:right;gap:.5rem;margin-left:1rem;display:flex}.status-card{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--paper-soft);padding:.7rem .85rem}.status-card.error{color:var(--warning);border-color:#9b2f1f75}.grid-list{border-top:1px solid var(--line-soft);grid-template-columns:1fr;gap:0;display:grid}.entity-card{border-bottom:1px solid var(--line-soft);background:var(--paper);flex-direction:column;gap:.4rem;padding:.8rem .2rem;display:flex}.entity-card h3{font-family:var(--font-display);margin:0;font-size:1.22rem}.entity-card a{font-weight:600}.field-list{grid-template-columns:minmax(150px,210px) 1fr;align-items:start;gap:.3rem .85rem;margin:0;display:grid}.field-list dt{color:var(--ink-700);font-weight:600}.field-list dd{white-space:pre-wrap;margin:0}.section-stack{flex-direction:column;gap:.5rem;display:flex}.collapsible{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--paper);overflow:hidden}.collapsible summary{cursor:pointer;background:var(--paper-soft);justify-content:space-between;align-items:center;padding:.85rem 1rem;font-weight:600;list-style:none;display:flex}.collapsible summary::marker{display:none}.collapsible summary::-webkit-details-marker{display:none}.collapsible-heading{align-items:center;gap:.5rem;display:flex}.collapsible-header-actions{cursor:default}.collapsible-body{padding:.65rem .8rem}.record-collapse-toggle{cursor:pointer;color:var(--ink-700);background:0 0;border:none;margin-right:.35rem;padding:0;font-size:.8rem;line-height:1;transition:transform .15s;display:inline-block}.record-collapse-toggle.is-expanded{transform:rotate(90deg)}.badge{color:var(--ink-700);background:var(--paper-muted);border:1px solid var(--line-soft);border-radius:999px;padding:.28rem .54rem;font-size:.72rem;font-weight:600;line-height:1;display:inline-block}.meta-title{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-700);margin:.65rem 0 .35rem;font-size:.82rem}.wiki-article{border:1px solid var(--line);background:var(--paper);padding:1rem 1.2rem}.wiki-article h3{font-family:var(--font-display);border-bottom:1px solid var(--line-soft);margin:0 0 .5rem;padding-bottom:.14rem;font-size:1.35rem;font-weight:600}.article-section{margin-top:1rem}.section-count{font-family:var(--font-body);color:var(--ink-700);font-size:.92rem;font-weight:600}.article-note{color:var(--ink-700);margin:.2rem 0 0}.related-record{border-bottom:1px solid var(--line-soft);margin:0;padding:.7rem 0}.add-relation-form{border-bottom:1px solid var(--line-soft);margin-bottom:.7rem;padding-bottom:.7rem}.related-record:last-child{border-bottom:none}.related-record h4{font-family:var(--font-display);margin:0 0 .4rem;font-size:1.06rem;font-weight:600}.history-record{border-left:2px solid var(--line-soft);margin:.4rem 0;padding:.3rem 0 .3rem .9rem}.login-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:min(460px,92vw);padding:clamp(1rem,4vw,1.8rem)}.login-card h2{font-family:var(--font-display);margin:0;font-size:clamp(1.7rem,4vw,2.25rem)}.login-card p{color:var(--ink-700)}.form-row{flex-direction:column;gap:.36rem;margin-top:.85rem;display:flex}.form-row label{color:var(--ink-700);font-size:.88rem;font-weight:700}.form-row input,.form-row select{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);font:inherit;padding:.62rem .72rem}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:.8rem;margin-bottom:1rem;display:flex}.filter-bar .form-row{min-width:12rem;margin-top:0}.searchable-select{position:relative}.searchable-select input{width:100%;padding-right:2.5rem}.searchable-select-toggle{border:0;border-left:1px solid var(--line-soft);width:2.4rem;height:100%;color:var(--ink-700);cursor:pointer;background:0 0;position:absolute;top:0;right:0}.searchable-select-toggle:hover:not(:disabled){background:var(--paper-soft);color:var(--ink-900)}.searchable-select-toggle:disabled{cursor:not-allowed}.searchable-select-chevron{border-bottom:2px solid;border-right:2px solid;width:.55rem;height:.55rem;display:inline-block;transform:translateY(-.15rem)rotate(45deg)}.searchable-select-options{z-index:10;border:1px solid var(--line);background:var(--paper);max-height:15rem;position:absolute;top:calc(100% + .2rem);left:0;right:0;overflow-y:auto;box-shadow:0 3px 8px #20212229}.searchable-select-option{border:0;border-bottom:1px solid var(--line-soft);background:var(--paper);width:100%;color:var(--ink-900);font:inherit;text-align:left;cursor:pointer;padding:.52rem .72rem;display:block}.searchable-select-option:hover,.searchable-select-option.selected{background:var(--paper-soft)}.searchable-select-empty{color:var(--ink-700);padding:.52rem .72rem;display:block}.primary-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-soft);color:var(--ink-900);font:inherit;cursor:pointer;width:100%;margin-top:1rem;padding:.7rem;font-weight:600}.primary-button:disabled{opacity:.65;cursor:not-allowed}.list-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.8rem;display:flex}.list-header h2{flex:1;min-width:12rem}.create-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-soft);color:var(--ink-900);white-space:nowrap;padding:.4rem .75rem;font-weight:600;text-decoration:none;display:inline-block}.create-button:hover{background:var(--paper-muted);color:var(--ink-900);text-decoration:none}.entity-form{max-width:640px}.entity-form textarea{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);font:inherit;resize:vertical;padding:.62rem .72rem}.entity-form input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--link);align-self:flex-start}.required-marker{color:var(--warning);margin-left:.15rem}.field-hint{color:var(--ink-700);margin:0;font-size:.8rem}.form-actions{gap:.6rem;margin-top:1.1rem;display:flex}.form-actions .primary-button{width:auto;margin-top:0;padding:.6rem 1.1rem}.secondary-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink-900);font:inherit;cursor:pointer;padding:.6rem 1.1rem;font-weight:600}.secondary-button:hover{background:var(--paper-soft)}.secondary-button:disabled{opacity:.65;cursor:not-allowed}.danger-button{border:1px solid var(--warning);border-radius:var(--radius-sm);background:var(--paper);color:var(--warning);font:inherit;cursor:pointer;padding:.6rem 1.1rem;font-weight:600}.danger-button:hover{background:var(--warning);color:var(--paper)}.danger-button:disabled{opacity:.65;cursor:not-allowed}.entity-form .status-card{margin-top:.85rem}.modal-overlay{z-index:100;background:#2021228c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:calc(100% - 2rem);max-width:420px;padding:1.25rem 1.5rem;box-shadow:0 4px 16px #00000040}.modal-card h3{margin-top:0}@media (width<=980px){.app-shell{grid-template-columns:1fr}.left-nav{border-right:none;border-bottom:1px solid var(--line-soft);height:auto;max-height:none;position:static}.nav-links{flex-flow:wrap}.nav-link{width:calc(50% - .3rem)}.logout-button{margin-top:.4rem}.content-area{padding:.8rem}.field-list{grid-template-columns:1fr}.entity-facts{float:none;max-width:none;margin:0 0 .8rem}.wiki-article{padding:.8rem}}.button-group{gap:.5rem;display:flex}.aliases-section{margin:.8rem 0}.aliases-list{color:var(--text-soft);margin:0}.entity-form select[data-v-aafce310]{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);font:inherit;padding:.62rem .72rem}.wiki-article+.wiki-article[data-v-424efa86]{margin-top:1rem}.entity-form select[data-v-424efa86]{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);font:inherit;padding:.62rem .72rem}.checkbox-row[data-v-424efa86]{flex-direction:row;align-items:center;gap:.5rem}.checkbox-row label[data-v-424efa86]{font-weight:400}.character-row[data-v-424efa86]{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.character-row .secondary-button[data-v-424efa86]{padding:.3rem .7rem;font-size:.85rem}.assign-form[data-v-424efa86]{margin-top:1rem}.danger-zone h3[data-v-424efa86]{color:var(--warning)}.danger-button[data-v-424efa86]{border-radius:var(--radius-sm);background:var(--paper);color:var(--warning);font:inherit;cursor:pointer;border:1px solid #9b2f1f75;padding:.6rem 1.1rem;font-weight:600}.danger-button[data-v-424efa86]:hover{background:#9b2f1f14}.danger-button[data-v-424efa86]:disabled{opacity:.65;cursor:not-allowed}.user-list[data-v-cb19c0ec]{margin-top:1rem}.role-badge[data-v-cb19c0ec]{text-transform:uppercase;margin-left:.4rem}.disabled-badge[data-v-cb19c0ec]{color:var(--warning);border-color:#9b2f1f75;margin-left:.3rem}.lore-date-input[data-v-100ce3b1]{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.lore-date-field[data-v-100ce3b1]{flex-direction:column;gap:.36rem;display:flex}.lore-date-field label[data-v-100ce3b1]{color:var(--ink-700);font-size:.88rem;font-weight:700}.lore-date-input input[type=number][data-v-100ce3b1]{width:6rem}.real-date-input[data-v-65d49d46]{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.real-date-field[data-v-65d49d46]{flex-direction:column;gap:.36rem;display:flex}.real-date-field label[data-v-65d49d46]{color:var(--ink-700);font-size:.88rem;font-weight:700}.real-date-input input[type=number][data-v-65d49d46]{width:6rem}
