/*! © 2026 LogosVox. All rights reserved. Copying, modifying or redistributing this code is not permitted. https://games.logosvox.com/terms */
﻿/* The working surface: quiet document typography and shared database controls. */
#home-page,#collection-main,#life-main{font-family:var(--lib-sans,system-ui,sans-serif)}
.space-pages .space-page-content{max-width:1020px;margin-inline:auto}.space-pages.page-wide .space-page-content{max-width:none}.space-pages .page-topline{max-width:none;margin-bottom:32px}.space-pages .space-index-heading{margin-bottom:22px;align-items:center}.space-pages .space-index-heading h1{font:650 34px/1.2 system-ui,sans-serif;letter-spacing:-.025em}.space-pages .space-index-heading p{font-size:14px;line-height:1.6;margin-top:10px;color:var(--lib-muted)}
.space-pages .page-title-input{font:650 38px/1.2 system-ui,sans-serif;letter-spacing:-.025em;margin:12px 0 16px;padding:0;border-radius:0}.space-pages .document-actions{margin-bottom:28px;gap:8px;align-items:center}.document-actions>button{font-size:12px;min-height:36px;padding:6px 10px}.document-actions>button[aria-pressed=true]{background:var(--lib-hover);color:var(--lib-ink)}.document-actions>button[aria-pressed=true] svg{fill:currentColor}.page-options{font-size:12px}.page-options-body input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--lib-accent)}
.workspace-templates{margin-bottom:30px;font-size:13px}.workspace-templates>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;width:fit-content;color:var(--lib-muted);min-height:38px}.workspace-template-choices{display:flex;gap:10px;flex-wrap:wrap;padding:12px 0}.workspace-template-choices>button{font-size:13px;display:flex;align-items:center;gap:10px;background:var(--lib-panel)}
.space-pages .space-index-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:0;border-bottom:1px solid var(--lib-line)}.page-index-tabs,.page-index-views{display:flex;gap:4px}.page-index-tabs button,.page-index-views button{font-size:12px;min-height:36px;padding:8px 10px;display:flex;align-items:center;gap:6px;border:0;background:transparent}.page-index-tabs button[aria-pressed=true],.page-index-views button[aria-pressed=true]{background:var(--lib-hover);color:var(--lib-ink)}.page-index-views button{font-size:0;gap:0}.page-index-tabs{margin-right:auto}.space-pages .space-index-tools>input{width:200px;flex:0 1 200px;min-width:120px;font-size:13px;padding:8px 12px;min-height:38px}.space-index-tools>label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.space-index-tools>label select{font-size:12px;padding:8px 10px;min-height:38px;background:transparent;border:0}.space-index-tools>label{flex:none}
.space-pages .space-page-link{grid-template-columns:22px minmax(0,1fr) 110px 70px 18px;min-height:58px!important;padding:14px 10px!important;font-size:14px;border-bottom:1px solid var(--lib-line)}.space-pages .page-list-title{font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.page-list-title>.library-icon{width:13px;height:13px;fill:currentColor}.space-pages .page-list-meta,.page-list-date{font-size:11px;color:var(--lib-muted);font-variant-numeric:tabular-nums}.page-list-date{text-align:right}.workspace-new-database{border:0;background:transparent;font-size:12px;min-height:40px;margin-top:8px;color:var(--lib-muted)}.page-empty{padding:36px 16px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--lib-muted);font-size:13px}.page-empty p{margin:0}
.space-page-list.page-index-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding-top:20px;border:0}.space-pages .page-index-gallery .space-page-link{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:12px!important;padding:16px!important;border:1px solid var(--lib-line);border-radius:12px;overflow:hidden;background:var(--lib-panel)}.page-index-gallery .page-index-cover{width:calc(100% + 32px);max-width:none;margin:-16px -16px 4px;aspect-ratio:2/1;object-fit:cover;grid-column:1/-1;order:-1}.page-index-gallery .page-list-meta{grid-column:2;justify-self:start!important}.page-index-gallery .page-list-date,.page-index-gallery .space-page-link>svg:last-child{display:none}.page-index-gallery .page-empty{grid-column:1/-1}
.space-pages .space-collections-heading{font:600 15px/1.4 system-ui,sans-serif;margin-top:38px;margin-bottom:16px}.space-collection-links{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0!important;border-top:1px solid var(--lib-line)}.space-collection-links button{min-height:52px;justify-content:flex-start;text-align:left;border:0;border-bottom:1px solid var(--lib-line);border-radius:0;background:transparent;padding:12px;font-size:13px}.space-storage-note{font-size:12px;line-height:1.6;margin-top:26px;color:var(--lib-muted)}
.page-appearance{margin-bottom:12px}.page-cover{width:100%;height:200px;object-fit:cover;border-radius:12px;display:block}.page-appearance-controls{display:flex;align-items:center;gap:12px;padding-top:14px}.page-icon-picker,.page-cover-picker{position:relative}.page-icon-picker>summary{width:52px;height:52px;display:grid;place-items:center;list-style:none;cursor:pointer;border-radius:12px;background:var(--lib-rail)}.page-icon-picker>summary svg{width:30px;height:30px}.page-icon-grid{position:absolute;top:calc(100% + 8px);left:0;z-index:5;display:grid;grid-template-columns:repeat(5,40px);gap:6px;padding:12px;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:12px}.page-icon-grid button{width:40px;height:40px;padding:8px;border:0;background:transparent}.page-icon-grid button[aria-pressed=true]{background:var(--lib-hover)}.page-cover-picker>summary{list-style:none;display:flex;align-items:center;gap:8px;color:var(--lib-muted);cursor:pointer;min-height:40px;font-size:12px}.page-cover-choices{position:absolute;top:100%;left:0;z-index:4;padding:12px;display:grid;grid-template-columns:repeat(2,110px);gap:8px;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:12px}.page-cover-choices button{padding:8px;font-size:12px;display:grid;gap:6px;background:transparent}.page-cover-choices button[aria-pressed=true]{background:var(--lib-hover)}.page-cover-choices img{width:100%;height:52px;object-fit:cover;border-radius:6px}
.page-blocks .block-main>textarea{font:15px/1.7 system-ui,sans-serif;min-height:38px}.page-blocks .heading .block-main>textarea{font:650 24px/1.35 system-ui,sans-serif;margin-top:22px}.block-menu>summary{opacity:.6}.page-block:hover .block-menu>summary,.block-menu[open]>summary{opacity:1}.block-choices button{display:flex;align-items:center;gap:10px;font-size:13px;text-align:left}.block-main>.linked-collection{border-radius:10px;background:var(--lib-rail);padding:12px 16px}.block-insert>summary{font-size:12px;color:var(--lib-muted)}
/* React database island: headers, views and typed fields share one grammar. */
.page-database{font:13px/1.5 system-ui,sans-serif;min-width:0;margin:12px 0 24px}.page-database button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:500 12px/1.4 system-ui,sans-serif;min-height:36px;padding:8px 10px}.page-database button>.library-icon{margin:0;flex:none}.page-database button>span{margin:0}.page-database .db-record-open strong{margin:0;min-width:0}.page-database button>span:empty{display:none}.db-heading{display:flex;gap:10px;align-items:center;margin-bottom:14px}.db-heading>.library-icon{width:24px;height:24px}.db-heading .database-title{font:600 20px/1.4 system-ui,sans-serif;min-width:0;flex:1;max-width:none;background:transparent;border:0;padding:6px 0}.db-total{color:var(--lib-muted);font-size:11px;white-space:nowrap}.db-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--lib-line)}.db-views,.db-actions{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.db-views button,.db-actions button:not(.primary){border:0;background:transparent;color:var(--lib-muted)}.db-views button{border-radius:0;border-bottom:2px solid transparent;min-height:44px}.db-views button[aria-pressed=true]{border-bottom-color:var(--lib-ink);color:var(--lib-ink)}.db-actions button[aria-expanded=true]{background:var(--lib-hover);color:var(--lib-ink)}
.db-query{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;color:var(--lib-muted);font-size:11px;flex-wrap:wrap}.db-query>label{display:flex;align-items:center;gap:8px}.db-query input{min-height:34px;max-width:260px;width:200px;padding:6px 0;border:0;background:transparent;font-size:12px}.db-query select{font-size:12px;min-height:34px;padding:5px 8px;background:transparent}.db-panel{padding:18px;margin-bottom:18px;background:var(--lib-rail);border-radius:12px}.db-panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.db-panel-heading>button{border:0;background:transparent}.db-form-row{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.db-form-row label{min-width:140px;flex:1;font-size:11px;color:var(--lib-muted);display:grid;gap:6px}.db-form-row input,.db-form-row select{font-size:13px;min-height:38px;background:var(--lib-panel);width:100%;max-width:none}.db-form-row>input{flex:1;min-width:150px;width:180px}.db-form-row>select{width:140px}.db-properties{display:grid;gap:12px}.db-property{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.db-property>input{width:150px;flex:1;font-size:12px;min-height:36px}.db-property>span{font-size:11px;color:var(--lib-muted);min-width:55px}.db-property>button{border:0;background:transparent}
.db-table-scroll{overflow:auto;border-block:1px solid var(--lib-line);scrollbar-width:thin;scrollbar-color:var(--lib-line) transparent}.db-table-scroll table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.db-table-scroll th{height:40px;background:var(--lib-rail);font-weight:500;color:var(--lib-muted);text-align:left;white-space:nowrap;padding:8px 12px;border-right:1px solid var(--lib-line)}.db-table-scroll th>.library-icon{width:15px;height:15px;display:inline-block;vertical-align:middle;margin-right:8px}.db-table-scroll td{padding:0;border-top:1px solid var(--lib-line);border-right:1px solid var(--lib-line)}.db-table-scroll tr:hover{background:var(--lib-rail)}.db-table-scroll td>input:not([type=checkbox]),.db-table-scroll td>select{width:100%;min-width:170px;max-width:none;background:transparent;font:13px/1.5 system-ui,sans-serif;min-height:42px;border:0;border-radius:0;padding:10px 12px}.db-table-scroll .db-open-column{width:42px}.db-table-scroll td:first-child>button{border:0;background:transparent;min-width:42px;width:100%;min-height:42px}.db-table-scroll input[type=checkbox]{width:18px;min-height:18px;height:18px;margin:10px 16px;accent-color:var(--lib-accent)}.page-database .db-add-line{width:100%;justify-content:flex-start;background:transparent;border:0;border-radius:0;color:var(--lib-muted);padding:12px}.db-empty{padding:28px 14px;color:var(--lib-muted);font-size:13px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.db-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;padding-top:10px}.db-record-card{min-width:0;padding:16px;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:12px}.page-database .db-record-open{display:flex;width:100%;min-width:0;padding:0 0 12px;border:0;background:transparent;text-align:left;justify-content:flex-start;gap:8px;min-height:34px}.db-record-open strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.db-card-property{display:flex;gap:10px;justify-content:space-between;align-items:start;font-size:11px;padding:6px 0}.db-card-property>span:first-child{display:flex;align-items:center;gap:6px;color:var(--lib-muted);min-width:65px}.db-card-property>span:last-child{overflow-wrap:anywhere;max-width:60%;text-align:right}.db-card-property .library-icon{width:13px;height:13px}.db-status{background:var(--lib-hover);color:var(--lib-ink);border-radius:5px;padding:2px 6px}.db-gallery-add{border:1px dashed var(--lib-line);background:transparent;min-height:90px!important;color:var(--lib-muted)}
.db-board{display:flex;align-items:flex-start;gap:16px;overflow:auto;padding:8px 0 18px;scrollbar-color:var(--lib-line) transparent}.db-board-column{flex:0 0 250px;min-width:0;display:grid;gap:10px}.db-board-column>header{display:flex;align-items:center;gap:8px;padding:8px 4px;font-size:12px}.db-board-column>header span{color:var(--lib-muted);font-variant-numeric:tabular-nums}.db-board-column>button{justify-content:flex-start;border:0;background:transparent;color:var(--lib-muted)}
.db-record-detail{padding:20px;border:1px solid var(--lib-line);border-radius:12px;margin:4px 0 24px;background:var(--lib-panel)}.db-record-detail>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.db-record-detail strong{display:flex;align-items:center;gap:8px;font-size:14px}.db-record-detail>div{display:grid;gap:12px}.db-record-detail label{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:14px}.db-record-detail label>span{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--lib-muted)}.db-record-detail input,.db-record-detail select{font-size:13px;min-height:40px;width:100%;max-width:none}.db-record-detail input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--lib-accent)}.db-record-detail .db-delete{margin-top:18px;background:transparent;border:0;color:var(--lib-muted)}
/* Existing collections use the same heading, tab and property language. */
#life-main .life-empty{grid-column:1/-1;max-width:60ch;font:15px/1.7 system-ui,sans-serif;padding:28px 0;}
#collection-main .library-heading h1,#life-main .life-heading h1{font:650 34px/1.2 system-ui,sans-serif;letter-spacing:-.025em;display:flex;align-items:center;gap:12px}.life-heading h1>.library-icon{width:30px;height:30px}#collection-main .library-heading{padding-bottom:20px;border-bottom:1px solid var(--lib-line)}#catalog-tools,#life-main .life-toolbar{border-bottom:1px solid var(--lib-line);padding:12px 0;gap:8px}#catalog-tools>button,.life-toolbar>button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;border-radius:0;min-height:42px;border-bottom:2px solid transparent;font-size:13px}#catalog-tools>button[aria-pressed=true],.life-toolbar>button[aria-pressed=true]{background:transparent;color:var(--lib-ink);border-bottom-color:var(--lib-ink)}.life-table th,#book-list.table-view th{font-size:12px;background:var(--lib-rail);font-weight:500;color:var(--lib-muted)}.life-table th svg,#book-list.table-view th svg{display:inline-block;vertical-align:middle;margin-right:8px;width:15px;height:15px}.life-table td,#book-list.table-view td{border-bottom:1px solid var(--lib-line)}.life-subnav button{display:inline-flex;gap:8px;align-items:center}.life-subnav{border-bottom:1px solid var(--lib-line)}
@media(max-width:1000px){.db-toolbar{gap:4px}.db-actions{padding-bottom:8px}.space-index-tools>label{margin-left:auto}.space-pages .space-page-link{grid-template-columns:22px minmax(0,1fr) 90px 18px}.page-list-date{display:none}.page-cover{height:170px}}
@media(max-width:700px){.space-pages .space-index-heading h1,#collection-main .library-heading h1,#life-main .life-heading h1{font-size:28px}.space-pages .page-title-input{font-size:32px}.space-pages .space-index-tools>input{order:3;flex:1 0 100%;width:100%}.space-pages .space-page-link{grid-template-columns:20px minmax(0,1fr) 18px;min-height:58px!important}.space-pages .page-list-meta{display:none}.page-index-tabs button{font-size:12px;padding:8px}.page-index-gallery .page-list-meta{display:block}.space-page-list.page-index-gallery{grid-template-columns:minmax(0,1fr)}.space-collection-links{grid-template-columns:repeat(2,minmax(0,1fr))}.page-cover{height:145px}.page-appearance-controls{padding-top:10px}.page-cover-choices{left:auto;right:-40px}.page-icon-grid{grid-template-columns:repeat(5,38px);gap:4px;padding:10px}.document-actions{flex-wrap:wrap}.db-heading .database-title{font-size:18px}.db-total{display:none}.db-views{width:100%}.db-views button{flex:1;font-size:12px}.db-actions{gap:2px;width:100%;justify-content:space-between}.db-actions button{font-size:11px;padding:8px 6px}.db-actions .library-icon{width:15px;height:15px}.db-query input{width:150px}.db-panel{padding:14px}.db-form-row{gap:10px}.db-record-detail{padding:14px}.db-record-detail label{grid-template-columns:1fr;gap:5px}.db-gallery{grid-template-columns:minmax(0,1fr)}.db-board-column{flex-basis:235px}.db-property>input{min-width:100px}.workspace-template-choices{display:grid}.workspace-template-choices button{justify-content:flex-start}.block-main>.linked-collection{padding:12px}.space-pages .page-topline{margin-bottom:20px}}

/* Document blocks keep their controls beside the writing surface. */
.block-choices{display:block;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:12px;padding:12px;margin:8px 0;max-width:520px}.block-choices>input{width:100%;max-width:none;margin-bottom:10px;font-size:13px}.block-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.block-choice-list button{border:0;min-height:40px;justify-content:flex-start;padding:8px}.block-choice-list button>svg,.block-choice-list button>span{margin:0}.block-choice-list button:hover{background:var(--lib-hover)}.block-choice-list p{grid-column:1/-1;font-size:13px;color:var(--lib-muted)}
.page-blocks .heading[data-level="1"] textarea{font-size:30px}.page-blocks .heading[data-level="3"] textarea{font-size:19px}.page-blocks .callout>.block-main{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;padding:16px;background:var(--lib-rail);border-radius:12px}.callout .block-main>svg{margin-top:10px}.callout .block-insert{grid-column:1/-1}.page-blocks .code .block-main>textarea{font:13px/1.7 ui-monospace,Consolas,monospace;padding:18px;background:var(--lib-rail);white-space:pre-wrap;tab-size:2;border-radius:12px}.document-toggle{padding:4px 0}.document-toggle summary{cursor:pointer;padding:12px 4px;font-size:15px;min-height:44px}.document-toggle>input{font-size:13px;width:100%;background:transparent;margin:4px 0 8px}.document-toggle>textarea{font:15px/1.7 system-ui,sans-serif;border:0;background:transparent;width:100%;resize:none;overflow:hidden;padding:10px 16px;border-left:1px solid var(--lib-line);min-height:60px}.document-page-reference{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--lib-line);padding:10px 0}.document-page-reference>button{border:0;background:transparent;text-align:left;justify-content:flex-start;flex:1;min-width:100px;font-size:15px;overflow-wrap:anywhere}.document-page-reference>button>svg{margin:0;flex:none}.document-page-reference>label{font-size:11px;color:var(--lib-muted);max-width:180px}.document-page-reference select{font-size:12px;max-width:100%;min-height:36px}.db-icon-picker{display:flex;gap:6px;flex-wrap:wrap;padding:12px;background:var(--lib-rail);border-radius:12px;margin-bottom:14px}.db-icon-picker button{width:40px;height:40px;padding:8px}.db-icon-picker button[aria-pressed=true]{background:var(--lib-ink);color:var(--lib-paper)}.db-heading>button{border:0;background:transparent;width:40px;height:40px;padding:8px}.db-heading>button .library-icon{width:24px;height:24px}
@media(max-width:700px){.block-choice-list{grid-template-columns:1fr}.document-page-reference>label{max-width:none;width:100%}.page-blocks .heading[data-level="1"] textarea{font-size:26px}.page-blocks .callout>.block-main{padding:12px;gap:8px}}

/* Workspace frame: the dark navigation rail surrounds a calm, rounded document. */
body[data-space-view=workspace] #lobby{background:#171717;padding:8px 10px 10px 0;column-gap:0;grid-template-rows:56px minmax(0,1fr)}
body[data-space-view=workspace] #library-rail{--lib-ink:#f4f4f4;--lib-muted:#bdbdbd;--lib-panel:#f5f5f5;--lib-hover:#303030;--lib-line:#404040;background:#171717;color:#f4f4f4;border:0;padding-top:16px;gap:20px}
body[data-space-view=workspace] #library-rail .space-mark{color:inherit}body[data-space-view=workspace] #library-rail button{color:inherit}body[data-space-view=workspace] #library-rail button[aria-current=true],body[data-space-view=workspace] #library-rail button[aria-current=true] svg{color:#171717;background:#f5f5f5}
body[data-space-view=workspace] #workspace-topbar{border:0;border-radius:24px 24px 0 0;background:var(--lib-paper);padding-inline:26px;min-width:0;gap:12px}
body[data-space-view=workspace] .workspace-page,body[data-space-view=workspace] #collection-main,body[data-space-view=workspace] #life-main{background:var(--lib-paper);border-radius:0 0 24px 24px}
#workspace-topbar .page-topline{flex:1;min-width:0;margin:0;padding:0;display:flex;gap:12px;flex-wrap:nowrap}#workspace-topbar .page-topline nav{flex-wrap:nowrap;overflow:auto;scrollbar-width:none}#workspace-topbar .page-topline button{flex-shrink:0;max-width:220px}#workspace-topbar .page-save-status{white-space:nowrap;font-size:10px}#workspace-topbar .topbar-search{order:3;margin-left:auto;flex:none;display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:8px}.space-pages .space-page-content{padding-top:12px}.app-language{display:grid;gap:8px;font-size:12px}.app-language select{min-width:160px}
/* A plus and grip sit beside each block; the searchable picker stays out of the flow. */
.page-blocks .page-block{padding-left:62px}.page-block>.block-menu{left:30px}.page-block>.block-inline-insert{display:block;position:absolute;left:0;top:0;z-index:5;margin:0}.block-inline-insert>summary{width:28px;height:40px;padding:6px;opacity:0;list-style:none}.block-inline-insert>summary span{display:none}.page-block:hover>.block-inline-insert>summary,.page-block:focus-within>.block-inline-insert>summary,.block-inline-insert[open]>summary{opacity:1}.block-insert .block-choices{z-index:80;display:flex;flex-direction:column;flex-wrap:nowrap;gap:8px;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:12px;padding:10px;overflow:auto}.block-choices input[type=search]{width:100%;min-height:40px;flex:none;margin:0}.block-choices .block-choice-list{display:grid;grid-template-columns:1fr;gap:2px;overflow:visible}.block-choice-list button{width:100%;border:0;border-radius:8px;background:transparent;padding:8px;gap:12px;justify-content:flex-start;min-height:58px}.block-choice-list button:hover,.block-choice-list button:focus-visible{background:var(--lib-hover)}.block-choice-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--lib-line);border-radius:8px;flex:none}.block-choice-copy{display:grid;gap:4px;text-align:left;min-width:0}.block-choice-copy strong{font-size:13px;font-weight:550}.block-choice-copy small{font-size:11px;color:var(--lib-muted);line-height:1.4}.block-menu-content{z-index:10}.block-insert>summary::-webkit-details-marker{display:none}
.db-active-rules{display:flex;gap:8px;flex-wrap:wrap;padding:10px 0 0}.db-rule-chip{display:flex;align-items:center;border:1px solid var(--lib-line);border-radius:8px;max-width:100%;overflow:hidden}.db-rule-chip button{background:transparent;border:0;min-height:30px;padding:5px 8px;overflow-wrap:anywhere}.db-rule-chip button:first-child{min-width:0;text-align:left}.db-rule-chip button:last-child{flex:none}.db-rule-editor,.db-view-settings{display:grid;gap:16px}.db-panel p{font-size:12px;line-height:1.6;color:var(--lib-muted);margin:0 0 12px;max-width:68ch}.db-actions{gap:2px}.db-actions>button:not(.primary){width:36px;padding:8px}.db-views{max-width:100%;overflow:auto;flex-wrap:nowrap}.db-views>button{white-space:nowrap}.db-query>label{background:var(--lib-panel);border:1px solid var(--lib-line);padding:0 12px;border-radius:10px}.db-query input{width:220px;min-width:0}.db-property input[readonly]{background:transparent;color:var(--lib-muted);border-color:transparent}.db-property .property-visibility{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--lib-muted)}.property-visibility input{width:16px;height:16px;min-height:16px;accent-color:var(--lib-accent)}
.db-row-actions{display:flex;align-items:center;min-width:72px}.page-database .db-row-actions>button{border:0;background:transparent;padding:5px;min-width:32px}.db-grip{cursor:grab}.db-grip:active{cursor:grabbing}.db-drop-target{outline:2px solid var(--lib-ink);outline-offset:-2px}.db-record-page{min-width:0}.db-record-page>nav{display:flex;align-items:center;gap:8px;margin-bottom:22px;font-size:12px;color:var(--lib-muted)}.db-record-page>nav>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-record-page .record-page-icon{width:46px;height:46px;background:var(--lib-rail);border:0;margin-bottom:14px}.record-page-icon svg{width:28px;height:28px}.record-page-title>input{font:650 28px/1.3 system-ui,sans-serif;border:0;background:transparent;width:100%;padding:8px 0}.record-page-properties{display:grid;gap:12px;border-bottom:1px solid var(--lib-line);padding:20px 0}.record-page-properties>label{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;align-items:center}.record-page-properties>label>span{display:flex;gap:8px;align-items:center;color:var(--lib-muted);font-size:12px}.record-page-properties input,.record-page-properties select{width:100%;min-width:0}.record-page-properties input[type=checkbox]{width:18px;height:18px;min-height:18px}.record-page-body{display:grid;gap:12px;padding:24px 0}.record-page-body>button{justify-self:start}.record-text-block{display:flex;gap:6px;align-items:start}.record-text-block>select{width:100px;min-width:0;min-height:36px;font-size:11px;background:transparent;border-color:transparent}.record-text-block>textarea{flex:1;min-width:0;resize:vertical;min-height:70px;border:0;background:transparent;line-height:1.7}.record-text-block.heading>textarea{font-size:22px;font-weight:600}.record-text-block.quote>textarea{font-style:italic}.record-text-block>button{border:0;background:transparent}.record-text-block>input[type=checkbox]{width:18px;height:18px;min-height:18px}.db-record-page footer{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--lib-line);padding-top:16px}
.db-files{display:grid;gap:6px;min-width:180px;padding:8px}.db-files>span{display:flex;align-items:center;gap:4px}.db-files a{display:flex;align-items:center;gap:6px;overflow-wrap:anywhere;font-size:12px;min-width:0;color:var(--lib-ink)}.db-files img{width:44px;height:40px;object-fit:cover;border-radius:5px}.db-files button{border:0;background:transparent;flex:none}.db-upload,.db-import{display:flex;gap:8px;align-items:center;position:relative;min-height:36px;font-size:12px;cursor:pointer;color:var(--lib-muted);overflow:hidden}.db-upload input,.db-import input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;max-width:100%}.db-upload:focus-within,.db-import:focus-within{outline:2px solid var(--lib-ink);outline-offset:2px}.db-import{border:1px solid var(--lib-line);border-radius:10px;display:inline-flex;padding:8px 12px;margin-left:8px}.db-mention{display:flex;align-items:center;min-width:180px}.db-mention select{min-width:0;width:100%}.db-mention button{flex:none}.db-folders{display:grid;gap:4px}.db-folder{border-bottom:1px solid var(--lib-line);padding:8px 0}.db-folder>summary{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:42px;font-weight:550;font-size:13px}.db-folder>summary span{color:var(--lib-muted);font-size:11px}.db-folder>button{display:flex;justify-content:flex-start;background:transparent;border:0;width:100%;padding-left:30px}.workspace-folder{padding:6px 0;border-bottom:1px solid var(--lib-line)}.workspace-folder>summary{display:flex;gap:10px;align-items:center;min-height:44px;cursor:pointer;font-size:14px}.workspace-folder>summary small{color:var(--lib-muted);margin-left:auto}.workspace-folder>.workspace-folder{margin-left:24px;border:0}.workspace-folder>button{font-size:12px;background:transparent;border:0;margin-left:20px;color:var(--lib-muted)}
@media(max-width:700px){body[data-space-view=workspace] #lobby{padding:6px;grid-template-rows:52px minmax(0,1fr)}body[data-space-view=workspace] #workspace-topbar{border-radius:16px 16px 0 0;padding-inline:10px}body[data-space-view=workspace] .workspace-page,body[data-space-view=workspace] #collection-main,body[data-space-view=workspace] #life-main{border-radius:0 0 16px 16px}.workspace-page{padding:20px 14px}#workspace-topbar .page-save-status{display:none}#workspace-topbar .page-topline{gap:4px}#workspace-topbar .page-topline button{max-width:140px}.page-blocks .page-block{padding-left:38px}.page-block>.block-menu{left:18px}.block-inline-insert>summary{width:22px;opacity:1;padding:2px}.page-block>.block-menu summary{width:20px}.db-toolbar{gap:6px;padding-bottom:8px}.db-actions{width:100%;justify-content:flex-end}.db-actions>button:not(.primary){width:40px;min-height:40px}.db-actions>.primary{margin-left:auto}.db-panel{padding:12px}.db-form-row{gap:8px}.db-form-row label{min-width:110px}.db-query{gap:6px}.db-query>label{flex:1;min-width:0}.db-query input{width:100%;max-width:none}.db-property>input{min-width:100px}.record-page-properties>label{grid-template-columns:1fr;gap:6px}.record-text-block{flex-wrap:wrap}.record-text-block>textarea{flex-basis:calc(100% - 45px)}.record-text-block>select{width:100%;border-bottom:1px solid var(--lib-line);border-radius:0}.db-record-page>nav button{max-width:180px}.db-record-page footer>button{flex:1}.page-database .db-views button{min-height:44px}.app-language{width:100%}.app-language select{width:100%}}

/* Anchored workspace menus occupy the overlay layer, never a layout row. */
.floating-menu,.workspace-flyout{--menu-shadow:0 12px 38px #0002,0 2px 7px #0001;position:fixed;z-index:100;background:var(--lib-panel);color:var(--lib-ink);border:0;border-radius:12px;box-shadow:var(--menu-shadow);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--lib-line) transparent;margin:0;padding:0;min-width:0;box-sizing:border-box;animation:space-menu-in .14s ease-out}
[data-library-theme=dark] .floating-menu,[data-library-theme=dark] .workspace-flyout{--menu-shadow:0 14px 40px #0007,0 2px 8px #0004}
@keyframes space-menu-in{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
.floating-menu-header{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 14px 8px;position:sticky;top:0;background:var(--lib-panel);z-index:1}.floating-menu-header strong{font:600 13px/1.4 system-ui,sans-serif}.floating-menu-header>button{border:0;background:transparent;width:30px;min-height:30px;padding:5px;color:var(--lib-muted)}.floating-menu-body{padding:4px 14px 14px}.floating-menu input,.floating-menu select{font:13px/1.5 system-ui,sans-serif;min-height:38px;max-width:100%;color:var(--lib-ink);background:var(--lib-paper);border:1px solid var(--lib-line);border-radius:8px;padding:8px 10px;box-sizing:border-box}.floating-menu button{color:var(--lib-ink)}.floating-menu button.primary{color:var(--lib-on-accent)}.floating-menu button:not(.primary):hover{background:var(--lib-hover)}.floating-menu .db-form-row{gap:8px;align-items:end}.floating-menu .db-form-row label{min-width:110px}.floating-menu .db-rule-editor>.db-form-row{padding:10px 0;border-bottom:1px solid var(--lib-line)}.floating-menu .db-rule-editor{gap:8px}.floating-menu .db-rule-editor>button{justify-self:start;border:0;background:transparent}.floating-menu .db-form-row>button{border:0;background:transparent}.floating-menu .db-form-row>label:has(input[aria-label]){flex-basis:100%}.floating-menu p,.db-menu-hint{font-size:12px;color:var(--lib-muted);line-height:1.6;margin:8px 0 12px}.floating-menu .db-view-settings>.db-form-row:last-child{display:grid;grid-template-columns:1fr}.floating-menu .db-view-settings>.db-form-row:last-child>button{justify-content:flex-start}.floating-menu .db-transfer>button,.floating-menu .db-import{display:flex;width:100%;margin:4px 0;border:0;background:transparent;padding:10px;justify-content:flex-start;color:var(--lib-ink);min-height:40px}.floating-menu .db-icon-picker{padding:0;gap:5px}.floating-menu .db-icon-picker button{width:38px;height:38px}
.db-menu-search{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--lib-line);padding-bottom:8px;margin-bottom:6px;color:var(--lib-muted)}.db-menu-search input{width:100%;border:0;background:transparent;min-width:0;padding:6px 0}.db-property-list{display:grid;gap:2px}.db-property-item{display:flex;align-items:center;gap:8px;min-width:0}.page-database .db-property-item>button{flex:1;min-width:0;border:0;background:transparent;justify-content:flex-start;text-align:left;padding:8px;min-height:50px;border-radius:8px}.db-property-item>button>span{display:grid;gap:2px;flex:1;min-width:0;overflow-wrap:anywhere}.db-property-item small{color:var(--lib-muted);font-size:11px;font-weight:400}.db-property-item input[type=checkbox],.db-menu-check input[type=checkbox],.db-tag-options input[type=checkbox]{width:16px;height:16px;min-height:16px;margin:0 6px;accent-color:var(--lib-accent);flex:none}.page-database .db-menu-line{width:100%;justify-content:flex-start;background:transparent;border:0;min-height:40px;padding:8px;border-radius:8px}.db-menu-footer-action{margin-top:8px}.db-property-editor{display:grid;gap:12px}.db-property-editor>label{display:grid;gap:6px;font-size:12px;color:var(--lib-muted)}.db-property-editor>label input,.db-property-editor>label select{width:100%}.db-property-editor>label.db-menu-check{display:flex;align-items:center;color:var(--lib-ink);min-height:38px}.db-property-editor input[readonly]{background:transparent;border-color:transparent}.db-property-kind{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--lib-muted)}.db-property-editor small{font-size:11px;color:var(--lib-muted)}
.page-database .db-multi-trigger{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:4px;width:100%;min-width:170px;min-height:42px;background:transparent;border:0;border-radius:0;padding:6px 10px;text-align:left}.db-multi-trigger>svg{width:12px;height:12px;margin-left:auto!important;flex:none}.db-tag{display:inline-flex;align-items:center;background:var(--lib-hover);color:var(--lib-ink);padding:3px 7px;border-radius:5px;font-size:12px;line-height:1.4;max-width:100%;overflow-wrap:anywhere}.db-multi-placeholder{color:var(--lib-muted)}.db-tag-options{display:grid;gap:2px;max-height:240px;overflow:auto}.db-tag-options>label{display:flex;align-items:center;gap:8px;min-height:40px;padding:4px;border-radius:8px;cursor:pointer}.db-tag-options>label:hover{background:var(--lib-paper)}.db-menu-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--lib-line);margin-top:8px;padding-top:8px;font-size:11px;color:var(--lib-muted)}.db-menu-foot button{background:transparent;border:0}.page-options[open]{width:auto;margin-left:auto}.workspace-flyout{padding:12px;display:grid;gap:10px}.page-icon-grid.workspace-flyout{grid-template-columns:repeat(5,minmax(0,1fr))}.page-cover-choices.workspace-flyout{grid-template-columns:repeat(2,minmax(0,1fr))}.page-options-body.workspace-flyout{display:grid;flex-wrap:unset}.workspace-flyout label{min-width:0;max-width:100%;width:100%;font-size:12px}.workspace-flyout input,.workspace-flyout select{max-width:100%;width:100%;min-width:0}.workspace-flyout input[type=checkbox]{width:18px}.workspace-flyout button{min-height:38px}.page-options>summary{gap:8px}.db-actions>button{transition:background-color .12s ease,color .12s ease}.db-actions>button[aria-expanded=true]{background:var(--lib-hover);color:var(--lib-ink)}
@media(max-width:700px){.floating-menu-header{padding:12px 12px 8px}.floating-menu-body{padding:4px 12px 12px}.floating-menu button{min-height:40px}.floating-menu .db-form-row label{min-width:100px}.floating-menu input,.floating-menu select{font-size:16px}.floating-menu .db-menu-search input{font-size:14px}.page-options[open]{margin-left:0}.record-page-properties .db-multi-trigger{min-width:0}}
@media(prefers-reduced-motion:reduce){.floating-menu,.workspace-flyout{animation:none}.db-actions>button{transition:none}}

/* Data collections use the same database surface as page databases. */
.collection-database .db-heading{display:none}
.collection-database{margin:24px 0 14px;border:0;background:transparent}
.collection-save-status{display:block;font-size:12px;color:var(--library-muted);margin:0 0 20px;cursor:pointer}
.collection-import-actions,.record-native-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.db-readonly{display:block;max-width:32ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--library-muted);font-size:13px}
.wardrobe-editing .collection-database,.wardrobe-editing .collection-save-status{display:none}
#life-main .life-heading #life-add[hidden]{display:none}
#collection-main #new-book[hidden]{display:none}
.collection-database .db-table-scroll{max-width:100%;overflow:auto}
@media(max-width:700px){.collection-database{margin-top:16px}.collection-import-actions button{flex:1;min-width:120px}}

#collection-main #intro,#collection-main #shelf-title{display:none}
#collection-main .library-heading{border:0;padding-bottom:0;margin-bottom:0}
.collection-save-status{background:transparent;border:0;padding:0;min-height:24px;text-align:left;border-radius:4px;box-shadow:none}
#library-rail nav{overflow-x:hidden}

#workspace-route{display:flex;align-items:center;gap:8px;min-width:0}
#workspace-route span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Compact menus and search share the database toolbar. Pointer focus stays quiet. */
.db-workspace button:focus:not(:focus-visible),.workspace-page button:focus:not(:focus-visible),.workspace-page summary:focus:not(:focus-visible){outline:none;box-shadow:none}
.db-workspace :focus-visible,.workspace-page :focus-visible{outline:1px solid var(--lib-muted);outline-offset:2px}
.db-actions{align-items:center;flex-wrap:wrap}.db-toolbar-search{display:flex;align-items:center;gap:6px;width:210px;max-width:100%;background:var(--lib-hover);border-radius:8px;padding-left:8px}
.db-toolbar-search input{min-width:0;width:100%;min-height:32px;border:0;background:transparent;padding:5px;font-size:12px}.db-toolbar-search>button{flex:none}
.db-result-line{display:flex;align-items:center;gap:12px;color:var(--lib-muted);font-size:11px;min-height:32px}.db-result-line button{min-height:28px;font-size:11px;border:0;background:transparent}
.db-row-actions input[type=checkbox],.db-record-card>input[type=checkbox],.db-record-list input[type=checkbox],.db-open-column input[type=checkbox]{width:14px;min-height:14px;height:14px;padding:0;flex:none;accent-color:var(--lib-ink)}
.db-record-card>input[type=checkbox]{float:right}.db-record-list>div{display:flex;gap:10px;align-items:center;padding:4px 8px;border-bottom:1px solid var(--lib-line)}.db-record-list button{flex:1;justify-content:flex-start;border:0;background:transparent;text-align:left}
.workspace-transfer>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:38px;width:fit-content;font-size:13px;padding:6px 10px;border-radius:8px;background:var(--lib-hover)}
.workspace-transfer>summary::-webkit-details-marker{display:none}.workspace-transfer:not([open])>.settings-transfer-body{display:none}.settings-transfer-body{display:flex;flex-direction:column;gap:3px;background:var(--lib-panel);padding:8px;border-radius:10px;box-shadow:0 8px 24px #0002;z-index:1000;overflow:auto}
.settings-transfer-body>button{display:flex;align-items:center;gap:10px;font-size:12px;padding:8px 10px;min-height:36px;border:0;background:transparent;border-radius:6px;text-align:left;justify-content:flex-start}
.settings-transfer-body>button:hover{background:var(--lib-hover)}.settings-transfer-body>button>svg:last-child:not(:first-child){margin-left:auto}.settings-transfer-body>strong{font-size:12px;padding:8px 10px}.settings-transfer-body>p{font-size:12px;line-height:1.6;padding:0 10px;color:var(--lib-muted)}
.db-calendar>header{display:flex;align-items:center;gap:8px;margin:12px 0}.db-calendar header strong{margin-right:auto;font-size:14px}.db-calendar header button{border:0;background:transparent;min-height:32px}
.db-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--lib-line);border-left:1px solid var(--lib-line)}.db-weekday{padding:8px;color:var(--lib-muted);font-size:11px;text-align:center}.db-calendar-day{min-height:96px;border-right:1px solid var(--lib-line);border-bottom:1px solid var(--lib-line);padding:6px;min-width:0}.db-calendar-day time{font-size:11px;color:var(--lib-muted)}.db-calendar-day button{display:block;width:100%;min-height:28px;padding:4px;text-align:left;font-size:11px;background:var(--lib-hover);border:0;margin-top:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.db-calendar-day button span{overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.db-toolbar-search{width:180px}.db-calendar-day{min-height:70px;padding:3px}.db-row-actions{gap:2px}.db-open-column{width:88px!important}}

.db-workspace input:focus:not(:focus-visible),.db-workspace select:focus:not(:focus-visible),.workspace-page input:focus:not(:focus-visible),.workspace-page select:focus:not(:focus-visible){outline:none;box-shadow:none}

.page-database :is(button,input,select,textarea):focus{box-shadow:none}
.page-database :is(input,select,textarea):focus{outline:none;background:var(--lib-hover)}
.page-database button:focus:not(:focus-visible){outline:none}
.page-database button:focus-visible{outline:1px solid var(--lib-muted);outline-offset:1px}
.db-table-scroll .db-row-actions{width:96px;min-width:96px;gap:2px;padding:0 4px}.db-table-scroll .db-row-actions input[type=checkbox]{margin:4px}.db-table-scroll .db-open-column{width:96px}.db-table-scroll td:first-child{width:96px}

#app-settings-page h1{font:650 30px/1.25 var(--lib-sans,system-ui,sans-serif);letter-spacing:-.025em}#app-settings-page .page-description{font-size:13px;line-height:1.6;margin:12px 0 20px}.settings-transfer-body>button{display:flex;justify-content:flex-start}.settings-transfer-body>button>svg{margin:0;flex:none}.settings-transfer-body>button>svg:not(:only-child){margin:0}

.db-table-scroll :is(.db-row-actions,.db-open-column) input[type=checkbox],.db-record-list input[type=checkbox],.db-record-card>input[type=checkbox]{min-width:14px;max-width:14px;width:14px;box-sizing:border-box}
.db-table-scroll .db-open-column input[type=checkbox]{margin:4px 8px}
.db-table-scroll th.db-open-column{padding:8px 4px}.db-table-scroll th.db-open-column input[type=checkbox]{margin:4px}

/* Database-backed apps: the same owner-scoped rows in a focused presentation. */
.db-presentation{display:flex;gap:2px;flex-shrink:0;padding:3px;background:var(--lib-hover);border-radius:10px}
.db-presentation button{border:0!important;background:transparent!important;min-height:32px;padding:5px 10px!important;border-radius:8px!important}
.db-presentation button[aria-pressed=true]{background:var(--lib-panel)!important;color:var(--lib-ink)!important}
.db-views[hidden]{display:none!important}.db-toolbar:has(.db-views[hidden]){justify-content:space-between}
.database-app{padding:18px 0 30px}.app-overview{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.app-overview h2{display:flex;align-items:center;gap:10px;font:600 22px/1.3 system-ui,sans-serif;margin:0 0 6px;letter-spacing:-.025em}
.app-overview p{font-size:13px;color:var(--lib-muted);margin:0}.app-categories{display:flex;gap:4px;overflow:auto;margin:0 0 24px;padding-bottom:5px}
.app-categories button{white-space:nowrap;border:0!important;border-radius:8px!important;font-size:13px!important}
.app-categories button[aria-pressed=true]{background:var(--lib-hover)!important;color:var(--lib-ink)!important}
.app-shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:28px 22px}
.app-entry{min-width:0}.app-cover{display:flex;width:100%;height:224px;align-items:center;justify-content:center;padding:12px!important;border:0!important;background:var(--lib-hover)!important;border-radius:12px!important;overflow:hidden}
.app-cover img,.app-cover canvas{max-width:100%;max-height:100%;object-fit:contain;width:auto;height:auto;display:block}
.app-cover-placeholder{display:grid;place-content:center;width:100%;height:100%;color:var(--lib-muted)}.app-cover-placeholder svg{width:36px;height:36px}
.app-entry-copy{min-width:0}.app-entry-title{font-weight:550!important;font-size:14px!important;line-height:1.45!important;border:0!important;background:transparent!important;display:block!important;padding:0!important;min-height:0!important;text-align:left!important;overflow-wrap:anywhere;border-radius:4px!important}
.app-shelf .app-entry-copy{padding-top:12px}.app-entry-copy p{font-size:13px;line-height:1.5;color:var(--lib-muted);margin:4px 0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.app-entry-copy small{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--lib-muted);margin-top:5px}
.app-entry-actions{display:flex;align-items:center;gap:4px;margin-top:7px}.app-entry-actions button{border:0!important;background:transparent!important;font-size:12px!important;padding:5px 6px!important;min-height:32px!important;border-radius:7px!important}
.app-entries{display:flex;flex-direction:column}.app-entries .app-entry{display:flex;align-items:center;gap:14px;padding:16px 2px;border-bottom:1px solid var(--lib-line)}
.app-entries .app-entry-copy{flex:1}.app-entries .app-entry-actions{margin:0}.app-entries input[type=checkbox]{width:18px!important;min-width:18px!important;height:18px;accent-color:var(--lib-ink)}
.app-checklist .is-done .app-entry-title{text-decoration:line-through;color:var(--lib-muted)}
.app-empty{padding:50px 20px;text-align:center;max-width:480px;margin:auto}.app-empty>svg{width:32px;height:32px;color:var(--lib-muted)}
.app-empty h3{font:600 18px/1.4 system-ui,sans-serif;margin:18px 0 8px}.app-empty p{font-size:14px;color:var(--lib-muted);line-height:1.6;margin-bottom:18px}
.app-load-more{display:flex;margin:26px auto 0!important}.db-app-settings{display:grid;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--lib-line);margin-bottom:16px}
.db-app-settings p{font-size:13px;line-height:1.5;color:var(--lib-muted);margin:0}.db-app-settings label{display:grid;gap:6px;font-size:12px}
#apps-page{width:100%}.space-app-directory{max-width:1000px}#apps-page h1{font:600 30px/1.25 system-ui,sans-serif;letter-spacing:-.03em}.apps-directory-search{display:flex;gap:10px;align-items:center;max-width:440px;margin:28px 0 18px;padding:10px 14px;background:var(--lib-hover);border-radius:10px}
.apps-directory-search input{border:0!important;background:transparent!important;padding:0!important;width:100%;min-width:0}.space-app-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
.space-app-directory>button{display:flex;align-items:center;gap:16px;padding:18px 4px!important;background:transparent!important;border:0!important;border-bottom:1px solid var(--lib-line)!important;border-radius:0!important;text-align:left}
.space-app-directory>button>svg:first-child{width:23px;height:23px}.space-app-directory>button>span{flex:1;min-width:0}.space-app-directory strong{display:block;font-size:14px;font-weight:550}.space-app-directory small{display:block;font-size:12px;color:var(--lib-muted);margin-top:5px;line-height:1.5}
.space-app-directory>button:hover{background:var(--lib-hover)!important}.space-app-window{width:min(1100px,calc(100vw - 40px))!important;max-width:1100px!important;height:min(820px,calc(100dvh - 40px));padding:0!important;border:0!important;border-radius:18px!important;background:var(--lib-paper)!important;color:var(--lib-ink);overflow:auto}
.space-app-window::backdrop{background:#0009}.space-app-window-header{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--lib-paper);z-index:3;padding:12px 22px!important;border-bottom:1px solid var(--lib-line);font-size:13px;color:var(--lib-muted)}
.space-app-window-header button{display:grid;place-content:center;width:34px;height:34px;border:0!important;background:var(--lib-hover);border-radius:9px!important;padding:0!important}
.space-app-window #life-main,.space-app-window #collection-main{display:block!important;padding:24px!important;max-width:none!important;margin:0!important;min-width:0;overflow:visible}
.space-app-window #life-main[hidden],.space-app-window #collection-main[hidden]{display:none!important}.space-app-window .library-heading{padding:0 0 20px!important;margin:0!important}
@media(max-width:700px){.space-app-directory{grid-template-columns:1fr}.app-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.app-cover{height:190px}.app-entry-actions{flex-wrap:wrap}.app-overview{align-items:flex-start}.app-overview h2{font-size:20px}.app-overview>button{max-width:130px;font-size:12px!important}.db-presentation{margin-bottom:0}.space-app-window{width:calc(100vw - 12px)!important;height:calc(100dvh - 12px);border-radius:14px!important}.space-app-window #life-main,.space-app-window #collection-main{padding:16px!important}.space-app-window-header{padding:10px 16px!important}}

.character-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:32px;padding:30px}.character-stage{position:relative;min-height:480px;background:var(--lib-hover);border-radius:14px;overflow:hidden}.character-stage canvas{width:100%;height:100%;display:block}.character-controls{display:grid;align-content:start;gap:20px}.character-controls h2{font:600 22px/1.3 system-ui,sans-serif;margin:0}.character-controls p{font-size:14px;line-height:1.6;color:var(--lib-muted);margin:0}.character-controls label{display:grid;gap:8px;font-size:13px}.character-controls input[type=range]{accent-color:var(--lib-ink)}.character-controls input[type=color]{width:100%;height:42px;padding:4px;background:var(--lib-panel);border:1px solid var(--lib-line);border-radius:8px}.character-app h1{font:600 15px/1.3 system-ui,sans-serif;margin:0;color:var(--lib-ink)}.projects-app-body{padding:28px}.projects-app-body h1{font:600 28px/1.3 system-ui,sans-serif;margin:0}.projects-source-picker{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:28px}.projects-source-picker label{display:grid;gap:6px;font-size:12px;max-width:100%;min-width:0}.projects-source-picker select{max-width:100%;width:360px}.projects-app-body .db-heading{margin-bottom:16px}
@media(max-width:700px){.character-layout{grid-template-columns:1fr;padding:16px;gap:22px}.character-stage{min-height:320px;height:360px}.projects-app-body{padding:18px}.projects-source-picker select{width:100%}}

.app-inline-properties select{font-size:12px;max-width:150px;min-height:32px;border:0;background:var(--lib-hover);border-radius:8px;padding:5px 8px}.app-shelf .app-inline-properties{margin-top:8px}@media(max-width:700px){.app-entries .app-entry:has(.app-inline-properties){flex-wrap:wrap}.app-entries .app-entry-copy{flex-basis:calc(100% - 90px)}.app-inline-properties select{max-width:140px}}

.projects-app .app-overview h2{display:none}.projects-app-body .page-description{margin:12px 0 20px}.projects-app .app-overview{margin-bottom:14px}.projects-app-body .db-heading{margin-bottom:10px}

.character-appearance{border:0;border-top:1px solid var(--lib-line);padding:20px 0;margin:12px 0}.character-appearance legend{font-size:14px;font-weight:600;padding:0 8px 0 0}.character-appearance label{display:grid;gap:8px;margin:10px 0}.character-outfit p{line-height:1.7;color:var(--lib-muted);font-size:13px}

/* Collection identity owns the presentation switch; each view owns the area below. */
#collection-main .collection-heading,#life-main .collection-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin:0 0 24px;padding:0;border:0}
.collection-heading>.collection-actions:not(:has(> :not([hidden]))){display:none}
.collection-heading>div:first-child{min-width:0;width:auto}.collection-heading h1{min-width:0;margin:0;overflow-wrap:anywhere}
.collection-heading #owner-label{display:none}.collection-presentation{justify-self:end;min-width:0}
.collection-presentation:empty{display:none}.collection-heading:has(.collection-presentation:empty){grid-template-columns:1fr}
.collection-heading #life-add{grid-column:2;grid-row:1}.collection-heading:has(.collection-presentation:not(:empty)) #life-add{display:none}
#life-main.wardrobe-editing .collection-presentation{display:none}
#life-main:has(.life-database:not([hidden]))>.life-intro{display:none}
.db-presentation{margin:0;align-self:center;max-width:100%}
.db-presentation button{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--lib-muted);font:500 12px/1.4 system-ui,sans-serif;white-space:nowrap}
.db-presentation button>.library-icon{width:16px;height:16px;margin:0;flex:none}
.collection-presentation button:focus-visible{outline:1px solid var(--lib-muted);outline-offset:2px}
.collection-presentation button:focus:not(:focus-visible){outline:none;box-shadow:none}
.collection-database{margin:0 0 14px}
.db-heading .db-total{flex:none}.db-heading .db-presentation{margin-left:auto;flex:none}
.db-view-surface{min-width:0}.db-toolbar{align-items:center}
.db-result-count{flex:none;color:var(--lib-muted);font:11px/1.5 system-ui,sans-serif;font-variant-numeric:tabular-nums}
.db-toolbar .db-actions{margin-left:auto}.db-view-surface[data-presentation=app]>.db-toolbar{border-bottom:0;padding-bottom:8px}
#life-main>.life-subnav{margin:0 0 16px}
.space-app-window #collection-main .collection-heading,.space-app-window #life-main .collection-heading{margin-bottom:24px!important;padding-bottom:0!important}
@media(max-width:700px){
 #collection-main .collection-heading,#life-main .collection-heading{gap:12px;margin-bottom:20px;align-items:start}
 .collection-heading>div:first-child{width:auto}
 #collection-main .collection-heading h1,#life-main .collection-heading h1{font-size:26px;line-height:1.25;gap:8px}
 .collection-heading h1>.library-icon{display:none}
 .db-presentation button{min-height:40px;padding:6px 8px!important}.db-presentation button>.library-icon{display:none}
 .db-heading{flex-wrap:wrap}.db-heading .database-title{flex-basis:calc(100% - 60px)}.db-heading .db-total{margin-right:auto}
 .db-toolbar .db-actions{width:auto;flex:1;min-width:0;flex-wrap:wrap}
 .db-toolbar-search{width:100%;flex-basis:100%}.db-toolbar .db-actions>.primary{margin-left:0}
 .db-result-count{align-self:end;line-height:40px}.db-result-line{flex-wrap:wrap}
}

@media(max-width:380px){#collection-main .collection-heading,#life-main .collection-heading{gap:8px}#collection-main .collection-heading h1,#life-main .collection-heading h1{font-size:22px}.collection-presentation .db-presentation button{font-size:11px;padding:6px!important}}
