@font-face{font-family:Masaar;src:url('/assets/Masaar-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Masaar;src:url('/assets/Masaar-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{color-scheme:light;--bg:#f4f5f7;--panel:#fff;--text:#202731;--muted:#566171;--border:#cdd2da;--action:#253344;--on-action:#fff;--error:#b12232;--focus:#1a67c4}
:root[data-theme=dark]{color-scheme:dark;--bg:#151b23;--panel:#202832;--text:#edf0f5;--muted:#b7c0cd;--border:#526071;--action:#d9e2ed;--on-action:#17232f;--error:#ffafb6;--focus:#8bc2ff}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 Masaar,sans-serif;font-synthesis:none}
[hidden]{display:none!important}button,input,textarea,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 15px;border:1px solid var(--border);border-radius:10px;cursor:pointer;background:var(--panel);color:var(--text);text-decoration:none}
button:hover,.button:hover{border-color:var(--text)}button:disabled{opacity:.6;cursor:wait}.primary{background:var(--action);color:var(--on-action);border-color:var(--action)}a{color:inherit;text-underline-offset:4px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.topbar{display:flex;align-items:center;gap:16px;padding:14px 24px;background:var(--panel);border-bottom:1px solid var(--border);flex-wrap:wrap}.brand{font-weight:700;font-size:22px;text-decoration:none;margin-inline-end:auto}.topbar #identity{color:var(--muted);font-size:15px}
main{padding:24px;max-width:1500px;margin:auto}.panel,.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:20px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}h1{font-size:27px}h2{font-size:22px}h3{font-size:19px;margin:0 0 8px}p{margin:8px 0}.muted{color:var(--muted)}.error{color:var(--error)}#status{min-height:32px;margin-bottom:16px}
.filters,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filters{margin:10px 0 20px}input:not([type=checkbox]),textarea,select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:8px;padding:9px 12px;background:var(--panel);color:var(--text)}input[type=search]{max-width:400px}input[type=file]{padding:12px;min-height:64px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:16px}.card .actions{margin-top:16px}.file-name{overflow-wrap:anywhere}.badge{display:inline-block;padding:2px 10px;border:1px solid var(--border);border-radius:16px;font-size:14px}.storage{margin-bottom:16px}.back{margin:12px 0}.file-list{display:grid;gap:12px}.file-card{display:flex;gap:15px;align-items:center;justify-content:space-between;flex-wrap:wrap}.file-card .details{flex:1;min-width:180px}.upload-queue{margin-top:24px}.queue-item{padding:14px;border-bottom:1px solid var(--border)}
dialog{width:min(740px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border:1px solid var(--border);border-radius:16px;background:var(--panel);color:var(--text);padding:22px}dialog::backdrop{background:rgba(8,15,23,.55)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-head h2{margin:0}form{display:grid;gap:15px;margin-top:18px}label{display:grid;gap:5px}label.check{display:flex;align-items:center;gap:8px}textarea{min-height:110px;resize:vertical}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px}iframe.preview{width:100%;height:65dvh;border:1px solid var(--border)}img.preview{max-width:100%;max-height:65dvh;display:block;margin:auto}.loading{color:var(--muted);animation:pulse 1.2s ease-in-out infinite}#content[aria-busy=true]{opacity:.6}
@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.loading{animation:none}}@media(max-width:600px){main{padding:16px}.topbar{padding:12px 16px;gap:10px}.topbar #identity{width:100%;order:3}.card{padding:16px}.file-card .actions{width:100%}dialog{padding:16px}.dialog-head{align-items:flex-start}.dialog-actions>*{flex:1}}

canvas.preview{max-width:100%;height:auto;display:block;margin:16px auto;background:#fff}

.source-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;max-height:55dvh;overflow:auto;border:1px solid var(--border);padding:14px}
.offer-preview{background:var(--panel);border:1px solid var(--border);padding:24px;overflow-wrap:anywhere}.offer-preview p,.offer-preview dd{white-space:pre-wrap}.offer-preview dt{font-weight:700;margin-top:14px}.offer-preview dd{margin-inline-start:0}fieldset{min-inline-size:0;border:1px solid var(--border);border-radius:8px;padding:14px}fieldset .check{margin-block:10px}#task:has(.offer-preview){width:min(850px,calc(100vw - 32px))}

.offer-preview dd{text-align:right;unicode-bidi:plaintext}

/* Existing Library tokens and native components; project browsing only. */
.project-grid{align-items:stretch}.project-card{display:flex;flex-direction:column;min-width:0;gap:8px}
.project-card>.badge{align-self:flex-start}.project-card h2{margin:4px 0 0;overflow-wrap:anywhere}
.project-card p{margin:0;overflow-wrap:anywhere}.project-name-en{text-align:start}
.project-metadata{display:grid;gap:12px;margin:14px 0 18px;min-width:0}
.project-metadata>div{display:grid;grid-template-columns:minmax(80px,1fr) minmax(0,2fr);gap:12px;align-items:baseline}
.project-metadata dt{color:var(--muted);font-size:15px}.project-metadata dd{margin:0;text-align:start;overflow-wrap:anywhere}
.project-card .actions{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}
.project-overview h2{margin:0 0 12px}.project-overview .project-metadata{grid-template-columns:repeat(3,minmax(0,1fr));margin-block:0}
.project-overview .project-metadata>div{display:block}.project-overview dd{margin-top:4px}
.project-description{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:18px}
.project-navigation{padding-block:12px 20px;border-bottom:1px solid var(--border);margin-bottom:20px}
.project-management{margin-top:16px}.project-management>span{color:var(--muted);font-size:15px;margin-inline-end:4px}
.results-summary{margin-block:0 16px}.request-state h2{margin-block:0 8px}.request-state p{color:var(--muted)}
.request-state button{margin-top:12px}#content[aria-busy=true]{opacity:1}
.file-list>h2{margin:8px 0 0}.file-card h2{margin-block:0 6px}.file-list .storage{margin:0}
.filters label.check{min-height:44px;cursor:pointer}.filters input[type=checkbox]{width:18px;height:18px;accent-color:var(--action)}
@media(max-width:600px){.project-overview .project-metadata{grid-template-columns:1fr;gap:14px}.project-overview .project-metadata>div{display:grid}.filters input[type=search]{max-width:none;flex-basis:100%}.project-navigation{gap:8px}.project-navigation button{flex:1 1 160px}.project-card .actions{gap:8px}.project-description{font-size:16px}}

/* D108: shared CRM/OMNI information rhythm; existing Library palette/components. */
.record-page,.record-sections{display:grid;gap:24px;min-width:0}.record-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:24px}
.record-filters label,.record-review-form label{font-size:14px;gap:8px}.record-filters input[type=search]{max-width:none}.record-summary{grid-column:1/-1;margin:0;font-size:15px}
.record-section{padding:24px;min-width:0}.record-section h2{margin:0 0 16px;font-size:20px}.record-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:start;font-size:15px}
.record-table th{text-align:start;font-weight:700;color:var(--muted);font-size:13px;padding:12px;border-bottom:1px solid var(--border)}
.record-table td{vertical-align:top;padding:16px 12px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.record-table tbody tr:last-child td{border-bottom:0}
.record-table h3{font-size:16px;margin:0;font-weight:700}.record-table p{font-size:14px;margin:8px 0 0}.record-table th:nth-child(2){width:34%}.record-value{white-space:pre-wrap}
.record-warning{padding:12px;border-inline-start:3px solid var(--error);color:var(--text);background:var(--bg);font-size:14px}
.record-page>.panel>h2{font-size:20px;margin:0 0 16px}.record-page .queue-item{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:16px 0}.record-page .queue-item p{flex:1 1 300px;margin:0}
#task:has(.record-review-form){width:min(900px,calc(100vw - 32px));padding:24px;border-radius:18px}.record-review-form{gap:16px}
.record-review-form fieldset{padding:20px;border-radius:12px;margin:0 0 16px}.record-review-form legend{font-size:16px;font-weight:700;padding-inline:8px}
.record-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.record-field-grid>*{min-width:0}.record-wide-field{grid-column:1/-1}
.record-review-form input,.record-review-form select,.record-review-form textarea{font-size:15px;border-radius:10px}.record-review-form fieldset>button{margin-top:16px}
.record-crop{margin-block:16px}.record-crop summary{min-height:44px;cursor:pointer;padding-block:10px}.record-crop[open]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.record-crop summary{grid-column:1/-1}
@media(max-width:760px){.record-filters{grid-template-columns:1fr;padding:16px}.record-section{padding:16px}.record-page,.record-sections{gap:16px}.record-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.record-table tbody,.record-table tr,.record-table td{display:block}.record-table tr{padding-block:12px;border-bottom:1px solid var(--border)}.record-table td{padding:8px 0;border:0;display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px}.record-table td::before{content:attr(data-label);color:var(--muted);font-size:13px}.record-table td>p{grid-column:2;margin:0}.record-table td.record-value{white-space:pre-wrap}.record-table tr:last-child{border:0}
.record-field-grid,.record-crop[open]{grid-template-columns:1fr}.record-wide-field{grid-column:auto}#task:has(.record-review-form){padding:16px}.record-review-form fieldset{padding:16px}.record-page .queue-item button{flex:1 1 150px}}

.record-review-form label.check{min-height:44px;cursor:pointer}.record-review-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--action)}

/* D108: existing Library elements, CRM/OMNI field rhythm and one task dialog. */
.template-page{display:grid;gap:24px}.template-context{padding:24px}.template-context>p{margin-bottom:0;font-size:15px;color:var(--muted)}.template-grid{align-items:stretch}.template-card{display:flex;flex-direction:column;gap:12px;min-width:0}.template-card>.badge{align-self:flex-start}.template-card h2{margin:0;font-size:21px;overflow-wrap:anywhere}.template-card p{margin:0;overflow-wrap:anywhere}.template-card .actions{margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}
.offer-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:0;padding:16px;background:var(--bg);border-radius:12px;font-size:15px}.offer-context dt{color:var(--muted);font-size:13px}.offer-context dd{margin:4px 0 0;overflow-wrap:anywhere}
#task:has(.template-editor-form),#task:has(.offer-editor-form),#task:has(.offer-source-form){width:min(900px,calc(100vw - 32px));padding:24px;border-radius:18px}
.template-editor-form,.offer-editor-form,.offer-source-form,.offer-setup{display:grid;gap:24px}.offer-setup{margin-top:20px}.offer-setup>.primary{justify-self:end}
.offer-group{padding:20px;border-radius:12px;margin:0;min-width:0}.offer-group legend{padding-inline:8px;font-size:16px;font-weight:700}.offer-group-body{display:grid;gap:16px}.offer-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.offer-field-grid>*{min-width:0}.offer-wide{grid-column:1/-1}
.template-editor-form label,.offer-editor-form label,.offer-source-form label,.offer-setup label{gap:8px;font-size:14px}.template-editor-form input,.template-editor-form select,.template-editor-form textarea,.offer-editor-form input,.offer-editor-form select,.offer-editor-form textarea,.offer-source-form select{font-size:15px;border-radius:10px;min-width:0}.offer-field .field-hint{margin:8px 0 0;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.offer-editor-form textarea[readonly]{background:var(--bg)}
.template-editor-form label.check,.offer-editor-form label.check,.offer-source-form label.check{min-height:44px;cursor:pointer}.template-editor-form input[type=checkbox],.offer-editor-form input[type=checkbox],.offer-source-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--action)}

/* D108: saved offers and history, same native Library components. */
.saved-offers-page,.offer-history,.saved-version{display:grid;gap:24px;min-width:0}.saved-offers-page>p{margin:0}.saved-offers,.offer-drafts{padding:24px;min-width:0}.saved-offers>h2,.offer-drafts>h2{margin:0 0 16px;font-size:20px}
.offer-draft-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:16px;border-bottom:1px solid var(--border)}.offer-draft-row:last-child{border:0}.offer-draft-row>div{min-width:0}.offer-draft-row h3{overflow-wrap:anywhere;font-size:17px}.offer-draft-row p{margin:0;color:var(--muted);font-size:14px}
.saved-offer-table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:start;font-size:15px}.saved-offer-table th{text-align:start;font-weight:700;color:var(--muted);font-size:13px;padding:12px;border-bottom:1px solid var(--border)}.saved-offer-table th:nth-child(1){width:30%}.saved-offer-table th:nth-child(2){width:24%}.saved-offer-table td{padding:16px 12px;vertical-align:top;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.saved-offer-table tr:last-child td{border:0}.saved-offer-table h3{margin:0 0 8px;font-size:17px}.saved-offer-table .actions{gap:8px}.saved-offer-table button{font-size:14px}
.offer-history-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--border);border-radius:12px;flex-wrap:wrap}.offer-history-row p{margin:0;font-size:15px}.saved-version .offer-preview{min-width:0}#task:has(.offer-history),#task:has(.saved-version){width:min(900px,calc(100vw - 32px));padding:24px;border-radius:18px}
@media(max-width:760px){.saved-offers-page,.offer-history,.saved-version{gap:16px}.saved-offers,.offer-drafts{padding:16px}.offer-draft-row{flex-wrap:wrap}.offer-draft-row>button{width:100%}.saved-offer-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.saved-offer-table tbody,.saved-offer-table tr{display:block}.saved-offer-table tr{padding-block:12px;border-bottom:1px solid var(--border)}.saved-offer-table tr:last-child{border:0}.saved-offer-table td{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;padding:8px 0;border:0}.saved-offer-table td::before{content:attr(data-label);color:var(--muted);font-size:13px}.saved-offer-table td>h3,.saved-offer-table td>.badge{grid-column:2;justify-self:start}.saved-offer-table td>.badge{margin-top:-8px}.saved-offer-table button{flex:1 1 100%;overflow-wrap:anywhere}.offer-history-row{padding:16px}.offer-history-row button{width:100%}#task:has(.offer-history),#task:has(.saved-version){padding:16px}}
.offer-main-actions{padding-top:16px;border-top:1px solid var(--border)}.offer-source-form>.offer-group{display:grid;gap:16px}.offer-source-form .offer-current-value,.offer-chosen-source{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.offer-chosen-source:empty{display:none}.offer-source-form .offer-current-value{font-size:14px;color:var(--muted)}.offer-source-form select{max-width:100%}.template-editor-form>details>summary{min-height:44px;cursor:pointer;padding-block:10px}.template-editor-form>details[open]{display:grid;gap:16px}
@media(max-width:760px){.template-page{gap:16px}.template-context{padding:16px}.offer-context,.offer-field-grid{grid-template-columns:1fr}.offer-wide{grid-column:auto}#task:has(.template-editor-form),#task:has(.offer-editor-form),#task:has(.offer-source-form){padding:16px}.offer-group{padding:16px}.template-editor-form,.offer-editor-form,.offer-source-form{gap:16px}.offer-main-actions>button{flex:1 1 100%}.offer-setup>.primary{justify-self:stretch}.offer-source-actions>button{width:100%}}

/* Same D108 task/components; native canvas retains Graphite controls in sandbox. */
#task:has(.visual-editor){width:min(1440px,calc(100vw - 32px));padding:20px}.visual-editor{display:grid;gap:12px;min-width:0}.visual-editor iframe{width:100%;height:70vh;min-height:480px;border:1px solid var(--border);border-radius:12px;background:#222}.visual-leave{padding:16px;border:1px solid var(--border);border-radius:12px}.visual-leave[hidden]{display:none}.visual-leave button{margin-inline-end:8px}@media(max-width:760px){#task:has(.visual-editor){padding:12px}.visual-editor iframe{height:65vh;min-height:500px}.visual-editor>.actions>button{flex:1 1 100%}}

/* D108 simple employee canvas; same Library fields/buttons, Arabic/RTL. */
.visual-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:12px}.visual-toolbar button{min-height:44px}.visual-pages{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.visual-pages>label{flex:1;max-width:300px}.visual-text{display:flex;align-items:end;gap:12px}.visual-text>label{flex:1}.visual-text[hidden]{display:none}.visual-editor iframe{background:#fafafa;min-height:360px;height:55vh}#task:has(.visual-editor)>.dialog-head{position:sticky;top:-20px;background:var(--panel);z-index:2}.visual-editor .field-hint{margin:0;font-size:14px}.visual-editor>.actions{padding-bottom:12px;border-bottom:1px solid var(--border)}
@media(max-width:760px){.visual-toolbar{padding:8px}.visual-toolbar button{flex:1 1 40%;font-size:14px}.visual-pages>label{max-width:none;flex:1 1 100%}.visual-pages>button{flex:1}.visual-text{flex-wrap:wrap}.visual-text>label{flex:1 1 100%}.visual-editor iframe{height:50vh;min-height:320px}}

.visual-images{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:12px;border:1px solid var(--border);border-radius:12px}.visual-images>label{flex:1}.visual-images[hidden]{display:none}.visual-editor .offer-context{padding:8px 12px;gap:8px}.visual-editor .offer-context>div{display:flex;align-items:baseline;gap:8px}.visual-editor .offer-context dd{margin:0}.visual-editor>p[role=status]{font-size:13px;margin:0;color:var(--muted)}.visual-editor .visual-toolbar{padding:8px}.visual-pages>label{display:flex;align-items:center;gap:8px;max-width:300px;min-width:180px}.visual-editor iframe{height:60vh;min-height:380px}.visual-editor{gap:8px}.visual-editor>.actions{padding-bottom:0;border:0}.visual-editor .visual-toolbar button{font-size:14px}
@media(max-width:760px){.visual-editor .offer-context{grid-template-columns:1fr}.visual-pages{gap:8px}.visual-pages>label{flex:1 1 100%}.visual-images>label{flex:1 1 100%}.visual-images>button{width:100%}.visual-editor iframe{height:50vh;min-height:320px}}

/* D108/D109: existing MARSA fields and cards for the approved file catalog. */
.catalog-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}.catalog-filters>label{min-width:0;font-size:14px}.catalog-filters input,.catalog-filters select{min-width:0;max-width:100%;width:100%}.catalog-filters>button{align-self:end;min-height:44px}.catalog-pagination{justify-content:center;padding-block:12px}.file-card .details{min-width:0}.file-card .details p{overflow-wrap:anywhere;line-height:1.6;margin-block:6px}.file-card .actions{align-content:start}.catalog-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.catalog-editor>p,.catalog-editor>button{grid-column:1/-1}@media(max-width:760px){.catalog-filters,.catalog-editor{grid-template-columns:1fr;padding:16px}.catalog-filters>button{width:100%}.file-card>.actions>button{flex:1 1 120px}.catalog-editor{padding:0}}
/* Existing Library tokens and components: explicit template material binding. */
.binding-editor{display:grid;gap:var(--space-4,16px)}
.binding-editor .offer-field-grid>label{min-width:0}
.binding-summary{border:1px solid var(--border);border-radius:var(--radius,12px);padding:16px;background:var(--panel)}
.binding-summary ul{padding-inline-start:20px}
.binding-summary li{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-block:8px;overflow-wrap:anywhere}
.binding-summary li span{min-width:0}
@media(max-width:600px){.binding-summary li{align-items:stretch;flex-direction:column}}

.binding-source-note{font-size:15px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}

/* Fixed four-page editor: native Library primitives and responsive controls. */
.four-editor{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.four-tools{display:grid;gap:16px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px}.four-tools h3,.four-tools p{margin:0}.four-image-tools{display:grid;gap:12px}.four-image-tools .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.four-preview{min-width:0;display:grid;gap:12px}.four-preview canvas{width:100%;height:auto;background:white;border:1px solid var(--border);border-radius:8px}.four-preview p{margin:0;color:var(--muted)}.four-editor [hidden]{display:none!important}.four-tools button{min-height:44px}.four-tools select{width:100%}@media(max-width:800px){.four-editor{grid-template-columns:1fr}.four-preview{grid-row:1}.four-tools{padding:12px}}
dialog:has(.four-editor){width:min(1200px,calc(100vw - 32px))}.four-tools{background:var(--panel)}
.canvas-editor{grid-template-columns:240px minmax(0,1fr);gap:20px}.canvas-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.canvas-toolbar button{min-height:44px;flex:1 1 70px}.canvas-toolbar [aria-pressed=true]{background:var(--action);color:var(--on-action);border-color:var(--action)}.canvas-stage{width:100%;min-width:0;overflow:hidden;background:#e7e9ed;border:1px solid var(--border);border-radius:10px;direction:ltr}.canvas-stage canvas{background:transparent;border:0;border-radius:0;width:auto;max-width:none;height:auto}.canvas-stage .canvas-container{margin-inline:auto}.canvas-stage .upper-canvas{touch-action:none}.canvas-stage .upper-canvas:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.canvas-editor details{border-top:1px solid var(--border);padding-top:12px}.canvas-editor summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--muted)}.canvas-editor details[open]{display:grid;gap:8px}.canvas-editor .four-tools p{font-size:14px;color:var(--muted);line-height:1.6}@media(max-width:800px){.canvas-editor{grid-template-columns:1fr}.canvas-editor .four-preview{grid-row:1}.canvas-toolbar button{flex:1 1 90px}.canvas-editor .four-tools{gap:12px}}
.canvas-style-bar{display:flex;align-items:center;gap:20px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:10px}.canvas-style-bar label{display:flex;align-items:center;gap:10px;margin:0}.canvas-style-bar input[type=color]{width:64px;min-height:44px;padding:4px;cursor:pointer}.canvas-style-bar select{width:auto;min-width:140px;min-height:44px}.canvas-point-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.canvas-point-actions p{flex:1 1 220px;line-height:1.6}.canvas-point-actions button{min-height:44px;flex:1 1 110px}@media(max-width:800px){.canvas-style-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.canvas-style-bar label{display:grid;gap:4px}.canvas-style-bar input[type=color],.canvas-style-bar select{width:100%;min-width:0}.canvas-point-actions{padding:10px}.canvas-point-actions p{flex-basis:100%}}

/* D113 — approved direction A, the existing native component set. */
:root{--border:#dce2e9;--soft:#eaf0f5;--folder-blue:#e7eff9;--folder-green:#e7f1ed;--folder-rose:#f7ece5;--shadow:0 10px 35px #25334408}
:root[data-theme=dark]{--border:#405065;--soft:#283646;--folder-blue:#293e54;--folder-green:#2c423b;--folder-rose:#433932;--shadow:none}
body{font-size:16px}.library-ready .topbar{margin-inline-start:210px;padding:18px 32px;min-height:80px}.library-ready main{margin-inline-start:210px;padding:26px 34px;max-width:1600px}.library-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:210px;padding:32px 18px;background:var(--panel);border-inline-end:1px solid var(--border);display:flex;flex-direction:column;gap:40px;z-index:1}.library-wordmark{font-size:25px;font-weight:700;line-height:1.1;text-decoration:none;padding-inline:14px;letter-spacing:1px}.library-wordmark small{display:block;font-size:11px;letter-spacing:3px;margin-top:9px}.library-sidebar nav{display:grid;gap:7px}.library-sidebar nav button{justify-content:flex-start;border-color:transparent;padding:12px 17px;gap:12px}.library-sidebar nav button:before{content:'';width:16px;height:16px;border:1.5px solid currentColor;border-radius:4px}.library-sidebar nav button:nth-child(2):before{border-radius:3px 7px 3px 3px}.library-sidebar nav button:nth-child(3):before{border-radius:50%}.library-sidebar button[aria-current=page]{background:var(--soft);font-weight:700}.sidebar-caption{margin-top:auto;color:var(--muted);font-size:13px;padding:14px}.topbar .brand{font-size:17px}.topbar a,.topbar button{font-size:13px}.topbar #identity{font-size:13px;margin-inline-end:auto}.toolbar h1{font-size:30px;margin:10px 0 24px;letter-spacing:-.4px}#status:empty{display:none}#status{font-size:14px;min-height:0}.library-ready #main>p[role=note]{font-size:12px;margin:0 0 10px;color:var(--muted)}.filters{gap:8px;margin-top:0}.filters input{background:var(--panel);max-width:460px}.filters button{font-size:14px}.results-summary{font-size:13px;margin-bottom:18px}.project-home{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:24px;align-items:start}.project-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px}.project-card{border-radius:21px;padding:0;gap:8px;overflow:hidden;box-shadow:var(--shadow);position:relative}.project-card>h2,.project-card>p{margin-inline:24px}.project-card>h2{font-size:26px;margin-top:8px}.project-card>.badge{position:absolute;inset-inline-start:18px;top:18px;background:var(--panel);font-size:12px;border:0}.project-card .actions{margin:12px 24px 24px;padding:0;border:0;gap:8px}.project-card .actions button{flex:1}.project-card .project-name-en{font-size:14px}.resource-image{display:grid;place-items:center;background:var(--soft);color:var(--muted);overflow:hidden;min-width:0}.resource-image img{width:100%;height:100%;object-fit:contain;display:block}.project-cover{height:260px;background:var(--soft)}.project-cover img{object-fit:cover;object-position:center 45%}.resource-image>span{font-size:14px;border:1px solid var(--border);border-radius:12px;padding:16px}.home-aside{display:grid;gap:24px}.resume-card{display:grid;gap:12px;padding:25px;border:1px solid var(--border);border-radius:20px;background:var(--panel);box-shadow:var(--shadow)}.resume-card>span{font-size:12px;letter-spacing:.6px;color:var(--muted)}.resume-card h2{font-size:22px;margin:0}.resume-card p{margin:0;overflow-wrap:anywhere}.resume-card small{font-size:12px;color:var(--muted)}.resume-card button{font-size:14px}.library-shortcuts{display:grid;gap:20px;padding-top:8px}.folder-shortcut{position:relative;justify-content:flex-start;min-height:75px;border:0;background:var(--folder-blue);border-radius:0 15px 15px 15px;padding:20px;font-weight:700}.folder-shortcut:before{content:'';position:absolute;top:-8px;inset-inline-start:0;width:36%;height:12px;border-radius:8px 8px 0 0;background:inherit}.folder-shortcut:nth-child(2){background:var(--folder-green)}.folder-shortcut:nth-child(3){background:var(--folder-rose)}
.file-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:20px}.file-list> :not(.file-card){grid-column:1/-1}.file-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;min-width:0;border-radius:17px;box-shadow:var(--shadow)}.file-card .details{padding:16px 18px 0;min-width:0;flex:1}.file-card h2{font-size:17px;line-height:1.5;margin:0}.file-card .muted{font-size:12px}.file-card .badge{font-size:11px;border:0;background:var(--soft);padding:2px 8px}.file-cover-button{display:block;width:100%;padding:0;border:0;border-radius:0;background:var(--soft);text-align:start;min-height:170px}.file-cover{height:170px}.file-cover.has-image{background:#fff}.file-cover-button:focus-visible{outline-offset:-4px}.file-card .actions{margin:12px 18px 18px;gap:6px}.file-card .actions button{font-size:13px;padding:6px 10px;flex:1}.file-details{font-size:13px;color:var(--muted);margin-top:6px}.file-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.file-details summary:after{content:'+';margin-inline-start:auto}.file-details[open] summary:after{content:'−'}.file-details p{font-size:12px}.catalog-filters{display:grid;grid-template-columns:minmax(180px,2fr) repeat(3,minmax(120px,1fr));gap:14px;align-items:end;padding:18px;border-radius:16px;margin:0}.catalog-filters label{font-size:12px;color:var(--muted)}.catalog-filters input,.catalog-filters select{font-size:14px}.catalog-filters button{font-size:13px}.project-overview{padding:14px 20px}.project-overview summary{min-height:44px;cursor:pointer;display:flex;align-items:center;font-size:15px;font-weight:700}.project-overview .project-metadata{margin-top:12px}.project-navigation button{font-size:14px}.project-navigation{margin-bottom:18px;padding-bottom:18px}.request-state{box-shadow:none;border-style:dashed}.request-state h2{font-size:20px}.request-state p{font-size:14px}.offer-setup{margin:20px 0 0;gap:20px}.offer-setup>p:first-child{font-size:14px;color:var(--muted);margin:0}.offer-setup h3{font-size:25px;margin:0}.offer-setup select{font-size:16px;min-height:50px;border-radius:12px;background:var(--bg)}.offer-setup>p{font-size:13px;color:var(--muted)}.offer-setup>.primary{justify-self:stretch;min-height:50px}.offer-setup label{font-size:14px}.offer-editor-form .field-hint{font-size:12px}.offer-editor-form textarea[readonly]{border:0;background:var(--soft);min-height:48px;resize:none}.offer-draft-row{gap:12px}.offer-draft-row h3{font-size:17px}.saved-offer-table button{font-size:13px}
/* The editor takes the whole task. The document stays central; pages and tools surround it. */
#task:has(.canvas-editor){width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;padding:0;overflow:hidden;display:flex;flex-direction:column}#task:not([open]){display:none}#task:has(.canvas-editor)>.dialog-head{padding:12px 22px;min-height:65px;border-bottom:1px solid var(--border);flex-shrink:0}#task:has(.canvas-editor)>.dialog-head h2{font-size:19px}#task:has(.canvas-editor) #task-body{min-height:0;flex:1;display:flex}#task:has(.canvas-editor) #task-error{margin:0;padding:0 22px;font-size:13px;flex-shrink:0}#task:has(.canvas-editor) #task-error:not(:empty){padding-block:10px;border-top:1px solid var(--border)}
.canvas-editor.four-editor{display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);width:100%;gap:0;min-height:0;margin:0}.editor-actions{grid-column:1/-1;display:flex;gap:8px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border);flex-wrap:wrap}.editor-actions button{font-size:13px;padding:6px 12px}.editor-context{margin-inline-end:auto;display:grid;gap:2px;min-width:140px}.editor-context strong{font-size:16px}.editor-context span{color:var(--muted);font-size:12px}.canvas-editor .four-tools{display:flex;flex-direction:column;gap:10px;overflow:auto;padding:16px 12px;background:var(--panel);border:0;border-inline-end:1px solid var(--border);border-radius:0;min-height:0}.four-tools>label{font-size:12px}.four-tools select{font-size:12px;padding:6px;min-height:44px}.editor-pages{display:flex;flex-direction:column;gap:12px}.page-thumb{display:flex;flex-direction:column;gap:7px;padding:7px;border-radius:10px;font-size:12px;align-items:stretch;background:var(--bg);flex-shrink:0;text-align:start}.page-thumb canvas{width:100%;aspect-ratio:297/210;object-fit:contain;background:#fff;display:block;border-radius:4px}.page-thumb[aria-current=page]{border-color:var(--focus);background:var(--soft);box-shadow:0 0 0 1px var(--focus)}.canvas-editor .four-preview{display:flex;flex-direction:column;gap:10px;padding:16px 22px;overflow:auto;background:var(--bg);min-width:0;min-height:0}.canvas-editor .canvas-stage{flex:1;min-height:240px;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0;background:transparent;width:100%;overflow:visible}.canvas-stage .canvas-container{box-shadow:0 12px 32px #101f3120;flex-shrink:0}.canvas-stage canvas{border-radius:0}.canvas-editor .canvas-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-self:center;gap:4px;padding:6px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:var(--shadow);margin:0}.canvas-toolbar button{font-size:13px;padding:6px 11px;min-height:44px;border-color:transparent}.canvas-toolbar button[aria-pressed=true]{background:var(--soft);border-color:var(--border);color:var(--text)}.canvas-editor .canvas-style-bar{align-self:center;display:flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;margin:0;padding:6px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--border)}.canvas-style-bar label{display:flex;gap:8px;align-items:center;font-size:12px}.canvas-style-bar input[type=color]{width:44px;height:44px;min-height:44px;padding:4px}.canvas-style-bar select{font-size:13px;width:100px;padding:5px}.canvas-editor .canvas-point-actions{padding:8px;gap:6px;background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-shrink:0}.canvas-point-actions button{font-size:13px}.canvas-point-actions p{font-size:12px}.four-preview>p[role=status]{font-size:12px;text-align:center;margin:0;flex-shrink:0}.editor-review,.editor-image-panel{font-size:13px;flex-shrink:0}.editor-review summary,.editor-image-panel summary{min-height:44px;cursor:pointer;display:flex;align-items:center;gap:8px}.editor-review summary:before,.editor-image-panel summary:before{content:'+';color:var(--muted)}.editor-review[open] summary:before,.editor-image-panel[open] summary:before{content:'−'}.editor-review[open],.editor-image-panel[open]{background:var(--panel);border:1px solid var(--border);padding:10px 14px;border-radius:12px}.editor-review p{font-size:13px}.editor-review button{font-size:13px}.four-image-tools{max-width:580px}.editor-image-panel select{font-size:14px}.editor-image-panel .actions{gap:6px}.editor-image-panel button{font-size:13px}.editor-image-panel .four-image-tools>details{margin-top:12px}.editor-image-panel:not([open])+.canvas-stage{margin-top:0}.template-card{border-radius:18px}.template-card .muted{font-size:14px}
@media(min-width:1500px){.project-cover{height:310px}.project-home{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}}
@media(max-width:1100px){.library-ready main{padding:22px}.library-ready .topbar{padding:16px 22px}.project-home{grid-template-columns:1fr}.home-aside{grid-template-columns:1fr 1fr}.catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-actions{gap:6px}.editor-context{width:100%}}
@media(max-width:760px){.library-sidebar{position:static;width:100%;padding:12px 16px;gap:12px;border:0;border-bottom:1px solid var(--border)}.library-wordmark{font-size:19px;padding:0;display:flex;gap:10px;align-items:baseline}.library-wordmark small{font-size:10px;margin:0}.sidebar-caption{display:none}.library-sidebar nav{display:flex;gap:5px}.library-sidebar nav button{flex:1;justify-content:center;padding:7px 8px;font-size:13px;gap:6px;white-space:nowrap}.library-sidebar nav button:before{display:none}.library-ready .topbar{margin:0;padding:10px 16px;min-height:60px}.library-ready .topbar .brand{display:none}.topbar #identity{width:auto;order:0;flex:1}.topbar #logout{font-size:12px}.library-ready main{margin:0;padding:20px 16px}.toolbar h1{font-size:26px;margin:0 0 18px}.home-aside{grid-template-columns:1fr}.library-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.folder-shortcut{font-size:12px;padding:15px 10px;min-height:76px}.project-cover{height:220px}.project-card>h2,.project-card>p{margin-inline:18px}.project-card .actions{margin-inline:18px}.project-card h2{font-size:24px}.resume-card{padding:20px}.file-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.file-cover,.file-cover-button{height:135px;min-height:135px}.file-card .details{padding:12px 12px 0}.file-card h2{font-size:14px}.file-card .actions{margin:8px 12px 12px}.file-card .actions button{padding:6px;font-size:12px}.file-card .badge{font-size:10px}.file-details{font-size:11px}.catalog-filters{gap:12px;padding:14px}.catalog-filters label:first-child{grid-column:1/-1}.catalog-filters input{max-width:none}.catalog-filters label{font-size:11px}.catalog-filters select{font-size:13px}.project-navigation button{font-size:13px}.project-home{gap:20px}.resource-image>span{padding:12px;font-size:12px}
#task:has(.canvas-editor){overflow:auto;display:block}#task:has(.canvas-editor)>.dialog-head{padding:10px 12px;min-height:60px}#task:has(.canvas-editor) .dialog-head h2{font-size:17px}#task:has(.canvas-editor) #task-body{display:block}.canvas-editor.four-editor{display:flex;flex-direction:column;min-height:calc(100dvh - 60px)}.editor-actions{padding:10px 12px;gap:6px;order:0}.editor-actions button{font-size:12px;padding:6px 8px;flex:1 1 40%}.editor-context{width:100%}.editor-context strong{font-size:15px}.editor-actions .primary{order:1}.canvas-editor .four-preview{order:1;overflow:visible;padding:12px;gap:8px}.canvas-editor .canvas-stage{flex:none;height:calc((100vw - 24px)*210/297);min-height:0;width:100%;margin:0}.canvas-editor .four-tools{order:2;overflow:visible;padding:12px;border-inline:0;border-top:1px solid var(--border)}.four-tools>label{display:none}.editor-pages{flex-direction:row;overflow-x:auto;padding:4px;gap:10px}.page-thumb{width:102px;font-size:11px;min-height:100px}.canvas-editor .canvas-toolbar{gap:2px;padding:4px;max-width:100%;flex-shrink:0}.canvas-toolbar button{font-size:12px;padding:5px 8px}.canvas-editor .canvas-style-bar{padding:4px 10px}.canvas-editor .canvas-point-actions{padding:6px;display:flex;flex-wrap:wrap}.canvas-point-actions button{flex:1;font-size:12px;padding:6px}.canvas-point-actions p{flex-basis:100%}.editor-review summary,.editor-image-panel summary{min-height:44px}.canvas-stage .canvas-container{box-shadow:0 6px 20px #101f3120}}
@media(prefers-reduced-motion:no-preference){button{transition:background .16s,border-color .16s,box-shadow .16s}.project-card,.file-card{transition:box-shadow .18s}.file-card:hover,.project-card:hover{box-shadow:0 12px 35px #25334414}}
.canvas-editor.four-editor{align-items:stretch}.canvas-editor .canvas-toolbar button{flex:0 0 auto}.editor-context-panels{display:flex;align-items:flex-start;justify-content:flex-start;gap:16px;flex-wrap:wrap;flex-shrink:0}.editor-context-panels>details{padding:0;border:0}.editor-context-panels>details[open]{flex:1 1 320px;padding:8px 12px;border:1px solid var(--border)}.canvas-editor .canvas-toolbar{max-width:100%}.library-sidebar nav button{font-size:15px;white-space:nowrap}
/* Explicit display modes must never reveal a closed native dialog. */
dialog:not([open]){display:none!important}
.catalog-filters{grid-template-columns:minmax(0,1fr) auto auto;gap:12px}.catalog-filters>label{grid-column:1}.catalog-filters input[type=search]{max-width:none}.catalog-filters>.filter-disclosure{grid-column:1/-1;grid-row:2;margin:0}.filter-disclosure summary,.project-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:13px;color:var(--muted)}.filter-disclosure summary:after,.project-more summary:after{content:'+';margin-inline-start:8px}.filter-disclosure[open]{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.filter-disclosure summary{grid-column:1/-1}.filter-disclosure[open] summary:after,.project-more[open] summary:after{content:'−'}.project-more{margin-inline-start:auto}.project-more .actions{padding-block:8px}.project-navigation .actions>.primary{margin-inline-start:auto}.project-navigation .project-more+.primary{margin:0}.file-cover-button{position:relative}.file-cover-button:hover .resource-image{opacity:.92}
@media(max-width:760px){.topbar #identity{width:100%;order:3;flex-basis:100%;font-size:12px}.library-ready .topbar{gap:8px}.topbar #logout{margin-inline-start:auto}.project-navigation button{flex:1 1 auto}.project-more{flex-basis:100%;margin:0}.project-more summary{min-height:44px}.project-navigation{padding-block:0 10px;margin-bottom:14px}.catalog-filters{grid-template-columns:minmax(0,1fr) auto}.catalog-filters>label:first-child{grid-column:1/-1}.catalog-filters>.filter-disclosure{grid-row:3;grid-column:1/-1}.catalog-filters>button{width:100%}.filter-disclosure[open]{grid-template-columns:1fr 1fr}.filter-disclosure>label:last-child{grid-column:1/-1}.catalog-filters .filter-disclosure>label:first-of-type{grid-column:auto}.catalog-filters{padding:14px}.project-overview{padding-block:7px}}
.project-more .project-overview{margin-top:8px}.project-more[open]{flex-basis:100%}
@media(max-width:760px){.catalog-filters{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.catalog-filters>label:first-child{grid-column:1}.catalog-filters>.filter-disclosure{grid-row:2}.catalog-filters>button{font-size:0;width:46px;padding:5px}.catalog-filters>button:after{content:'مسح';font-size:12px}.catalog-filters>button[type=submit]:after{content:'بحث'}.project-more .project-metadata{font-size:13px}.project-more .project-overview{padding:10px}.catalog-filters input[type=search]{font-size:14px}}

/* D114 — image-first continuation of direction A. One native card/disclosure pattern. */
.project-home{display:flex;flex-direction:column;gap:26px}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 30px;box-shadow:none;border-radius:22px}.resume-card>div>span{font-size:12px;color:var(--muted)}.resume-card h2{margin:4px 0 8px;font-size:25px}.resume-card p{margin:3px 0}.resume-card small{font-size:12px;color:var(--muted)}.resume-card .actions{flex-shrink:0;display:flex;gap:10px}.resume-card .actions button{padding-inline:22px}
.dashboard-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dashboard-stat{min-height:128px;display:flex;align-items:center;gap:20px;text-align:start;padding:22px 28px;border-radius:22px;border:1px solid #d6e1e6;background:#e5edf2;color:#243948}.dashboard-stat:nth-child(2){background:#e9eeea;border-color:#dce3dd;color:#294638}.dashboard-stat>div{display:flex;flex-direction:column;gap:8px;flex:1}.dashboard-stat strong{font-size:38px;font-weight:700;line-height:1;text-align:start;width:max-content}.dashboard-stat>span{font-size:27px;width:56px;height:56px;display:grid;place-items:center;background:#ffffff80;border-radius:18px}.dashboard-stat small{font-size:11px}.project-collection{min-width:0}.collection-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.collection-heading h2{font-size:24px;margin:0}.collection-heading p{font-size:13px;color:var(--muted)}.project-collection>.filters{margin-block:14px 22px}.project-collection .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,350px),1fr));gap:22px}
/* Images remain complete; no crops of plans, price lists or map boundaries. */
.file-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,305px),1fr));gap:22px}.visual-card{position:relative;isolation:isolate;display:block!important;min-width:0;min-height:0;padding:0!important;border:1px solid var(--border);border-radius:22px;overflow:hidden;background:var(--panel);box-shadow:0 7px 22px #172a3c08;aspect-ratio:1.16}.visual-card[hidden]{display:none!important}.visual-cover-button{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:var(--panel);cursor:pointer}.visual-card .resource-image{position:relative;width:100%;height:100%;min-height:0;display:grid;place-items:center;border-radius:0;overflow:hidden;background:#f3f4f1}.visual-card .resource-image img,.visual-card .resource-image canvas{width:100%;height:100%;display:block;object-fit:contain}.visual-card .project-cover img{object-fit:cover}.visual-card .resource-image>span{font-size:28px;font-weight:700;color:#526779;letter-spacing:2px;border:1px solid #d5dce1;border-radius:14px;padding:25px;background:#ffffff90}.visual-card .visual-reveal{position:absolute;z-index:3;inset-block-start:14px;inset-inline-end:14px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffffa0;border-radius:50%;background:#ffffffeb;color:#26394a;font-size:25px;box-shadow:0 4px 14px #192e3b10;opacity:0}.visual-overlay{position:absolute;z-index:2;inset-inline:0;inset-block-end:0;max-height:100%;overflow:auto;padding:58px 20px 18px;background:linear-gradient(transparent,#122533ec 44%);color:#fff;opacity:0;transform:translateY(14px);pointer-events:none}.visual-overlay .details{padding:0!important;margin:0;min-width:0}.visual-overlay h2,.visual-overlay h3{font-size:21px;line-height:1.4;margin:0 0 5px!important;color:#fff;overflow-wrap:anywhere}.visual-overlay p,.visual-overlay .muted,.visual-overlay small{color:#e0e8ef;font-size:12px;margin:5px 0;overflow-wrap:anywhere}.visual-overlay .badge{position:static;display:inline-block;color:#e3edf4;background:#ffffff21;border:1px solid #ffffff38;margin:0 0 8px;font-size:11px}.visual-overlay>.actions{display:flex;gap:8px;margin:13px 0 0!important;padding:0!important;border:0!important;flex-wrap:wrap}.visual-overlay button,.visual-overlay summary{pointer-events:auto;min-height:44px}.visual-overlay button{border:1px solid #ffffff50;background:#ffffff19;color:#fff;border-radius:11px;font-size:13px;padding:8px 14px;flex:1}.visual-overlay .primary{color:#203848;background:#fff;border-color:#fff}.visual-overlay button:hover{background:#fff;color:#203848}.visual-overlay :focus-visible,.visual-reveal:focus-visible{outline:3px solid #78c5ff;outline-offset:-3px}.visual-overlay .file-details{font-size:12px;margin:0}.visual-overlay .file-details summary{color:#e4eef6;display:flex;align-items:center;cursor:pointer}.visual-overlay .file-details[open]{padding:8px 0}.visual-overlay .file-details .actions{margin:10px 0 0!important}.visual-card:focus-within .visual-overlay,.visual-card[data-revealed=true] .visual-overlay{opacity:1;transform:none;pointer-events:auto}.visual-card:focus-within .visual-reveal,.visual-card[data-revealed=true] .visual-reveal{opacity:1}.project-card.visual-card{aspect-ratio:1.4}.project-card>.badge{display:none}.template-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,305px),1fr))}.template-card .visual-overlay .muted{display:none}.saved-offers,.offer-drafts{padding:0;border:0;background:transparent}.saved-offer-grid,.offer-draft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,305px),1fr));gap:22px}.saved-offer-card .actions button{flex:1 1 42%}.offer-draft-row{margin:0;border:1px solid var(--border)}
.project-hero{grid-column:1/-1;position:relative;isolation:isolate;min-height:220px;border-radius:22px;overflow:hidden;background:#182e3a}.project-hero .project-cover{position:absolute;inset:0;width:100%;height:100%;opacity:.88}.project-hero .project-cover img{height:100%;width:100%;object-fit:cover;object-position:center 45%}.project-hero>div:last-child{position:relative;padding:38px;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;background:linear-gradient(270deg,#0e2736c9,transparent 90%);color:#fff}.project-hero h2{font-size:34px;margin:8px 0}.project-hero p{margin:0}.project-hero span{font-size:13px}.project-material-tabs{grid-column:1/-1;display:flex;gap:8px;overflow:auto;padding:2px 2px 10px}.project-material-tabs button{white-space:nowrap;border-radius:99px;font-size:13px;padding:8px 17px;background:var(--panel);border-color:var(--border)}.project-material-tabs [aria-pressed=true]{background:var(--action);color:var(--on-action,#fff);border-color:var(--action)}
.canvas-editor .four-preview{position:relative}.image-library-button{font-size:13px;min-height:44px;padding:8px 16px;background:var(--panel);border-radius:12px}.asset-picker{position:absolute;z-index:8;inset:0;background:var(--panel);display:flex;flex-direction:column;gap:20px;padding:24px;overflow:auto}.asset-picker[hidden]{display:none}.asset-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.asset-picker h3{font-size:24px;margin:0}.asset-picker-head button{font-size:13px;min-height:44px}.asset-picker>label{font-size:13px;max-width:500px}.asset-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-content:start}.asset-choice{position:relative;display:flex;flex-direction:column;gap:0;min-width:0;border:2px solid var(--border);border-radius:16px;padding:0;overflow:hidden;min-height:210px;background:var(--bg);text-align:start}.asset-choice .resource-image{width:100%;height:180px;min-height:180px;background:#f8f9f7;display:grid;place-items:center;overflow:hidden}.asset-choice img,.asset-choice canvas{width:100%;height:100%;object-fit:contain}.asset-choice>span{font-size:13px;padding:12px;overflow-wrap:anywhere}.asset-choice[aria-pressed=true]{border-color:var(--focus);box-shadow:0 0 0 2px var(--focus)}.asset-choice[aria-pressed=true]:after{content:'✓';position:absolute;inset-block-start:10px;inset-inline-start:10px;width:28px;height:28px;border-radius:50%;background:var(--action);color:#fff;display:grid;place-items:center}.asset-choice:disabled{opacity:.55}.asset-picker-grid>p{grid-column:1/-1}
@media(hover:hover) and (pointer:fine){.visual-card:hover .visual-overlay,.visual-card:hover .visual-reveal{opacity:1;transform:none;pointer-events:auto}.visual-card:hover{box-shadow:0 16px 32px #172a3c1c}.visual-card:hover .visual-cover-button .resource-image{transform:scale(1.025)}}
@media(hover:none),(pointer:coarse){.visual-card .visual-reveal{opacity:1}.visual-card:not([data-revealed=true]):not(:focus-within) .visual-overlay{opacity:0;pointer-events:none}}
@media(prefers-reduced-motion:no-preference){.visual-card{animation:library-arrive .38s both;transition:box-shadow .25s}.visual-card:nth-of-type(2n){animation-delay:.04s}.visual-card:nth-of-type(3n){animation-delay:.08s}.visual-overlay{transition:opacity .24s,transform .24s}.visual-reveal{transition:opacity .18s,background .18s}.visual-card .resource-image{transition:transform .4s cubic-bezier(.2,.75,.3,1)}.asset-picker:not([hidden]){animation:library-arrive .22s both}.asset-choice{transition:border-color .18s,box-shadow .18s,transform .18s}.asset-choice:hover{transform:translateY(-3px)}.dashboard-stat{transition:transform .2s,box-shadow .2s}.dashboard-stat:hover{transform:translateY(-3px);box-shadow:0 10px 24px #14293812}@keyframes library-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.visual-card,.visual-overlay,.visual-reveal,.visual-card .resource-image,.asset-picker,.asset-choice,.dashboard-stat{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
[data-theme=dark] .dashboard-stat{background:#253642;color:#e4edf5;border-color:#394b58}[data-theme=dark] .dashboard-stat:nth-child(2){background:#293a32;color:#e1eee7;border-color:#3f5146}[data-theme=dark] .dashboard-stat>span{background:#ffffff0d}[data-theme=dark] .visual-card{border-color:#3f4b58}[data-theme=dark] .visual-card .resource-image{background:#ecede9}[data-theme=dark] .visual-overlay .muted{color:#e0e8ef}
@media(max-width:760px){.project-home{gap:20px}.resume-card{padding:20px;display:block}.resume-card h2{font-size:22px}.resume-card .actions{margin-top:16px;display:flex}.resume-card .actions button{flex:1;padding:8px;font-size:13px}.dashboard-stats{gap:12px}.dashboard-stat{min-height:116px;padding:16px 14px;gap:5px;border-radius:18px}.dashboard-stat>div>span{font-size:12px}.dashboard-stat strong{font-size:32px}.dashboard-stat>span{font-size:19px;width:32px;height:32px;border-radius:11px;flex-shrink:0}.dashboard-stat small{display:none}.file-list,.project-collection .project-grid,.template-grid,.saved-offer-grid,.offer-draft-grid{grid-template-columns:1fr;gap:18px}.visual-card{aspect-ratio:1.12}.project-card.visual-card{aspect-ratio:1.25}.visual-card .visual-reveal{opacity:1}.visual-overlay{padding:54px 18px 18px}.visual-overlay h2,.visual-overlay h3{font-size:21px}.visual-overlay>.actions button{min-height:46px;font-size:14px}.project-hero{min-height:200px}.project-hero>div:last-child{padding:24px;min-height:200px}.project-hero h2{font-size:28px}.project-material-tabs{margin-inline:-2px}.collection-heading h2{font-size:23px}.asset-picker{position:fixed;inset:60px 0 0;padding:18px;gap:16px;z-index:8;overscroll-behavior:contain}.asset-picker h3{font-size:20px}.asset-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.asset-choice{min-height:168px}.asset-choice .resource-image{height:136px;min-height:136px}.asset-choice>span{font-size:12px;padding:10px}.editor-context-panels{gap:8px}.image-library-button{width:100%}.editor-context-panels>details{font-size:12px}.project-collection>.filters{margin-block:12px 18px}.saved-offers-page{gap:26px}}
dialog:not([open]){display:none!important}
.project-home{align-items:stretch;width:100%}.project-collection>.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.project-collection>.filters input[type=search]{flex:1;max-width:500px}.project-collection>.filters button{flex:0 0 auto}.project-collection .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,350px),430px));justify-content:start}.project-card.visual-card{width:100%}
/* Non-interactive captions must not intercept the image's primary click. */
.visual-card .visual-overlay{pointer-events:none!important}.visual-overlay .details{pointer-events:none}.visual-overlay button,.visual-overlay summary,.visual-overlay .file-details[open]{pointer-events:auto}
.visual-card[data-dismissed=true] .visual-overlay{opacity:0!important;pointer-events:none!important}.visual-card[data-dismissed=true] .visual-overlay button,.visual-card[data-dismissed=true] .visual-overlay summary{pointer-events:none}
@media(min-width:761px){.catalog-filters{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:end;padding:16px}.catalog-filters>.filter-disclosure:not([open]){grid-column:4;grid-row:1}.filter-disclosure:not([open]) summary{min-height:46px}.catalog-filters>.filter-disclosure[open]{grid-column:1/-1;grid-row:2}.project-navigation>.actions>.primary{order:2;margin-inline-start:auto}.project-navigation>.actions>.project-more{order:1;margin-inline-start:0}}

/* D114: source-driven tower → apartment → language preparation. */
.visual-setup{display:flex;flex-direction:column;gap:22px;max-width:1040px;min-width:0}
.setup-context{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14px}
.setup-steps{display:flex;gap:8px;flex-wrap:wrap;padding-block-end:16px;border-bottom:1px solid var(--border)}
.setup-steps button{border:0;border-radius:999px;padding:10px 20px;background:var(--bg);color:var(--muted)}
.setup-steps button[aria-current=step]{background:var(--action);color:var(--on-action)}
.setup-stage{display:flex;flex-direction:column;gap:20px;min-height:280px}
.setup-stage h3{font-size:26px;margin:0}.setup-stage p{margin:0;color:var(--muted)}
.setup-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.setup-choice{padding:0;display:flex;flex-direction:column;align-items:stretch;overflow:hidden;border-radius:22px;text-align:start;max-width:440px;background:var(--panel);transition:transform .25s,box-shadow .25s}
.setup-choice:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 14px 28px #0e253418}
.setup-cover{width:100%;height:190px;background:var(--bg);overflow:hidden;display:grid;place-items:center;border:0;border-radius:0}
.setup-cover img,.setup-cover canvas{width:100%;height:100%;object-fit:contain;display:block}
.setup-choice-caption{display:grid;grid-template-columns:1fr auto;padding:18px;gap:5px 14px;align-items:center}.setup-choice-caption strong{font-size:21px}.setup-choice-caption span:first-of-type{grid-column:1;font-size:14px;color:var(--muted)}.setup-choice-caption span:last-child{grid-column:2;grid-row:1/3;font-size:24px}
.setup-selection{font-weight:600}.setup-languages{display:flex;gap:12px;flex-wrap:wrap;margin-block:10px}.setup-languages button{min-height:70px;min-width:200px;font-size:19px;border-radius:17px}
.setup-template{border-top:1px solid var(--border);padding-block-start:16px;color:var(--muted)}.setup-template summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.setup-template label{margin-block:12px}
@media(max-width:600px){.visual-setup{gap:16px}.setup-choices{grid-template-columns:1fr}.setup-choice{max-width:none}.setup-cover{height:210px}.setup-steps{gap:4px}.setup-steps button{padding:8px 12px}.setup-stage h3{font-size:23px}.setup-languages{flex-direction:column}.setup-languages button{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.setup-choice{transition:none}.setup-choice:hover:not(:disabled){transform:none}}

#task:has(.visual-setup){width:min(960px,calc(100vw - 32px))}

.setup-choice:only-child{max-width:none}.setup-choice:only-child .setup-cover{height:240px}
.project-settings{display:grid;gap:12px;margin-block-start:18px}.project-setting-link{display:grid;gap:6px;justify-items:start;justify-content:stretch;padding:18px 22px;text-align:start;border-radius:16px}.project-setting-link strong{font-size:19px}.project-setting-link span{font-size:14px;color:var(--muted)}
.setup-cover{position:relative}.setup-cover img,.setup-cover canvas{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}

/* D115 — direct manipulation: fixed artboard, floating tools, fixed photo frames. */
.canvas-editor .four-preview{position:relative;display:block;padding:0;overflow:hidden;background-color:var(--bg);background-image:radial-gradient(#8a98a327 .8px,transparent .8px);background-size:16px 16px}
.canvas-editor .canvas-stage{position:absolute;inset:64px 24px 112px;width:auto;height:auto;min-height:0;margin:0;display:flex;align-items:center;justify-content:center}
.canvas-editor .canvas-toolbar{position:absolute;z-index:4;bottom:27px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);flex-wrap:nowrap;padding:7px;gap:4px;border-radius:18px;box-shadow:0 10px 34px #1226381f}
.editor-icon{position:relative;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0;gap:0!important;width:44px!important;height:44px!important;min-height:44px!important;padding:10px!important;border-radius:11px!important;color:var(--text);background:transparent;border:1px solid transparent;font-size:0!important;cursor:pointer}
.editor-icon svg{display:block;width:23px;height:23px;flex-shrink:0;pointer-events:none}
.editor-icon:before,.editor-icon:after{display:none!important}
.editor-icon:hover:not(:disabled){background:var(--soft);border-color:var(--border)}
.editor-icon:disabled{opacity:.35;cursor:default}.editor-icon:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.canvas-toolbar .editor-icon[aria-pressed=true]{color:var(--on-action);background:var(--action);border-color:var(--action);box-shadow:0 3px 8px #10232b26}
.canvas-toolbar .editor-delete{color:#b4404b}.canvas-toolbar .editor-icon:nth-last-child(2){margin-inline-start:9px}.canvas-toolbar .editor-icon:nth-last-child(2):after{display:block!important;content:'';position:absolute;inset-inline-start:-8px;top:8px;bottom:8px;width:1px;background:var(--border)}
.editor-tooltip{position:absolute;z-index:20;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,5px);background:#182e3e;color:#fff;font-size:12px;line-height:1.5;padding:6px 10px;border-radius:8px;white-space:nowrap;box-shadow:0 4px 15px #13263520;opacity:0;pointer-events:none}
.editor-icon:hover:not(:disabled)>.editor-tooltip,.editor-icon:focus-visible>.editor-tooltip{opacity:1;transform:translate(-50%,0)}
.canvas-editor .editor-context-panels{position:absolute;z-index:5;top:10px;inset-inline-start:16px;display:flex;flex-direction:row;gap:4px;align-items:start;flex-wrap:nowrap}
.editor-context-panels>details{position:relative;flex:0 0 auto;margin:0;background:var(--panel);border:1px solid var(--border);border-radius:12px}
.editor-context-panels>details[open]{position:relative;flex:0 0 auto;padding:6px 12px;width:280px;max-width:calc(100vw - 40px);box-shadow:0 15px 36px #12263826;border-radius:15px}
.editor-context-panels>details[open]>summary{margin-inline-start:auto}.editor-context-panels .editor-tooltip{bottom:auto;top:calc(100% + 8px);left:auto;inset-inline-start:0;transform:none}
.editor-context-panels .four-image-tools{max-width:100%;padding-top:4px}.editor-context-panels select{font-size:14px;min-height:44px}.editor-context-panels p{font-size:13px;line-height:1.8}
.image-context-toolbar{position:absolute;z-index:4;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px;width:288px;padding:6px 10px;border:1px solid #668dba4d;border-radius:15px;background:var(--panel);box-shadow:0 8px 26px #14334f22;isolation:isolate}
.image-context-caption{font-size:11px;color:var(--muted);flex:1;min-width:78px;text-align:center;line-height:1.6;max-width:78px;padding-inline:4px}
.image-context-toolbar .image-library-button{width:44px!important;margin:0;padding:10px!important;background:transparent}
.canvas-editor .canvas-style-bar{position:absolute;z-index:4;left:50%;transform:translateX(-50%);bottom:93px;margin:0;max-width:calc(100% - 24px);box-shadow:0 8px 22px #12263815;gap:12px;border-radius:14px;padding:6px 12px}
.canvas-style-bar label{margin:0!important;gap:8px}.canvas-style-bar select{min-height:40px}.canvas-style-bar input[type=color]{border-radius:10px;cursor:pointer}
.canvas-editor .canvas-point-actions{position:absolute;z-index:5;top:14px;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-wrap:wrap;justify-content:center;max-width:calc(100% - 120px);width:max-content;box-shadow:0 8px 25px #14253420;padding:8px 10px;margin:0;gap:6px;border-radius:15px}
.canvas-point-actions p{flex:1 0 100%;margin:0 0 3px;text-align:center}.canvas-point-actions button{min-height:44px}.canvas-point-actions .editor-icon{flex:0 0 44px}
.canvas-editor .four-preview>p[role=status]{position:absolute;bottom:6px;inset-inline:10px;line-height:1.3;font-size:11px;pointer-events:none;color:var(--muted)}
.canvas-editor .asset-picker{inset:12px;z-index:8;border-radius:20px;box-shadow:0 14px 50px #13293c2b;border:1px solid var(--border);overscroll-behavior:contain}
.canvas-editor .record-warning{position:absolute;z-index:9;top:50%;left:50%;transform:translate(-50%,-50%);width:min(400px,calc(100% - 24px));padding:24px;border-radius:20px;box-shadow:0 0 0 100vmax #12253540,0 15px 50px #13263838;background:var(--panel)}
.canvas-editor .record-warning button{margin:4px}.canvas-editor [hidden]{display:none!important}
.editor-actions .editor-icon .editor-tooltip{bottom:auto;top:calc(100% + 8px)}
@media(prefers-reduced-motion:no-preference){.editor-tooltip{transition:opacity .15s,transform .15s}.image-context-toolbar:not([hidden]),.canvas-style-bar:not([hidden]){animation:editor-tool-in .17s ease-out}.editor-icon svg{transition:transform .16s}.editor-icon:hover:not(:disabled) svg{transform:scale(1.08)}@keyframes editor-tool-in{from{opacity:0}to{opacity:1}}}
@media(max-width:1100px) and (min-width:761px){.canvas-editor .editor-context{width:auto;min-width:100px}.editor-actions button{font-size:12px}.canvas-editor .canvas-stage{inset-inline:16px}}
@media(max-width:760px){
 #task:has(.canvas-editor){display:flex;overflow:hidden}#task:has(.canvas-editor) #task-body{display:flex;min-height:0}#task:has(.canvas-editor)>.dialog-head{min-height:54px;padding:5px 12px}#task:has(.canvas-editor)>.dialog-head h2{font-size:16px}
 .canvas-editor.four-editor{display:flex;flex-direction:column;min-height:0;height:100%;flex:1}.canvas-editor .editor-actions{padding:8px 12px;flex:0 0 auto;gap:6px}.canvas-editor .editor-context{display:none}.canvas-editor .editor-actions button{flex:1 1 auto;min-height:44px;font-size:11px;padding-inline:8px;white-space:nowrap}.canvas-editor .editor-actions .editor-icon{flex:0 0 44px}.canvas-editor .editor-actions .primary{order:0}
 .canvas-editor .four-preview{flex:1;min-height:290px;overflow:hidden;padding:0;order:1}.canvas-editor .canvas-stage{inset:62px 8px 130px;height:auto;min-height:0;width:auto}.canvas-editor .canvas-toolbar{bottom:30px;gap:1px;padding:5px;width:calc(100% - 16px);max-width:none;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;border-radius:15px}.canvas-toolbar .editor-icon{width:44px!important;flex:0 0 44px}.canvas-toolbar .editor-icon:nth-last-child(2){margin-inline-start:5px}.canvas-toolbar .editor-tooltip{display:none}
 .canvas-editor .canvas-style-bar{bottom:94px;max-width:calc(100% - 20px);padding:4px 10px}.canvas-editor .canvas-point-actions{top:65px;max-width:calc(100% - 24px);width:calc(100% - 24px);font-size:11px}.canvas-point-actions button{flex:1;font-size:11px;padding:6px}.canvas-point-actions p{font-size:11px}
 .canvas-editor .image-context-toolbar{top:8px!important;left:8px!important;width:calc(100% - 116px);max-width:288px;flex-wrap:nowrap;padding:5px;gap:0}.image-context-toolbar .editor-icon{width:40px!important;min-width:40px;padding:9px!important}.image-context-caption{font-size:10px;min-width:50px;flex:1}.image-context-toolbar .editor-tooltip{display:none}.canvas-editor .editor-context-panels{top:8px;inset-inline-start:8px;gap:2px}.editor-context-panels>details[open]{position:absolute;inset-inline-start:0;top:0;max-width:calc(100vw - 24px);width:280px}.editor-context-panels:has(details[open])>details:not([open]){visibility:hidden}
 .canvas-editor .four-tools{order:2;flex:0 0 122px;min-height:0;overflow:hidden;padding:6px 8px;border-top:1px solid var(--border)}.canvas-editor .four-tools>label{display:none}.editor-pages{padding:2px;gap:8px;height:110px;overflow:auto}.page-thumb{width:103px;min-height:100px;font-size:10px;gap:4px;padding:5px;white-space:nowrap}.page-thumb canvas{height:68px;width:91px}
 .canvas-editor .asset-picker{position:absolute;inset:4px;padding:15px;gap:12px;border-radius:16px}.asset-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asset-choice .resource-image{height:110px;min-height:110px}.asset-choice{min-height:148px}.asset-picker h3{font-size:18px}.asset-picker>label input{min-height:42px}.asset-picker-head button{font-size:11px;padding:5px 9px}
}
#task:has(.canvas-editor) #task-error:not(:empty){position:absolute;z-index:10;bottom:22px;left:50%;transform:translateX(-50%);width:min(580px,calc(100vw - 28px));max-height:160px;overflow:auto;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 8px 30px #132b3f30;padding:14px 20px}

/* D116: dashboard and project journey, continuing the approved image-first A layout. */
.ui-symbol{width:22px;height:22px;flex:0 0 auto;display:block}
.library-sidebar nav button:before{display:none}
.library-sidebar nav button{gap:12px}
.library-sidebar nav .ui-symbol{width:21px;height:21px}
.library-ready .topbar{min-height:72px;padding-block:14px}
.library-ready main{padding:22px 32px 48px;max-width:1700px}
.library-ready #main>p[role=note]{font-size:11px;margin-bottom:14px}
.library-ready .toolbar h1{font-size:28px;line-height:1.4;margin:0 0 22px}
.library-sidebar{padding-top:27px}
.library-sidebar nav button[aria-current=page]{box-shadow:inset -3px 0 var(--action)}
.project-home{gap:22px}
.project-home button .ui-symbol{width:19px;height:19px}
.project-home .resume-card{min-height:158px;border-radius:22px;padding:18px;gap:24px;display:flex;position:relative;overflow:hidden;border-color:var(--border);background:var(--panel);box-shadow:0 5px 25px #1b324506}
.resume-card .resume-preview{flex:0 0 156px;width:156px;height:122px;padding:0;overflow:hidden;border:0;border-radius:13px;background:var(--soft)}
.resume-preview .resume-thumbnail{width:100%;height:100%;background:var(--soft)}
.resume-thumbnail img{object-fit:contain;object-position:center}
.resume-thumbnail>.ui-symbol{width:45px;height:45px;color:var(--muted)}
.resume-card .resume-copy{flex:1;min-width:0}
.resume-card .eyebrow{font-size:11px;color:var(--muted)}
.resume-card h2{font-size:24px;line-height:1.4;margin:3px 0 7px}
.resume-card p{font-size:14px;line-height:1.5;margin:0 0 3px}
.resume-card small{font-size:11px}
.resume-card .actions{display:flex;flex-direction:column;gap:7px;margin:0;padding:0 10px;min-width:168px}
.resume-card .actions button{gap:9px;min-height:44px;font-size:13px;padding:8px 15px}
.resume-card .actions button:not(.primary){border-color:transparent;background:transparent;color:var(--muted)}
.resume-card .actions button:not(.primary):hover{background:var(--soft);color:var(--text)}
.resume-empty-icon{display:grid;place-items:center;width:100px;height:100px;border-radius:18px;background:var(--soft);color:var(--muted);flex-shrink:0}
.resume-empty-icon .ui-symbol{width:36px;height:36px}
.project-home .dashboard-stats{gap:18px}
.project-home .dashboard-stat{min-height:98px;padding:20px 23px;border-radius:18px;gap:17px;position:relative;background:var(--folder-blue);border-color:transparent;color:var(--text)}
.project-home .dashboard-stat:nth-child(2){background:var(--folder-green)}
.dashboard-stat .stat-symbol{width:45px;height:45px;flex-shrink:0;border-radius:14px;background:#ffffff75;display:grid;place-items:center}
.dashboard-stat .stat-symbol .ui-symbol{width:23px;height:23px}
.dashboard-stat .stat-copy{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}
.dashboard-stat .stat-copy>span{font-size:14px;line-height:1.5}
.dashboard-stat .stat-copy>small{font-size:11px;font-weight:400;color:var(--muted);line-height:1.5}
.project-home .dashboard-stat strong{font-size:33px;line-height:1;font-weight:700;margin-inline-start:12px;max-width:110px;overflow-wrap:anywhere}
.dashboard-stat>.ui-symbol{width:17px;height:17px;color:var(--muted)}
.project-collection{padding-top:7px}
.collection-browse{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.collection-heading{display:flex;align-items:center;gap:14px}
.collection-heading h2{font-size:23px;line-height:1.4}
.collection-heading p{font-size:12px;margin:6px 0 0;color:var(--muted)}
.collection-heading>span{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:4px 9px;border:1px solid var(--border);border-radius:7px;font-size:11px;color:var(--muted)}
.collection-browse .filters{display:flex;align-items:center;gap:6px;margin:0;flex-wrap:wrap;max-width:55%}
.collection-browse .filters input[type=search]{max-width:260px;width:200px;min-height:44px;font-size:13px;padding:8px 14px;border-radius:11px;background:var(--panel)}
.collection-browse .filters button{font-size:13px;gap:6px}
.collection-browse .filters>.check{font-size:12px}
.project-collection .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:24px;max-width:1200px}
.project-collection .project-card.visual-card{aspect-ratio:1.55;max-width:580px;border-radius:22px;box-shadow:0 7px 18px #1b324509}
.project-collection .project-card .project-cover img{object-position:center 38%}
.project-collection .visual-overlay{padding:85px 25px 24px;background:linear-gradient(transparent,#0c2032eb 60%)}
.project-collection .visual-overlay h2{font-size:29px}
.project-collection .visual-overlay .badge{display:none}
.project-collection .visual-overlay>.actions{margin-top:16px!important}
.project-collection .visual-overlay>.actions button{flex:0 1 auto;min-width:135px}
.project-collection .visual-overlay .project-name-en{display:none}
/* The project opens as a visual destination; its primary action lives with its identity. */
[data-workspace-view=project] .toolbar h1{font-size:18px;margin-bottom:0;color:var(--muted)}
[data-workspace-view=project] .toolbar{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
[data-workspace-view=project] .project-navigation{padding:0;margin:0 0 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
[data-workspace-view=project] .project-navigation>.actions{margin:0;gap:10px;flex:1}
[data-workspace-view=project] .project-navigation>.actions>button{gap:9px;font-size:13px;border-color:transparent;background:transparent;padding:0 5px;flex:0 1 auto}
[data-workspace-view=project] .project-navigation .project-more{margin-inline-start:auto;position:relative;flex:0 0 auto}
[data-workspace-view=project] .project-more>summary{font-size:12px;min-height:44px;display:flex;align-items:center;border:1px solid var(--border);padding:7px 14px;border-radius:11px;background:var(--panel)}
[data-workspace-view=project] .project-more[open]{z-index:5}
[data-workspace-view=project] .project-options-panel{position:absolute;z-index:5;inset-inline-end:0;width:350px;max-width:calc(100vw - 42px);padding:16px;margin-top:8px;border:1px solid var(--border);background:var(--panel);box-shadow:0 16px 40px #1826341c;border-radius:14px;display:grid;gap:15px}
[data-workspace-view=project] .project-options-panel>.actions{display:grid;gap:8px;margin:0}
[data-workspace-view=project] .project-options-panel button{font-size:13px;justify-content:flex-start}
[data-workspace-view=project] .project-options-panel>.project-overview{margin:0;padding:12px;border-radius:10px;box-shadow:none}

.project-materials{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.project-materials .project-hero{min-height:350px;border-radius:24px;margin:0 0 4px;box-shadow:0 10px 28px #17374b0d}
.project-materials .project-hero .project-cover{opacity:1}
.project-materials .project-hero .project-cover img{object-position:center 45%}
.project-materials .project-hero .project-hero-copy{min-height:350px;padding:36px;display:flex;align-items:flex-start;justify-content:flex-end;background:linear-gradient(270deg,#081b2dee 0%,#0e263aa6 34%,#14273415 74%),linear-gradient(0deg,#0c213b38,transparent 60%);color:#fff}
.project-hero-copy .hero-kicker{display:flex;align-items:center;gap:8px;color:#e5edf4}
.project-hero-copy .hero-kicker .ui-symbol{width:18px;height:18px}
.project-hero-copy .hero-kicker>span{font-size:12px}
.project-materials .project-hero h2{font-size:42px;line-height:1.3;margin:14px 0 8px;color:white}
.project-hero-copy>p{font-size:14px;color:#e1e8ef;max-width:520px}
.project-hero-copy .hero-meta{display:flex;flex-wrap:wrap;gap:9px 18px;margin:8px 0 22px;color:#e1e8ef}
.project-hero-copy .hero-meta>span{font-size:12px}
.project-hero-copy .hero-launch{flex-direction:row-reverse;gap:35px;min-height:48px;min-width:174px;padding:10px 18px;background:white;color:#1d3448;border-color:white;border-radius:12px;font-size:15px;box-shadow:0 4px 15px #0000000d}
.project-hero-copy .hero-launch:hover{background:#ebf2f7}
.project-materials .project-material-tabs{gap:6px;padding:7px 0 13px;margin:0;border-bottom:1px solid var(--border);scrollbar-width:thin}
.project-material-tabs button{display:flex;gap:8px;min-height:46px;padding:9px 12px;font-size:13px;border-color:transparent;background:transparent;border-radius:10px}
.project-material-tabs .ui-symbol{width:18px;height:18px}
.project-material-tabs small{display:grid;place-items:center;min-width:20px;height:20px;font-size:10px;border-radius:5px;background:var(--soft);color:var(--muted);margin-inline-start:4px}
.project-material-tabs [aria-pressed=true] small{background:#ffffff21;color:inherit}
.project-materials .material-heading{grid-column:1/-1;display:flex;align-items:center;gap:10px;position:relative}
.material-heading h2{font-size:22px;line-height:1.4;margin:0}
.material-heading .material-count{font-size:11px;white-space:nowrap;color:var(--muted)}
.project-filter-panel{margin-inline-start:auto}
.project-filter-panel>summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-size:12px;list-style:none;padding:8px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}
.project-filter-panel>summary::-webkit-details-marker{display:none}
.project-filter-panel>summary .ui-symbol{width:17px;height:17px}
.project-filter-panel[open]>summary{background:var(--soft)}
.project-filter-panel .catalog-filters{position:absolute;z-index:5;inset-inline-end:0;top:52px;width:560px;max-width:100%;max-height:70vh;overflow:auto;padding:18px;border-radius:16px;box-shadow:0 12px 35px #12253b20;margin:0;background:var(--panel)}
.project-materials .visual-card{aspect-ratio:1.25;border-radius:18px}
.project-materials .photo-card .resource-image img{object-fit:contain}
.project-materials .visual-overlay{background:linear-gradient(transparent,#0c2032f0 58%);padding:60px 19px 18px}
.project-materials .visual-overlay .badge{display:none}
.project-materials .visual-overlay h2{font-size:19px}
.project-materials .storage{grid-column:1/-1;font-size:12px;margin:0}
[data-theme=dark] .project-home .dashboard-stat{background:#233543}
[data-theme=dark] .project-home .dashboard-stat:nth-child(2){background:#263b32}
[data-theme=dark] .dashboard-stat .stat-symbol{background:#ffffff10}
[data-theme=dark] .project-home .resume-card{box-shadow:none}
[data-theme=dark] .project-material-tabs [aria-pressed=true] small{background:#17232f20}
@media(prefers-reduced-motion:no-preference){
 .project-home .resume-preview{transition:box-shadow .22s,transform .22s}
 .project-home .resume-preview:hover{transform:translateY(-3px);box-shadow:0 8px 20px #15273820}
 .project-home .visual-card,.project-materials .visual-card{animation:library-arrive .45s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(var(--card-order,0)*.035s)}
 .project-material-tabs button,.hero-launch{transition:background .2s,color .2s,box-shadow .2s}
 .hero-launch:hover{box-shadow:0 6px 24px #0002}
}
@media(min-width:1650px){.project-materials .project-hero,.project-materials .project-hero .project-hero-copy{min-height:400px}.project-materials .project-hero h2{font-size:48px}}
@media(max-width:1100px){
 .collection-browse{align-items:flex-start;flex-direction:column;gap:14px}.collection-browse .filters{max-width:100%;width:100%}.collection-browse .filters input[type=search]{width:auto;flex:1;max-width:none}
 .project-home .resume-card{gap:16px}.resume-card .resume-preview{width:124px;flex-basis:124px;height:115px}.resume-card .actions{min-width:150px;padding:0}
 .project-materials{grid-template-columns:repeat(2,minmax(0,1fr))}.project-materials .project-hero,.project-materials .project-hero .project-hero-copy{min-height:330px}
 .project-collection .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
}
@media(max-width:760px){
 .library-ready main{padding:18px 16px 36px}.library-ready .topbar{min-height:56px;padding:8px 16px;gap:8px}.library-ready .toolbar h1{font-size:24px;margin-bottom:18px}
 .library-sidebar{padding:16px 16px 10px;gap:16px}.library-sidebar nav{gap:5px}.library-sidebar nav button{font-size:12px;gap:6px}.library-sidebar nav .ui-symbol{width:18px;height:18px}.library-sidebar nav button[aria-current=page]{box-shadow:inset 0 -2px var(--action)}
 .project-home{gap:16px}.project-home .resume-card{padding:14px;gap:14px;display:grid;grid-template-columns:84px minmax(0,1fr);border-radius:18px;min-height:0}.resume-card .resume-preview{width:84px;height:98px;border-radius:9px}.resume-card .eyebrow{font-size:10px}.resume-card h2{font-size:21px}.resume-card p{font-size:12px}.resume-card small{font-size:10px;display:block}.resume-card .actions{grid-column:1/-1;flex-direction:row;width:100%;gap:6px;margin:0;padding-top:3px}.resume-card .actions button{flex:1;min-width:0;font-size:12px;padding-inline:8px}.resume-empty-icon{width:84px;height:84px}
 .project-home .dashboard-stats{gap:10px}.project-home .dashboard-stat{min-height:118px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px 7px;border-radius:15px;align-items:center}.dashboard-stat .stat-symbol{width:31px;height:31px;border-radius:9px;grid-column:1;grid-row:1}.dashboard-stat .stat-symbol .ui-symbol{width:18px;height:18px}.project-home .dashboard-stat strong{font-size:26px;grid-column:2;grid-row:1;margin:0;max-width:none}.dashboard-stat .stat-copy{grid-column:1/-1;grid-row:2}.dashboard-stat .stat-copy>span{font-size:12px}.dashboard-stat .stat-copy>small{display:none}.dashboard-stat>.ui-symbol{display:none}
 .project-collection{padding-top:7px}.collection-browse{gap:14px;margin-bottom:16px}.collection-heading{width:100%;justify-content:space-between}.collection-heading h2{font-size:21px}.collection-heading p{font-size:11px;max-width:220px}.collection-heading>span{font-size:10px}.collection-browse .filters input[type=search]{min-width:0;width:0}.collection-browse .filters button{min-height:44px;padding-inline:12px}
 .project-collection .project-grid{grid-template-columns:1fr;gap:18px}.project-collection .project-card.visual-card{aspect-ratio:1.25;max-width:none;border-radius:18px}.project-collection .visual-overlay{padding:65px 20px 20px}.project-collection .visual-overlay h2{font-size:25px}
 [data-workspace-view=project] .project-navigation{margin-bottom:14px}[data-workspace-view=project] .project-navigation>.actions>button{font-size:12px}[data-workspace-view=project] .project-more>summary{font-size:11px;padding-inline:10px}
 .project-materials{grid-template-columns:1fr;gap:16px}.project-materials .project-hero{border-radius:18px}.project-materials .project-hero,.project-materials .project-hero .project-hero-copy{min-height:340px}.project-materials .project-hero .project-hero-copy{padding:24px;background:linear-gradient(0deg,#081b2df2,#0e263a86 56%,#14273400 100%)}.project-materials .project-hero h2{font-size:34px}.project-hero-copy .hero-meta{gap:12px;margin-bottom:18px}.project-hero-copy .hero-meta>span{font-size:11px}.project-hero-copy .hero-launch{min-width:160px;min-height:48px}
 .project-materials .project-material-tabs{gap:4px;padding:0 0 10px}.project-material-tabs button{gap:6px;padding:8px 11px;min-height:44px;font-size:12px}.project-material-tabs small{margin:0}.project-material-tabs .ui-symbol{width:16px;height:16px}
 .material-heading h2{font-size:20px}.project-filter-panel>summary{padding:8px 10px;font-size:11px}.material-heading .material-count{font-size:10px}.project-filter-panel .catalog-filters{width:100%;padding:14px}
 .project-materials .visual-card{aspect-ratio:1.22;border-radius:16px}
}

/* Hidden hover controls cannot capture a click on the photograph. */
.visual-card .visual-overlay{visibility:hidden}
.visual-card:focus-within .visual-overlay,.visual-card[data-revealed=true] .visual-overlay{visibility:visible}
.visual-card[data-dismissed=true] .visual-overlay{visibility:hidden}
@media(hover:hover) and (pointer:fine){.visual-card:hover .visual-overlay{visibility:visible}}

/* D117: a visual, consistent tower → apartment → language setup. */
#task:has(.visual-setup){width:min(1000px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border-radius:24px;overflow:auto;box-shadow:0 28px 100px #07142140}
#task:has(.visual-setup) .dialog-head{padding:20px 28px;border-bottom:1px solid var(--border);align-items:center}
#task:has(.visual-setup) .dialog-head h2{font-size:22px}
#task:has(.visual-setup) #task-close{min-width:64px;font-size:13px;border-radius:10px}
#task:has(.visual-setup) #task-body{padding:0}
#task:has(.visual-setup) #task-error{margin:0;padding:0 28px 18px;font-size:13px}
#task:has(.visual-setup) #task-error:empty{display:none}
.visual-setup{margin:0;max-width:none;gap:0;position:relative}
.visual-setup .setup-context{padding:14px 28px;display:flex;align-items:center;gap:10px;min-height:54px;background:var(--bg);font-size:13px}
.setup-context>.ui-symbol{width:19px;height:19px;color:var(--muted)}
.setup-context-copy{display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-width:0}
.setup-context-copy>strong{font-size:13px;color:var(--text)}
.setup-trail{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.visual-setup .setup-steps{padding:14px 28px;border:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;flex-wrap:nowrap}
.visual-setup .setup-steps:has(button:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}
.visual-setup .setup-steps button{min-height:44px;position:relative;display:flex;align-items:center;justify-content:flex-start;gap:10px;background:transparent;color:var(--muted);border-radius:10px;padding:4px 0;font-size:13px;opacity:1}
.setup-steps button:not(:last-child):after{content:'';height:1px;flex:1;margin-inline:6px 18px;background:var(--border)}
.setup-step-marker{display:grid;place-items:center;width:31px;height:31px;flex-shrink:0;border:1px solid var(--border);border-radius:50%;background:var(--panel);font-size:12px}
.setup-step-marker .ui-symbol{width:15px;height:15px}
.visual-setup .setup-steps [aria-current=step]{color:var(--text);font-weight:700}
.setup-steps [aria-current=step] .setup-step-marker{background:var(--action);color:var(--on-action);border-color:var(--action);box-shadow:0 0 0 4px var(--soft)}
.setup-steps [data-complete=true] .setup-step-marker{background:var(--folder-green);color:var(--text);border-color:transparent}
.visual-setup .setup-steps button:disabled{cursor:default;color:var(--muted)}
.visual-setup .setup-stage{padding:14px 28px 24px;gap:20px;min-height:344px}
.setup-stage-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}
.visual-setup .setup-stage h3{font-size:25px;line-height:1.4;margin:0}
.setup-stage-heading h3:focus{outline:none}
.setup-step-count{font-size:11px;color:var(--muted);white-space:nowrap}
.visual-setup .setup-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px}
.visual-setup .setup-choice{border:1px solid var(--border);border-radius:18px;max-width:none;min-width:0;position:relative;box-shadow:0 3px 16px #17304904;transition:none}
.visual-setup .setup-choice .setup-cover{height:185px;background:var(--bg)}
.visual-setup .setup-choice[data-kind=tower] .setup-cover img{object-fit:cover;object-position:center 45%}
.visual-setup .setup-choice[data-kind=unit] .setup-cover{background:#fff}
.visual-setup .setup-choice[data-kind=unit] .setup-cover img,.visual-setup .setup-choice[data-kind=unit] .setup-cover canvas{padding:12px}
.visual-setup .setup-choice-caption{padding:22px;display:flex;flex-direction:column;gap:9px;align-items:flex-start;text-align:start;flex:1;min-width:0}
.visual-setup .setup-choice-caption .setup-choice-kind{font-size:11px;color:var(--muted);background:var(--soft);border-radius:6px;padding:3px 9px}
.visual-setup .setup-choice-caption strong{font-size:24px;line-height:1.35;color:var(--text);overflow-wrap:anywhere}
.visual-setup .setup-choice-caption .setup-choice-facts{font-size:13px;line-height:1.8;color:var(--muted)}
.visual-setup .setup-choice-caption .setup-choice-action{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:auto;padding-top:13px;font-size:13px;width:100%;color:var(--text)}
.visual-setup .setup-choice-action>span{color:inherit;font-size:13px;grid-column:auto;grid-row:auto}
.visual-setup .setup-choice-action>.ui-symbol{width:32px;height:32px;padding:8px;border-radius:50%;background:var(--soft)}
.visual-setup .setup-choice[data-selected=true]{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}
.visual-setup .setup-choice[data-unavailable=true]{opacity:.58;cursor:not-allowed}
.visual-setup .setup-choice:only-child{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr);min-height:242px}
.visual-setup .setup-choice:only-child .setup-cover{height:100%;min-height:242px}
.visual-setup .setup-choice:only-child .setup-choice-caption{padding:28px;justify-content:center}
.visual-setup .setup-choice:only-child .setup-choice-caption strong{font-size:31px}
.visual-setup .setup-choice:only-child .setup-choice-action{margin-top:12px}
.setup-selection-preview{display:flex;align-items:center;gap:18px;padding:14px 18px;border:1px solid var(--border);border-radius:15px;background:var(--bg)}
.setup-selection-preview .setup-cover{width:105px;height:78px;flex:0 0 105px;border-radius:8px;background:#fff;min-height:0}
.setup-selection-preview .setup-cover img,.setup-selection-preview .setup-cover canvas{padding:5px}
.setup-selection-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.setup-selection-copy>small{font-size:11px;color:var(--muted)}
.setup-selection-copy>strong{font-size:20px;line-height:1.4;overflow-wrap:anywhere}
.setup-selection-facts{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
.visual-setup .setup-languages{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:14px;margin:0}
.visual-setup .setup-languages .setup-language{display:flex;align-items:center;justify-content:flex-start;text-align:start;gap:16px;min-width:0;min-height:120px;border-radius:16px;padding:22px;background:var(--panel);color:var(--text);border:1px solid var(--border);font-size:16px}
.setup-language-glyph{display:grid;place-items:center;width:54px;height:60px;border-radius:13px;background:var(--folder-blue);color:var(--text);font-size:38px;flex-shrink:0;font-weight:700}
.setup-language-copy{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.setup-language-copy strong{font-size:20px;line-height:1.3}
.setup-language-copy small{font-size:12px;line-height:1.5;color:var(--muted)}
.setup-language>.ui-symbol{width:30px;height:30px;padding:7px;border-radius:50%;background:var(--soft)}
.setup-language[data-unavailable=true]{cursor:not-allowed}
.setup-details-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.setup-details-fields>.offer-context{grid-column:1/-1}
.setup-details-fields label{font-size:13px}
.setup-details-fields input{font-size:15px}
.setup-stage .setup-next{align-self:flex-end;min-width:170px;gap:26px;font-size:14px;flex-direction:row-reverse}
.visual-setup .setup-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:65px;padding:10px 28px;border-top:1px solid var(--border);background:var(--panel)}
.setup-back{display:flex;align-items:center;min-width:0}
.setup-back>button{background:transparent;border-color:transparent;padding-inline:0;gap:8px;font-size:13px}
.setup-back .ui-symbol{width:18px;height:18px;transform:rotate(180deg)}
.setup-back>span{font-size:11px;color:var(--muted)}
.visual-setup .setup-template{margin:0;padding:0;border:0;font-size:12px;position:relative;min-width:0;max-width:55%}
.visual-setup .setup-template summary{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;color:var(--muted);list-style:none;cursor:pointer;overflow-wrap:anywhere}
.visual-setup .setup-template summary::-webkit-details-marker{display:none}
.setup-template summary>.ui-symbol{width:16px;height:16px}
.visual-setup .setup-template[open]{background:var(--panel)}
.visual-setup .setup-template>label,.visual-setup .setup-template>p{position:absolute;z-index:3;inset-inline-end:0;bottom:46px;width:290px;max-width:calc(100vw - 56px);padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 8px 30px #18314420;margin:0;font-size:12px}
.visual-setup .setup-template select{font-size:13px;min-height:44px}
.setup-progress{min-height:344px;padding:50px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}
.setup-progress h3{font-size:24px;margin:0}
.setup-progress p{font-size:13px;color:var(--muted);margin:0}
.setup-spinner{display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:var(--soft);color:var(--text)}
.setup-spinner .ui-symbol{width:30px;height:30px}
.visual-setup[data-preparing=true] .setup-stage{display:none}
.visual-setup[data-preparing=true] .setup-footer{pointer-events:none;opacity:.55}
[data-theme=dark] .setup-steps [data-complete=true] .setup-step-marker{background:#2c433a}
[data-theme=dark] .setup-language-glyph{background:#2b3e50}
@media(prefers-reduced-motion:no-preference){
 .visual-setup .setup-choice,.setup-language{transition:transform .22s,box-shadow .22s,border-color .22s}
 .visual-setup .setup-choice:hover:not(:disabled),.setup-language:hover:not(:disabled){transform:translateY(-3px);border-color:var(--muted);box-shadow:0 10px 26px #14293f12}
 .visual-setup .setup-stage>*{animation:setup-step-enter .24s ease-out both}
 .setup-spinner{animation:setup-working 1.2s ease-in-out infinite}
 @keyframes setup-step-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
 @keyframes setup-working{50%{opacity:.5;transform:translateY(-3px)}}
}
@media(prefers-reduced-motion:reduce){.visual-setup *{animation:none!important;transition:none!important}.visual-setup .setup-choice:hover:not(:disabled),.setup-language:hover:not(:disabled){transform:none}}
@media(max-width:700px){
 #task:has(.visual-setup){width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:20px}
 #task:has(.visual-setup) .dialog-head{padding:15px 18px}#task:has(.visual-setup) .dialog-head h2{font-size:20px}#task:has(.visual-setup) #task-close{font-size:12px;min-width:54px}
 .visual-setup .setup-context{padding:11px 18px;gap:8px}.setup-context-copy{gap:5px 10px}.setup-context-copy>strong{font-size:12px}.setup-trail{font-size:11px}
 .visual-setup .setup-steps{padding:13px 18px 7px;gap:0}.visual-setup .setup-steps button{font-size:12px;gap:7px}.setup-step-marker{width:27px;height:27px;font-size:11px}.setup-steps button:not(:last-child):after{margin-inline:0 7px}.setup-steps [aria-current=step] .setup-step-marker{box-shadow:0 0 0 3px var(--soft)}
 .visual-setup .setup-stage{padding:16px 18px 20px;gap:16px;min-height:340px}.visual-setup .setup-stage h3{font-size:21px}.setup-step-count{font-size:10px}.setup-stage-heading{gap:8px}
 .visual-setup .setup-choices{grid-template-columns:1fr}.visual-setup .setup-choice,.visual-setup .setup-choice:only-child{display:flex;min-height:0;border-radius:15px}
 .visual-setup .setup-choice .setup-cover,.visual-setup .setup-choice:only-child .setup-cover{height:182px;min-height:182px}
 .visual-setup .setup-choice-caption,.visual-setup .setup-choice:only-child .setup-choice-caption{padding:16px 18px;gap:7px}.visual-setup .setup-choice-caption .setup-choice-kind{font-size:10px}.visual-setup .setup-choice-caption strong,.visual-setup .setup-choice:only-child .setup-choice-caption strong{font-size:23px}
 .visual-setup .setup-choice-caption .setup-choice-facts{font-size:12px}.visual-setup .setup-choice-caption .setup-choice-action,.visual-setup .setup-choice:only-child .setup-choice-action{margin:0;padding-top:5px}.visual-setup .setup-choice-action>span{font-size:12px}.visual-setup .setup-choice-action>.ui-symbol{width:28px;height:28px;padding:7px}
 .setup-selection-preview{padding:12px;gap:12px}.setup-selection-preview .setup-cover{width:78px;flex-basis:78px;height:70px}.setup-selection-copy>strong{font-size:18px}.setup-selection-copy>small{font-size:10px}.setup-selection-facts{font-size:11px;gap:6px}
 .visual-setup .setup-languages{grid-template-columns:1fr;gap:12px}.visual-setup .setup-languages .setup-language{min-height:107px;padding:18px;gap:14px}.setup-language-glyph{width:46px;height:54px;font-size:32px}.setup-language-copy strong{font-size:18px}.setup-language-copy small{font-size:11px}
 .setup-details-fields{grid-template-columns:1fr;gap:14px}.setup-stage .setup-next{align-self:stretch;min-height:46px}.visual-setup .setup-footer{padding:8px 18px;min-height:60px}.setup-back>span{font-size:10px}.setup-back>button{font-size:12px}.visual-setup .setup-template summary{font-size:11px;gap:6px}.setup-template summary>.ui-symbol{width:15px;height:15px}
 .setup-progress{min-height:340px}.setup-progress h3{font-size:21px}.setup-progress p{font-size:12px}
}

/* D118: page management within the existing editor, without resizing the artboard. */
.page-management{position:absolute;z-index:4;top:10px;inset-inline-end:16px;display:flex;align-items:center;gap:2px;padding:3px 7px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 6px 20px #13263812}
.page-management .editor-icon{width:44px;height:44px;min-width:44px;padding:11px;border:0;background:transparent}.page-management-count{font-size:11px;color:var(--muted);padding-inline:6px;white-space:nowrap;direction:ltr}.page-management .editor-icon:disabled{opacity:.32}
.canvas-editor .four-tools>button{font-size:12px;display:flex;justify-content:center;align-items:center;gap:7px;flex-shrink:0}.four-tools>button .ui-symbol{width:18px;height:18px}.page-thumb{cursor:grab;transition:border-color .2s,box-shadow .2s}.page-thumb.is-dragging{opacity:.45}.page-thumb.drop-target{outline:3px solid var(--focus);outline-offset:2px}.page-thumb:active{cursor:grabbing}
.page-composer{position:absolute;inset:12px;z-index:8;display:flex;flex-direction:column;gap:24px;background:var(--panel);border:1px solid var(--border);border-radius:22px;box-shadow:0 14px 50px #13293c2b;padding:28px;overflow:auto;overscroll-behavior:contain}.page-composer h3{font-size:25px;margin:0}.page-composer .asset-picker-head{flex-shrink:0}.page-layout-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:900px;width:100%;margin:auto}.page-layout-choice{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--bg);font-size:16px;transition:transform .2s,border-color .2s,box-shadow .2s}.page-layout-choice:hover{transform:translateY(-3px);border-color:var(--focus);box-shadow:0 10px 25px #14293f15}.page-layout-preview{display:grid;grid-template-columns:1fr;gap:8px;width:100%;aspect-ratio:297/185;padding:28px 25px 20px 15px;background:#fff;border:1px solid #dce2e6;border-inline-start:14px solid #004460;border-radius:7px;box-shadow:0 5px 14px #152a3a0e}.page-layout-preview[data-layout=duo],.page-layout-preview[data-layout=grid]{grid-template-columns:1fr 1fr}.page-layout-preview>span{display:grid;place-items:center;border-radius:4px;background:#e8edf1;color:#8394a5}.page-layout-preview .ui-symbol{width:28px;height:28px}.page-layout-preview[data-layout=blank]{place-items:center;color:#a5b2bd}.page-layout-choice strong{font-size:15px;font-weight:600}.page-composer button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media(max-width:760px){.canvas-editor .four-tools{position:relative;flex-basis:172px;padding-top:52px}.canvas-editor .four-tools>button{position:absolute;top:4px;inset-inline:8px;height:44px;min-height:44px;width:calc(100% - 16px)}.page-management{top:8px;inset-inline-end:8px;padding:1px;gap:0;border-radius:12px}.page-management-count{display:none}.page-management .editor-icon{width:44px;min-width:44px;height:44px;padding:10px}.page-management .editor-tooltip{display:none}.page-composer{inset:4px;padding:16px;gap:14px;border-radius:16px}.page-composer h3{font-size:18px}.page-composer .asset-picker-head button{font-size:11px;padding:5px 8px}.page-layout-choices{gap:10px;margin:0}.page-layout-choice{padding:9px;gap:10px;border-radius:12px}.page-layout-choice strong{font-size:12px}.page-layout-preview{padding:13px 12px 10px 8px;gap:4px;border-inline-start-width:8px}.page-layout-preview .ui-symbol{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.page-layout-choice,.page-thumb{transition:none}.page-layout-choice:hover{transform:none}}
@media(min-width:761px){.page-layout-choices{max-width:800px;gap:16px}.page-layout-choice{padding:14px;gap:12px}.page-layout-preview{width:auto;max-width:100%;height:clamp(95px,17vh,170px);aspect-ratio:297/185;align-self:center}.page-layout-choice strong{line-height:24px}}

/* The frame stays a drawing surface when its optional image is removed. */
.image-context-toolbar{width:336px;max-width:calc(100% - 16px);gap:2px}

.image-context-toolbar .editor-delete{color:#b4404b}
.image-context-toolbar[data-empty=true] .editor-icon:disabled{display:none!important}
@media(max-width:760px){.canvas-editor .image-context-toolbar{width:calc(100% - 116px);max-width:336px;flex-wrap:wrap;gap:0}.image-context-toolbar .editor-icon{width:44px!important;min-width:44px;height:44px;padding:10px!important}.image-context-caption{flex:1 0 100%;font-size:10px;padding-bottom:1px}}

.image-context-toolbar[data-empty=true]{width:120px}
@media(max-width:760px){.canvas-editor .image-context-toolbar{width:calc(100% - 116px);justify-content:center}.canvas-editor .image-context-toolbar[data-empty=true]{width:112px}}

/* D120: final PDF preview, saved offers and download share one quiet surface. */
#task:has(.offer-pdf-reader){width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:0;margin:0;border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden;background:var(--panel)}
#task:has(.offer-pdf-reader):not([open]){display:none}
#task:has(.offer-pdf-reader)>.dialog-head{padding:10px 22px;min-height:60px;border-bottom:1px solid var(--border);flex:0 0 auto}
#task:has(.offer-pdf-reader) .dialog-head h2{font-size:19px}
#task:has(.offer-pdf-reader) #task-body{display:flex;flex:1;min-height:0;padding:0}
#task:has(.offer-pdf-reader) #task-error:empty{display:none}
#task:has(.offer-pdf-reader) #task-error:not(:empty){position:absolute;z-index:10;bottom:90px;inset-inline:16px;width:max-content;max-width:calc(100% - 32px);margin:auto;padding:14px 20px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}
.offer-pdf-reader{display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;flex:1;overflow:hidden}
.offer-pdf-head{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:12px 22px;border-bottom:1px solid var(--border);background:var(--panel)}
.offer-pdf-identity{display:grid;gap:3px;margin-inline-end:auto;min-width:0}.offer-pdf-identity strong{font-size:16px}.offer-pdf-identity>span{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.offer-pdf-status{display:inline-flex;align-items:center;gap:6px;min-height:28px;font-size:12px;white-space:nowrap;color:var(--muted);padding:4px 10px;background:var(--soft);border-radius:100px}
.offer-pdf-status[data-saved=true]{color:var(--text)}.offer-pdf-status[data-saved=true]:before{content:'✓';font-size:14px}
.offer-pdf-head button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-size:13px;padding:8px 14px;white-space:nowrap}.offer-pdf-head .ui-symbol{width:19px;height:19px}.offer-pdf-head .primary{padding-inline:20px}
.offer-pdf-pages{display:flex;flex-direction:column;gap:12px;padding:16px 12px;border-inline-end:1px solid var(--border);background:var(--panel);overflow:auto;min-height:0}
.offer-pdf-pages .page-thumb{font-size:11px;white-space:normal;min-height:100px;text-align:start}.offer-pdf-thumb{display:block;width:100%;aspect-ratio:297/210;object-fit:contain;background:#fff;border-radius:4px}
.offer-pdf-pages .preview-unavailable{background:var(--soft)}
.offer-pdf-viewer{position:relative;overflow:hidden;min-width:0;min-height:0;background-color:var(--bg);background-image:radial-gradient(#8a98a327 .8px,transparent .8px);background-size:16px 16px}
.offer-pdf-stage{position:absolute;inset:16px 16px 94px;overflow:auto;min-width:0;min-height:0;direction:ltr;overscroll-behavior:contain}
.offer-pdf-paper{display:grid;place-items:center;min-height:100%;width:max-content;min-width:100%;padding:20px;box-sizing:border-box}
.offer-pdf-paper>canvas{display:block;flex-shrink:0;background:#fff;max-width:none;border:0;border-radius:0;box-shadow:0 10px 36px #14263720}
.offer-pdf-navigation{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:6px;border:1px solid var(--border);border-radius:17px;background:var(--panel);box-shadow:var(--shadow);max-width:calc(100% - 16px)}
.offer-pdf-previous .ui-symbol{transform:rotate(180deg)}.offer-pdf-count{font-size:12px;min-width:50px;text-align:center;white-space:nowrap;direction:ltr;color:var(--muted)}
.offer-pdf-note{position:absolute;inset-inline:14px;bottom:3px;margin:0;font-size:11px;color:var(--muted);text-align:center}.offer-pdf-note:empty{display:none}
.offer-pdf-reader [hidden]{display:none!important}.offer-pdf-head button:disabled{opacity:.55}
@media(max-width:760px){
 #task:has(.offer-pdf-reader)>.dialog-head{min-height:54px;padding:5px 12px}#task:has(.offer-pdf-reader) .dialog-head h2{font-size:16px}
 .offer-pdf-reader{display:flex;flex-direction:column}.offer-pdf-head{padding:10px 12px;gap:6px;flex-wrap:wrap;flex:0 0 auto}.offer-pdf-identity{flex:1;min-width:160px}.offer-pdf-identity strong{font-size:14px}.offer-pdf-identity>span{font-size:11px}.offer-pdf-status{font-size:11px}.offer-pdf-head button{flex:1 1 auto;padding:6px 10px;font-size:11px}.offer-pdf-head .ui-symbol{width:17px;height:17px}.offer-pdf-head .primary{padding-inline:10px}
 .offer-pdf-viewer{flex:1;order:1;min-height:210px}.offer-pdf-stage{inset:8px 0 80px}.offer-pdf-paper{padding:12px}.offer-pdf-navigation{bottom:16px;gap:0;padding:5px}.offer-pdf-navigation .editor-icon{width:44px!important;padding:10px!important}.offer-pdf-navigation .editor-tooltip{display:none}.offer-pdf-count{min-width:45px;font-size:11px}
 .offer-pdf-pages{order:2;flex:0 0 122px;flex-direction:row;gap:8px;padding:6px 8px;border-inline-end:0;border-top:1px solid var(--border)}.offer-pdf-pages .page-thumb{width:103px;flex:0 0 103px;font-size:10px;padding:5px;gap:4px;min-height:100px}.offer-pdf-pages .page-thumb canvas{height:68px;width:91px}.offer-pdf-pages .page-thumb>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(prefers-reduced-motion:no-preference){.offer-pdf-status[data-saved=true]{animation:editor-tool-in .18s ease-out}}

/* D122 / D123 — native manager controls, Wunderbaum tree and large visual cards. */
.manager-workspace{display:grid;grid-template-columns:252px minmax(0,1fr);gap:22px;align-items:start}
.manager-sidebar{position:sticky;top:102px;min-width:0;padding:20px 10px 14px;border:1px solid var(--border);border-radius:18px;background:var(--library-glass,var(--panel));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.manager-tree-heading{display:flex;align-items:center;gap:10px;padding:0 12px 18px;margin-bottom:8px;border-bottom:1px solid var(--border);color:var(--muted)}
.manager-tree-heading h2{font-size:14px;font-weight:400;margin:0}.manager-tree-heading svg{width:19px;height:19px;color:var(--action)}
div.manager-tree{--wb-font-stack:Masaar,sans-serif;--wb-background-color:transparent;--wb-node-text-color:var(--text);--wb-border-color:transparent;--wb-focus-border-color:var(--focus);--wb-hover-color:var(--soft);--wb-hover-border-color:transparent;--wb-active-color:var(--soft);--wb-active-border-color:transparent;--wb-active-hover-color:var(--soft);--wb-active-color-grayscale:var(--soft);--wb-active-border-color-grayscale:transparent;--wb-active-hover-color-grayscale:var(--soft);--wb-row-outer-height:64px;--wb-row-inner-height:62px;--wb-icon-outer-height:44px;--wb-icon-padding-y:12px;height:420px;max-height:calc(100dvh - 260px);min-height:220px;border:0;font-size:15px;overflow:auto}
div.manager-tree div.wb-row{border-radius:10px;border:0}
div.manager-tree span.wb-node{display:flex;align-items:center;direction:rtl;gap:3px;height:62px}
div.manager-tree span.wb-node>i{flex:none;vertical-align:middle}
div.manager-tree span.wb-node>i.wb-icon{width:24px;height:44px;padding:12px 2px;color:var(--muted)}
div.manager-tree .wb-node .wb-expander{width:28px;height:44px;padding:12px 4px;cursor:pointer}
div.manager-tree span.wb-node>i.wb-indent:not(.wb-expander){width:12px;height:62px;padding:0;border-inline-end:1px solid var(--border);margin-inline-end:3px}
div.manager-tree div.wb-row span.wb-node>span.wb-title{flex:1;min-width:0;width:0!important;display:flex;align-items:center;gap:6px;line-height:1.45;text-align:right;white-space:normal;padding-inline:6px;cursor:pointer}
div.manager-tree span.wb-title *{pointer-events:none}
div.manager-tree .manager-node-copy{display:grid;gap:2px;min-width:0;flex:1}
div.manager-tree .manager-node-copy small{font-size:10px;color:var(--muted);font-weight:400}
div.manager-tree .manager-node-copy bdi{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400}
div.manager-tree .manager-node-count{flex:none;width:22px;display:grid;place-items:center;min-width:22px;height:22px;border-radius:6px;background:var(--panel);font-size:11px;color:var(--muted)}
div.manager-tree div.wb-row.wb-active{box-shadow:inset -3px 0 var(--action)}
div.manager-tree .wb-row.wb-active .manager-node-copy bdi{font-weight:700;color:var(--action)}
div.manager-tree .wb-row.wb-active i.wb-icon{color:var(--action)}
div.manager-tree svg.ui-symbol{width:20px;height:20px;pointer-events:none;display:block}
.manager-details,.manager-panel{min-width:0}.manager-panel{display:grid;gap:20px}
.manager-context{padding:20px 24px 0;margin-bottom:22px;background:var(--library-glass,var(--panel));border:1px solid var(--border);border-radius:18px}
.manager-breadcrumb{display:flex;gap:2px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-bottom:14px}
.manager-breadcrumb button{border:0;background:none;color:var(--muted);font-size:12px;padding:4px 7px;min-height:32px;max-width:100%;overflow-wrap:anywhere}.manager-breadcrumb button:first-child{padding-inline-start:0}
.manager-heading{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}
.manager-identity{display:flex;align-items:center;gap:12px;min-width:0}.manager-identity-icon{width:46px;height:46px;display:grid;place-items:center;flex:none;border:1px solid var(--border);border-radius:13px;background:var(--soft);color:var(--action)}.manager-identity-icon svg{width:23px;height:23px}
.manager-identity>div>span{font-size:11px;color:var(--muted)}.manager-identity h2{margin:0;font-size:24px;line-height:1.4;overflow-wrap:anywhere}
.manager-context-actions{gap:8px}.manager-context-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;padding-inline:13px;border-radius:11px}.manager-context-actions .primary{box-shadow:0 5px 14px -8px #27616c66,inset 0 1px 0 #ffffff22}.manager-context-actions svg{width:18px;height:18px}
.manager-tabs{display:flex;gap:18px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;max-width:100%;border-top:1px solid var(--border)}
.manager-tabs button{position:relative;flex:none;gap:7px;min-height:54px;padding:12px 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:13px;white-space:nowrap}.manager-tabs button svg{width:17px;height:17px}.manager-tabs [aria-selected=true]{color:var(--action);font-weight:700}.manager-tabs [aria-selected=true]:after{content:'';position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--action);border-radius:3px 3px 0 0}
.manager-sheet{min-width:0;border:1px solid var(--border);background:var(--panel);border-radius:18px;padding:22px}
.manager-overview{display:flex;flex-direction:column;gap:22px}.manager-overview>div{width:100%}.manager-overview>.manager-image-button{order:-1}.manager-overview>.manager-overview-image{order:-1}
.manager-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:2px}.manager-section-heading h3{margin:0;font-size:18px}.manager-section-heading>span{color:var(--muted);font-size:12px}.manager-section-heading button{font-size:13px}
.manager-overview-image{width:100%;aspect-ratio:2;max-height:360px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:12px;flex-direction:column;color:var(--muted)}
.manager-overview-image img,.manager-overview-image canvas{width:100%;height:100%;object-fit:contain}.manager-overview-image img{object-fit:cover}.manager-overview-image.is-plan img{object-fit:contain}
.manager-image-button{display:block;border:0;background:none;width:100%;padding:0;border-radius:12px;overflow:hidden;min-width:0}.manager-image-button:focus-visible{outline-offset:4px}
.manager-overview .project-metadata{margin:16px 0 0}.manager-overview p{font-size:14px;color:var(--muted)}
.manager-child-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.manager-child-cards>button{justify-content:flex-start;gap:14px;padding:18px;text-align:start;border-radius:14px}.manager-child-cards>button>svg{width:22px;height:22px;color:var(--action);flex:none}.manager-child-cards>button>svg:last-child{width:17px;margin-inline-start:auto;color:var(--muted)}.manager-child-cards>button>span{display:grid;gap:3px}.manager-child-cards small{font-size:11px;color:var(--muted)}.manager-child-cards bdi{font-size:17px;font-weight:700}
.manager-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--border);background:var(--panel);border-radius:16px}.manager-table{border-collapse:collapse;width:100%;text-align:start;font-size:14px}
.manager-table th{font-weight:400;background:var(--soft);color:var(--muted);font-size:12px;padding:16px;text-align:start;border-bottom:1px solid var(--border);white-space:nowrap}
.manager-table td{padding:16px;border-bottom:1px solid var(--border);vertical-align:middle;overflow-wrap:anywhere}.manager-table tr:last-child td{border:0}.manager-table td small{display:block;color:var(--muted);font-size:11px}.manager-table td button{font-size:13px;white-space:nowrap}.manager-table tbody tr:hover{background:color-mix(in srgb,var(--soft) 35%,transparent)}
.manager-unit-label{display:flex;gap:16px;align-items:center}.manager-unit-label>bdi{font-size:17px;font-weight:700}.manager-unit-thumb{width:100px;height:84px;flex:none;border-radius:10px;overflow:hidden;background:var(--bg)}.manager-unit-thumb img,.manager-unit-thumb canvas{width:100%;height:100%;object-fit:contain}
.manager-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.manager-file.visual-card{aspect-ratio:1.13;border-radius:18px}.manager-file .manager-file-image{width:100%;height:100%}.manager-file .visual-overlay h3{font-size:18px}.manager-file .visual-overlay .actions button{gap:8px}.manager-file .visual-overlay .ui-symbol{width:18px;height:18px}.manager-file-state{position:absolute;z-index:1;inset-block-start:14px;inset-inline-start:14px;pointer-events:none;padding:5px 10px;border:1px solid #f1d9a7;border-radius:8px;background:#fff6e4eb;color:#75572e;font-size:11px}
.manager-inline-drop{display:flex;justify-content:flex-start;align-items:center;gap:10px;flex-wrap:wrap;width:100%;padding:16px 18px;min-height:74px;border:1px dashed var(--border);border-radius:14px;background:var(--panel);color:var(--text)}.manager-inline-drop>svg:first-child{width:23px;height:23px;color:var(--action)}.manager-inline-drop>span{font-size:14px;font-weight:700}.manager-inline-drop>small{font-size:11px;color:var(--muted)}.manager-inline-drop>svg:last-child{margin-inline-start:auto;width:20px;height:20px;color:var(--action)}
.manager-inline-drop[data-over=true],.manager-upload-drop[data-over=true]{outline:2px solid var(--focus);background:var(--soft)}
.manager-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.manager-form-grid>label:first-child{grid-column:1/-1}.manager-form label{font-size:14px}
.manager-form-context{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 14px;background:var(--soft);border-radius:10px;color:var(--muted);font-size:13px}.manager-form-context svg{width:18px;height:18px;color:var(--action)}
.manager-kind-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.manager-kind-choices button{display:flex;flex-direction:column;gap:10px;min-height:92px;padding:15px 8px;font-size:14px;border-radius:12px}.manager-kind-choices svg{width:24px;height:24px;color:var(--muted)}.manager-kind-choices [aria-pressed=true]{background:var(--soft);border-color:var(--action);color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}.manager-kind-choices [aria-pressed=true] svg{color:var(--action)}
.manager-optional{padding-block:12px}.manager-optional[open]{display:grid;gap:16px}.manager-optional summary{min-height:44px;cursor:pointer;color:var(--muted)}
#task:has(.manager-upload){width:min(860px,calc(100vw - 32px))}.manager-upload-context{margin:0;color:var(--muted);font-size:13px}.manager-upload{gap:18px}
.manager-upload-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px 24px;min-height:180px;border:1px dashed color-mix(in srgb,var(--action) 35%,var(--border));border-radius:14px;background:var(--soft);text-align:center;cursor:pointer;overflow:hidden}.manager-upload-drop>svg{width:30px;height:30px;color:var(--action);margin-bottom:5px}.manager-upload-drop strong{font-size:16px;color:var(--action)}.manager-upload-drop>span{font-size:12px;color:var(--muted)}.manager-upload-drop input[type=file]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.manager-upload-drop:focus-within{outline:2px solid var(--focus);outline-offset:3px}.manager-upload-drop:hover{border-color:var(--focus)}
.manager-upload-rows{display:grid;gap:12px}.manager-upload-rows:empty{display:none}.manager-upload-row{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(130px,160px) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:12px}.manager-upload-row strong{display:block;overflow-wrap:anywhere;font-size:14px}.manager-upload-row small{display:block;color:var(--muted);font-size:11px}.manager-upload-row label{font-size:11px}.manager-upload-row select{font-size:13px}.manager-upload-thumb{width:80px;height:72px;border-radius:8px;background:var(--soft);display:flex;align-items:center;justify-content:center;overflow:hidden}.manager-upload-thumb img{width:100%;height:100%;object-fit:contain}.manager-upload-remove{font-size:12px;padding-inline:12px}
.manager-upload-options{font-size:13px;color:var(--muted)}.manager-upload-options summary{min-height:44px;cursor:pointer;display:flex;align-items:center;gap:8px}.manager-upload-options summary:after{content:'+';margin-inline-start:auto;font-size:20px}.manager-upload-options[open] summary:after{content:'−'}.manager-upload-options label{max-width:280px;font-size:12px}.manager-upload>p[role=status]:empty{display:none}.manager-upload-footer{position:sticky;bottom:-22px;background:var(--panel);padding:16px 0 0;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.manager-upload-footer button{min-width:180px;min-height:48px;font-size:14px}
@media(max-width:1180px){.manager-workspace{grid-template-columns:215px minmax(0,1fr);gap:18px}.manager-context{padding:18px 18px 0}.manager-heading .actions{width:100%}.manager-context-actions button{flex:1}.manager-tabs{gap:16px}.manager-files{gap:14px}.manager-file.visual-card{aspect-ratio:1}.manager-file .visual-overlay{padding:52px 14px 14px}.manager-file .visual-overlay h3{font-size:16px}}
@media(max-width:980px) and (min-width:761px){.manager-workspace{grid-template-columns:1fr}.manager-sidebar{position:static}.manager-tree{max-height:220px!important}.manager-files{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.manager-workspace{grid-template-columns:1fr;gap:18px}.manager-sidebar{position:static;padding:16px 8px 8px}.manager-tree-heading{padding-bottom:12px;margin-bottom:4px}div.manager-tree{height:210px;min-height:180px;max-height:210px}.manager-context{padding:14px 16px 0;margin-bottom:18px}.manager-heading{margin-bottom:16px}.manager-heading h2{font-size:23px}.manager-heading .actions{width:100%}.manager-context-actions button{flex:1;font-size:12px;padding-inline:9px}.manager-context-actions svg{width:17px;height:17px}.manager-tabs{gap:18px}.manager-tabs button{font-size:12px}.manager-sheet{padding:16px}.manager-overview-image{aspect-ratio:1.45}.manager-files{grid-template-columns:1fr;gap:18px}.manager-file.visual-card{aspect-ratio:1.2}.manager-file .visual-overlay h3{font-size:20px}.manager-table{min-width:580px}.manager-table th,.manager-table td{padding:14px;overflow-wrap:normal}.manager-unit-thumb{width:80px;height:70px}.manager-form-grid{grid-template-columns:1fr}.manager-kind-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-upload-row{grid-template-columns:64px minmax(0,1fr);gap:10px}.manager-upload-thumb{width:64px;height:64px}.manager-upload-row label{grid-column:1/-1}.manager-upload-remove{grid-column:2;justify-self:end}.manager-upload-drop{padding:22px 16px;min-height:160px}.manager-upload-footer button{width:100%}.manager-inline-drop{gap:8px}.manager-inline-drop>small{display:none}}

/* D146 — project file browsing reuses the existing native tree and cards. */
.project-browser .browser-context{margin-bottom:22px;padding:22px}.project-browser .browser-context .manager-heading{margin-bottom:20px}.project-browser .browser-context .manager-heading h2{font-size:24px;font-weight:400}.project-browser .browser-context .manager-child-cards{margin-top:20px}.project-browser .browser-facts{margin-top:20px}.project-browser .browser-facts button{font-size:11px;min-height:32px;padding:4px 8px;justify-self:start}.project-browser .project-materials{grid-template-columns:repeat(3,minmax(0,1fr))}.project-browser .project-hero h2{font-size:30px}.project-browser .project-hero,.project-browser .project-hero .project-hero-copy{min-height:250px}.project-browser .project-hero .project-hero-copy{padding:26px}.project-browser .project-materials .visual-overlay h2{font-size:17px}.project-browser .browser-empty{font-size:14px;color:var(--muted)}
@media(max-width:1180px){.project-browser .project-materials{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.project-browser .browser-context{padding:18px;margin-bottom:18px}.project-browser .project-materials{grid-template-columns:1fr}.project-browser .browser-context .manager-heading h2{font-size:21px}}

.project-browser .browser-payment{margin-top:22px;border-top:1px solid var(--border);padding-top:12px}.project-browser .browser-payment>summary{cursor:pointer;min-height:44px;font-size:14px;color:var(--action)}.project-browser .browser-payment .manager-sheet{padding:0;border:0;margin-top:12px}.project-browser .browser-payment .manager-table{font-size:13px}.project-browser .browser-payment .manager-table button{font-size:12px}

/* Reviewed language copies use the existing panel, form and action components. */
.import-language-copies{display:grid;gap:12px;margin-block:16px}.import-language-copy{border:1px solid var(--border);border-radius:14px;padding:14px;min-width:0;display:grid;gap:8px}.import-language-copy h4,.import-language-copy p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.import-language-copy small{color:var(--muted)}.import-language-copy label{display:grid;gap:6px}.import-language-copy input,.import-language-copy textarea{min-width:0;width:100%;box-sizing:border-box}.approved-language-copies{margin-block:10px}.approved-language-copies summary{min-height:44px;cursor:pointer;display:flex;align-items:center}.approved-language-copies section{border-top:1px solid var(--border);padding-block:10px}.import-item h3,.import-comparison bdi{overflow-wrap:anywhere}.preview:is(video){width:100%;max-height:65vh;background:#111;border-radius:12px}

.import-material-preview{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:16px;background:var(--surface,#f6f4fb)}.catalog-chips{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1}.catalog-chips:empty{display:none}.pswp__button--download{width:auto;padding:0 20px;font:inherit;color:#fff}.pswp__file-name{color:#fff;padding:16px;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-item fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:600px){.import-item fieldset{grid-template-columns:1fr}.import-material-preview{max-height:300px}}

.import-crop-surface{position:relative;line-height:0;max-width:600px;justify-self:start}.import-crop-surface .import-material-preview{max-height:none;touch-action:none;cursor:crosshair;user-select:none}.import-crop-outline{position:absolute;pointer-events:none;border:2px solid #705abd;background:#705abd26;box-shadow:0 0 0 1px #fff9;border-radius:2px}.import-crop-surface img{border-radius:0}

.import-thumb{min-height:120px;border-radius:14px;background:var(--surface,#f8f6fc);margin-block:14px}.import-thumb .import-material-preview{max-height:220px}.import-item .manager-form textarea{min-height:64px}.import-item .manager-form label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px}.import-item .manager-form input[type=checkbox]{width:20px;height:20px;flex:none}

/* Semantic search keeps the same controls and an explicit responsive reading order. */
.catalog-filters.semantic-filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));grid-template-areas:'query city layout' 'submit reset advanced' 'chips chips chips' 'error error error';gap:14px}
.catalog-filters.semantic-filters>.catalog-query{grid-area:query}.catalog-filters.semantic-filters>.catalog-city{grid-area:city}.catalog-filters.semantic-filters>.catalog-layout{grid-area:layout}
.catalog-filters.semantic-filters>.catalog-submit{grid-area:submit}.catalog-filters.semantic-filters>.catalog-reset{grid-area:reset}.catalog-filters.semantic-filters>.filter-disclosure{grid-area:advanced;margin:0;min-width:0}
.catalog-filters.semantic-filters:has(>.filter-disclosure[open]){grid-template-areas:'query city layout' 'submit reset .' 'advanced advanced advanced' 'chips chips chips' 'error error error'}
.catalog-filters.semantic-filters>.catalog-chips{grid-area:chips;min-width:0}.catalog-filters.semantic-filters>.error{grid-area:error;margin:0}.catalog-filters.semantic-filters>.error:empty{display:none}
.catalog-filters.semantic-filters>button{font-size:14px;width:100%;padding:10px 16px;min-height:46px}.catalog-filters.semantic-filters>button:after{content:none}
.catalog-filters.semantic-filters label{min-width:0}.catalog-filters.semantic-filters input,.catalog-filters.semantic-filters select{width:100%;box-sizing:border-box}
@media(max-width:760px){.catalog-filters.semantic-filters,.catalog-filters.semantic-filters:has(>.filter-disclosure[open]){grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:'query query' 'city layout' 'submit reset' 'advanced advanced' 'chips chips' 'error error';padding:16px;gap:12px}.catalog-filters.semantic-filters>.filter-disclosure[open]{grid-template-columns:1fr}.catalog-filters.semantic-filters>.filter-disclosure[open]>label{grid-column:1}.catalog-filters.semantic-filters>button{font-size:13px;padding-inline:8px}.catalog-filters.semantic-filters .catalog-chips button{font-size:12px;overflow-wrap:anywhere}}

.import-workspace:has(.import-item>.manager-form){grid-template-columns:180px minmax(0,1fr)}.import-workspace:has(.import-item>.manager-form)>.import-evidence{grid-column:1/-1;position:static}.import-item>.manager-form{display:grid;gap:16px}.import-item>.manager-form .import-crop-surface{width:min(100%,600px)}
@media(max-width:650px){.import-workspace:has(.import-item>.manager-form){grid-template-columns:minmax(0,1fr)}}
/* Reviewed import refresh uses the same native panel and action controls. */
.import-refresh-changes{display:grid;gap:12px;padding-inline-start:22px;overflow-wrap:anywhere}
.import-refresh-changes li>strong,.import-refresh-changes li>span{display:block}
.import-refresh-changes li>span{margin-block-start:4px;color:var(--muted)}

/* Transparent source previews: checkerboard shows retained alpha without altering the PNG. */
.import-thumb .import-material-preview,.import-evidence .import-material-preview{background-color:var(--panel,#fff);background-image:conic-gradient(#8c82aa18 25%,transparent 0 50%,#8c82aa18 0 75%,transparent 0);background-size:20px 20px}

/* Existing setup components: project-first steps and scoped suggestions. */
.visual-setup .setup-steps{flex-wrap:wrap;row-gap:8px}
.setup-project-step{white-space:nowrap}
.visual-setup .record-warning{margin:14px 0;padding:16px;border-radius:12px;background:var(--soft);border:1px solid var(--border);display:grid;gap:8px}
.visual-setup .record-warning p{margin:0}.visual-setup .record-warning small{overflow-wrap:anywhere}
.setup-similar{margin:18px 0;display:grid;gap:8px}.setup-similar h4{margin:0 0 6px}.setup-similar button{white-space:normal;text-align:start}

.visual-setup .setup-steps:has(button:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:760px){.visual-setup .setup-steps:has(button:nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}.setup-project-step{font-size:12px}.visual-setup .setup-stage-heading{flex-wrap:wrap}.setup-similar button{min-height:48px}}
/* D163 — approved split selection workspace and atomic image loading. */
.offer-setup-split .setup-steps,.offer-setup-split .setup-footer{display:none}
.offer-setup-split .setup-context{justify-content:space-between;padding:14px 24px}
.offer-setup-split .setup-stage{padding:22px!important}
.setup-columns{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}
.setup-main,.setup-summary{min-width:0}.setup-main h3{font-size:18px;margin:0 0 14px}
.setup-summary{position:sticky;top:0;padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--panel,#fff);display:flex;flex-direction:column;gap:16px}
.setup-summary h3,.setup-summary h4,.setup-summary p{margin:0}.setup-summary h3{font-size:20px}.setup-summary .setup-selection-preview{display:block;padding:0;border:0;box-shadow:none;background:none}.setup-summary .setup-selection-preview>.setup-cover{display:none}.setup-summary .setup-selection-copy{padding:0}.setup-summary .setup-selection-copy strong{font-size:21px}.setup-summary .setup-template{width:100%;padding:0;border:0}.setup-summary .setup-template>summary{display:none}.setup-summary .setup-template label{margin:0}.setup-summary .setup-template p{font-size:13px}.setup-summary .setup-availability{font-size:14px}.setup-summary .setup-availability small{display:block}.setup-summary .setup-availability .check{margin-top:12px}
.setup-tower-tabs,.setup-language-tabs,.asset-category-tabs{display:flex;gap:8px;flex-wrap:wrap}.setup-tower-tabs{margin-bottom:24px}.setup-tower-tabs button,.setup-language-tabs button,.asset-category-tabs button{min-height:44px;border-radius:12px;padding:8px 14px}.setup-language-tabs button{flex:1;padding:8px}.setup-tower-tabs [aria-pressed=true],.setup-language-tabs [aria-pressed=true],.asset-category-tabs [aria-pressed=true]{background:var(--action,#6956ae);color:#fff;border-color:var(--action,#6956ae)}
.setup-unit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visual-setup .setup-unit-list .setup-choice{width:100%;min-width:0;max-width:none;display:flex;flex-direction:column;border-radius:16px;text-align:start;overflow:hidden}.visual-setup .setup-unit-list .setup-cover{height:135px;min-height:135px;aspect-ratio:auto;background:var(--panel,#fff)}.setup-unit-list .setup-cover img,.setup-unit-list .setup-cover canvas{object-fit:contain!important;padding:8px}.visual-setup .setup-unit-list .setup-choice-caption{padding:14px;gap:6px;display:flex;flex-direction:column}.visual-setup .setup-unit-list .setup-choice-caption strong{font-size:20px;line-height:1.4}.visual-setup .setup-unit-list .setup-choice-kind{font-size:11px;align-self:flex-start}.setup-unit-list .setup-choice-facts{font-size:12px}.setup-unit-list .setup-choice[aria-pressed=true]{border-color:var(--action,#6956ae);box-shadow:0 0 0 2px var(--action,#6956ae)}
.setup-project-picker .setup-choices{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));padding:22px}.setup-project-picker .setup-choice .setup-choice-caption{display:flex!important;flex-direction:column;align-items:flex-start;gap:10px;padding:24px}.setup-project-picker .setup-choice-caption strong{font-size:25px!important}.setup-project-picker .setup-stage-heading{padding:20px}
.canvas-stage{position:relative}.editor-page-skeleton{position:absolute;inset:0;z-index:3;display:none;background:var(--panel,#fff);border:1px solid var(--border);overflow:hidden;align-items:center;justify-content:center;color:var(--muted);font-size:15px}.editor-page-skeleton:before{content:'';position:absolute;inset:10% 8%;border-radius:12px;background:linear-gradient(100deg,#e8e9ed 25%,#f3f3f5 42%,#e8e9ed 65%);background-size:200% 100%;animation:library-skeleton 1.6s linear infinite}.editor-page-skeleton span{position:relative;background:var(--panel,#fff);padding:14px 20px;border-radius:12px}.canvas-stage[data-loading=true]>.canvas-container{visibility:hidden}.canvas-stage[data-loading=true]>.editor-page-skeleton{display:flex}.canvas-stage[data-loading=false]>.canvas-container{animation:library-reveal .18s ease-out}
@keyframes library-skeleton{to{background-position:-200% 0}}@keyframes library-reveal{from{opacity:0}to{opacity:1}}
.asset-picker> *{flex-shrink:0}.asset-picker .asset-category-tabs{padding-block:12px}.asset-choice .image-frame img,.asset-choice .image-frame canvas{object-fit:contain!important}.manager-overview-image.is-plan{height:auto!important;aspect-ratio:16/9;min-height:220px;max-height:520px}.manager-overview-image.is-plan img,.manager-overview-image.is-plan canvas{object-fit:contain!important}
@media(max-width:760px){.setup-columns{grid-template-columns:1fr;gap:18px}.setup-summary{position:static}.offer-setup-split .setup-stage{padding:14px!important}.setup-unit-list{gap:10px}.visual-setup .setup-unit-list .setup-cover{height:110px;min-height:110px}.visual-setup .setup-unit-list .setup-choice-caption{padding:10px}.setup-project-picker .setup-choices{grid-template-columns:1fr}.asset-category-tabs{flex-wrap:nowrap;overflow-x:auto}.asset-category-tabs button{white-space:nowrap}.manager-overview-image.is-plan{min-height:160px}}
@media(prefers-reduced-motion:reduce){.editor-page-skeleton:before,.canvas-stage[data-loading=false]>.canvas-container{animation:none}}
.studio-template-card{padding:24px;display:flex;flex-direction:column;gap:12px}.studio-template-card h2,.studio-template-card p{margin:0}.studio-template-card>span{color:var(--muted);font-size:13px}.studio-template-card .actions{margin-top:auto}
.template-studio{width:100%;max-width:1400px;min-width:0}.studio-bar{display:flex;gap:12px;align-items:end;padding:16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.studio-bar label{flex:1;min-width:180px}.studio-work{display:grid;grid-template-columns:150px minmax(0,1fr) 240px;min-height:500px}.studio-pages,.studio-properties{padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--panel,#fff)}.studio-pages{border-inline-end:1px solid var(--border)}.studio-properties{border-inline-start:1px solid var(--border)}.studio-properties h3{font-size:17px;margin:0}.studio-properties p,.studio-properties small{font-size:13px;color:var(--muted)}.studio-pages button[aria-current=page]{background:var(--soft,#ede9f8);color:var(--action,#6956ae);border-color:var(--action,#6956ae)}.studio-canvas{padding:24px;min-width:0;background:var(--bg,#eef0f6);display:flex;align-items:center}.studio-sheet{position:relative;aspect-ratio:297/210;width:100%;background:white;box-shadow:0 8px 32px #25223c15;overflow:hidden;color:#45405e}.studio-brand-rail{position:absolute;right:0;top:0;width:13.47%;height:100%;background:#004460;color:white;writing-mode:vertical-rl;display:grid;place-items:center;font-size:12px}.studio-page-title{position:absolute;left:2.35%;top:2%;font-size:clamp(9px,1.2vw,16px)}.studio-block{position:absolute!important;min-height:0!important;min-width:0!important;margin:0!important;padding:6px!important;display:flex;gap:5px;flex-direction:column;justify-content:center;align-items:center;border:1px dashed #b8b1cd!important;border-radius:2px!important;color:#45405e!important;background:#ede9f866!important;font-size:clamp(8px,1vw,14px)!important;cursor:grab;touch-action:none;overflow:hidden;white-space:normal}.studio-block[aria-pressed=true]{outline:2px solid #6956ae;outline-offset:-2px;background:#ede9f8!important}.studio-text{background:#fff!important}.studio-block svg{width:22px;height:22px}.studio-dimensions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studio-dimensions input{min-width:0;width:100%}.studio-field-picker{display:flex;flex-direction:column;gap:8px}.studio-fixed{position:absolute;inset:30% 20%;display:grid;place-items:center;color:#45405e;font-size:14px}
@media(min-width:900px){dialog:has(.template-studio){width:min(1400px,96vw);max-width:96vw}}
@media(max-width:760px){.studio-work{grid-template-columns:1fr;min-height:0}.studio-pages{flex-direction:row;overflow-x:auto;border:0}.studio-pages button{white-space:nowrap;flex-shrink:0}.studio-canvas{padding:12px}.studio-properties{border:0}.studio-bar{padding:12px;gap:8px}.studio-bar label{flex-basis:100%}.studio-bar button{flex:1}.studio-dimensions{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-dimensions label{font-size:12px}.studio-block{font-size:9px!important}.studio-block svg{width:15px;height:15px}}
.editor-page-retry{display:none;position:relative}.canvas-stage[data-failed=true] .editor-page-retry{display:block}.canvas-stage[data-failed=true] .editor-page-skeleton>span{display:none}.canvas-stage[data-failed=true] .editor-page-skeleton:before{animation:none}
.offer-setup-split .setup-main h3,.offer-setup-split .setup-summary h3{font-size:18px!important;line-height:1.5;margin-bottom:12px}.offer-setup-split .setup-summary .setup-template>*:not(summary){position:static!important;inset:auto!important;transform:none!important;width:auto!important;min-width:0!important;box-shadow:none!important;border:0!important;padding:0!important}.offer-setup-split .setup-unit-list .setup-choice[aria-pressed=true]{border-color:var(--action)!important;box-shadow:inset 0 0 0 1px var(--action)!important}.offer-setup-split .setup-unit-list .setup-choice:focus-visible{outline:3px solid var(--action);outline-offset:3px}
.setup-change-unit{display:none}@media(max-width:760px){.setup-change-unit{display:block}.template-studio h3{font-size:18px!important}}

/* Direct resize uses physical corners in the LTR document, including RTL UI. */
.studio-block{overflow:visible}.studio-resize{position:absolute;width:28px;height:28px;z-index:2;display:none;touch-action:none}.studio-resize:after{content:'';position:absolute;inset:8px;border:2px solid var(--action,#6956ae);background:white;border-radius:2px}.studio-block[aria-pressed=true] .studio-resize{display:block}.studio-resize[data-resize=nw]{left:-14px;top:-14px;cursor:nwse-resize}.studio-resize[data-resize=ne]{right:-14px;top:-14px;cursor:nesw-resize}.studio-resize[data-resize=sw]{left:-14px;bottom:-14px;cursor:nesw-resize}.studio-resize[data-resize=se]{right:-14px;bottom:-14px;cursor:nwse-resize}
.offer-map-pages{padding:24px;overflow:auto;width:100%;height:100%;background:var(--panel);z-index:2}.offer-map-pages[hidden]{display:none}.offer-map-pages .actions{margin-bottom:20px}.offer-map-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.offer-map-page-grid figure{margin:0;min-width:0}.offer-map-page-grid img{width:100%;aspect-ratio:1920/1084;object-fit:contain;background:var(--bg);border:1px solid var(--border);border-radius:12px}.offer-map-page-grid figcaption{padding:12px 0;font-weight:600}.offer-map-page-grid button{width:100%}@media(max-width:760px){.studio-resize{width:44px;height:44px}.studio-resize:after{inset:16px}.studio-resize[data-resize=nw]{left:-22px;top:-22px}.studio-resize[data-resize=ne]{right:-22px;top:-22px}.studio-resize[data-resize=sw]{left:-22px;bottom:-22px}.studio-resize[data-resize=se]{right:-22px;bottom:-22px}.offer-map-pages{padding:14px}.offer-map-page-grid{grid-template-columns:1fr}}

.studio-label{display:block;max-width:100%;max-height:100%;overflow:hidden;overflow-wrap:anywhere}

.four-preview[data-map=true] .editor-context-panels,.four-preview[data-map=true] .page-management{display:none!important}

/* Library files display the complete source; official card/banner crops remain explicit. */
.file-list .visual-card .resource-image{padding:12px;box-sizing:border-box;transform:none!important}
.file-list .visual-card .resource-image img,.file-list .visual-card .resource-image canvas{width:100%;height:100%;object-fit:contain;object-position:center;max-width:100%;max-height:100%}
.setup-tower-tabs button{gap:12px;justify-content:space-between;min-width:120px}
.setup-tower-name{font-size:18px;font-weight:600;line-height:1.4;white-space:nowrap}
.setup-tower-count{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:30px;padding:2px 8px;border-radius:10px;background:var(--soft);color:var(--action);font-size:14px;font-weight:600;line-height:1}
.setup-tower-tabs [aria-pressed=true] .setup-tower-count{background:#ffffff;color:#6956ae}

.image-context-toolbar .editor-tooltip,.page-management .editor-tooltip{bottom:auto;top:calc(100% + 8px)}
.offer-map-page-grid:has(figure[hidden]){grid-template-columns:1fr;max-width:1100px;margin-inline:auto}.offer-map-page-grid figure[hidden]{display:none}

.four-preview[data-map=true] .image-context-toolbar{display:none!important}
.offer-map-page-grid .map-page-sheet{width:100%;height:auto;max-height:calc(100dvh - 290px);min-height:0;object-fit:contain;background:var(--bg);border:0;border-radius:0}.offer-map-page-grid figure[hidden]{display:none}

/* Recovery uses the existing panel/action components and remains scoped to the current member. */
.work-recovery{padding:16px 20px;margin-block:0 16px;display:grid;gap:8px}
.work-recovery>.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.work-recovery>.actions>span{flex:1;min-width:120px;overflow-wrap:anywhere}
.work-recovery .editor-icon{flex:none;min-width:44px;min-height:44px}
.recovery-session{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-block-end:12px}
.recovery-session>p{flex:1 1 220px;margin:0}

/* Legacy import translations: give longer labels room in RTL and LTR. */
.import-edit-details > label { display: grid; gap: .375rem; margin-block: .75rem; }
.import-edit-details > fieldset { min-inline-size: 0; margin-block: .75rem; }
.import-edit-details label { overflow-wrap: anywhere; }

/* D197: compact general templates, project rows and passive template artwork. */
.studio-template-simple{padding:20px;display:flex;flex-direction:column;gap:20px}.studio-template-heading{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.studio-template-heading h2{font-size:18px;line-height:1.5;margin:0}.studio-template-heading .badge{flex-shrink:0;font-size:11px}.studio-template-simple .actions{margin-top:auto}.template-project-section{margin-top:32px}.template-project-section h2{font-size:19px}.template-project-rows{display:flex;flex-direction:column;gap:8px}.template-project-row{display:flex;align-items:center;gap:16px;padding:16px 20px;border:1px solid var(--border);border-radius:16px;background:var(--panel,#fff);min-width:0}.template-project-row>div{min-width:0;flex:1}.template-project-row h2,.template-project-row h3{font-size:16px;margin:0}.template-project-row p,.template-project-row small{font-size:13px;color:var(--muted);margin:4px 0 0}.template-project-row>button{margin-inline-start:auto;flex-shrink:0}.studio-art-tools{position:relative;min-width:145px}.studio-art-tools>summary{min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid var(--border);border-radius:12px;cursor:pointer}.studio-art-tools[open]{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--panel,#fff);max-width:360px}.studio-art-tools[open]>summary{margin-bottom:8px}.studio-art-tools .actions{gap:6px;display:flex;flex-wrap:wrap}.studio-art-tools button{font-size:12px;min-height:44px;padding:8px}.studio-sheet[data-drawing=true]{cursor:crosshair;touch-action:none}.studio-draw-preview{position:absolute;border:1px dashed #5a4c9e;pointer-events:none;z-index:20;background:#7c68bd12}.studio-graphic{background:transparent!important;padding:0!important}.studio-graphic img{width:100%;height:100%;object-fit:contain;pointer-events:none}.studio-graphic:not([aria-pressed=true]){border-color:transparent!important}.studio-graphic[aria-pressed=true]{background:transparent!important}
@media(max-width:760px){.template-project-row{padding:12px;gap:10px;flex-wrap:wrap}.template-project-row>div{flex-basis:55%}.template-project-row>button{font-size:12px;padding:8px}.studio-template-simple{padding:16px}.studio-template-heading{flex-wrap:wrap}.studio-art-tools{flex:1}.studio-art-tools[open]{max-width:none}.studio-art-tools button{flex:0 1 auto}.studio-template-simple .actions button{flex:1}}
.studio-art-tools[open]{padding:0;max-width:none;border:0;background:transparent}.studio-art-tools[open]>summary{margin:0}.studio-art-controls{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;z-index:40;width:min(340px,80vw);padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--panel,#fff);box-shadow:0 12px 32px #27233d24;display:grid;gap:10px}.studio-art-controls label{min-width:0}.studio-art-controls .actions{align-items:center}.template-project-row button>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.template-project-row button{min-width:44px;min-height:44px;padding:10px}.studio-art-controls input[type=color]{height:40px;padding:4px}
/* MARSA_SHARED_DIVE */
/* Optional local underwater appearance. Documents, exports and financial state are untouched. */
.marsa-dive-toggle{width:44px;height:44px;min-width:44px;flex:0 0 44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid #96c7d33d;background:transparent;color:inherit;cursor:pointer;padding:0}
.marsa-dive-toggle[aria-pressed="true"]{background:#6bcbd52b;border-color:#a1dce6a6;box-shadow:inset 0 0 14px #94dde520}
.marsa-dive-toggle:focus-visible{outline:2px solid #9edfeb;outline-offset:3px}
.marsa-dive-water,.marsa-dive-near{position:fixed;inset:0;width:100%;height:100%;pointer-events:none!important;user-select:none}
.marsa-dive-water{z-index:0;opacity:.5;animation:marsa-dive-appear 1s ease both}
.marsa-dive-near{z-index:8;opacity:.24;clip-path:inset(110px 0 0)}
html[data-marsa-dive="on"] body{background:#040f1b!important;isolation:isolate}
html[data-marsa-dive="on"] :is(.crm-shell,.erp-access-shell,.library-shell){position:relative;z-index:1;background:transparent!important}
html[data-marsa-dive="on"] :is(.crm-shell>main,.erp-app,.workspace,.erp-workspace,.erp-main,.library-main,#main){background:transparent!important}
html[data-marsa-dive="on"] :is(.crm-marine-widget,.panel,.erp-marine-widget){background:linear-gradient(135deg,#29475bd9,#0d2539d6)!important;border-color:#b4e6ed30!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
html[data-marsa-dive="on"] :is(.crm-workspace-header,.marsa-chrome-header){background:#102839e8!important}
/* Library's opaque brand rail must join the water only while Dive is enabled. */
/* Keep its drawer above the body-level scrim; the shell must not trap z-index 41. */
html[data-marsa-dive="on"] .library-shell{
  z-index:auto;
  /* Same shared chrome color roles as CRM; Library supplies its purple values. */
  --library-glass:#30253fad;
  --library-chip:#a58ac52b;
  --library-dive-surface:linear-gradient(135deg,#49375e99,#21192ebd);
  --mc-solid:#241c34;
  --mc-selection:#d2beef;
}
html[data-marsa-dive="on"] body:has(>.library-shell)>.marsa-dive-water{z-index:-1}
html[data-marsa-dive="on"] .library-shell .library-sidebar{
  --sidebar-ink:#fcfaff;
  --sidebar-muted:#d8ccec;
  --sidebar-edge:#e5d3ff30;
  --sidebar-chip:#c5a8ef1c;
  --action:#d2beef;
  --focus:#e0ceff;
  background:linear-gradient(155deg,#49366199,#1d162eb3 70%)!important;
  border-inline-end:1px solid #e5d3ff24;
  -webkit-backdrop-filter:blur(20px) saturate(1.15);
  backdrop-filter:blur(20px) saturate(1.15);
  box-shadow:-6px 0 25px -16px #150d2466;
}
html[data-marsa-dive="on"] .library-shell :is(.panel,.resume-card,.dashboard-stat,.manager-context,.manager-sheet){background:var(--library-dive-surface)!important;border-color:#d8c3f02e!important}
body:has(dialog[open],[role="dialog"],.modal-backdrop) .marsa-dive-near{visibility:hidden}
@keyframes marsa-dive-appear{from{opacity:0}to{opacity:.5}}
@media(max-width:700px){.marsa-dive-near{opacity:.17}.marsa-dive-toggle{width:44px;height:44px}.marsa-chrome-tools{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.marsa-dive-water{animation:none}.marsa-dive-near{display:none}}
@media print{.marsa-dive-toggle,.marsa-dive-water,.marsa-dive-near{display:none!important}}

.omni-dive-transition {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  contain: strict;
}
.dive-tide-water {
  position: absolute;
  left: -10%;
  top: 0;
  width: 120%;
  height: 125%;
  transform: translateY(100%);
  animation: marsa-dive-fill 820ms cubic-bezier(0.28, 0.62, 0.3, 1) both;
  will-change: transform;
}
.dive-tide-water svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.dive-tide-frost {
  position: absolute;
  inset: 0;
  background: linear-gradient(#b2f4ef0a, transparent 70%);
  -webkit-backdrop-filter: blur(5px) saturate(1.2);
  backdrop-filter: blur(5px) saturate(1.2);
  clip-path: polygon(
    0 9%,
    10% 7%,
    20% 8%,
    30% 7%,
    40% 9%,
    55% 7%,
    68% 6%,
    80% 8%,
    90% 9%,
    100% 6%,
    100% 100%,
    0 100%
  );
}
.dive-tide-body {
  fill: url(#marsa-tide-depth);
}
.dive-tide-foam {
  fill: #71c5d2;
  opacity: 0.08;
}
.dive-tide-rim {
  fill: none;
  stroke: #b9efe9;
  stroke-width: 1.7;
  opacity: 0.48;
}
.dive-tide-threads {
  fill: none;
  stroke: #a8e3e7;
  stroke-width: 0.7;
  opacity: 0.22;
}
.dive-tide-water svg > path,
.dive-tide-threads {
  animation: marsa-dive-swell 1100ms ease-in-out both;
  transform-origin: center;
}
.omni-dive-transition[data-phase="reveal"] {
  animation: marsa-dive-reveal 440ms ease-out both;
}
@keyframes marsa-dive-fill {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(-16%);
  }
}
@keyframes marsa-dive-swell {
  from {
    transform: translateX(-3%) scaleY(1.03);
  }
  to {
    transform: translateX(3%) scaleY(1);
  }
}
@keyframes marsa-dive-reveal {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

body[data-dive-entering]{transition:background-color 650ms ease}


/* Shared presentation only. Product navigation, access and actions stay local. */
.marsa-chrome {
  --mc-rail-width: 256px;
  --mc-control: 44px;
  --mc-nav-height: 48px;
  --mc-header-height: 80px;
  --mc-radius: 12px;
  --mc-icon: 18px;
  --mc-nav-icon: 20px;
}
.marsa-omni.marsa-chrome {
  --mc-ink: var(--omni-ink);
  --mc-muted: var(--omni-muted);
  --mc-chip: var(--omni-chip);
  --mc-edge: var(--omni-divider);
  --mc-glass: var(--omni-header);
  --mc-solid: var(--omni-solid);
  --mc-accent: var(--omni-primary);
  --mc-selection: #b4d0ed;
}
.crm-shell.marsa-chrome {
  --mc-ink: var(--crm-chrome-ink);
  --mc-muted: var(--crm-chrome-muted);
  --mc-chip: var(--crm-chrome-chip);
  --mc-edge: var(--crm-chrome-edge);
  --mc-glass: var(--crm-chrome-glass);
  --mc-solid: #f6f9fe;
  --mc-accent: var(--crm-chrome-accent);
  --mc-selection: #a9cbea;
}
.erp-app.marsa-chrome {
  --mc-ink: var(--text);
  --mc-muted: var(--muted);
  --mc-chip: var(--erp-chip);
  --mc-edge: var(--erp-edge);
  --mc-glass: var(--erp-glass);
  --mc-solid: var(--surface);
  --mc-accent: var(--brand);
  --mc-selection: #afe0da;
}
html[data-theme="dark"] .crm-shell.marsa-chrome {
  --mc-solid: #1b314b;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome {
  display: grid;
  grid-template-columns: var(--mc-rail-width) minmax(0, 1fr);
  direction: rtl;
  min-width: 0;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome > :is(main, .main) {
  min-width: 0;
  grid-column: 2;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-header {
  position: sticky;
  top: 0;
  z-index: 20;
  height: auto;
  min-height: var(--mc-header-height);
  padding: 12px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin: 0;
  background: var(--mc-glass) !important;
  color: var(--mc-ink);
  border-bottom: 1px solid var(--mc-edge) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.1);
  backdrop-filter: blur(24px) saturate(1.1);
  box-shadow: 0 4px 18px -15px #193d6050;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-location,
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-tools {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 8px;
  flex-wrap: wrap;
  width: auto;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-tools {
  margin-inline-start: auto;
  flex: 0 1 auto;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-location
  :is(.breadcrumb, .crm-header-breadcrumb) {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-location
  :is(strong, .breadcrumb b) {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--mc-muted);
  overflow-wrap: anywhere;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-location
  .marsa-logo {
  width: 96px;
  height: 32px;
  min-width: 96px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.workspace-date, .crm-header-date, .erp-header-date) {
  display: block;
  min-width: 0;
  padding: 0 4px;
  font-size: 11px;
  line-height: 1.6;
  font-weight: 400;
  color: var(--mc-muted);
  white-space: nowrap;
  order: 0;
  flex-basis: auto;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  :is(
    .workspace-icon-button,
    .crm-chrome-icon,
    .erp-chrome-icon,
    .inbox-bell,
    .workspace-notification-button,
    .menu-button
  ) {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: var(--mc-control);
  height: var(--mc-control);
  min-height: var(--mc-control);
  padding: 0;
  border-radius: var(--mc-radius);
  background: var(--mc-chip) !important;
  color: var(--mc-ink) !important;
  border: 1px solid var(--mc-edge) !important;
  box-shadow: inset 0 1px 0 #ffffff18;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  :is(
    .workspace-icon-button,
    .crm-chrome-icon,
    .erp-chrome-icon,
    .inbox-bell,
    .workspace-notification-button,
    .menu-button
  )
  > svg,
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.workspace-company, .crm-header-company, .erp-header-company)
  > svg {
  width: var(--mc-icon);
  height: var(--mc-icon);
  stroke-width: 1.75;
  flex: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.workspace-company, .crm-header-company, .erp-header-company) {
  flex: 0 1 190px;
  width: 190px;
  max-width: 190px;
  min-height: 44px;
  margin: 0;
  font-size: 12px;
  border-radius: var(--mc-radius);
  gap: 8px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-header-company, .erp-header-company) {
  padding: 8px 12px;
  border: 1px solid var(--mc-edge);
  background: var(--mc-chip);
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .workspace-company select {
  height: 44px;
  border-radius: var(--mc-radius);
  font-size: 12px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance, .marsa-chrome-header .theme-toggle) {
  position: relative;
  display: grid;
  isolation: isolate;
  grid-template-columns: 44px 44px;
  gap: 4px;
  padding: 2px;
  width: 98px;
  height: 50px;
  min-height: 50px;
  flex: none;
  border: 1px solid var(--mc-edge);
  border-radius: 99px;
  background: color-mix(in srgb, var(--mc-muted) 8%, transparent);
  box-shadow: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance) {
  direction: ltr;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance)
  button {
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  color: var(--mc-muted);
  background: transparent !important;
  border: 0;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance, .marsa-chrome-header .theme-toggle)
  svg {
  width: 18px;
  height: 18px;
  stroke-width: 1.75;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(
    .crm-appearance-indicator,
    .erp-appearance-indicator,
    .marsa-chrome-header .theme-toggle i
  ) {
  top: 2px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 2px 7px #193d6020,
    inset 0 0 0 1px var(--mc-edge);
  transition:
    transform 0.24s ease,
    background-color 0.24s ease,
    box-shadow 0.24s ease;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance-indicator, .erp-appearance-indicator) {
  left: 2px;
  transform: translateX(48px);
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle {
  direction: rtl;
  color: var(--mc-muted);
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle
  i {
  right: 2px;
  transform: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance)
  button[aria-pressed="true"],
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle[aria-pressed="false"]
  > svg:first-child {
  color: #203b55;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance)[data-theme="dark"]
  :is(.crm-appearance-indicator, .erp-appearance-indicator),
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle[aria-pressed="true"]
  i {
  background: var(--mc-selection);
  box-shadow:
    0 3px 9px #07172755,
    inset 0 0 0 1px #effaff;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance)[data-theme="dark"]
  :is(.crm-appearance-indicator, .erp-appearance-indicator) {
  transform: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle[aria-pressed="true"]
  i {
  transform: translateX(-48px);
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-appearance, .erp-appearance)[data-theme="dark"]
  button[aria-pressed="true"],
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .theme-toggle[aria-pressed="true"]
  > svg:nth-child(2) {
  color: #183b4b;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-sidebar {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  width: var(--mc-rail-width);
  height: 100dvh;
  max-height: 100dvh;
  padding: 16px 12px 12px;
  gap: 12px;
  overflow: hidden;
  transform: none;
  visibility: visible;
  z-index: 30;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-brand {
  position: relative;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  min-height: 64px;
  padding: 4px 12px 12px;
  margin: 0;
  border-bottom: 1px solid #d7e9ff26;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-brand
  :is(.brand, .marsa-brand-lockup) {
  padding: 0;
  height: auto;
  margin: 0;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-brand
  .marsa-logo {
  width: 144px;
  height: 44px;
  min-width: 144px;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-workspace {
  display: flex;
  align-items: center;
  flex: none;
  min-height: 56px;
  padding: 8px 12px;
  gap: 10px;
  margin: 0;
  border: 1px solid #d7e9ff26;
  border-radius: var(--mc-radius);
  background: #dff4ff0c;
  color: #f2f8ff;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-workspace b {
  font-size: 12px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-workspace
  > svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.75;
  flex: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-workspace
  .workspace-avatar {
  width: 20px;
  height: 20px;
  border-radius: 8px;
  background: transparent;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-workspace
  .workspace-avatar
  svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.75;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: 0;
  margin: 0;
  gap: 12px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #bed8ee55 transparent;
  overscroll-behavior: contain;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-group {
  display: grid;
  gap: 4px;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-group > h2 {
  margin: 0 0 4px;
  padding: 0 12px;
  font-size: 10px;
  line-height: 1.6;
  font-weight: 400;
  color: #bfd4e8;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav button {
  position: relative;
  display: flex;
  align-items: center;
  flex: none;
  min-height: var(--mc-nav-height);
  height: auto;
  width: 100%;
  padding: 10px 12px;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: var(--mc-radius);
  background: transparent !important;
  box-shadow: none !important;
  color: #d9e8f5 !important;
  text-align: start;
  font-size: 13px;
  line-height: 1.6;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button
  > svg {
  width: var(--mc-nav-icon);
  height: var(--mc-nav-icon);
  stroke-width: 1.75;
  flex: none;
  opacity: 0.9;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button
  span {
  min-width: 0;
  flex: 1;
  font-size: inherit;
  line-height: inherit;
  white-space: normal;
  overflow-wrap: anywhere;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button:hover {
  background: #ffffff12 !important;
  color: #fff !important;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button:is(.selected, .active, [aria-current="page"]) {
  background: #ffffff24 !important;
  border-color: #d7e9ff35;
  color: #fff !important;
  box-shadow:
    inset -3px 0 #eaf6ff,
    inset 0 1px 0 #ffffff15 !important;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  :is(small, em) {
  position: static;
  margin-inline-start: auto;
  min-width: 20px;
  padding: 2px 6px;
  border-radius: 7px;
  color: #fff;
  background: #eaf6ff18;
  font-size: 10px;
  font-style: normal;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-footer {
  flex: none;
  margin: 0;
  padding: 10px 0 0;
  border-top: 1px solid #d7e9ff26;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-account-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding: 6px 8px;
  margin: 0;
  border: 0;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-account-row b {
  font-size: 12px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-account-row
  small {
  font-size: 10px;
  line-height: 1.6;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-account-row
  :is(.avatar, .crm-navigation-avatar) {
  width: 36px;
  height: 36px;
  flex: none;
  border-radius: 50%;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.marsa-chrome-header, .marsa-chrome-sidebar)
  :is(button, a, summary):focus-visible {
  outline: 2px solid var(--mc-accent);
  outline-offset: 3px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-sidebar
  :is(button, a, summary):focus-visible {
  outline-color: #bfe9ff !important;
  outline-offset: -3px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  :is(.menu-button, .crm-navigation-trigger) {
  display: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-brand
  :is(.mobile-close, .crm-navigation-close, .omni-menu-toggle) {
  display: none;
}
@media (min-width: 761px) {
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-sidebar {
    display: flex;
  }
}
@media (max-width: 1180px) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.workspace-date, .crm-header-date, .erp-header-date) {
    display: none;
  }
}
@media (max-width: 760px) {
  html body .marsa-chrome.marsa-chrome.marsa-chrome {
    display: block;
  }
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-header {
    min-height: 72px;
    padding: 10px 14px;
    gap: 10px;
  }
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-location {
    width: 100%;
    gap: 8px;
  }
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-tools {
    width: 100%;
    justify-content: flex-end;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.workspace-company, .crm-header-company, .erp-header-company) {
    flex: 1 1 140px;
    width: auto;
    max-width: none;
    margin-inline-end: auto;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-header
    :is(.menu-button, .crm-navigation-trigger) {
    display: inline-grid;
  }
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-sidebar {
    display: none;
    position: fixed;
    inset: 0 0 0 auto;
    width: min(var(--mc-rail-width), calc(100vw - 48px));
    height: 100dvh;
    max-height: 100dvh;
    z-index: 41;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-sidebar:is(.is-open, .show) {
    display: flex;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-brand
    :is(.mobile-close, .crm-navigation-close, .omni-menu-toggle) {
    display: grid;
    place-items: center;
    position: absolute;
    inset-inline-end: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    min-height: 44px;
    padding: 0;
    border: 1px solid #ffffff25;
    border-radius: 12px;
    background: #ffffff12 !important;
    color: #fff !important;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-brand
    .marsa-logo {
    width: 128px;
    min-width: 128px;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-sidebar
    .marsa-chrome-nav {
    display: flex;
    margin: 0;
  }
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-footer {
    display: block;
  }
}
@supports not (
  (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))
) {
  html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-header {
    background: var(--mc-solid) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.marsa-chrome-sidebar, .marsa-chrome-header) {
    animation: none;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(
      .marsa-chrome-nav button,
      .crm-appearance-indicator,
      .erp-appearance-indicator,
      .marsa-chrome-header .theme-toggle i
    ) {
    transition: none !important;
  }
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .marsa-chrome-menu {
  display: none;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .omni-menu-toggle > span {
  display: none;
}
@media (max-width: 760px) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-header
    .marsa-chrome-menu {
    display: inline-grid;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.marsa-chrome-scrim, .crm-navigation-scrim, .mobile-scrim) {
    position: fixed;
    inset: 0;
    display: block;
    width: 100%;
    height: 100dvh;
    z-index: 40;
    border: 0;
    border-radius: 0;
    background: #10273866;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
  }
}
/* Preserve the user's readable type preference, with the same scale in each rail. */
html[data-font-size="large"]
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button {
  font-size: 14px;
}
html[data-font-size="xlarge"]
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  button {
  font-size: 16px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  :is(.notification-trigger, .crm-header-notifications, .inbox-bell) {
  position: relative;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .inbox-bell
  > span {
  display: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  :is(.nc-count, .crm-header-notifications em, .inbox-bell > b) {
  position: absolute;
  inset-block-start: -4px;
  inset-inline-end: -4px;
  display: grid;
  place-items: center;
  min-width: 19px;
  height: 19px;
  padding: 0 4px;
  border-radius: 99px;
  background: #b0445d;
  border: 2px solid var(--mc-solid);
  color: #fff;
  font:
    700 9px Arada,
    sans-serif;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .omni-account {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  flex: none;
  border-radius: 50%;
}

html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav {
  gap: 4px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav:has(.marsa-chrome-group) {
  gap: 12px;
}
/* Identical chrome boxes and focus targets regardless of a product's base reset. */
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.marsa-chrome-header, .marsa-chrome-sidebar),
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.marsa-chrome-header, .marsa-chrome-sidebar)
  * {
  box-sizing: border-box;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-sidebar {
  border-inline-end: 1px solid #d7e9ff26;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-location
  .marsa-logo {
  display: inline-block;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-brand
  .marsa-brand-lockup
  > small {
  display: none;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-account-row {
  border-radius: 12px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-account-row::after {
  content: none;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  details
  > .marsa-chrome-account-row::after {
  content: "";
  flex: none;
  width: 7px;
  height: 7px;
  margin-inline-start: auto;
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(45deg);
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  details[open]
  > .marsa-chrome-account-row::after {
  transform: rotate(225deg);
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .crm-account-chevron {
  display: none;
}
@media (max-width: 760px) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.workspace-company, .crm-header-company, .erp-header-company) {
    flex: 1 1 88px;
    min-width: 88px;
  }
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    .marsa-chrome-location
    :is(
      .breadcrumb > span:not(.omni-wordmark),
      .crm-header-breadcrumb > i,
      .breadcrumb-separator
    ) {
    display: none;
  }
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-sidebar {
  border: 0;
  border-inline-end: 1px solid #d7e9ff26;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-nav
  > .marsa-chrome-group:first-child
  > h2 {
  display: none;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-location {
  min-height: 44px;
}
html body .marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-tools {
  min-height: 50px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  :is(.crm-header-company, .erp-header-company)
  b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .omni-account-photo {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--omni-avatar);
  color: white;
  overflow: hidden;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-header
  .ai-balance-ring
  .omni-account-photo {
  width: 34px;
  height: 34px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-account-row
  .ai-balance-ring
  .avatar {
  width: 34px;
  height: 34px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-footer
  > :is(.crm-navigation-home, .marsa-home-link) {
  display: flex;
  align-items: center;
  height: 44px;
  padding: 8px 12px;
  gap: 10px;
  margin: 0 0 8px;
  font-size: 12px;
  border: 0;
  border-radius: 12px;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-footer
  > :is(.crm-navigation-home, .marsa-home-link)
  > span {
  flex: 1;
}
html
  body
  .marsa-chrome.marsa-chrome.marsa-chrome
  .marsa-chrome-footer
  > :is(.crm-navigation-home, .marsa-home-link)
  > svg {
  width: 18px;
  height: 18px;
  stroke-width: 1.75;
}
@media (max-width: 760px) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.crm-header-company, .erp-header-company) {
    padding: 8px;
  }
}

@media (max-width: 760px) {
  html
    body
    .marsa-chrome.marsa-chrome.marsa-chrome
    :is(.crm-header-company, .erp-header-company)
    b {
    font-size: 11px;
  }
}

/* D123 / D124 / D125 — shared CRM structure, Library purple and pink reference. PDF branding is independent. */
:root{--bg:#eef0f6;--panel:#ffffff;--text:#45405e;--muted:#827c96;--border:#dedceb;--soft:#ede9f8;--action:#6956ae;--on-action:#fff;--focus:#7966bd;--shadow:0 10px 32px #5246800a;--folder-blue:#e9e3f8;--folder-green:#ebe7f5;--folder-rose:#fce3ed;--library-glass:#ffffffe0;--library-chip:#ffffffc7;--library-action-gradient:linear-gradient(115deg,#7865ba,#59459c);--sidebar-ink:#fcfaff;--sidebar-muted:#ded7f5;--sidebar-edge:#ebe2ff4d;--sidebar-chip:#ffffff1c}
:root[data-theme=dark]{--bg:#211e2d;--panel:#302b40;--text:#f3eefb;--muted:#c2b9d9;--border:#524966;--soft:#413852;--action:#b6a5e7;--on-action:#fff;--focus:#ccbcf4;--shadow:0 10px 32px #120e2024;--folder-blue:#403550;--folder-green:#453955;--folder-rose:#503b50;--library-glass:#302b40e8;--library-chip:#544968b3;--library-action-gradient:linear-gradient(115deg,#7865ba,#59459c);--sidebar-ink:#fcfaff;--sidebar-muted:#ded7f5;--sidebar-edge:#ebe2ff4d;--sidebar-chip:#ffffff1c}
body{background:var(--bg)}
/* D144: one inset chevron for native single-choice selects, including dialogs. */
body.library-product select:not([multiple]):is(:not([size]),[size="0"],[size="1"]){
 -webkit-appearance:none;appearance:none;
 padding-inline-start:12px;padding-inline-end:40px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23827c96' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-size:16px 16px;background-position:right 14px center;
}
body.library-product select:not([multiple]):is(:not([size]),[size="0"],[size="1"]):dir(rtl){background-position:left 14px center}
:root[data-theme=dark] body.library-product select:not([multiple]):is(:not([size]),[size="0"],[size="1"]){
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23c2b9d9' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
@media(forced-colors:active){
 body.library-product select:not([multiple]):is(:not([size]),[size="0"],[size="1"]){-webkit-appearance:auto;appearance:auto;background-image:none}
}
/* D130 — project gallery density and portrait crops affect thumbnails only. */
.library-shell .project-materials{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.library-shell .visual-card .resource-image img{min-width:0;min-height:0;max-height:100%}
.library-shell .project-hero .project-cover img{min-width:0;min-height:0;max-height:100%}
.library-shell .resume-preview .resource-image img{min-width:0;min-height:0;max-height:100%;object-fit:cover;object-position:center 73%}
.library-shell .visual-card .portrait-image img,.library-shell .project-hero .project-cover.portrait-image img{object-position:center 73%}
.library-shell .project-materials .visual-overlay{padding:42px 12px 12px}.library-shell .project-materials .visual-overlay h2{font-size:15px}.library-shell .project-materials .visual-overlay button{font-size:12px;padding:8px;min-height:44px}
@media(max-width:1100px){.library-shell .project-materials{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.library-shell .project-materials{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:460px){.library-shell .project-materials{grid-template-columns:minmax(0,1fr)}}
.library-shell.marsa-chrome{--mc-ink:var(--text);--mc-muted:var(--muted);--mc-chip:var(--library-chip);--mc-edge:var(--border);--mc-glass:var(--library-glass);--mc-solid:var(--panel);--mc-accent:var(--focus);--mc-selection:#a38fd7;min-height:100dvh;align-items:start;background:radial-gradient(ellipse at 5% 0,#c9cfe24a,transparent 50%),var(--bg)}
body:not(.library-ready) .library-shell.marsa-chrome{display:block!important}
body .library-shell main.library-main{width:100%;max-width:none;margin:0;padding:0;min-width:0}
.library-shell #main{padding:28px 30px 48px;max-width:1700px;margin-inline:auto;min-width:0}
.library-shell .topbar{margin:0;padding:12px 24px;gap:12px 20px;min-height:80px}
.topbar .brand{font-size:15px;letter-spacing:1px;margin:0;white-space:nowrap;display:block}
.topbar .brand>span{color:var(--muted);font-size:11px;letter-spacing:1.1px;margin-inline-start:5px}
.header-divider{color:var(--border);margin-inline:4px}
.library-shell .topbar .crm-header-company{display:flex;align-items:center}
.library-shell .topbar #identity{margin:0;order:0;flex-basis:190px;font-size:12px}
.library-shell .crm-header-company i{display:flex;font-style:normal;color:var(--action)}
.library-shell .crm-header-company svg{width:18px;height:18px}
.library-shell .topbar .crm-chrome-icon svg{width:18px;height:18px}
.library-shell .crm-appearance button{position:relative;z-index:1;border-radius:50%}
.library-shell .crm-appearance-indicator{position:absolute;z-index:0}
.library-shell .topbar [data-marsa-theme-value][aria-pressed=true]{color:#6956ae!important}
.library-shell .topbar .crm-chrome-icon:hover{border-color:var(--focus)!important;background:var(--soft)!important}
.library-shell .library-sidebar{background:radial-gradient(ellipse at 100% 0,#a38fd78c,transparent 52%),linear-gradient(160deg,#7563b7 0%,#6d59ae 57%,#6652a7 100%);border:0;color:var(--sidebar-ink);-webkit-backdrop-filter:blur(28px) saturate(1.25);backdrop-filter:blur(28px) saturate(1.25);box-shadow:-6px 0 25px -16px #52468033}
[data-theme=dark] .library-shell .library-sidebar{background:radial-gradient(ellipse at 100% 0,#9a81d370,transparent 52%),linear-gradient(160deg,#493870,#59438b 85%)}
.library-shell .library-wordmark{padding:0;text-align:center;display:block;font-size:28px;letter-spacing:3px;line-height:1.05;color:var(--sidebar-ink)}
.library-shell .library-wordmark small{display:block;margin-top:6px;font-size:9px;letter-spacing:3.8px;font-weight:400;color:var(--sidebar-ink)}
.library-shell .marsa-chrome-workspace>span{display:flex}.library-shell .marsa-chrome-workspace svg{width:20px;height:20px}
.library-shell .marsa-chrome-nav button{font-weight:400}.library-shell .marsa-chrome-nav button[aria-current=page]{font-weight:700}
.library-shell .marsa-chrome-footer{margin-top:auto}
.library-shell .marsa-home-link{color:var(--sidebar-ink);text-decoration:none}.library-shell .marsa-home-link:hover{background:var(--sidebar-chip)}.library-shell .marsa-home-link i{display:flex}.library-shell .marsa-home-link svg{width:18px;height:18px}
.library-account{background:var(--sidebar-chip);border-radius:12px!important}.library-account>div{display:grid;gap:3px}.library-account small{display:block;color:var(--sidebar-muted)}.library-account .avatar{display:grid;place-items:center;border:1px solid #e7f8ff4d;background:var(--library-action-gradient);color:#fff;font-size:17px;font-weight:700}
body .library-shell .library-sidebar :is(a,button,summary):focus-visible{outline-color:var(--focus)!important}
.library-shell .toolbar{margin-bottom:20px}.library-shell .toolbar h1{margin:0;font-size:27px}.library-shell .toolbar #new-project{gap:8px;background:var(--library-action-gradient);border-color:transparent;color:#fff;font-size:14px}
.library-shell button:not(.primary):hover,.library-shell .button:hover{border-color:var(--focus)}
.library-shell :is(.panel,.resume-card,.dashboard-stat,.manager-context,.manager-sidebar,.manager-sheet){box-shadow:var(--shadow)}
.library-shell .resume-card{background:linear-gradient(120deg,var(--panel),var(--soft));border-color:var(--border)}
.library-shell :is(.resume-empty-icon,.stat-symbol){background:var(--soft);color:var(--action)}
.library-shell .dashboard-stat{background:var(--library-glass);color:var(--text);border-color:var(--border)}
.library-shell .dashboard-stat:nth-child(2){background:color-mix(in srgb,var(--folder-rose) 65%,var(--panel));color:var(--text);border-color:var(--border)}
.library-shell .dashboard-stat .stat-symbol{color:var(--action);background:var(--soft)}
.library-shell .project-navigation{gap:10px;align-items:center}.library-shell .project-management{margin-inline-start:auto}.library-shell .project-management button{gap:8px;color:var(--action);border-color:color-mix(in srgb,var(--action) 35%,var(--border));background:var(--panel)}
.library-shell .project-material-tabs [aria-selected=true],.library-shell .project-material-tabs [aria-pressed=true]{border-color:var(--action);color:var(--action);background:var(--soft)}
.library-shell .visual-overlay{background:linear-gradient(transparent,#000000a6 65%,#000000b8)}
.library-shell .visual-overlay .details{text-shadow:0 1px 3px #00000080}
.library-shell .visual-overlay .primary{background:#fff;color:#6956ae;border-color:#fff}
.library-shell .visual-overlay button:hover{background:#fff;color:#6956ae}.library-shell .visual-overlay :focus-visible{outline-color:#f7c7d9}
.library-shell .visual-card{box-shadow:var(--shadow);border-color:var(--border)}
.library-shell .visual-card .resource-image{background:#f4f6f5}
.library-shell .manager-overview-image{background:#faf0f5}
#task{box-shadow:0 22px 90px #142d3b33;border-color:var(--border)}
#task::backdrop{background:#172c3959;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
#task .dialog-head{padding-bottom:16px;border-bottom:1px solid var(--border)}
#task .dialog-head h2{font-size:21px}
#task .dialog-head #task-close{font-size:14px}
/* D130 — thin field edge with a small focus glow, including portal dialogs. */
body.library-ready :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea,select):focus{outline:1px solid color-mix(in srgb,var(--focus) 65%,transparent);outline-offset:0;border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 12%,transparent),0 0 12px color-mix(in srgb,var(--focus) 18%,transparent)}
@media(forced-colors:active){body.library-ready :is(input,textarea,select):focus{outline:2px solid Highlight;outline-offset:2px;box-shadow:none}}
#navigation-scrim{position:fixed;inset:0;z-index:40;width:100%;height:100dvh;border:0;border-radius:0;background:#172e3d77;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
body.navigation-open{overflow:hidden}
@media(max-width:1100px){.library-shell #main{padding:24px 22px 40px}}
@media(max-width:760px){
 .library-shell #main{padding:22px 16px 36px}.library-shell .topbar .brand{display:block;font-size:14px}.library-shell .topbar .brand>span{font-size:10px}.library-shell .topbar #identity{width:auto;flex:1 1 88px;max-width:none;order:0;margin-inline-end:auto}.library-shell .topbar #logout{margin-inline-start:0;font-size:inherit}.library-shell .toolbar h1{font-size:24px}.library-shell .project-management{width:100%;margin:0}.library-shell .project-management button{width:100%}.library-shell .library-sidebar .marsa-chrome-nav{flex:1;gap:18px}.library-shell .library-sidebar .marsa-chrome-footer{margin-top:auto}.library-shell .library-wordmark{font-size:25px}.library-shell .library-wordmark small{font-size:9px}.library-shell .marsa-chrome-brand{justify-content:flex-start!important;padding-inline-start:18px!important}
}
@media(prefers-reduced-motion:no-preference){
 .library-shell :is(button,a){transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}
 .library-shell .manager-panel{animation:library-arrive .22s ease both}
}
@media(prefers-reduced-motion:reduce){.library-shell :is(button,a,.manager-panel){animation:none!important;transition:none!important}}

.library-shell .actions>button,.library-shell .project-navigation button{gap:8px}
.library-shell .project-hero .project-hero-copy{background:linear-gradient(270deg,#132e3ae8 0%,#24495796 34%,#23445210 74%),linear-gradient(0deg,#15334230,transparent 60%)}

/* Keep shared chrome dimensions; adapt its color contract to the selected purple gradient. */
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-workspace{color:var(--sidebar-ink);background:var(--sidebar-chip);border-color:var(--sidebar-edge)}
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-group>h2{color:var(--sidebar-muted)}
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav button{color:var(--sidebar-ink)!important}
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav button:hover{color:var(--sidebar-ink)!important;background:var(--sidebar-chip)!important}
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-nav button:is(.selected,.active,[aria-current=page]){color:var(--sidebar-ink)!important;background:var(--sidebar-chip)!important;border-color:var(--sidebar-edge);box-shadow:inset -3px 0 var(--action),0 4px 18px #8b284010!important}
html body .library-shell.marsa-chrome.marsa-chrome.marsa-chrome .marsa-chrome-footer{border-color:var(--sidebar-edge)}
.library-shell .library-account{color:var(--sidebar-ink)}
.library-shell .primary,#task .primary{background:var(--library-action-gradient);border-color:transparent;color:var(--on-action)}
.library-shell .primary:hover,#task .primary:hover{box-shadow:0 5px 14px #65549426;filter:brightness(1.06)}
.library-shell .visual-overlay .primary{background:#fff;color:#6956ae;border-color:#fff}
.library-shell .resume-card{background:linear-gradient(115deg,var(--panel),color-mix(in srgb,var(--soft) 65%,var(--panel)),color-mix(in srgb,var(--folder-rose) 60%,var(--panel)))}

/* One primary action per task; secondary and destructive controls remain discoverable. */
.ui-action-menu{position:relative;margin:0;flex:0 0 auto;max-width:100%;font-size:13px}
.ui-action-menu>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:11px;background:var(--panel);color:var(--muted);cursor:pointer;list-style:none;white-space:nowrap}
.ui-action-menu>summary::-webkit-details-marker{display:none}
.ui-action-menu>summary .ui-symbol{width:19px;height:19px;stroke-width:3}
.ui-action-menu>summary:hover,.ui-action-menu[open]>summary{color:var(--text);border-color:var(--focus);background:var(--soft)}
.ui-action-menu-items{position:absolute;z-index:20;inset-block-start:calc(100% + 8px);inset-inline-end:0;display:grid;gap:4px;min-width:230px;max-width:min(320px,calc(100vw - 48px));padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 14px 40px #202d5726}
.ui-action-menu:not([open])>.ui-action-menu-items{display:none}
.ui-action-menu-items>button{justify-content:flex-start;text-align:start;width:100%;min-height:44px;border:0;background:transparent;font-size:13px;padding:9px 12px;border-radius:8px}
.ui-action-menu-items>button:hover{background:var(--soft)}
.ui-action-menu-items>label.check{min-height:44px;padding:9px 12px;font-size:13px;cursor:pointer;white-space:normal}
.ui-action-menu-items>label input{accent-color:var(--action);width:17px;height:17px}
[data-workspace-view=project] .project-navigation .project-options-control{margin-inline-start:auto}
[data-workspace-view=project] .project-options-control>summary{color:var(--action);background:linear-gradient(125deg,var(--soft),color-mix(in srgb,var(--folder-rose) 42%,var(--panel)));border-color:color-mix(in srgb,var(--action) 20%,var(--border));box-shadow:0 4px 14px color-mix(in srgb,var(--action) 8%,transparent);padding-inline:16px;transition:background .2s,border-color .2s,box-shadow .2s}
[data-workspace-view=project] .project-options-control>summary:hover,[data-workspace-view=project] .project-options-control[open]>summary{background:var(--soft);color:var(--text);border-color:var(--focus);box-shadow:0 0 12px color-mix(in srgb,var(--focus) 16%,transparent)}
.ui-action-menu-items>.ui-danger-action{color:var(--error);border-top:1px solid var(--border);border-radius:0 0 8px 8px;margin-top:3px}
.ui-action-menu-items>.ui-danger-action:hover{background:color-mix(in srgb,var(--error) 8%,var(--panel));color:var(--error)}
[data-workspace-view=project] .ui-action-menu .project-options-panel{width:270px;margin-top:0;padding:8px;gap:8px}
[data-workspace-view=project] .ui-action-menu .project-options-panel>.actions{gap:4px}
[data-workspace-view=project] .ui-action-menu .project-options-panel button{border:0;border-radius:8px;background:transparent;min-height:44px;padding-inline:12px}
[data-workspace-view=project] .ui-action-menu .project-options-panel button:hover{background:var(--soft)}
[data-workspace-view=project] .ui-action-menu .project-options-panel>.project-overview{padding:8px;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent}
.ui-action-menu.is-inline{margin-block:8px 0}
.visual-overlay .ui-action-menu>summary{justify-content:flex-start;width:fit-content;color:#edf9f1;border-color:#ffffff40;background:#ffffff12;padding:6px 10px}
.visual-overlay .ui-action-menu-items{position:static;margin-top:6px;min-width:0;max-width:none;background:#112c25ed;border-color:#ffffff38;box-shadow:none;pointer-events:auto}
.visual-overlay .ui-action-menu-items>button{color:#fff;background:transparent;font-size:12px}
.visual-overlay .ui-action-menu-items>button:hover{color:#27594b;background:#fff}
.visual-overlay .ui-action-menu-items>.ui-danger-action{color:#ffc5ce;border-color:#ffffff30}
.visual-overlay .ui-action-menu-items>.ui-danger-action:hover{color:#a8243f;background:#fff}
.ui-quiet-action{color:var(--muted);background:transparent;border-color:transparent}

#task #task-close.ui-close{flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border-radius:12px;background:var(--soft);border-color:transparent}
#task .ui-task-actions{position:sticky;bottom:-22px;z-index:3;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px;margin:12px -2px -2px;padding:16px 0 2px;border-top:1px solid var(--border);background:var(--panel)}
#task .ui-task-actions>button{min-height:46px;min-width:106px;gap:8px;font-size:14px}
#task .ui-task-actions>.primary{min-width:140px}
#task .offer-review-actions{justify-content:space-between;gap:12px;padding:16px 0 0;border-top:1px solid var(--border)}
#task .offer-review-actions .ui-action-menu-items{inset-block-start:auto;inset-block-end:calc(100% + 8px)}
.manager-context-actions button{gap:8px;min-height:44px}
.setup-back .ui-symbol{transform:none}
.visual-setup .setup-footer{justify-content:flex-start}
.setup-footer .setup-back{margin-inline-end:auto}
.setup-advance:empty{display:none}
.setup-advance button{gap:8px;min-width:152px;font-size:13px;min-height:44px}
.editor-actions .editor-back{gap:8px;min-height:44px;border-color:transparent;background:transparent;padding-inline:8px}
.editor-actions .editor-back .ui-symbol{width:19px;height:19px}
.offer-pdf-head .offer-pdf-identity{margin-inline-end:auto;min-width:0}
.offer-pdf-head .offer-pdf-return{background:transparent;border-color:transparent}
.offer-tool-divider{width:1px;height:24px;background:var(--border);margin-inline:5px}

/* D125 — project portraits: full image, readable identity, one glass browse action. */
.library-shell .dashboard-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:40px;min-width:0;width:100%;max-width:1200px;margin-inline:auto;padding-inline:0 24px}
.dashboard-jelly{--jelly-serif:Masaar,sans-serif;--jelly-sans:Masaar,sans-serif;display:flex;flex-direction:column;justify-self:center;width:100%;max-width:560px;isolation:isolate}
@media(max-width:1000px){.library-shell .dashboard-intro{gap:26px;padding-inline:0}}
@media(max-width:760px){.library-shell .dashboard-intro{grid-template-columns:minmax(0,1fr);gap:24px}.dashboard-jelly{grid-row:1;width:calc(100% - 32px);max-width:340px}}
/* D128 — charts beside Jelly, resume immediately below, projects as a separate gallery. */
.library-shell .dashboard-charts{--chart-purple:#7865ba;--chart-pink:#d789b1;--chart-neutral:#aaa3bb;display:grid;gap:16px;min-width:0;margin-block-start:54px}
[data-theme=dark] .dashboard-charts{--chart-purple:#b6a5e7;--chart-pink:#e7a3c6;--chart-neutral:#938aa8}
.library-shell .dashboard-chart{display:flex;flex-direction:column;min-width:0;padding:22px 24px;border:1px solid var(--border);border-radius:22px;background:var(--library-glass);box-shadow:var(--shadow)}
.dashboard-chart .library-chart-body{margin-block:auto;padding-block-start:14px}.dashboard-chart .chart-drafts{margin-block-start:auto}
.chart-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.chart-heading h2{margin:0;font-size:17px;line-height:1.5}.chart-heading small{color:var(--muted);font-size:12px}
.chart-open{min-width:44px;min-height:44px;border:0;background:var(--soft);color:var(--action);border-radius:13px;padding:10px}
.chart-open .ui-symbol{width:18px;height:18px}
.library-chart-body{display:flex;align-items:center;gap:30px;margin-top:14px}
.chart-ring{width:126px;height:126px;position:relative;flex:0 0 126px}.chart-ring svg{display:block;width:100%;height:100%}
.chart-ring>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.chart-ring strong{font-size:31px;line-height:1.2}.chart-ring small{color:var(--muted);font-size:12px}
.chart-legend{flex:1;min-width:0;display:grid;gap:14px;margin:0}.chart-legend>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.chart-legend dt{display:flex;align-items:center;gap:10px;font-size:14px}.chart-legend dd{margin:0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}.chart-dot{width:9px;height:9px;display:block;flex:0 0 9px;border-radius:50%}
.chart-total{display:flex;align-items:baseline;gap:10px;margin-top:10px}.chart-total strong{font-size:31px;line-height:1.2}.chart-total span{font-size:12px;color:var(--muted)}
.offer-chart{display:block;width:100%;height:88px;margin-top:8px;direction:ltr;overflow:visible}.offer-chart text{font:12px Masaar,sans-serif}
.dashboard-chart .chart-empty{font-size:12px;color:var(--muted);margin:3px 0 0}
.chart-drafts{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);padding-top:10px;margin-top:16px;min-width:0}.chart-drafts>span{font-size:13px}.chart-drafts>strong{font-size:19px}.chart-drafts>small{font-size:11px;color:var(--muted)}.chart-drafts button{min-height:44px;margin-inline-start:auto;font-size:12px;padding:8px 10px;background:transparent;border-color:transparent;color:var(--action);gap:6px}.chart-drafts .ui-symbol{width:16px;height:16px}
.library-shell .project-home>.resume-card{width:100%;min-width:0;min-height:132px;align-items:center;background:linear-gradient(110deg,var(--panel),var(--soft))}.library-shell .project-home>.resume-card .resume-preview{width:116px;flex-basis:116px;height:94px}
@media(min-width:761px) and (max-width:1000px){.library-shell .dashboard-chart{padding:18px 16px}.library-chart-body{gap:16px}.chart-ring{width:96px;height:96px;flex-basis:96px}.chart-ring strong{font-size:26px}.chart-legend dt{font-size:12px}.chart-heading h2{font-size:15px}.chart-heading small{font-size:11px}.chart-drafts{flex-wrap:wrap;gap:8px}.chart-drafts button{font-size:11px;padding-inline:6px}.offer-chart text{font-size:16px}}
@media(max-width:760px){.library-shell .dashboard-chart{padding:18px 16px;border-radius:18px}.chart-heading h2{font-size:15px}.chart-heading small{font-size:11px}.library-chart-body{gap:22px}.chart-ring{width:108px;height:108px;flex-basis:108px}.chart-ring strong{font-size:27px}.chart-legend dt{font-size:12px}.chart-legend dd{font-size:16px}.offer-chart{height:76px}.offer-chart text{font-size:18px}.library-shell .project-home>.resume-card .resume-preview{width:84px;height:90px}.chart-drafts{gap:8px}.chart-drafts>span{font-size:12px}.chart-drafts button{font-size:11px;padding-inline:6px}}
@media(prefers-reduced-motion:no-preference){.dashboard-chart{animation:library-arrive .35s ease both}.dashboard-chart:nth-child(2){animation-delay:.05s}}
@media(max-width:760px){.library-shell .dashboard-charts{margin-block-start:0}}
.library-shell .project-collection .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),350px));max-width:none;gap:24px;justify-content:start}
.library-shell .project-photo-card{position:relative;isolation:isolate;width:100%;aspect-ratio:4/5;min-width:0;border:1px solid #e8b7ce43;border-radius:25px;overflow:hidden;padding:0;background:linear-gradient(150deg,#7865ba,#7563b7);box-shadow:0 10px 30px #52468014}
.project-photo-cover{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;border-radius:inherit;background:transparent}
.project-photo-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#2414200a 20%,#37203518 44%,#3e2337cd 76%,#49253beb 100%);pointer-events:none}
.project-photo-cover .project-cover{height:100%;min-height:0;width:100%;background:transparent}
.project-photo-cover .resource-image img{width:100%;height:100%;min-height:0;max-height:100%;min-width:0;object-fit:cover;object-position:center 73%!important}
.project-photo-cover .resource-image>span{border:0;color:#fae3ef;background:transparent;font-size:15px}
.project-photo-copy{position:absolute;inset-inline:19px;inset-block-end:18px;z-index:2;display:grid;gap:7px;pointer-events:none;color:#fff}
.project-photo-copy h2{font-size:23px;line-height:1.4;font-weight:700;margin:0;color:#fff;text-shadow:0 2px 12px #21152280;overflow-wrap:anywhere}
.project-photo-caption{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0;color:#f3e5ef;font-size:11px;line-height:1.5}
.project-photo-caption>.ui-symbol{width:14px;height:14px}
.project-photo-caption>span{padding-inline-start:7px;border-inline-start:1px solid #ffffff47}
.project-photo-open{position:relative;width:100%;min-height:48px;margin-top:8px;padding:7px 12px 7px 7px;border:1px solid #f9d9eb47;border-radius:28px;background:linear-gradient(110deg,#b7a4e429,#c7b5ee11);color:#fff;font-size:13px;pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #fff1f917}
.project-photo-open>span{flex:1;text-align:center}
.library-shell .project-photo-open>.ui-symbol{width:32px;height:32px;padding:7px;border-radius:50%;background:#fff6fb;color:#6956ae;box-shadow:0 3px 10px #061e2433}
.library-shell .project-photo-open:hover{background:#f7c7d942;border-color:#f6d6e8;color:#fff}
.project-photo-card .project-photo-menu{position:absolute;inset-block-start:15px;inset-inline-start:15px;z-index:4}
.project-photo-menu>summary{width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff52;border-radius:50%;background:#fae5f025;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.project-photo-menu>summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.project-photo-menu>summary:hover,.project-photo-menu[open]>summary{color:#fff;background:#f5d5e94d;border-color:#ffffff80}
.project-photo-menu>.ui-action-menu-items{inset-inline-start:0;inset-inline-end:auto;min-width:222px}
.project-photo-archived{position:absolute;inset-block-start:17px;inset-inline-end:17px;padding:4px 10px;border:1px solid #ffffff43;border-radius:20px;background:#44233d9c;color:#fff;font-size:11px;z-index:2}
.project-photo-cover:focus-visible{outline-offset:-5px;outline-color:#f2cbdf}
.project-photo-open:focus-visible,.project-photo-menu>summary:focus-visible{outline-color:#f5d5e9;outline-offset:3px}
/* D126 — reveal project details on hover, keyboard focus, or a first touch. */
.project-photo-cover:after{opacity:0}
.project-photo-copy{opacity:0;transform:translateY(20px)}
.project-photo-card .project-photo-menu{opacity:0;transform:translateY(-8px);pointer-events:none}
.project-photo-card .project-photo-open{pointer-events:none}
.project-photo-card:is(.is-revealed,:has(:focus-visible),:has(.project-photo-menu[open])) .project-photo-copy,
.project-photo-card:is(.is-revealed,:has(:focus-visible),:has(.project-photo-menu[open])) .project-photo-menu{opacity:1;transform:none}
.project-photo-card:is(.is-revealed,:has(:focus-visible),:has(.project-photo-menu[open])) .project-photo-cover:after{opacity:1}
.project-photo-card:is(.is-revealed,:has(:focus-visible),:has(.project-photo-menu[open])) :is(.project-photo-open,.project-photo-menu){pointer-events:auto}
@media(hover:hover){
 .project-photo-card:hover .project-photo-copy,.project-photo-card:hover .project-photo-menu{opacity:1;transform:none}
 .project-photo-card:hover .project-photo-cover:after{opacity:1}
 .project-photo-card:hover :is(.project-photo-open,.project-photo-menu){pointer-events:auto}
}
@media(prefers-reduced-motion:no-preference){
 .project-photo-copy{transition:opacity .3s ease,transform .35s cubic-bezier(.2,.75,.3,1)}
 .project-photo-card .project-photo-menu{transition:opacity .25s ease,transform .3s ease}
 .project-photo-cover:after{transition:opacity .35s ease}
}
@media(prefers-reduced-motion:reduce){.project-photo-copy,.project-photo-card .project-photo-menu,.project-photo-cover:after{transition:none!important;transform:none!important}}
@media(prefers-reduced-motion:no-preference){
 .project-photo-card{animation:library-arrive .3s ease both;animation-delay:calc(var(--card-order,0)*.04s);transition:transform .25s ease,box-shadow .25s ease}
 .project-photo-cover img{transition:transform .6s cubic-bezier(.2,.75,.3,1)}
 .project-photo-open>.ui-symbol{transition:transform .2s ease}
 @media(hover:hover){.project-photo-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px #52468025}.project-photo-card:hover .project-photo-cover img{transform:scale(1.045)}.project-photo-open:hover>.ui-symbol{transform:translateX(-2px)}}
}
@media(prefers-reduced-motion:reduce){.project-photo-card,.project-photo-cover img,.project-photo-open>.ui-symbol{animation:none!important;transition:none!important}}
@media(max-width:760px){
 .library-shell .project-collection .project-grid{grid-template-columns:1fr;gap:20px}
 .library-shell .project-photo-card{aspect-ratio:4/5;border-radius:22px}
 .project-photo-copy{inset-inline:18px;inset-block-end:17px}
 .ui-action-menu>summary{font-size:12px;padding-inline:10px}
 .ui-action-menu-items{min-width:210px}
 #task .ui-task-actions{bottom:-16px;padding-block:12px 2px;gap:8px}
 #task .ui-task-actions>button{flex:1 1 auto;min-width:90px}
 #task .ui-task-actions>.primary{flex:1 1 140px}
 #task .manager-upload-footer.ui-task-actions>button{width:auto}
 #task .offer-review-actions>button{flex:1 1 auto}
 .visual-setup .setup-footer{flex-wrap:wrap;gap:8px}
 .setup-footer:has(.setup-advance:not(:empty)) .setup-template{margin-inline-start:auto}
 .setup-footer:has(.setup-advance:not(:empty)) .setup-advance{width:100%}
 .setup-advance button{width:100%}
 .canvas-editor .editor-actions .editor-back{flex:0 1 auto;font-size:12px}
 .canvas-editor .editor-actions>.primary{margin-inline-start:auto;flex:0 1 auto;font-size:12px}
 .offer-pdf-head .offer-pdf-identity{order:0;flex:1 1 calc(100% - 100px)}
 .offer-pdf-head .offer-pdf-status{order:0}
 .offer-pdf-head>button{order:1;flex:1 1 auto;font-size:12px}
 .offer-pdf-head .offer-pdf-return{flex:1 1 100%;justify-content:flex-start}
}
/* D133 — concise card summaries and contextual actions. Document previews retain their full page. */
.library-shell .visual-card .resource-image img{object-fit:cover;object-position:center 73%}
.library-shell .visual-card .visual-overlay{padding-block-start:52px}
.library-shell .visual-card .visual-overlay h2,.library-shell .visual-card .visual-overlay h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.library-shell .visual-card-menu{position:absolute;inset-block-start:14px;inset-inline-end:14px;z-index:5;margin:0}
.library-shell .visual-card-menu>summary{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;background:#fffffff0;color:#5c4c91;border:1px solid #ffffff90;box-shadow:0 4px 16px #241b4014;list-style:none}
.library-shell .visual-card-menu>summary::-webkit-details-marker{display:none}
.library-shell .visual-card-menu>summary>span{display:none}
.library-shell .visual-card-menu .ui-action-menu-items{position:absolute;inset-inline-end:0;inset-inline-start:auto;inset-block-start:52px;width:220px;max-width:calc(100vw - 64px);max-height:190px;overflow:auto;overscroll-behavior:contain;padding:6px;border-radius:16px;background:var(--panel);color:var(--text);border:1px solid var(--border);box-shadow:0 12px 36px #21173324;gap:3px}
.library-shell .visual-card-menu .ui-action-menu-items button{display:flex;justify-content:flex-start;min-height:44px;width:100%;border:0;border-radius:10px;background:transparent;color:var(--text);padding:10px 12px;font-size:13px;text-align:start}
.library-shell .visual-card-menu .ui-action-menu-items button:hover{background:var(--soft)}
.library-shell .visual-card-menu .ui-action-menu-items .ui-danger-action{color:#bc365b}
.library-shell .visual-card:has(.visual-card-menu[open]) .visual-overlay{opacity:1;transform:none;pointer-events:auto}
.library-shell .project-materials .visual-overlay>.actions{gap:6px;margin-block-start:12px!important}
.library-shell .file-card .visual-overlay .details>p{margin-block:4px;font-size:12px}
.library-shell .file-card .visual-overlay .ui-symbol{width:17px;height:17px}
.library-shell .visual-card-menu{width:calc(100% - 28px);pointer-events:none}
.library-shell .visual-card-menu>summary{margin-inline-start:auto;pointer-events:auto}
.library-shell .visual-card-menu .ui-action-menu-items{max-width:100%;pointer-events:auto}
/* D135 — map editing shares the existing task dialog and controls. */
dialog:has(.project-map-workspace){width:min(1240px,calc(100vw - 40px));max-width:none}
.project-map-workspace{display:flex;flex-direction:column;gap:16px;min-width:0}
.project-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.map-style-picker{display:flex;gap:6px;padding:5px;border-radius:15px;background:var(--soft)}
.map-style-picker button{border:0;background:transparent;min-width:75px;min-height:44px;padding:8px 18px}
.map-style-picker button[aria-pressed=true]{background:var(--panel);color:var(--action);box-shadow:var(--shadow)}
.project-map-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}
.project-map-tools{display:flex;flex-direction:column;gap:10px;min-width:0}
.project-map-tools h3{font-size:19px;margin:0 0 8px}
.project-map-tools>button{justify-content:flex-start;min-height:46px;gap:9px;text-align:start}
.project-map-tools [aria-pressed=true]{background:var(--soft);border-color:var(--focus);color:var(--action)}
.project-map-stage{position:relative;aspect-ratio:1920/1084;border-radius:20px;overflow:hidden;border:1px solid var(--border);background:var(--soft);direction:ltr;min-width:0}
.project-map-canvas{position:absolute;inset:0}
.map-loading{position:absolute;inset:40% 12px auto;text-align:center;pointer-events:none;background:var(--panel);padding:14px;border-radius:12px;font-size:14px;color:var(--text)}
.map-pin{position:relative;display:grid;place-items:center;padding:8px;width:44px;height:44px;border-radius:50%;background:#6956ae;color:white;border:3px solid white;box-shadow:0 4px 15px #30204640;cursor:grab}
.map-pin.is-nearby{background:#c85d91;width:44px;height:44px;min-height:44px;padding:5px}
.map-pin .ui-symbol{width:23px;height:23px}
.map-pin-label{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);color:#45405e;background:#fffffff5;border:1px solid #e1dced;border-radius:9px;padding:5px 9px;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;font:13px Masaar;pointer-events:none}
.map-points{display:flex;flex-direction:column;gap:5px;max-height:190px;overflow:auto}
.map-point-row{display:flex;gap:4px;align-items:center;border-bottom:1px solid var(--border);padding-block:5px}
.map-point-row>button:first-child{flex:1;border:0;background:transparent;text-align:start;justify-content:flex-start;padding:8px 0;overflow-wrap:anywhere;font-size:13px}
.map-point-remove{width:44px;min-height:44px;padding:8px;background:transparent;border:0;color:var(--muted)}
.map-point-remove span{display:none}
.map-coordinate-panel{border-top:1px solid var(--border);padding-top:12px;margin-top:6px}
.map-coordinate-panel summary{font-size:13px;cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--muted)}
.map-coordinate-panel input{margin-block:8px;font-size:13px}
.map-coordinate-panel button{width:100%;font-size:13px}
.project-map-footer{margin:0;justify-content:flex-start}
.map-note{font-size:13px;min-height:20px;margin:0;color:var(--muted)}
.project-map-preview{background:var(--soft);border-radius:20px;padding:12px}
.project-map-preview img{display:block;width:100%;max-height:60vh;object-fit:contain;border-radius:12px}
.project-map-workspace [hidden]{display:none!important}
.map-export-surface{position:fixed;left:-10000px;top:0;width:1920px;height:1084px;direction:ltr}
.project-map-stage .maplibregl-ctrl-attrib{font:10px/1.5 sans-serif;max-width:100%}
.project-map-stage .maplibregl-ctrl button{min-height:32px;border-radius:0;padding:0}
.project-map-stage .maplibregl-canvas:focus-visible{outline:1px solid var(--focus);outline-offset:-3px}
.project-map-launch{margin-inline-start:auto;font-size:13px}
@media(max-width:760px){dialog:has(.project-map-workspace){width:calc(100vw - 20px)}.project-map-layout{grid-template-columns:1fr}.project-map-stage{grid-row:1}.project-map-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-map-tools h3,.project-map-tools>input,.map-points,.map-coordinate-panel{grid-column:1/-1}.project-map-stage{min-height:0}.project-map-toolbar{gap:8px}.project-map-toolbar>button{font-size:12px}.map-style-picker button{min-width:0;padding:8px 12px}.project-map-footer{flex-wrap:wrap}.project-map-footer button{flex:1 1 140px}.project-map-launch{margin:0}.map-pin-label{max-width:140px}}
.project-map-stage>.project-map-canvas{position:absolute;inset:0;width:100%;height:100%}
.map-export-surface.maplibregl-map{position:fixed;left:-10000px;top:0;width:1920px;height:1084px}

.map-brand{position:absolute;bottom:10px;left:10px;padding:7px 11px;border-radius:12px;background:#fffffff2;color:#6956ae;font:600 13px/1.4 sans-serif;box-shadow:0 2px 12px #30204612;pointer-events:none}
.project-map-stage .maplibregl-ctrl-group button{width:44px;height:44px;min-height:44px}
.project-map-stage .maplibregl-ctrl-attrib.maplibregl-compact{min-height:44px;border-radius:12px;background:#fffffff2;max-width:calc(100% - 20px)}
.project-map-stage .maplibregl-ctrl-attrib-button{width:44px;height:44px;min-height:44px;border-radius:12px;background-repeat:no-repeat;background-position:center}
.project-map-stage .maplibregl-ctrl-attrib-inner{padding-block:10px}
@media(max-width:760px){.map-brand{top:10px;bottom:auto;left:auto;right:10px;font-size:12px}.project-map-stage .maplibregl-ctrl-attrib-inner{font-size:10px;line-height:1.5}}

.project-map-stage .maplibregl-ctrl-attrib.maplibregl-compact-show{padding-right:48px}

/* D137: geographic annotations, contextual tools and project-first callouts. */
.map-draw-toolbar { display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:1px solid var(--border);border-radius:16px;background:var(--panel); }
.map-draw-toolbar button { min-height:44px;display:inline-flex;align-items:center;gap:7px; }
.map-draw-toolbar button[aria-pressed="true"],.map-annotation-list button[aria-pressed="true"] { color:var(--action);background:var(--soft);border-color:var(--action); }
.map-draw-context { display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:12px;background:var(--soft);border-radius:16px; }
.map-draw-context label { display:flex;flex-direction:column;gap:5px;font-size:13px; }
.map-draw-context label:first-child { flex:1;min-width:160px; }
.map-draw-context input,.map-draw-context select { min-height:44px;width:100%; }
.map-annotation-overlay,.map-callout-lines { position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:2; }
.map-annotation-shape { pointer-events:visiblePainted;cursor:pointer; }
.is-drawing .map-annotation-shape { pointer-events:none; }
.is-drawing .maplibregl-canvas { cursor:crosshair; }
.map-annotation-label { min-height:44px!important;max-width:220px;padding:5px 12px!important;background:#fffffff2!important;color:#45405e!important;border:1px solid var(--annotation-color)!important;border-radius:10px!important;box-shadow:0 3px 10px #23203324;font:400 14px Masaar!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.map-annotation-handle { width:44px;height:44px;padding:0!important;border-radius:50%!important;background:#fff!important;color:#6956ae!important;border:2px solid #6956ae!important;box-shadow:0 2px 10px #23203330; }
.map-annotation-list { display:flex;flex-direction:column;gap:6px;max-height:180px;overflow:auto; }
.map-annotation-list:empty { display:none; }
.map-annotation-list button { min-height:44px;display:flex;align-items:center;gap:8px;text-align:start; }
.map-local-copies { display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:12px; }
.map-local-copies button { min-height:44px;display:inline-flex;align-items:center;gap:8px; }
.project-map-workspace [hidden] { display:none!important; }
.map-pin-label { transform:none!important;bottom:auto!important;top:0;left:0;right:auto!important;min-height:30px;display:flex;align-items:center;justify-content:center;box-sizing:border-box; }
.map-pin { z-index:5; }.map-pin:not(.is-nearby) { z-index:8; }
.map-pin.is-nearby { width:34px;height:34px; }.map-pin.is-nearby .ui-symbol { width:19px;height:19px; }
@media(max-width:760px){
 .map-draw-toolbar { gap:5px;padding:6px; }.map-draw-toolbar button { padding-inline:10px;gap:4px;font-size:13px; }
 .map-draw-context { padding:10px;gap:8px; }.map-draw-context label:first-child { min-width:0;width:100%;flex-basis:100%; }
 .map-local-copies button { flex:1;justify-content:center;font-size:13px; }
 .map-annotation-list { grid-column:1/-1;max-height:120px; }
}

.project-map-stage .maplibregl-marker { z-index:4; }
.project-map-stage .map-pin { width:50px;height:50px;min-height:50px;z-index:8; }
.project-map-stage .map-pin.is-nearby { width:44px;height:44px;min-height:44px;z-index:5; }
.project-map-stage .map-pin:not(.is-nearby) .map-pin-label { font-weight:bold;font-size:14px; }
.project-map-stage .maplibregl-control-container { position:relative;z-index:10; }

/* Native map controls: icons inside the viewport, project pin has visual priority. */
.map-floating-tools { position:absolute;z-index:12;top:112px;left:10px;display:flex;flex-direction:column;gap:0;padding:0;width:44px;border:0;border-radius:10px;background:#fff;box-shadow:0 2px 10px #24213530;overflow:visible; }
.map-floating-tools button,.map-annotation-list button { display:grid;place-items:center;position:relative;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:0;background:#fff;color:#45405e; }
.map-floating-tools button+button,.map-annotation-list button+button { border-top:1px solid #e3dfed; }
.map-floating-tools button:first-child,.map-annotation-list button:first-child { border-radius:10px 10px 0 0; }
.map-floating-tools button:last-child,.map-annotation-list button:last-child { border-radius:0 0 10px 10px; }
.map-floating-tools button:only-child,.map-annotation-list button:only-child { border-radius:10px; }
.map-floating-tools button>span,.map-annotation-list button>span { display:none; }
.map-floating-tools button:hover>span,.map-floating-tools button:focus-visible>span,.map-annotation-list button:hover>span,.map-annotation-list button:focus-visible>span { display:block;position:absolute;inset-inline-end:calc(100% + 8px);top:50%;transform:translateY(-50%);width:max-content;max-width:190px;padding:6px 10px;background:#fff;color:#45405e;border:1px solid #e3dfed;border-radius:8px;font:13px Masaar;box-shadow:0 2px 10px #24213518;pointer-events:none; }
.project-map-stage .map-annotation-list { position:absolute;z-index:12;top:12px;right:12px;max-height:160px;width:44px;display:flex;flex-direction:column;gap:0;background:#fff;box-shadow:0 2px 10px #24213530;border-radius:10px;overflow:visible; }
.project-map-stage .map-annotation-list:empty { display:none; }
.project-map-stage .map-annotation-list button>span { inset-inline-end:auto;inset-inline-start:calc(100% + 8px); }
.project-map-stage .map-pin.is-nearby { border:0;background:transparent;box-shadow:none;padding:0; }
.project-map-stage .map-pin.is-nearby::before { content:'';position:absolute;inset:5px;width:34px;height:34px;border-radius:50%;background:#c85d91;border:3px solid #fff;box-sizing:border-box;box-shadow:0 3px 10px #30204635; }
.project-map-stage .map-pin.is-nearby>.ui-symbol { position:relative;z-index:1;width:18px;height:18px; }
@media(max-width:760px){
 .map-floating-tools { top:auto;bottom:10px;left:10px;flex-direction:row;width:auto;height:44px;max-width:calc(100% - 66px); }
 .map-floating-tools button { width:44px;height:44px;padding:0;flex-shrink:0; }
 .map-floating-tools button+button { border-top:0;border-inline-start:1px solid #e3dfed; }
 .map-floating-tools button:first-child { border-radius:0 10px 10px 0; }.map-floating-tools button:last-child { border-radius:10px 0 0 10px; }
 .map-floating-tools button:hover>span,.map-floating-tools button:focus-visible>span { top:auto;bottom:52px;inset-inline-end:auto;left:0;transform:none;max-width:160px; }
 .project-map-stage .map-annotation-list { top:44px;max-height:88px;flex-direction:row;width:auto;max-width:calc(100% - 68px);overflow-x:auto; }
 .project-map-stage .map-annotation-list button { width:44px;flex-shrink:0; }.project-map-stage .map-annotation-list button+button { border-top:0;border-inline-start:1px solid #e3dfed; }
 .project-map-stage .map-annotation-list button>span { display:none!important; }
}

@media(min-width:761px){.project-map-stage .map-annotation-list{overflow:auto;}}

@media(max-width:760px){.project-map-layout .project-map-stage { height:300px;aspect-ratio:auto; }.project-map-stage .map-floating-tools { direction:rtl; }}

/* Existing drawings live in one named layer menu; creation tools remain singular. */
.project-map-stage .map-annotation-list { overflow:visible;max-height:none;width:44px; }
.project-map-stage .map-layer-items { position:absolute;top:50px;right:0;display:grid;gap:3px;width:220px;max-width:calc(100vw - 90px);max-height:190px;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:6px;box-shadow:0 8px 24px #24213524; }
.project-map-stage .map-layer-items button { display:flex;justify-content:flex-start;text-align:start;width:100%;height:auto;min-height:44px;padding:8px 10px;border:0;border-radius:8px;gap:8px;background:var(--panel);color:var(--text); }
.project-map-stage .map-layer-items button>span { display:block!important;position:static;transform:none;width:auto;max-width:none;padding:0;background:transparent;border:0;box-shadow:none;font:inherit;pointer-events:auto;overflow-wrap:anywhere; }
.project-map-stage .map-layer-items button .ui-symbol { flex:0 0 18px;width:18px;height:18px; }
@media(max-width:760px){.project-map-stage .map-annotation-list{top:44px;right:10px;max-width:none;}.project-map-stage .map-layer-items{max-height:160px;}}

.map-provider-logo{position:absolute;bottom:10px;left:10px;z-index:2;display:block;width:88px;height:23px}.map-provider-logo[hidden]{display:none}.map-provider-logo img{display:block;width:88px;height:23px}.project-map-stage:has(.map-provider-logo:not([hidden])) .map-brand{bottom:43px}
@media(max-width:760px){.project-map-stage:has(.map-provider-logo:not([hidden])) .map-brand{bottom:auto}.map-provider-logo{bottom:65px}}

/* D143: explicit manager lists, using Library's existing component set. */
.manager-tabs{flex-wrap:wrap;gap:0 18px;overflow:visible}.manager-tabs button{min-height:44px}
.manager-fact-list{display:grid}.manager-fact-row{display:flex;align-items:start;justify-content:space-between;gap:24px;padding-block:16px;border-bottom:1px solid var(--border)}.manager-fact-row:last-child{border-bottom:0}.manager-fact-row>div:first-child{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.manager-fact-row h4{margin:0 0 8px;font-size:14px;font-weight:400}.manager-source{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;max-width:48%}.manager-source small{color:var(--muted)}.manager-source button{font-size:12px}
.manager-apartment-cards,.manager-linked-assets{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.manager-apartment-card,.manager-linked-asset{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--panel)}.manager-apartment-card>.resource-image,.manager-linked-asset>.resource-image{aspect-ratio:1.45;height:auto;border-radius:0;position:relative;overflow:hidden;background:var(--bg)}.manager-apartment-card>.resource-image img,.manager-apartment-card>.resource-image canvas,.manager-linked-asset>.resource-image img,.manager-linked-asset>.resource-image canvas{width:100%;height:100%;object-fit:contain}.manager-apartment-card>div:not(.resource-image),.manager-linked-asset>h4,.manager-linked-asset>p,.manager-linked-asset>small,.manager-linked-asset>.actions{margin:14px 16px}.manager-apartment-card h3,.manager-linked-asset h4{font-size:16px;font-weight:300;margin-block:6px 10px}.manager-apartment-card p,.manager-linked-asset p{font-size:12px;overflow-wrap:anywhere}.manager-apartment-card small{color:var(--muted)}.manager-apartment-card .actions,.manager-linked-asset .actions{gap:8px}.manager-apartment-card .actions button,.manager-linked-asset .actions button{font-size:12px;padding-inline:12px}
.resource-image.reference-crop{position:relative;overflow:hidden}.resource-image.reference-crop>img,.resource-image.reference-crop>canvas{position:absolute;max-width:none;max-height:none;object-fit:fill!important}
.manager-payment-scroll{overflow-x:auto;max-width:100%;border:1px solid var(--border);border-radius:14px}.manager-payment-table{width:100%;border-collapse:collapse;min-width:820px}.manager-payment-table th,.manager-payment-table td{padding:12px;text-align:start;border-bottom:1px solid var(--border);vertical-align:top}.manager-payment-table th{font-size:12px;font-weight:400;background:var(--bg)}.manager-payment-table td label{margin:0}.manager-payment-table td label>span:first-child{font-size:11px}.manager-payment-table td:first-child{min-width:165px}.manager-payment-table td:nth-child(2){min-width:170px}.manager-payment-table td:nth-child(3){min-width:185px}.manager-payment-table input,.manager-payment-table select{min-height:44px}.manager-payment-table td:nth-child(4){width:90px}.manager-payment-form{min-width:0}.manager-payment-form>.actions{margin-block-start:20px}
@media(max-width:760px){.manager-tabs{gap:0 14px}.manager-fact-row{display:grid;gap:10px}.manager-source{max-width:100%;justify-content:flex-start}.manager-apartment-cards,.manager-linked-assets{grid-template-columns:1fr}.manager-payment-scroll{width:100%}}
#task:has(.manager-payment-form){width:min(1120px,calc(100vw - 32px));max-width:none}.manager-payment-table input:not([type=checkbox]),.manager-payment-table select{width:100%;font-size:14px}.manager-payment-table label{display:block}.manager-payment-table td{vertical-align:middle}
@media(max-width:760px){#task:has(.manager-payment-form){width:calc(100vw - 24px);padding:16px}.manager-payment-table input:not([type=checkbox]),.manager-payment-table select{font-size:16px}}

/* D146: the tree shares horizontal space with the existing file cards. */
.library-shell .project-browser .project-materials{grid-template-columns:repeat(3,minmax(0,1fr))}
.library-shell .project-browser .browser-context .project-metadata{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:18px}.library-shell .project-browser .browser-context .project-metadata>div{display:grid;grid-template-columns:1fr;gap:7px;align-content:start}.library-shell .project-browser .browser-context .project-metadata dt{font-size:12px}.library-shell .project-browser .browser-context .project-metadata dd{font-size:14px}
@media(max-width:1180px){.library-shell .project-browser .project-materials{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.library-shell .project-browser .project-materials{grid-template-columns:1fr}.library-shell .project-browser .browser-context .project-metadata{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* D149: project actions belong to the information card. */
.project-browser .browser-project-actions{margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}
.project-browser .browser-project-actions h3{margin:0 0 12px;font-size:14px;font-weight:400;color:var(--muted)}
.project-browser .browser-project-actions .actions{display:flex;flex-wrap:wrap;gap:8px}
.project-browser .browser-project-actions button{min-height:44px;font-size:13px;font-weight:300}
.project-browser .browser-context .manager-heading{align-items:center;gap:16px}
.project-browser .browser-context .manager-heading>button{margin-inline-start:auto;font-size:13px;min-height:44px}
@media(max-width:760px){.project-browser .browser-project-actions .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.project-browser .browser-project-actions button{white-space:normal;padding-inline:10px}.project-browser .browser-context .manager-heading>button{margin-inline-start:0}}

/* Existing D147/D148 import components. */

.import-batches{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;margin-block:24px}
.import-batch,.import-collection,.import-evidence,.import-item,.import-footer,.import-followups,.import-history-event{padding:20px;min-width:0}
.import-collection{display:grid;gap:20px;margin-block-start:20px}.import-collection input[type=file]{max-width:100%}
.import-workspace{display:grid;grid-template-columns:230px minmax(0,1fr) 260px;gap:18px;align-items:start;margin-block:20px}
.import-items,.import-history{display:grid;gap:16px;min-width:0}.import-item-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.import-item-heading h3{margin:0;flex:1}.import-item input[type=checkbox],.import-followup input{width:20px;height:20px;flex-shrink:0}
.import-pick{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;margin:0;flex-shrink:0;cursor:pointer}
.import-history-values{max-height:350px;overflow:auto;overflow-wrap:anywhere;font-size:13px}.import-evidence p{overflow-wrap:anywhere}
.import-item-heading:has(input[type=checkbox]){min-height:44px}.import-item .actions{margin-block-start:16px;gap:8px;flex-wrap:wrap}
.import-item small,.import-evidence small{display:block}.import-evidence blockquote{margin-inline:0;border-inline-start:2px solid var(--line,#dcd7ef);padding-inline-start:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.import-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:var(--surface-soft,#f4f2fa);padding:14px;border-radius:12px;color:var(--text,#45415e)}
.import-comparison pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:12px;max-height:350px;overflow:auto;direction:rtl}
.import-counts{font-size:13px;line-height:1.8}.import-footer{margin-block:16px}.import-followup{display:flex;gap:12px;align-items:center;min-height:44px;overflow-wrap:anywhere}
.import-evidence{position:sticky;top:20px}.import-filters{flex-wrap:wrap}.import-filters [aria-pressed=true]{background:var(--accent-soft,#ece8f7)}
@media(max-width:1100px){.import-workspace{grid-template-columns:200px minmax(0,1fr)}.import-evidence{grid-column:1/-1;position:static}}
@media(max-width:650px){.import-workspace{grid-template-columns:minmax(0,1fr)}.import-workspace>.manager-sidebar{max-height:250px;overflow:auto}.import-workspace .manager-tree{height:180px}.import-evidence{grid-column:auto}.import-comparison{grid-template-columns:minmax(0,1fr)}.import-item .actions>*{max-width:100%}.import-batch,.import-item,.import-collection,.import-evidence,.import-followups{padding:16px}}
.import-source-choices{display:grid;gap:16px}.import-source-choice{display:grid;gap:8px;min-width:0}.import-source-choice input[type=text]{width:100%;min-height:44px}.import-source-choice label span{overflow-wrap:anywhere}.import-collection ul{padding-inline-start:20px;margin-block:8px;line-height:1.8;overflow-wrap:anywhere}.import-collection>button{justify-self:start}
.import-source-list p,.import-collection>p{overflow-wrap:anywhere}.import-collection progress{width:100%;max-width:100%}
/* D152: existing CRM chrome and Library photo treatment; persistent file actions. */
.library-wordmark{display:grid;justify-items:center;gap:8px}.library-wordmark img{display:block;width:155px;height:44px;object-fit:contain;filter:brightness(0) invert(1)}
.topbar .brand{display:flex!important;align-items:center;gap:10px}.topbar .brand img{width:88px;height:32px;object-fit:contain}.topbar .brand>span{font-size:10px;letter-spacing:1.5px}
.library-account{position:relative;color:var(--sidebar-ink);padding:0!important}.library-account>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:64px;padding:10px;cursor:pointer;border-radius:14px}.library-account>summary::-webkit-details-marker{display:none}.library-account>summary>span:nth-child(2){flex:1;min-width:0;display:grid;gap:3px}.library-account b{font-size:12px;font-weight:500}.library-account small{font-size:10px;line-height:1.5}.library-account .avatar{width:36px;height:36px;flex:0 0 36px;font-size:15px;font-weight:400;border-radius:50%}.crm-account-chevron{font-size:18px;transition:transform .15s}.library-account[open] .crm-account-chevron{transform:rotate(180deg)}
.library-account>.library-profile-card{position:absolute;bottom:calc(100% + 10px);inset-inline:0;background:var(--panel);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;display:grid;gap:8px;padding:18px;max-height:260px;overflow:auto;z-index:30}.library-profile-card small{color:var(--muted)}.library-profile-card a,.library-profile-card button{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px;border:1px solid var(--border);border-radius:10px;padding:8px;color:var(--text);background:var(--soft)}
.catalog-filters{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}.catalog-filters>.filter-disclosure{grid-column:1/-1;display:block}.catalog-filters>.filter-disclosure[open]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.catalog-filters .filter-disclosure>summary{grid-column:1/-1;min-height:44px;display:flex;align-items:center;cursor:pointer}.catalog-filters>button:last-child{grid-column:1/-1;justify-self:start}.catalog-filters label{min-width:0}.catalog-filters input,.catalog-filters select{width:100%;min-width:0}
.archive-filters{display:grid;grid-template-columns:minmax(160px,1fr) minmax(150px,240px) auto;gap:14px;align-items:end}.workspace-archive{padding:24px!important}.workspace-archive>p{font-size:12px;color:var(--muted)}.workspace-archive .manager-table-wrap{overflow:auto;max-width:100%}.workspace-archive table{min-width:700px}.project-image-form{display:grid;gap:18px}.project-image-preview{height:260px;width:100%;border-radius:16px;overflow:hidden}.project-image-preview img{width:100%;height:100%;object-fit:contain}.manager-overview{display:flex!important;flex-direction:column-reverse;gap:24px!important}.manager-overview-image{height:310px!important;min-height:0!important;max-height:none!important}.manager-image-button{display:block;width:100%;min-width:0}.manager-image-button img{object-fit:cover!important}.manager-overview>.manager-image-button{order:0}.manager-overview>div:first-child{width:100%}.manager-section-heading{flex-wrap:wrap;gap:12px}.project-browser-banner{width:100%;height:280px;border-radius:20px;overflow:hidden;margin-bottom:24px;position:relative;background:var(--soft)}.project-browser-banner .resource-image{height:100%;width:100%}.project-browser-banner img{height:100%;width:100%;object-fit:cover;object-position:center 73%}
@media(max-width:760px){.catalog-filters{grid-template-columns:1fr}.catalog-filters>.filter-disclosure[open]{grid-template-columns:1fr}.archive-filters{grid-template-columns:1fr}.workspace-archive{padding:18px!important}.storage-row{grid-template-columns:minmax(0,1fr)}.storage-row>span{grid-column:1}.project-storage-chart{padding:18px!important}.manager-overview-image{height:210px!important}.project-browser-banner{height:200px}.topbar .brand img{width:68px;height:26px}.topbar .brand>span{font-size:8px}.library-shell .file-card .visual-cover-button{height:210px}}
.project-image-preview>.resource-image{height:100%;width:100%}
.catalog-filters>.error{grid-column:1/-1;margin:0}.catalog-filters>.error:empty{display:none}
.library-shell .project-materials .file-card .visual-overlay>.actions{margin-block-start:12px!important}
/* User steering: image hover returns; a click always opens quick preview. */
.library-shell .file-card .visual-overlay{opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease;pointer-events:none!important}
.library-shell .file-card:has(:focus-visible) .visual-overlay,.library-shell .file-card:has(.visual-card-menu[open]) .visual-overlay{opacity:1;visibility:visible;transform:none}
/* Compact file summaries and actions; retain full-size touch targets. */
.library-shell .file-card .visual-overlay{padding:32px 12px 12px!important}
.library-shell .file-card .visual-overlay .details{display:grid;gap:3px;min-width:0}
.library-shell .file-card .visual-overlay .details h2{font-size:13px!important;font-weight:400;line-height:1.4;margin:0!important}
.library-shell .file-card .visual-overlay .details p{font-size:11px!important;line-height:1.4;margin:0!important}
.library-shell .file-card .visual-overlay .details small{font-size:10px!important;line-height:1.4;margin:0!important}
.library-shell .file-card .visual-overlay>.actions{gap:6px;margin-block-start:8px!important;justify-content:flex-start}
.library-shell .file-card .visual-overlay>.actions>button{flex:0 1 auto;min-width:44px;min-height:44px;padding:6px 10px!important;font-size:12px!important;line-height:1.3;gap:6px;border-radius:9px}
.library-shell .file-card .visual-overlay>.actions>button .ui-symbol{width:16px;height:16px;flex-shrink:0}
.library-shell .file-card .visual-card-menu{inset-block-start:8px;inset-inline-end:8px}
.library-shell .file-card .visual-card-menu>summary{background:radial-gradient(circle closest-side,#fffffff0 72%,transparent 74%);border:0;box-shadow:none}
.library-shell .file-card .visual-card-menu>summary>.ui-symbol{width:18px;height:18px}
#task .resource-preview-header-actions{display:flex;align-items:center;flex-shrink:0;margin-inline-start:auto}
#task .resource-preview-header-actions>button,#task .ui-close{width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;display:grid;place-items:center;flex-shrink:0}
#task .resource-preview-header-actions>button{background:transparent;border-color:transparent}
#task .resource-preview-header-actions>button>.ui-symbol,#task .ui-close>.ui-symbol{width:18px;height:18px}
#task .dialog-head:has(.resource-preview-header-actions){gap:8px}
#task video.preview{display:block;max-height:70dvh;margin-inline:auto}
.import-evidence .ui-close{display:grid;place-items:center;width:44px;min-height:44px;padding:0;font-size:24px}
@media(hover:hover) and (pointer:fine){.library-shell .file-card:hover .visual-overlay{opacity:1;visibility:visible;transform:none}.library-shell .file-card .visual-overlay h2{font-size:15px;font-weight:400}.library-shell .file-card .visual-cover-button .resource-image img{object-fit:contain;object-position:center}}
@media(hover:none),(pointer:coarse){.library-shell .file-card .visual-overlay{opacity:1;visibility:visible;transform:none;padding-block-start:32px!important}.library-shell .file-card .visual-overlay .details>p,.library-shell .file-card .visual-overlay .details>small{display:none}}
.library-shell div.manager-tree div.wb-row{border-radius:12px;inset-inline:4px;width:calc(100% - 8px)!important;box-shadow:none;border:1px solid transparent;background:transparent}
.library-shell div.manager-tree div.wb-row.wb-active{background:var(--soft);border-color:color-mix(in srgb,var(--action) 24%,transparent);box-shadow:none}
.library-shell div.manager-tree .wb-row.wb-active .manager-node-copy bdi{font-weight:400}.library-shell div.manager-tree .wb-row.wb-active .manager-node-copy small{color:var(--action)}
.library-shell div.manager-tree .wb-row .wb-node{padding-inline:4px;box-sizing:border-box}.library-shell div.manager-tree .wb-node .wb-expander{border-radius:8px;color:var(--muted);min-width:28px}.library-shell div.manager-tree .wb-node .wb-expander:hover{background:var(--soft);color:var(--action)}
.library-shell div.manager-tree .wb-row.wb-active i.wb-icon{background:color-mix(in srgb,var(--action) 10%,transparent);border-radius:9px;color:var(--action)}.library-shell div.manager-tree .wb-row .manager-node-count{border-radius:50%;width:22px;height:22px;background:transparent;border:1px solid var(--border)}
@media(prefers-reduced-motion:no-preference){.library-shell div.manager-tree .wb-row{transition:background .18s ease,border-color .18s ease}.library-shell div.manager-tree .wb-row .wb-icon{transition:background .18s ease,color .18s ease}.library-shell .manager-details>.manager-context,.library-shell .browser-context{animation:library-arrive .18s ease both}.project-image-preview img{transition:object-position .1s ease}.project-image-preview.is-dragging img{transition:none}}
.project-image-position{border:1px solid var(--border);border-radius:14px;padding:16px;display:grid;gap:12px}.project-image-position legend{font-size:13px;padding-inline:8px}.project-image-position small{color:var(--muted);font-size:11px}.project-image-position label{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:16px;font-size:12px}.project-image-position input[type=range]{width:100%;min-height:44px;accent-color:var(--action);direction:ltr;padding:0}
.project-image-preview{aspect-ratio:3;height:auto!important;min-height:0;cursor:grab;touch-action:none;user-select:none}.project-image-preview.is-dragging{cursor:grabbing}.project-image-preview>.resource-image{width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.project-image-preview{position:relative}.project-image-preview img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important}.project-image-preview canvas{width:100%;height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){.library-shell .file-card .visual-overlay,.project-image-preview img{transition:none!important}.library-shell .manager-details>.manager-context,.library-shell .browser-context{animation:none!important}}
.project-browser-banner canvas,.manager-image-button canvas,.project-photo-cover .project-cover canvas{height:100%;width:100%;object-fit:cover}
.resource-preview-toolbar{display:flex;gap:10px;align-items:center;margin:0 0 16px}.resource-preview-toolbar button{min-height:44px;display:flex;align-items:center;gap:8px;font-size:12px}.resource-preview-toolbar svg{width:18px;height:18px}
#task:has(.resource-preview-toolbar) .preview{max-height:calc(100dvh - 220px);object-fit:contain;max-width:100%;display:block;margin-inline:auto}
@media(max-width:760px){.resource-preview-toolbar{flex-wrap:wrap}.resource-preview-toolbar button{flex:1}.project-image-position label{grid-template-columns:1fr;gap:4px}}

.manager-project-banner{position:relative;overflow:hidden;border-radius:20px;aspect-ratio:3/1;min-height:160px;background:var(--soft);margin-block-end:24px}.manager-project-banner>.resource-image{width:100%;height:100%;position:absolute;inset:0}.manager-project-banner img{object-fit:cover}.manager-project-banner>button{position:absolute;inset-inline-end:18px;bottom:18px;min-height:44px;background:var(--panel);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);font-size:12px}.manager-project-banner~.manager-panel .manager-overview:not(:has(.manager-image-button,.resource-image)){display:block!important}@media(max-width:760px){.manager-project-banner{min-height:180px}.manager-project-banner>button{inset-inline-end:12px;bottom:12px;max-width:calc(100% - 24px)}}

.manager-project-banner{width:100%;max-width:100%;min-width:0}.project-image-preview[data-placement=card]{aspect-ratio:4/5;width:min(100%,280px);margin-inline:auto}.project-image-preview[data-placement=banner]{aspect-ratio:3/1;width:100%}.library-shell div.manager-tree div.wb-row.wb-active{background:transparent;border-color:transparent}.library-shell div.manager-tree .wb-row.wb-active i.wb-icon{background:transparent;border-radius:0}.library-shell div.manager-tree .wb-row .manager-node-copy{padding:9px 12px;border-radius:11px;min-width:95px;max-width:calc(100% - 12px);margin-inline:6px;transition:background .18s ease}.library-shell div.manager-tree .wb-row.wb-active .manager-node-copy{background:var(--soft)}.manager-project-banner canvas{width:100%;height:100%;object-fit:cover}

.project-browser .browser-context>.manager-heading{padding-block:10px 22px;margin-block:0 24px;border-bottom:1px solid var(--border)}.project-browser .browser-context>.manager-heading h2{font-size:34px;font-weight:400;line-height:1.4;margin:0;overflow-wrap:anywhere}.project-browser .browser-context .project-metadata{gap:24px;margin-block:0 26px}.project-browser .browser-context .project-metadata>div{padding:8px 0}.project-browser-banner{height:auto;aspect-ratio:3/1;width:100%;min-height:150px}@media(max-width:760px){.project-browser .browser-context>.manager-heading h2{font-size:28px}.project-browser .browser-context>.manager-heading{gap:16px;align-items:flex-start}.project-browser-banner{min-height:160px}.project-image-preview[data-placement=card]{max-height:270px;width:216px}}

.library-shell div.manager-tree div.wb-row.wb-active{background:transparent!important;border-color:transparent!important}.library-shell div.manager-tree div.wb-row.wb-active .wb-node{background:transparent!important}.manager-project-banner img{object-position:center 73%}.project-image-preview[data-placement=card],.project-image-preview[data-placement=banner]{height:auto}.project-image-preview img{transition:none}

.manager-project-banner>.resource-image>img,.manager-project-banner>.resource-image>canvas{position:absolute;inset:0;width:100%!important;height:100%!important;min-height:0;min-width:0;object-fit:cover}.project-image-preview{position:relative}.project-image-preview>.resource-image{position:absolute;inset:0}.project-image-preview>.resource-image>img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover}

.project-browser-banner>.resource-image{position:absolute;inset:0;height:100%;width:100%}.project-browser-banner>.resource-image>img,.project-browser-banner>.resource-image>canvas{position:absolute;inset:0;width:100%!important;height:100%!important;min-height:0;min-width:0;object-fit:cover}.library-shell .project-browser .browser-context>.manager-heading h2{font-weight:300}

/* D153: visual official-image selection and a bounded directory trail. */
.official-image-picker{min-width:0;border:1px solid var(--border);border-radius:14px;padding:16px;display:grid;gap:12px}.official-image-picker legend{padding-inline:8px;font-size:13px}.official-image-count{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.official-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-height:260px;overflow:auto;padding:4px}.official-image-choice{position:relative;display:grid!important;gap:0!important;min-width:0;margin:0!important;cursor:pointer;border:2px solid var(--border);border-radius:12px;overflow:hidden;background:var(--panel);transition:border-color .15s ease,box-shadow .15s ease}.official-image-choice>input{position:absolute;width:1px;height:1px;opacity:0;inset:0;padding:0;margin:0}.official-image-choice:has(input:checked){border-color:var(--action);box-shadow:0 0 0 2px color-mix(in srgb,var(--action) 15%,transparent)}.official-image-choice:has(input:focus-visible){outline:2px solid var(--action);outline-offset:2px}.official-image-choice:has(input:disabled){cursor:default;opacity:.7}.official-image-thumb{height:100px!important;min-height:0!important;width:100%;border-radius:0!important;overflow:hidden}.official-image-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}.official-image-caption{padding:10px;font-size:11px;line-height:1.5;overflow-wrap:anywhere;min-height:44px}.official-image-selected{position:absolute;top:7px;inset-inline-start:7px;font-size:10px;padding:4px 7px;border-radius:8px;background:var(--library-action-gradient);color:var(--on-action);visibility:hidden}.official-image-choice:has(input:checked) .official-image-selected{visibility:visible}
.library-shell div.manager-tree{--wb-hover-color:transparent;--wb-hover-border-color:transparent;--wb-active-hover-color:transparent;--wb-active-color:transparent;--wb-active-color-grayscale:transparent;--wb-active-hover-color-grayscale:transparent}.library-shell div.manager-tree div.wb-row:hover,.library-shell div.manager-tree div.wb-row:hover .wb-node{background:transparent!important;border-color:transparent!important}.library-shell div.manager-tree .wb-row.is-path-ancestor .manager-node-copy{background:color-mix(in srgb,var(--action) 6%,transparent)}.library-shell div.manager-tree .wb-row.is-path-ancestor .manager-node-copy small{color:var(--action)}.library-shell div.manager-tree .wb-row:hover .manager-node-copy{background:color-mix(in srgb,var(--action) 9%,transparent)}.library-shell div.manager-tree .wb-row.wb-active .manager-node-copy,.library-shell div.manager-tree .wb-row.wb-active:hover .manager-node-copy{background:var(--soft)}.library-shell div.manager-tree .wb-row .wb-icon{background:transparent!important;border-radius:0!important}
@media(max-width:760px){.official-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:270px}.official-image-picker{padding:12px}.official-image-thumb{height:110px!important}}
@media(prefers-reduced-motion:reduce){.official-image-choice,.library-shell div.manager-tree .manager-node-copy{transition:none!important}}

.official-image-destination{min-width:0;border:0;padding:0;margin:0;display:grid;gap:10px}.official-image-destination legend{font-size:13px;padding:0;margin-bottom:10px}.official-image-placements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.official-image-placements>button{min-height:48px;white-space:normal;font-size:12px;line-height:1.6}.official-image-placements>button[aria-pressed=true]{background:var(--soft);border-color:var(--action);color:var(--action)}
.official-image-grid{grid-auto-rows:max-content;align-content:start}.official-image-choice{grid-template-rows:100px auto;align-content:start}.official-image-choice>input{min-height:0!important}.official-image-thumb img{object-fit:contain!important}.official-image-thumb{background:var(--soft)}
@media(max-width:760px){.official-image-choice{grid-template-rows:110px auto}}
.official-image-thumb{position:relative}.official-image-thumb>img{position:absolute;inset:0;min-width:0!important;min-height:0!important;max-height:100%!important;width:100%!important;height:100%!important;object-fit:contain!important}
/* Compact review: progressive disclosure in the existing component set. */
.import-workspace{grid-template-columns:210px minmax(0,1fr)}
.import-item{padding:16px 20px;display:flex;flex-direction:column;gap:8px}
.import-item-heading{gap:8px}.import-item-heading h3{font-size:17px;line-height:1.5;overflow-wrap:anywhere}.import-item-heading>small{font-size:12px;color:var(--muted)}
.import-item>small{color:var(--muted);font-size:12px}.import-item>.import-primary-value{font-size:18px;line-height:1.65;font-weight:500;margin:2px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.import-item .import-comparison{padding:10px 12px;gap:12px}.import-item .import-comparison p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.import-item .import-review-actions{margin:0;gap:8px}.import-review-actions button{min-height:44px;padding:8px 14px}
.import-translations>summary,.import-more>summary,.import-evidence summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}
.import-translations>summary::before,.import-more>summary::before{content:'+';font-size:18px}.import-translations[open]>summary::before,.import-more[open]>summary::before{content:'−'}
.import-translations>summary::-webkit-details-marker,.import-more>summary::-webkit-details-marker{display:none}
.import-translations .import-language-copies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 8px}.import-translations .import-language-copy{padding:12px;border-radius:10px;margin:0;min-width:0}.import-language-copy h4,.import-language-copy p{margin:6px 0;overflow-wrap:anywhere;white-space:pre-wrap}
.import-more{border-top:1px solid var(--line,#dcd7ef)}.import-more[open]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.import-more>summary{width:100%}.import-more>small{width:100%}.import-more select{width:auto;min-width:180px;max-width:100%}
.import-item>.import-evidence{position:static;width:100%;box-sizing:border-box;padding:14px;box-shadow:none;background:var(--surface-soft,#f4f2fa)}.import-evidence h3{margin:0;font-size:16px}
@media(max-width:650px){.import-workspace{grid-template-columns:minmax(0,1fr)}.import-item{padding:12px;gap:6px}.import-translations .import-language-copies{grid-template-columns:minmax(0,1fr)}.import-item-heading h3{font-size:16px}.import-item-heading>small{margin-inline-start:auto}.import-item .import-review-actions{display:flex}.import-review-actions button{flex:1;min-width:72px}.import-more select{width:100%}}
.import-edit-details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--muted)}.import-edit-details[open]{display:grid;gap:16px}.import-edit-details label{display:grid;gap:8px}.import-edit-details input,.import-edit-details textarea,.import-edit-details select{max-width:100%;box-sizing:border-box}
.import-review-actions>.import-more{border:0;margin-inline-start:auto}.import-review-actions>.import-more>summary{width:auto;padding-inline:8px}.import-review-actions>.import-more[open]{flex-basis:100%;margin:0;border-top:1px solid var(--line,#dcd7ef)}.import-review-actions>.import-more[open]>summary{width:100%}
.import-item .import-comparison,.import-item>.import-evidence{background:var(--soft,#f4f2fa);color:var(--text,#45415e)}.import-filters [aria-pressed=true]{background:var(--soft,#ece8f7);color:var(--text,#45415e);border-color:var(--accent,#705abd)}

/* D169: full source previews in file cards, including transparent PNG plans. */
.library-shell .file-card .visual-cover-button .resource-image img,.library-shell .file-card .visual-cover-button .resource-image canvas{object-fit:contain;object-position:center}
.library-shell .file-card .visual-cover-button .resource-image{transform:none!important}
/* JPG photos fill the card from its centre; plan/map/3D cards retain D169 contain. */
.library-shell .file-card.jpeg-photo-card .visual-cover-button{height:100%!important;padding:0;overflow:hidden;border-radius:inherit}
.library-shell .file-list .file-card.jpeg-photo-card .visual-cover-button .resource-image{width:100%;height:100%;max-height:none;aspect-ratio:auto;padding:0;border-radius:inherit;overflow:hidden}
.library-shell .file-card.jpeg-photo-card .visual-cover-button .resource-image img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .library-shell .file-card.jpeg-photo-card{transition:translate .18s ease,box-shadow .22s ease}
 .library-shell .file-card.jpeg-photo-card .visual-cover-button .resource-image img{transition:scale .32s cubic-bezier(.2,.75,.3,1)}
 .library-shell .file-card.jpeg-photo-card:hover{translate:0 -3px;box-shadow:0 12px 28px #00000026}
 .library-shell .file-card.jpeg-photo-card:hover .visual-cover-button .resource-image img{scale:1.025}
}
/* D174: compact selection/cards, hover actions, bounded preview and clear template controls. */
.library-shell .project-photo-card{max-height:360px;aspect-ratio:4/3}
.library-shell .project-photo-cover .project-cover{aspect-ratio:4/3}
.library-shell .file-list .visual-card{aspect-ratio:4/3}
.library-shell .file-list .visual-card .resource-image{aspect-ratio:4/3;padding:10px}
.library-shell .visual-card-menu .ui-action-menu-items,.library-shell .project-photo-menu .ui-action-menu-items{width:184px;min-width:0;padding:5px;border-radius:12px;max-height:260px}
.library-shell :is(.visual-card-menu,.project-photo-menu) .ui-action-menu-items button{padding:7px 9px;font-size:12px;min-height:44px;line-height:1.45}
@media(hover:hover) and (pointer:fine){
 .library-shell .visual-card-menu>summary{opacity:0;transition:opacity .15s}
 .library-shell .visual-card:is(:hover,:focus-within) .visual-card-menu>summary,.library-shell .visual-card-menu[open]>summary{opacity:1}
}
@media(hover:none){.library-shell :is(.visual-card-menu,.project-photo-menu)>summary{width:44px;height:44px;opacity:1}.library-shell .project-photo-card .project-photo-menu{opacity:1;transform:none;pointer-events:auto}}
#task:has(.resource-preview-modal){width:min(980px,92vw);max-width:92vw;max-height:90dvh}
.resource-preview-modal{display:grid;place-items:center;min-height:120px;overflow:auto;background:var(--soft);border-radius:12px;padding:12px}
.resource-preview-modal .resource-image-preview{width:auto!important;height:auto!important;max-width:100%;max-height:min(62dvh,calc(90dvh - 200px))!important;object-fit:contain}
#task:has(.offer-pdf-reader){width:min(1240px,94vw);max-width:94vw;height:88dvh;max-height:88dvh;margin:auto;border:1px solid var(--border);border-radius:20px}
.library-shell .setup-project-picker .setup-choices{padding:16px;gap:12px}
.library-shell .setup-project-picker .setup-choice,.library-shell .setup-project-picker .setup-choice:only-child{min-height:0!important;display:flex!important;max-width:400px}
.library-shell .setup-project-picker .setup-choice .setup-choice-caption{padding:16px;gap:6px}
.library-shell .setup-project-picker .setup-choice-caption strong{font-size:22px!important}
.studio-alignment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.studio-alignment button{padding:5px;font-size:12px}
.studio-default-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:320px;overflow:auto}.studio-default-grid button{min-width:0;display:flex;flex-direction:column;padding:6px;gap:4px}.studio-default-grid .resource-image{aspect-ratio:4/3;min-height:0}.studio-default-grid img{object-fit:contain!important}.studio-default-grid small{font-size:11px;overflow-wrap:anywhere}
.studio-block .resource-image{position:absolute;inset:0;width:100%;height:100%;min-height:0}.studio-block .resource-image img{object-fit:cover}.studio-image:has(.has-image) .studio-label{position:absolute;bottom:4px;background:#fffE;padding:3px 6px;border-radius:5px;font-size:11px}.studio-text{border-style:solid!important;border-color:#9c93b5!important;align-items:stretch!important;background:#fff!important}.studio-text .studio-label{width:100%;color:#353048;font-weight:500;line-height:1.55}
@media(max-width:760px){.library-shell .project-photo-card{max-height:280px}.library-shell .file-list .visual-card .resource-image{max-height:180px}.library-shell .setup-project-picker .setup-choice{max-width:none}#task:has(.offer-pdf-reader){width:96vw;max-width:96vw;height:90dvh;max-height:90dvh;border-radius:14px}.studio-default-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-preview-modal{padding:8px}}
/* Keep the entire editable map visible beside its controls on short desktop screens. */
@media(min-width:761px){#task .project-map-stage{height:min(48dvh,420px);aspect-ratio:auto}}
#task .project-map-footer.ui-task-actions{position:static;bottom:auto;margin:0;padding-block:12px;justify-content:flex-start;flex-shrink:0}
.studio-default-grid .resource-image{width:100%;flex-shrink:0}.studio-default-grid .resource-image img{width:100%;height:100%;max-height:none}

.studio-text{padding:4px!important;min-height:0}.studio-text .studio-label{align-self:center}

.studio-sheet{container-type:inline-size}
.library-shell :is(.visual-card:has(.visual-card-menu[open]),.project-photo-card:has(.project-photo-menu[open])){overflow:visible;z-index:20}

/* D175: one unobtrusive background preparation and compact scalable project selection. */
.offer-map-background{position:fixed;left:-12000px;top:0;width:1100px;height:750px;pointer-events:none;overflow:hidden}
.offer-map-background .project-map-stage{height:450px!important}
.setup-project-picker .setup-choices{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))!important;gap:12px;padding:14px 0!important}
.setup-project-picker>label{margin-inline:20px}.setup-project-picker .setup-project-choice,.setup-project-picker .setup-project-choice:only-child{display:flex!important;flex-direction:row!important;align-items:center;min-height:86px!important;max-width:none!important;width:100%;border-radius:16px}
.setup-project-picker .setup-project-choice .setup-choice-caption,.setup-project-picker .setup-project-choice:only-child .setup-choice-caption{padding:14px!important;gap:6px;min-width:0;flex:1}
.setup-project-picker .setup-project-choice strong{font-size:18px!important;line-height:1.5!important}.setup-project-choice>.ui-symbol{width:18px;margin-inline-end:14px}
.offer-map-pages .map-page-loading{display:grid;place-items:center;aspect-ratio:297/210;margin:0;background:var(--soft);padding:20px}
@media(max-width:760px){.setup-project-picker .setup-choices{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.setup-project-picker .setup-project-choice strong{font-size:15px!important}.setup-project-choice small{font-size:11px}.setup-project-choice>.ui-symbol{display:none}}

/* Compact Glass A: existing native components, palette and accessible selection. */
.offer-setup-split,.setup-project-picker{background:color-mix(in srgb,var(--panel,#fff) 90%,transparent)!important;border-radius:20px;backdrop-filter:blur(18px)}
.offer-setup-split .setup-stage{background:transparent!important}.offer-setup-split .setup-summary{background:color-mix(in srgb,var(--panel,#fff) 88%,transparent);border-color:color-mix(in srgb,var(--border) 70%,transparent);border-radius:20px;box-shadow:0 10px 32px #14293f08;padding:16px;gap:12px}
.offer-setup-split .setup-unit-list{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px}.offer-setup-split .setup-unit-list .setup-cover{height:115px!important;min-height:115px!important;background:transparent!important}
.offer-setup-split .setup-unit-list .setup-choice,.setup-project-picker .setup-project-choice{position:relative;background:color-mix(in srgb,var(--panel,#fff) 88%,transparent)!important;border-color:var(--border)!important;box-shadow:0 3px 12px #14293f05!important;transition:background .15s,border-color .15s}
.offer-setup-split .setup-unit-list .setup-choice-caption{padding:10px!important;gap:5px}.offer-setup-split .setup-unit-list .setup-choice-caption strong{font-size:18px!important;line-height:1.5}.offer-setup-split .setup-unit-list .setup-choice[aria-pressed=true]{background:color-mix(in srgb,var(--soft) 64%,var(--panel,#fff))!important;border-color:var(--action)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--action) 28%,transparent)!important}
.offer-setup-split .setup-unit-list .setup-choice[aria-pressed=true]::after{content:'✓';position:absolute;inset-block-start:8px;inset-inline-start:8px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--panel,#fff);color:var(--action);font-weight:700;box-shadow:0 2px 8px #14293f10}
.offer-setup-split .setup-tower-tabs button,.offer-setup-split .setup-language-tabs button{border-radius:14px;background:color-mix(in srgb,var(--panel,#fff) 90%,transparent)!important;color:var(--text)!important;border-color:var(--border)!important;min-height:48px}
.offer-setup-split .setup-tower-tabs button[aria-pressed=true],.offer-setup-split .setup-language-tabs button[aria-pressed=true]{background:var(--soft)!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--action) 55%,var(--border))!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--action) 20%,transparent)}
.offer-setup-split .setup-tower-count{background:var(--panel,#fff)!important;color:var(--action)!important}.offer-setup-split .setup-summary>button.primary{min-height:48px;border-radius:14px}
@media(max-width:760px){.offer-setup-split .setup-unit-list{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-setup-split .setup-unit-list .setup-cover{height:100px!important;min-height:100px!important}.offer-setup-split .setup-summary{padding:14px}.offer-setup-split .setup-tower-tabs{gap:6px}.offer-setup-split .setup-tower-tabs button{padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.offer-setup-split *{transition:none!important}}
/* D176: document studio, compact title/footer and spacious canonical content. */
@font-face{font-family:Masaar;src:url('/assets/Masaar-Light.ttf') format('truetype');font-weight:300;font-display:swap}
.studio-pro .studio-work{grid-template-columns:135px minmax(0,1fr) 250px}.studio-pro .studio-canvas{padding:18px;align-items:flex-start}.studio-pro .studio-sheet{margin-block:auto;color:#004460}.studio-pro .studio-bar{gap:8px;padding:12px}.studio-pro .studio-bar button{padding:9px 12px;font-size:13px}.studio-pro .studio-pages{padding:10px;gap:6px}.studio-pro .studio-pages button{padding:9px;font-size:13px}.studio-pro .studio-properties{padding:12px;gap:10px}.studio-pro .studio-brand-rail{border:0!important;border-radius:0!important;right:0;left:auto;width:14.142%;padding:0!important;writing-mode:horizontal-tb;overflow:hidden;display:block;background:#004460;color:#eee7d0}.studio-pro .studio-brand-rail>span{position:absolute;bottom:10px;right:0;width:100%;font-size:10px;white-space:normal}.studio-pro .studio-cover .studio-brand-rail{width:37.037%}.studio-pro .studio-sheet[data-identity=left] .studio-brand-rail{right:auto;left:0}.studio-pro .studio-brand-preview{position:absolute;inset:0;width:100%;height:100%;min-height:0;border:0;border-radius:0;overflow:hidden;background:#004460}.studio-pro .studio-brand-preview .resource-label{display:none}.studio-pro .studio-brand-preview img{position:absolute;right:0;top:0;width:707.142%!important;max-width:none!important;height:100%!important;object-fit:fill!important}.studio-pro .studio-cover .studio-brand-preview img{width:270%!important}.studio-pro .studio-brand-rail:has(.has-image)>span{display:none}.studio-pro .studio-page-title{position:absolute!important;top:3.8%;padding:0!important;margin:0!important;min-height:0!important;height:6.2%;border:0!important;border-radius:0!important;background:none!important;white-space:nowrap;font-weight:700;line-height:1.3}.studio-pro .studio-page-number{position:absolute;top:93.5%;font:300 .85cqw Masaar;color:#6b8490;direction:ltr}.studio-pro .studio-text{background:#fff!important;padding:1.2cqw!important;gap:.5cqw!important;justify-content:flex-start!important;color:var(--text-color,#004460)!important;font-weight:var(--text-weight,400)!important;line-height:1.25!important;overflow:hidden!important;min-height:0!important}.studio-pro .studio-text .studio-label{color:inherit!important;font-weight:inherit!important;line-height:1.25!important;text-align:inherit}.studio-pro .studio-text>small{font-size:.95cqw;font-weight:400;color:#78909b;line-height:1.3}.studio-pro .studio-text>strong{font-size:1.2cqw;font-weight:700}.studio-pro .studio-room-rows{display:grid;grid-template-columns:1fr 1fr;column-gap:2.2cqw;row-gap:0;width:100%}.studio-pro .studio-room-rows>div{display:flex;justify-content:space-between;gap:1cqw;align-items:center;border-bottom:1px solid #dde6e9;padding:.55cqw 0;direction:rtl;font-size:1.1cqw;min-width:0}.studio-pro .studio-room-rows bdi{white-space:nowrap;direction:ltr;font-weight:700}.studio-pro .studio-font-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.studio-pro .studio-font-controls input,.studio-pro .studio-font-controls select{width:100%;min-width:0}.studio-pro .studio-font-controls input[type=color]{padding:4px;min-height:44px}.studio-pro .studio-price-table{position:absolute!important;top:20%;height:67%;display:flex;flex-direction:column;border:0!important;border-radius:0!important;background:white!important;padding:0!important;min-height:0!important;overflow:hidden;text-align:right}.studio-pro .studio-price-table>div{display:grid;grid-template-columns:1.5fr 1fr;padding:1.3cqw 2cqw;direction:rtl;border-bottom:1px solid #e5ecef;width:100%;flex:1;align-items:center;gap:1.5cqw}.studio-pro .studio-price-table>div:nth-child(odd){background:#f3f6f7}.studio-pro .studio-price-table>div:first-child{background:#004460;color:#fff;font-weight:700;flex:.6}.studio-pro .studio-price-table bdi{text-align:left;direction:ltr;font-weight:700}.studio-pro .studio-contact{position:absolute;top:30%;width:81%;white-space:pre-line;text-align:center;font-size:1.4cqw;line-height:2}.studio-pro .studio-snap-guides{position:absolute;inset:0;pointer-events:none;z-index:6}.studio-pro .studio-snap-guides i{position:absolute;display:block;background:#15a1a7;box-shadow:0 0 0 1px #ffffff80}.studio-pro .studio-snap-x{top:0;bottom:0;width:1px}.studio-pro .studio-snap-y{left:0;right:14.14%;height:1px}.studio-pro .studio-snap-status{margin:0;min-height:24px;text-align:center;color:#087c83;font-size:13px}.studio-pro .studio-service-caption{position:absolute!important;border:0!important;border-radius:0!important;background:white!important;min-height:0!important;padding:0!important;font-size:1.05cqw;line-height:1.3;overflow:hidden;color:#004460;white-space:normal}.studio-pro .studio-block[aria-pressed=true]{background:#eeebf780!important}.studio-pro .studio-text[aria-pressed=true]{background:white!important}.studio-pro .studio-block:focus-visible,.studio-pro .studio-page-title:focus-visible,.studio-pro .studio-brand-rail:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media(max-width:760px){.studio-pro .studio-work{grid-template-columns:1fr}.studio-pro .studio-canvas{padding:10px}.studio-pro .studio-bar button{flex:1;min-height:44px}.studio-pro .studio-properties{padding:14px}.studio-pro .studio-pages{flex-direction:row}.studio-pro .studio-properties .studio-dimensions{grid-template-columns:1fr 1fr}.studio-pro .studio-text{padding:1.2cqw!important}.studio-pro .studio-text .studio-label{font-size:inherit!important}}
.studio-pro .studio-contact-source{position:absolute;top:0;width:85.858%;height:100%;overflow:hidden;border:0;border-radius:0;background:white;min-height:0}.studio-pro .studio-contact-source img{position:absolute;top:0;left:0;width:116.47%!important;max-width:none!important;height:100%!important;object-fit:fill!important}
.studio-pro .studio-text>small{font-size:1.4cqw}.studio-pro .studio-text>strong{font-size:inherit}.studio-pro .studio-room-rows>div{font-size:inherit}.studio-pro .studio-canvas{overflow:auto;max-height:75dvh;display:block}.studio-pro .studio-sheet{flex-shrink:0}.studio-preview-options{position:relative}.studio-preview-options summary{padding:9px 12px;min-height:44px;border:1px solid var(--border);border-radius:12px;font-size:13px;cursor:pointer}.studio-preview-options[open]{display:flex;flex-wrap:wrap;gap:5px;background:var(--panel);border:1px solid var(--border);padding:7px;border-radius:12px}.studio-preview-options[open] summary{border:0}.studio-preview-options button{min-height:44px}
.studio-demo-badge{font-size:12px;color:var(--muted);padding:5px 8px;background:var(--soft);border-radius:8px}.studio-pro .studio-technical .resource-image img{object-fit:contain!important}.studio-pro .studio-technical .resource-image{background:white}.studio-pro .studio-brand-rail{border-radius:0!important}
.studio-pro .studio-brand-example{position:absolute;top:20%;height:53.4%;left:0;width:100%;padding:3cqw .8cqw;background:#004460;color:#ebe4cc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2cqw;font:300 1cqw Masaar;line-height:1.3;pointer-events:none}.studio-pro .studio-brand-example>div:nth-child(3),.studio-pro .studio-brand-example>div:nth-child(5),.studio-pro .studio-brand-example>div:nth-child(7){font-size:1.3cqw;font-weight:400}.studio-pro .studio-cover .studio-brand-example{font-size:1.5cqw}

/* Company backgrounds remain their exact source colours; text is drawn directly. */
.studio-pro .studio-brand-rail,.studio-pro .studio-brand-preview,.studio-pro .studio-brand-example{background:transparent!important}
.studio-pro .studio-brand-preview canvas{position:absolute;right:0;top:0;width:707.142%!important;max-width:none!important;height:100%!important}
.studio-pro .studio-cover .studio-brand-preview canvas{width:270%!important}
.studio-pro .studio-brand-example{padding:1.2cqw .8cqw;gap:1.5cqw;top:22%;height:50%;font-size:1.05cqw}
.studio-pro .studio-brand-example>strong{font-size:1.25cqw;font-weight:700;line-height:1.5}
.studio-pro .studio-brand-example>div{display:flex;flex-direction:column;align-items:center;gap:.45cqw;font-size:1.3cqw;font-weight:700}
.studio-pro .studio-brand-example small{font-size:.9cqw;font-weight:300}
.studio-pro .studio-brand-cover{gap:1.8cqw;font-size:2cqw}.studio-pro .studio-brand-cover>strong{font-size:2.4cqw}.studio-pro .studio-brand-cover small{font-size:1.7cqw}
.studio-pro .studio-contact-source{left:0!important;right:0!important;width:100%!important;height:100%!important;top:0!important;background:transparent}.studio-pro .studio-contact-source img,.studio-pro .studio-contact-source canvas{width:100%!important;height:100%!important;position:static!important;object-fit:contain!important}
.offer-drafts .offer-draft-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px}
.offer-drafts .compact-draft{position:relative;display:flex;flex-direction:column;min-width:0;padding:8px;background:var(--panel);border:1px solid var(--border);border-radius:22px;overflow:visible;box-shadow:0 8px 24px #26374908}
.compact-draft .draft-image-button{position:relative;display:block;width:100%;padding:0;border:0;border-radius:16px;overflow:hidden;min-height:0;background:var(--soft)}
.compact-draft .resource-image{width:100%;aspect-ratio:1.55;min-height:0!important;height:auto!important;border:0;border-radius:0}
.compact-draft .resource-image img{object-fit:cover!important}.compact-draft .resource-label{display:none}.compact-draft .draft-copy{padding:12px 6px 7px;display:flex;flex-direction:column;gap:7px;min-height:100px}.compact-draft h3{font-size:16px;margin:0;line-height:1.5}.draft-facts{display:flex;flex-wrap:wrap;gap:8px;font-size:14px}.draft-facts bdi+bdi{border-inline-start:1px solid var(--border);padding-inline-start:8px}.draft-copy time{font-size:11px;color:var(--muted);margin-top:auto;direction:ltr;text-align:right}.draft-copy small{font-size:12px;color:var(--muted)}
.draft-resume{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;background:#24334b65;backdrop-filter:blur(3px);color:white;font-weight:700;font-size:14px;opacity:0;transition:opacity .16s}.compact-draft:hover .draft-resume,.compact-draft:focus-within .draft-resume{opacity:1}.compact-draft .draft-menu{position:absolute;top:12px;left:12px;z-index:3;opacity:0}.compact-draft:hover .draft-menu,.compact-draft:focus-within .draft-menu,.compact-draft .draft-menu[open]{opacity:1}.compact-draft .draft-menu summary{font-size:12px;min-height:34px;padding:6px 8px;background:#fffffff0;border-radius:9px}.compact-draft .draft-menu[open]{max-width:180px;background:var(--panel)}
@media(max-width:1100px){.offer-drafts .offer-draft-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:640px){.offer-drafts .offer-draft-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.compact-draft h3{font-size:14px}.draft-facts{font-size:12px}.compact-draft .draft-copy{padding:10px 3px 4px}.draft-resume{opacity:1;inset:auto 6px 6px;background:#24334be6;backdrop-filter:none;border-radius:8px;padding:8px;font-size:11px;min-height:36px}}
@media(hover:none){.compact-draft .draft-menu{opacity:1}.compact-draft .draft-menu summary{min-height:44px}}
@media(prefers-reduced-motion:reduce){.draft-resume{transition:none}}

/* Project cards: compact 4:5 everywhere, clean photo and a solid reveal panel. */
.library-shell .project-collection .project-grid,.library-shell .project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),220px))!important;gap:18px!important;justify-content:start}
.library-shell .project-photo-card{aspect-ratio:4/5!important;height:auto!important;min-height:0!important;max-height:none!important;border-radius:22px;background:var(--panel);overflow:hidden}
.library-shell .project-photo-cover{inset:0!important;width:100%!important;height:100%!important;border-radius:22px!important;transition:height .22s ease,padding .22s ease}
.library-shell .project-photo-cover:after{display:none!important}.library-shell .project-photo-cover .resource-image{background:var(--soft);height:100%!important;min-height:0!important;aspect-ratio:auto!important;border-radius:inherit}
.library-shell .project-photo-cover .resource-image img{object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important}
.library-shell .project-photo-copy{inset-inline:16px!important;inset-block-end:12px!important;gap:4px;color:var(--text);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .18s ease,transform .22s ease;pointer-events:none;background:transparent!important;backdrop-filter:none!important}
.library-shell .project-photo-copy h2{color:var(--text)!important;font-size:17px!important;text-shadow:none!important;line-height:1.4}.library-shell .project-photo-caption{color:var(--muted)!important;font-size:11px}.library-shell .project-photo-open{min-height:34px;font-size:11px;padding:5px 0;color:var(--text)!important;background:transparent!important;border:0!important;justify-content:space-between}
.library-shell .project-photo-card:is(:hover,:focus-within,.is-revealed) .project-photo-cover{height:63%!important;padding:8px!important}
.library-shell .project-photo-card:is(:hover,:focus-within,.is-revealed) .project-photo-copy{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.library-shell .setup-project-picker .setup-choices{grid-template-columns:repeat(auto-fill,minmax(145px,180px))!important;justify-content:start}
.library-shell .setup-project-picker .setup-project-choice,.library-shell .setup-project-picker .setup-project-choice:only-child{aspect-ratio:4/5!important;display:block!important;padding:0!important;max-width:180px;min-height:0!important;height:auto!important;border-radius:18px;overflow:hidden}
.setup-project-choice .project-cover{position:absolute;inset:0;width:100%;height:100%;min-height:0!important}.setup-project-choice .project-cover img{object-fit:contain!important;object-position:center!important}
.library-shell .setup-project-picker .setup-project-choice .setup-choice-caption{position:absolute;bottom:0;left:0;right:0;opacity:0;transform:translateY(10px);padding:10px!important;background:var(--panel)!important;transition:transform .2s,opacity .2s}
.library-shell .setup-project-picker .setup-project-choice strong{font-size:15px!important}.setup-project-choice>.ui-symbol{display:none}
.library-shell .setup-project-picker .setup-project-choice:is(:hover,:focus-visible) .setup-choice-caption{opacity:1;transform:none}
.library-shell .setup-project-picker .setup-project-choice:is(:hover,:focus-visible) .project-cover{height:65%}
@media(max-width:640px){.library-shell .project-collection .project-grid,.library-shell .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.library-shell .project-photo-copy{inset-inline:12px!important}.library-shell .project-photo-copy h2{font-size:15px!important}.library-shell .setup-project-picker .setup-choices{grid-template-columns:repeat(2,minmax(0,1fr))!important}.library-shell .setup-project-picker .setup-project-choice{max-width:none}}
@media(hover:none){.library-shell .setup-project-picker .setup-project-choice .setup-choice-caption{opacity:1;transform:none}.library-shell .setup-project-picker .setup-project-choice .project-cover{height:65%}}
@media(prefers-reduced-motion:reduce){.library-shell .project-photo-cover,.library-shell .project-photo-copy,.library-shell .setup-project-picker .setup-choice-caption{transition:none!important}}
/* Source crops are canvases too; fit their complete pixels exactly like PNGs. */
.library-shell .project-photo-cover .resource-image canvas,.setup-project-choice .project-cover canvas{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.compact-draft .resource-image{aspect-ratio:1.55!important;position:relative}
.compact-draft .resource-image canvas,.compact-draft .resource-image img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
/* Compact draft hover: one discreet action and one bounded menu, no title banner. */
.compact-draft .draft-resume{inset:auto 8px 8px;min-height:36px;padding:7px 10px;border-radius:10px;background:#004460;backdrop-filter:none!important;font-size:12px}
.compact-draft .draft-menu,.compact-draft .draft-menu[open]{top:14px;left:14px;width:36px;max-width:36px;background:none;border:0;padding:0}
.compact-draft .draft-menu>summary{padding:8px!important;min-height:36px!important;width:36px;height:36px;border-radius:12px;background:var(--panel);border:1px solid var(--border)}
.compact-draft .draft-menu>summary .ui-symbol{width:18px;height:18px}
.compact-draft .draft-menu>.ui-action-menu-items{left:0;right:auto;inset-inline-end:auto;top:42px;min-width:0!important;width:154px;max-width:calc(100vw - 48px);padding:5px;border-radius:12px;box-shadow:0 5px 18px #26374918}
.compact-draft .draft-menu>.ui-action-menu-items>button{font-size:12px!important;min-height:40px!important;padding:8px!important;white-space:normal}
.compact-draft .resource-image{background:var(--soft);transform:none!important}
@media(hover:none){.compact-draft .draft-menu,.compact-draft .draft-menu[open]{width:44px;max-width:44px;top:12px;left:12px}.compact-draft .draft-menu>summary{width:44px;height:44px;min-height:44px!important}.compact-draft .draft-menu>.ui-action-menu-items{top:50px;width:130px}}
/* Reserve a real caption area: the project name never touches or overlaps the photo. */
.library-shell .project-photo-card:is(:hover,:focus-within,.is-revealed) .project-photo-cover{height:57%!important;padding:8px!important}
.library-shell .project-photo-copy{inset-block-start:calc(57% + 12px)!important;inset-block-end:10px!important;display:flex!important;flex-direction:column;gap:6px!important;min-height:0}
.library-shell .project-photo-copy h2{font-size:16px!important;line-height:1.35!important;margin:0!important}
.library-shell .project-photo-caption{margin:0!important;line-height:1.4!important}
.library-shell .project-photo-open{margin-top:auto!important;min-height:44px!important;padding:4px 0!important;flex-shrink:0}
@media(max-width:640px){.library-shell .project-photo-copy{inset-inline:12px!important;gap:4px!important;inset-block-start:calc(54% + 10px)!important}.library-shell .project-photo-card:is(:hover,:focus-within,.is-revealed) .project-photo-cover{height:54%!important}.library-shell .project-photo-copy h2{font-size:14px!important}}
/* PDF/source crops use canvas, whose old auto-height must not overflow a smaller card. */
.library-shell .project-photo-cover .resource-image,.library-shell .setup-project-choice .project-cover{position:relative!important;display:block!important;overflow:hidden}
.library-shell .project-photo-cover .resource-image.document-image canvas,.library-shell .project-photo-cover .resource-image canvas,.library-shell .project-photo-cover .resource-image img,.library-shell .setup-project-choice .project-cover.document-image canvas,.library-shell .setup-project-choice .project-cover canvas,.library-shell .setup-project-choice .project-cover img,.library-shell .compact-draft .resource-image.document-image canvas,.library-shell .compact-draft .resource-image canvas,.library-shell .compact-draft .resource-image img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:100%!important;min-height:0!important;min-width:0!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
.library-shell .compact-draft .draft-menu>.ui-action-menu-items{inset-inline-start:auto!important;inset-inline-end:auto!important;left:0!important;right:auto!important;min-width:0!important;width:154px!important;max-width:154px!important}
.library-shell .studio-pro .studio-contact-source.document-image canvas,.library-shell .studio-pro .studio-contact-source canvas,.library-shell .studio-pro .studio-contact-source img{width:100%!important;height:100%!important;position:absolute!important;inset:0!important;object-fit:contain!important}
@media(hover:none){.library-shell .compact-draft .draft-menu>.ui-action-menu-items{width:130px!important;max-width:130px!important}}
/* User correction: photographic cards fill and centre; plans elsewhere still contain. */
.library-shell .project-photo-cover .resource-image.document-image canvas,.library-shell .project-photo-cover .resource-image canvas,.library-shell .project-photo-cover .resource-image img,.library-shell .setup-project-choice .project-cover.document-image canvas,.library-shell .setup-project-choice .project-cover canvas,.library-shell .setup-project-choice .project-cover img,.library-shell .compact-draft .resource-image.document-image canvas,.library-shell .compact-draft .resource-image canvas,.library-shell .compact-draft .resource-image img{object-fit:cover!important;object-position:center center!important}
.library-shell .compact-draft .draft-resume{background:#fffffff2!important;color:#004460!important;border:1px solid #ffffffb0;box-shadow:0 3px 12px #18344c12;backdrop-filter:none!important;min-height:40px}
.library-shell .compact-draft{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.library-shell .compact-draft:is(:hover,:focus-within){transform:translateY(-3px);border-color:var(--focus);box-shadow:0 10px 24px #26374912}
.library-shell .draft-facts bdi+bdi{border:0!important;padding-inline-start:0!important}.draft-facts{gap:10px}
@media(prefers-reduced-motion:reduce){.library-shell .compact-draft{transition:none!important;transform:none!important}}
/* Compact home proportions; project creation stays in management. */
body[data-workspace-view=projects] .library-shell .toolbar{margin-block:0 12px;min-height:0;align-items:center}
body[data-workspace-view=projects] .library-shell .toolbar h1{margin:0;font-size:20px;line-height:1.4}
body[data-workspace-view=projects] .library-shell #navigation:empty{display:none}
body[data-workspace-view=projects] .library-shell .dashboard-intro{gap:24px;padding-inline:0;max-width:1100px;margin-block-start:0}
body[data-workspace-view=projects] .library-shell .dashboard-jelly{max-width:450px}
body[data-workspace-view=projects] .library-shell .dashboard-charts{margin-block-start:20px;gap:14px}
body[data-workspace-view=projects] .library-shell .dashboard-chart{padding:20px 22px}
@media(max-width:760px){body[data-workspace-view=projects] .library-shell .dashboard-intro{gap:18px}body[data-workspace-view=projects] .library-shell .dashboard-jelly{max-width:310px;width:calc(100% - 20px)}body[data-workspace-view=projects] .library-shell .dashboard-charts{margin-block-start:0}}
.library-settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-block:6px}.library-settings-list>button{min-height:60px;justify-content:flex-start;text-align:start;gap:12px;padding:14px 16px;border-radius:15px;background:var(--panel)}.library-settings-list>button>.ui-symbol:last-child{margin-inline-start:auto;width:17px;height:17px}.settings-appearance{display:flex;gap:12px}.offer-map-pages .map-page-loading{white-space:normal;padding:24px;text-align:center}.offer-map-pages .map-page-loading:has(+canvas){display:none}
@media(max-width:640px){.library-settings-list{grid-template-columns:1fr;gap:8px}}
.studio-default-tabs{display:flex;gap:8px!important;flex-wrap:nowrap!important}.studio-category-icon{width:44px;min-width:44px!important;min-height:44px!important;padding:10px!important;justify-content:center!important;border-radius:12px!important}.studio-category-icon .ui-symbol{width:20px;height:20px}.studio-category-icon[aria-pressed=true]{background:var(--soft);border-color:var(--focus);color:var(--action)}
#task .studio-default-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;align-items:start}#task .studio-default-grid>button{display:flex;flex-direction:column;padding:5px!important;min-width:0;min-height:0!important;height:auto!important;overflow:hidden;border-radius:12px!important;gap:5px!important}#task .studio-default-grid>button[aria-pressed=true]{border-color:var(--focus);outline:1px solid var(--focus)}
#task .studio-default-grid>button>.resource-image{aspect-ratio:4/3!important;height:auto!important;min-height:0!important;width:100%!important;position:relative!important;overflow:hidden;border:0;border-radius:8px;display:block!important;flex:none}
#task .studio-default-grid>button>.resource-image img,#task .studio-default-grid>button>.resource-image.document-image canvas,#task .studio-default-grid>button>.resource-image canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;max-width:100%!important;object-fit:cover!important;object-position:center!important}#task .studio-default-grid>button[data-kind=other]>.resource-image img,#task .studio-default-grid>button[data-kind=other]>.resource-image canvas{object-fit:contain!important}.studio-default-grid>button>small{font-size:11px;line-height:1.4;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.studio-default-grid .resource-label{display:none}

.studio-image-view{display:grid;gap:10px;padding:12px 0 16px;border-bottom:1px solid var(--border);margin-bottom:12px}.studio-image-view>small{color:var(--muted)}.studio-image-view-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.studio-image-view-tools button{width:100%}.studio-image-view input[type=range]{padding:0;min-height:32px;width:100%;accent-color:var(--focus)}

.studio-room-rows{gap:2.7cqw!important;align-items:stretch}.studio-room-rows>.studio-room-column{display:flex!important;flex-direction:column;gap:1.2cqw;position:relative;border:0!important;padding:0!important}.studio-room-column+.studio-room-column:before{content:'';position:absolute;inset-block:0;inset-inline-start:-1.35cqw;width:1px;background:#dce5e9}.studio-room-column>div{display:flex;justify-content:space-between;gap:8px;padding-block:3px;border-bottom:1px solid #dce5e9}.studio-room-column bdi{white-space:nowrap;font-weight:700}

.compact-nearby .map-pin.is-nearby{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;padding:2.5px!important;border-width:1.5px!important}.compact-nearby .map-pin.is-nearby .ui-symbol{width:11.5px;height:11.5px}.compact-nearby .map-pin.is-nearby .map-pin-label{font-size:6.5px!important;min-height:15px!important;height:15px;padding:2.5px 4.5px;border-radius:4.5px}

#task #task-error:not(:empty):not([data-persistent=true]),#status:not(:empty):not([data-persistent=true]){position:fixed!important;left:20px!important;right:auto!important;bottom:24px!important;top:auto!important;transform:none!important;width:min(400px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;margin:0!important;padding:14px 18px!important;border:1px solid var(--border)!important;border-radius:14px;background:var(--panel);box-shadow:var(--shadow);font-size:13px;line-height:1.6;text-align:right;z-index:100;pointer-events:none}#task-error:empty{display:none}@media(max-width:640px){#task #task-error:not(:empty):not([data-persistent=true]),#status:not(:empty):not([data-persistent=true]){left:12px!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}}

.compact-nearby .map-pin.is-nearby:before{content:'';position:absolute;inset:-11px;border-radius:50%;background:transparent}

.editor-missing-notice{grid-column:1/-1;margin:0;padding:8px 20px;background:var(--soft);color:var(--muted);font-size:12px;border-bottom:1px solid var(--border)}

.canvas-editor.four-editor:has(.editor-missing-notice){grid-template-rows:auto auto minmax(0,1fr)}.editor-missing-notice{flex:0 0 auto}

.studio-room-column+.studio-room-column:before{background:#b5cad4}

/* Manager-owned company pages: compact existing controls and complete originals. */
.identity-slot-grid{display:grid;gap:10px}.identity-slot{display:grid!important;grid-template-columns:24px 1fr;gap:6px 10px;align-items:center;padding:8px!important;text-align:right!important;min-height:0!important;font-size:13px!important}.identity-slot>.resource-image{grid-column:1/-1;aspect-ratio:297/210;width:100%;position:relative;overflow:hidden;border-radius:8px;background:var(--soft)}.identity-slot>.resource-image canvas,.identity-slot>.resource-image img{width:100%!important;height:100%!important;object-fit:contain!important}.identity-slot .ui-symbol{width:18px;height:18px}.identity-extra{margin-top:14px}.identity-extra>summary{font-size:12px}.identity-picker-actions{display:flex;gap:6px}.identity-picker-actions button{font-size:12px!important;padding:8px!important;min-height:40px!important;flex:1}.identity-picker-actions .ui-symbol{width:17px;height:17px}.identity-file-grid{display:grid;gap:10px;margin-block:12px}.identity-file-card{border:1px solid var(--border);border-radius:12px;padding:8px;display:grid;gap:7px;min-width:0}.identity-file-card[hidden]{display:none}.identity-file-card[data-selected=true]{border-color:var(--focus);background:var(--soft)}.identity-file-card>.resource-image{aspect-ratio:297/210;position:relative;overflow:hidden;border-radius:7px}.identity-file-card>.resource-image img,.identity-file-card>.resource-image canvas{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:contain!important}.identity-file-card>strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-file-card>button{font-size:12px!important;min-height:38px!important;padding:7px!important}.identity-file-card .ui-symbol{width:16px;height:16px}.identity-upload .manager-upload-drop{min-height:130px;padding:20px;font-size:13px}.identity-upload .manager-upload-drop>strong{font-size:15px}.identity-upload .manager-upload-row{grid-template-columns:72px minmax(0,1fr) 40px}.identity-upload .manager-upload-row strong{font-size:13px}.identity-upload .manager-upload-row small{font-size:11px}.identity-upload .manager-upload-remove{min-width:38px;min-height:38px;padding:8px}.identity-upload .manager-upload-remove .ui-symbol{width:18px;height:18px}.identity-upload .manager-upload-footer button{font-size:13px}.studio-properties:has(.identity-slot-grid)>small{font-size:11px;line-height:1.6}

.studio-native-identity{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;background:transparent!important;pointer-events:none;overflow:hidden}.studio-native-identity canvas,.studio-native-identity img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;max-width:none!important}.studio-native-identity .resource-label{display:none}.studio-sheet:has(.studio-native-identity.has-image) .studio-brand-rail>span{display:none}

/* Settings use the existing workspace and navigation pattern. */
.library-settings-page{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;align-items:start}.library-settings-nav{display:flex;flex-direction:column;gap:6px}.library-settings-nav button{justify-content:flex-start;gap:10px;min-height:44px;padding:12px;font-size:13px;text-align:start}.library-settings-nav button[aria-current=true]{background:var(--soft);border-color:var(--focus);color:var(--action)}.library-settings-content{min-height:210px;padding:24px}.library-settings-content h2{font-size:18px;margin:0 0 20px}.library-settings-content .settings-appearance button[aria-pressed=true]{background:var(--soft);border-color:var(--focus)}
@media(max-width:640px){.library-settings-page{grid-template-columns:1fr;gap:14px}.library-settings-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.library-settings-nav button{font-size:12px;padding:10px;line-height:1.5}.library-settings-content{padding:18px;min-height:150px}}

/* Cover facts share the original identity image, with no painted layer. */
.studio-pro .studio-brand-cover.has-unit-summary{inset:0;height:100%;padding:0;display:block}
.studio-brand-cover.has-unit-summary>small,.studio-brand-cover.has-unit-summary>strong,.studio-brand-cover.has-unit-summary>div{position:absolute;width:85.45%;left:6.36%;margin:0;display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column;gap:.3cqw}
.studio-brand-cover.has-unit-summary>small{top:29.52%;font-size:1.78cqw}.studio-brand-cover.has-unit-summary>strong{top:36.19%;height:11.43%;font-size:2.97cqw;line-height:1.3}.studio-brand-cover.has-unit-summary>div:nth-child(3){top:50.48%;font-size:2.73cqw}.studio-brand-cover.has-unit-summary>div small{font-size:1.3cqw!important;font-weight:300}.studio-brand-cover.has-unit-summary>div:nth-child(4){top:63.33%;left:51.81%;width:40%;font-size:2.26cqw}.studio-brand-cover.has-unit-summary>div:nth-child(5){top:63.33%;width:40%;font-size:2.26cqw}.studio-brand-cover.has-unit-summary>div:nth-child(6){top:74.76%;font-size:1.78cqw}

.library-shell div.manager-tree .wb-row[data-kind=type] .manager-node-copy small,.library-shell div.manager-tree .wb-row[data-kind=unit] .manager-node-copy small{font-size:11px!important;font-weight:300;line-height:1.4;white-space:nowrap;max-width:100%}
.library-shell div.manager-tree .wb-row[data-kind=type] .manager-node-copy,.library-shell div.manager-tree .wb-row[data-kind=unit] .manager-node-copy{min-width:118px;padding-inline:9px}
.library-shell .video-card .visual-cover-button{position:absolute;inset:0;width:100%;height:100%!important}
.video-card .visual-cover-button .resource-image{position:absolute;inset:0;width:100%;height:100%!important;padding:0!important}
.video-play-badge{position:absolute;inset:0;margin:auto;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#172331c9;color:#fff;box-shadow:0 2px 10px #0003;pointer-events:none}
.video-play-badge .ui-symbol{width:23px;height:23px;margin-inline-start:3px;fill:currentColor;stroke-width:1}
.video-card .resource-image img{width:100%;height:100%;object-fit:cover!important;object-position:center!important}
.library-shell .file-list .visual-card.video-card .visual-cover-button .resource-image{max-height:none!important;min-height:0!important}
.library-shell .file-list .visual-card.video-card .visual-cover-button .resource-image img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center!important}

/* User-approved four-step setup and existing document price-card surface. */
#task:has(.offer-setup){height:min(82dvh,900px);max-height:calc(100dvh - 32px);width:min(1100px,calc(100vw - 32px))}
#task:has(.offer-setup) .task-body{min-height:0;overflow:auto}
#task .offer-setup.visual-setup{width:100%;max-width:none;min-height:56dvh;display:flex;flex-direction:column;gap:18px}
#task .offer-setup .setup-stage{flex:1;min-height:0}
#task .offer-setup .setup-choices{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;width:100%!important;max-width:none!important;gap:16px!important;justify-content:stretch!important}
#task .offer-setup .setup-choice{width:100%!important;max-width:none!important;aspect-ratio:auto!important;min-height:220px!important}
#task .offer-setup .setup-choice-caption{position:relative!important;inset:auto!important;opacity:1!important;transform:none!important;padding:14px!important;background:var(--panel)!important;color:var(--text)!important}
#task .offer-setup .setup-cover,#task .offer-setup .setup-project-choice>.resource-image{height:155px!important;min-height:155px!important;max-height:155px!important;aspect-ratio:auto!important}
#task .offer-setup .setup-footer{position:sticky;bottom:0;background:var(--panel);padding-block:12px;z-index:2}
#task .offer-setup .setup-include-price{padding:16px;border:1px solid var(--border);border-radius:14px;min-height:52px}
#task .studio-pro .studio-fact-card{background:#eaf5f8!important;border:1px solid #c9dce4!important;border-radius:5px!important;padding:1cqw!important;display:flex;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important}
#task .studio-pro .studio-fact-card .studio-label{align-self:stretch!important}
@media(max-width:600px){#task:has(.offer-setup){height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);width:calc(100vw - 20px)}#task .offer-setup .setup-choices{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}#task .offer-setup .setup-choice{min-height:190px!important}#task .offer-setup .setup-cover,#task .offer-setup .setup-project-choice>.resource-image{height:125px!important;min-height:125px!important;max-height:125px!important}#task .offer-setup .setup-steps{overflow:auto;flex-wrap:nowrap}#task .offer-setup .setup-choice-caption{padding:10px!important}}

/* Tower selection: the project photo fills the card; unit plan cards keep their full-source layout. */
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image){height:330px!important;min-height:0!important;display:block!important;isolation:isolate}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) .setup-cover{position:absolute;inset:0;width:100%;height:100%!important;min-height:0!important;max-height:none!important;border-radius:inherit}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) .setup-cover :is(img,canvas){width:100%;height:100%;padding:0;object-fit:cover;object-position:center}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) .setup-choice-caption{position:absolute!important;inset:auto 0 0!important;padding:52px 14px 14px!important;background:linear-gradient(transparent,#000000a6 65%,#000000b8)!important;color:#fff!important;text-shadow:0 1px 3px #00000080}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) :is(.setup-choice-caption strong,.setup-choice-facts,.setup-choice-action){color:#fff!important}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) .setup-choice-kind{background:#00000038;color:#fff}
#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image) .setup-choice-action>.ui-symbol{background:#ffffff24}
@media(max-width:600px){#task .offer-setup .setup-choice[data-kind=tower]:has(.has-image){height:290px!important}}

/* Project selection shares the tower photo treatment, with a stable bottom caption. */
#task .setup-project-picker .setup-choices{padding:14px 20px!important;align-items:start}
#task .setup-project-picker .setup-project-choice{display:block!important;height:280px!important;min-height:0!important;padding:0!important;isolation:isolate;overflow:hidden}
#task .setup-project-picker .setup-project-choice>.project-cover{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;padding:0!important;border-radius:inherit}
#task .setup-project-picker .setup-project-choice>.project-cover :is(img,canvas){object-fit:cover!important;object-position:center!important}
#task .setup-project-picker .setup-project-choice>.setup-choice-caption{position:absolute!important;inset:auto 0 0!important;opacity:1!important;transform:none!important;padding:56px 14px 16px!important;gap:6px;background:linear-gradient(transparent,#000000a6 65%,#000000b8)!important;color:#fff!important;text-shadow:0 1px 3px #00000080}
#task .setup-project-picker .setup-project-choice .setup-choice-caption strong{font-size:18px!important;line-height:1.4!important;color:#fff!important;overflow-wrap:anywhere}
#task .setup-project-picker .setup-project-choice .setup-choice-caption small{font-size:12px!important;line-height:1.5;color:#fff!important;overflow-wrap:anywhere}
@media(max-width:600px){#task .setup-project-picker .setup-project-choice{height:240px!important}#task .setup-project-picker .setup-project-choice>.setup-choice-caption{padding:48px 12px 14px!important}#task .setup-project-picker .setup-project-choice .setup-choice-caption strong{font-size:16px!important}}

#task:has(.offer-setup){display:flex;flex-direction:column;overflow:hidden}
#task:has(.offer-setup) .dialog-head{flex-shrink:0}
#task:has(.offer-setup) #task-body{flex:1;min-height:0;overflow:auto}
#task .offer-setup.visual-setup{min-height:0}
#task .offer-setup .setup-footer{position:static;flex-shrink:0}
/* Project template settings reuse the existing panels, buttons and theme tokens. */
.project-template-editor{display:grid;gap:16px;max-width:100%;min-width:0}
.project-template-editor .profile-tabs{flex-wrap:wrap;gap:8px}
.project-template-editor .profile-tabs button[aria-pressed=true]{background:var(--soft);color:var(--action)}
.profile-content{min-height:200px;max-height:58vh;overflow:auto;padding:4px}
.profile-slots,.profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.profile-slot{border:1px solid var(--border);border-radius:16px;padding:12px;min-width:0;display:grid;gap:8px}
.profile-slot h3{font-size:14px;margin:0}.profile-slot small{overflow-wrap:anywhere}
.profile-photo-choice{padding:0;overflow:hidden;width:100%;min-height:120px;background:var(--soft)}
.profile-photo-choice .resource-image{height:150px;overflow:hidden;width:100%}
.profile-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.profile-picker button{display:grid;gap:8px;min-width:0;padding:8px;align-content:start}
.profile-picker .resource-image{height:100px;width:100%;overflow:hidden}
.profile-picker small{font-size:11px;overflow-wrap:anywhere}.profile-footer{padding-block-start:12px;border-top:1px solid var(--border)}
.profile-fields textarea{min-height:84px}.project-template-editor input[type=range]{width:100%;min-height:44px}
@media(max-width:600px){.profile-slots,.profile-fields{grid-template-columns:1fr}.profile-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-content{max-height:55vh}.project-template-editor .profile-tabs button{font-size:12px;padding:8px}}
#task:has(.project-template-editor){height:min(820px,calc(100dvh - 32px));overflow:hidden;display:flex;flex-direction:column}
#task:has(.project-template-editor) #task-body{min-height:0;flex:1;overflow:hidden}
#task:has(.project-template-editor) .project-template-editor{height:100%;min-height:0;grid-template-rows:auto auto auto minmax(0,1fr) auto}
#task:has(.project-template-editor) .profile-content{max-height:none;min-height:0}
#task:has(.project-template-editor) .profile-footer{background:var(--panel);margin:0}

/* D190 — compact navigation using the existing native components and palette. */
.library-language{display:flex;align-items:center;min-width:0;margin:0}
body.library-product .library-language select{width:112px;min-height:44px;font-size:13px;padding-block:8px;border-radius:13px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.library-shell .marsa-chrome-nav{gap:12px!important}
.library-shell .marsa-chrome-group{gap:4px!important}
.library-shell .marsa-chrome-group h2{margin-block:6px 2px!important}
.library-shell .filters>.editor-icon{flex:0 0 44px;min-width:44px;min-height:44px}
.library-shell .project-browser .browser-context>.manager-heading{gap:12px;margin-block-end:16px;padding-block-end:16px;flex-wrap:wrap}
.library-shell .project-browser .browser-context>.manager-heading h2{font-size:26px}
.library-shell .project-browser .browser-context .project-metadata{gap:16px;margin-block-end:16px}
.library-shell .project-browser .browser-context .project-metadata>div{padding-block:4px}
.browser-information{border-block-start:1px solid var(--border);margin-block-start:16px;padding-block:4px}
.browser-information>summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;color:var(--action);font-size:14px}
.browser-information>summary::before{content:'+';font-size:20px;width:20px;text-align:center}
.browser-information[open]>summary::before{content:'−'}
.browser-information .browser-facts{padding-block-start:12px}
.browser-information .browser-facts .editor-icon{min-width:44px;min-height:44px}
.browser-options{margin-inline-start:auto}.browser-options>summary{min-height:44px;display:flex;align-items:center;gap:8px;font-size:13px}
.library-view-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-block:0 22px;border-block-end:1px solid var(--border);padding-block-end:12px}
.library-view-tabs button{display:flex;gap:8px;min-height:44px;font-size:14px;padding:10px 16px}
.library-view-tabs button[aria-pressed=true]{background:var(--soft);border-color:var(--focus);color:var(--action)}
.library-view-tabs small{display:inline-grid;place-items:center;min-width:24px;padding:2px 6px;border-radius:8px;background:var(--panel);font-variant-numeric:tabular-nums}
.project-material-tabs,.manager-tabs{scrollbar-width:thin;scroll-padding-inline:12px}
.library-shell .project-material-tabs button,.library-shell .manager-tabs button{font-size:13px;min-height:44px;gap:7px;white-space:nowrap}
.library-shell .project-material-tabs .ui-symbol,.library-shell .manager-tabs .ui-symbol{flex-shrink:0;width:19px;height:19px}
.library-shell .ui-symbol{flex-shrink:0}
/* Shared chrome is RTL by default; mirror only this product's English shell. */
html[dir=ltr] body .library-shell.marsa-chrome.marsa-chrome{direction:ltr}
html[dir=ltr] body .library-shell .marsa-chrome-location{direction:ltr}
html[dir=ltr] .library-shell #omni-header-link .ui-symbol{transform:scaleX(-1)}
html[dir=ltr] .library-shell .manager-breadcrumb{direction:ltr}
html[dir=ltr] .library-shell .manager-tree{direction:ltr;text-align:start}
@media(max-width:1000px){.library-shell .topbar .crm-header-company{display:none!important}}
@media(max-width:760px){
 .library-shell .marsa-chrome-location .brand,.library-shell .marsa-chrome-location .header-divider{display:none!important}
 .library-shell .marsa-chrome-header{gap:8px!important;padding-inline:12px!important}
 .library-shell .marsa-chrome-tools{gap:6px!important}
 body.library-product .library-language select{width:96px;font-size:12px;padding-inline-start:9px;padding-inline-end:28px;background-position:right 8px center}
 body.library-product .library-language select:dir(rtl){background-position:left 8px center}
 .library-shell .marsa-chrome-location{min-width:0;gap:4px!important}
 .library-shell #header-current{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .library-shell .topbar #logout{display:none!important}
 .library-shell .project-material-tabs,.library-shell .manager-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-block:4px 10px}
 .library-shell .project-material-tabs>button,.library-shell .manager-tabs>button{flex:0 0 auto}
 .library-shell .project-browser .browser-context>.manager-heading h2{font-size:23px}
 .library-view-tabs{gap:6px}.library-view-tabs button{flex:1;justify-content:center;padding-inline:10px;font-size:13px}
 html[dir=ltr] body .library-shell.marsa-chrome.marsa-chrome .marsa-chrome-sidebar{inset:0 auto 0 0}
}
@media(max-width:760px){
 html body .library-shell.marsa-chrome.marsa-chrome .marsa-chrome-location{width:auto;flex:0 0 auto}
 html body .library-shell.marsa-chrome.marsa-chrome .marsa-chrome-tools{width:auto;flex:0 1 auto;margin-inline-start:auto}
 .library-shell #header-current{display:none}
 html body .library-shell.marsa-chrome.marsa-chrome .marsa-chrome-header{flex-wrap:nowrap;min-height:68px}
 .library-shell .toolbar h1{font-size:22px;line-height:1.5;overflow-wrap:anywhere}
}
html[dir=ltr] .library-shell div.manager-tree span.wb-node{direction:ltr}
.library-shell .manager-node-copy small{font-size:11px;white-space:nowrap}
@media(max-width:760px){
 .library-shell .marsa-chrome-brand .library-wordmark{min-width:0;flex:0 1 150px}
 .library-shell .marsa-chrome-brand .library-wordmark .marsa-logo{flex-shrink:0;background-size:contain!important}
}
.manager-tree-heading .tree-disclosure{margin-inline-start:auto;min-width:44px;min-height:44px;padding:10px}
.manager-tree-heading{gap:6px;padding-inline:4px}
.manager-tree-heading>h2{white-space:nowrap;font-size:12px!important;line-height:1.4;flex-shrink:0}
.manager-tree-heading>.ui-symbol{width:16px;height:16px;flex-shrink:0}
.floor-band-prices{display:grid;gap:8px;margin-block:16px;min-width:0}
.floor-band-prices>h3{font-size:14px!important;margin:0}
.floor-band-prices>.manager-sheet{padding:0;border:0;box-shadow:none;background:transparent;min-width:0}
.floor-band-prices .manager-table{width:100%;min-width:0!important;font-size:13px}
.floor-band-prices .manager-table :is(th,td){padding:10px 8px!important}
.floor-band-prices .manager-table bdi{white-space:nowrap}
.floor-band-prices button{min-height:44px;font-size:12px;padding:6px 10px;line-height:1.4}
.floor-band-prices tr[data-selected=true]{background:var(--soft)}
.manager-sidebar:has(>.manager-tree[hidden]){height:auto!important;min-height:0!important}
.manager-sidebar:has(>.manager-tree[hidden]) .manager-tree-heading{margin-bottom:0;border-bottom:0}
@media(max-width:760px){
 body.library-product .library-language select{width:108px;padding-inline-start:9px!important;padding-inline-end:28px!important;text-align:start}
}
/* Touch layouts retain accessible icon labels without off-canvas hover bubbles. */
@media(max-width:760px){.library-shell .editor-tooltip{display:none}}
/* A project without a cover remains identifiable in both appearance modes. */
.library-shell .project-photo-cover .project-cover:not(:has(img,canvas))>span{color:var(--text);padding:16px;white-space:normal;line-height:1.6;text-align:center}

/* Offer review uses existing card, form and action components. */
.offer-notification-list,.offer-policy-list{display:grid;gap:12px;min-width:0}
.offer-notification-row,.offer-policy-row{display:flex;gap:16px;align-items:center;justify-content:space-between;min-width:0}
.offer-notification-row>div{min-width:0;overflow-wrap:anywhere}
.offer-policy-row>label,.offer-policy-row>.field{flex:1;min-width:0}
.offer-policy-row select{width:100%;max-width:100%}
.offer-review{min-width:0}.offer-review .actions{flex-wrap:wrap}
#offer-inbox-count:empty{display:none}
@media(max-width:760px){.offer-notification-row{align-items:flex-start}.offer-policy-row{gap:8px}.offer-policy-row select{font-size:13px}.offer-policy-row label{min-width:0;flex:1}}

.offer-review .actions button,.offer-policy-row button{display:inline-flex;align-items:center;justify-content:center;gap:8px}

.offer-policy-row>label{flex:1;min-width:0}.offer-policy-row>.editor-icon{flex:0 0 44px;width:44px;height:44px}
.offer-notification-row>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0}
.offer-policy-row .editor-tooltip{left:auto;inset-inline-end:0;transform:none}
.offer-policy-row .editor-icon:hover>.editor-tooltip,.offer-policy-row .editor-icon:focus-visible>.editor-tooltip{transform:none}

/* The read-only lead disclosure stays in the task flow, including on mobile. */
.offer-read-context>.ui-action-menu-items{position:static;inset:auto;min-width:0;max-width:none;width:100%;margin-block:8px;box-shadow:none;max-block-size:min(320px,45vh);overflow:auto}

/* D138: Library UI typography only. Document/canvas text is governed by its template. */
@font-face{font-family:Masaar;src:url('/assets/Masaar-Light.ttf') format('truetype');font-weight:300;font-display:swap}
:root{--library-type-body:14px;--library-type-label:13px;--library-type-caption:12px;--library-type-card:16px;--library-type-section:18px;--library-type-page:22px;--library-type-light:300;--library-type-reading:400;--library-type-leading:1.55}
body.library-product{font-size:var(--library-type-body);font-weight:var(--library-type-light);line-height:var(--library-type-leading)}
body.library-product h1,body.library-product .toolbar h1{font-size:var(--library-type-page);font-weight:300;line-height:1.4}
body.library-product h2,body.library-product .manager-identity h2,body.library-product .manager-heading h2{font-size:var(--library-type-section);font-weight:300;line-height:1.45}
body.library-product h3,body.library-product .manager-section-heading h3,body.library-product .project-map-tools h3{font-size:var(--library-type-card);font-weight:400;line-height:1.45}
body.library-product #task .dialog-head h2{font-size:var(--library-type-section);font-weight:300}
body.library-product button,body.library-product .button,body.library-product .ui-action-menu>summary{font-size:var(--library-type-label);font-weight:300;line-height:1.5}
body.library-product .project-map-tools>button,body.library-product .map-style-picker button{font-size:var(--library-type-body)}
body.library-product .marsa-chrome-nav button[aria-current=page],body.library-product [aria-selected=true],body.library-product .primary{font-weight:400}
body.library-product label,body.library-product legend{font-size:var(--library-type-label);font-weight:400}
body.library-product input,body.library-product textarea,body.library-product select{font-size:var(--library-type-body);font-weight:400;line-height:1.55}
body.library-product p,body.library-product table,body.library-product .source-text,body.library-product .project-description,body.library-product .record-value,body.library-product dd{font-weight:400}
body.library-product .record-table,body.library-product .saved-offer-table,body.library-product .manager-table,body.library-product .offer-context,body.library-product .record-summary{font-size:var(--library-type-body)}
body.library-product .project-metadata dt,body.library-product .project-management>span,body.library-product .template-context>p{font-size:var(--library-type-label)}
body.library-product .template-card h2,body.library-product .file-card h2,body.library-product .resume-copy h2,body.library-product .manager-file .visual-overlay h3{font-size:var(--library-type-card);font-weight:400}
body.library-product .project-photo-copy h2{font-size:20px;font-weight:400}
body.library-product .project-materials .visual-overlay h2{font-size:15px;font-weight:400}
body.library-product .manager-unit-label>bdi,body.library-product .manager-child-cards bdi{font-size:var(--library-type-body);font-weight:400}
body.library-product div.manager-tree .manager-node-copy bdi{font-weight:300}
body.library-product div.manager-tree .wb-row.wb-active .manager-node-copy bdi{font-weight:400}
body.library-product .manager-upload-drop strong,body.library-product .manager-inline-drop>span{font-size:var(--library-type-body);font-weight:400}
body.library-product .chart-heading h2{font-size:var(--library-type-card);font-weight:400}
body.library-product .chart-ring strong,body.library-product .chart-total strong{font-size:28px;font-weight:300}
body.library-product .chart-legend dd,body.library-product .chart-drafts>strong{font-size:16px;font-weight:400}
body.library-product .map-note,body.library-product .project-map-footer,body.library-product .map-draw-context label{font-size:var(--library-type-caption)}
body.library-product .map-layer-items button{font-size:var(--library-type-label);font-weight:400}
/* Geographic labels retain their hierarchy above imagery; small supporting text stays Regular. */
body.library-product .map-annotation-label,body.library-product .map-pin-label{font-weight:400}
body.library-product .project-map-stage .map-pin:not(.is-nearby) .map-pin-label{font-weight:700}
body.library-product .badge{font-size:var(--library-type-caption);font-weight:400}
@media(max-width:760px){body.library-product input:not([type=checkbox]):not([type=file]),body.library-product textarea,body.library-product select{font-size:16px}body.library-product .project-map-tools>button{font-size:14px}body.library-product .toolbar h1{font-size:20px}}

/* D158: explicit local Masaar adoption; legacy chrome family resolves to identical bytes. */
@font-face{font-family:Arada;src:url('/assets/Masaar-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Arada;src:url('/assets/Masaar-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
body.library-product .maplibregl-map,body.library-product .pswp{font-family:Masaar,sans-serif}

/* Marsa Eye: existing CRM assistant surfaces, locally adapted for Library. */
/* Keep the standard backdrop-filter last: production CSS minification merges aliases. */
/* D81 / S09: local CRM assistant, one glass overlay over the native workspace. */
.contextual-assistant-trigger{display:grid!important;place-items:center;padding:6px!important;min-width:44px;min-height:44px}
.contextual-assistant-trigger .voice-sphere{width:28px;height:28px}
.contextual-assistant-panel{--assistant-ink:#203e54;--assistant-muted:#506879;--assistant-line:rgba(105,146,167,.23);--assistant-surface:rgba(255,255,255,.32);--assistant-field:rgba(255,255,255,.42);--assistant-speed:18s;position:fixed;left:24px;top:100px;bottom:24px;width:min(402px,calc(100vw - 48px));max-height:760px;z-index:150;box-sizing:border-box;isolation:isolate;display:flex;flex-direction:column;gap:16px;padding:22px;border:1px solid rgba(255,255,255,.72);border-radius:32px;background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(183,220,235,.08) 60%,rgba(136,199,216,.15)),rgba(246,251,255,.5);-webkit-backdrop-filter:blur(30px) saturate(145%);backdrop-filter:blur(30px) saturate(145%);box-shadow:0 24px 70px -18px rgba(19,53,77,.25),0 4px 12px rgba(28,57,76,.04),inset 0 1px 0 rgba(255,255,255,.8),inset 0 -1px 0 rgba(121,183,201,.25);color:var(--assistant-ink);font-family:Arada,sans-serif;font-synthesis:none;animation:assistant-arrive 700ms cubic-bezier(.16,1,.3,1) both;transform-origin:top left;outline:none}
.contextual-assistant-panel::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;background:conic-gradient(from var(--voice-angle),transparent 4%,#86d8ec88 20%,#386ea9b0 32%,transparent 46%,#c9c0ed88 59%,#8ee5eab8 70%,transparent 89%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;animation:voice-border var(--assistant-speed) linear infinite;opacity:.7}
.contextual-assistant-panel[data-phase="listening"]{--assistant-speed:3.8s}.contextual-assistant-panel[data-phase="processing"],.contextual-assistant-panel[data-phase="saving"]{--assistant-speed:3s}.contextual-assistant-panel:is([data-phase="processing"],[data-phase="listening"])::before{opacity:1}
.contextual-assistant-panel :is(button,input,textarea,select){font:inherit;color:inherit;box-sizing:border-box}.contextual-assistant-panel button{cursor:pointer;border:1px solid var(--assistant-line);border-radius:14px;background:var(--assistant-surface);padding:10px 12px;min-height:44px;transition:background 180ms,box-shadow 180ms,transform 220ms cubic-bezier(.2,.8,.2,1)}
.contextual-assistant-panel button:hover:enabled{background:var(--assistant-field);box-shadow:0 3px 12px #13374a0a}.contextual-assistant-panel button:active:enabled{transform:scale(.97)}.contextual-assistant-panel button:disabled{opacity:.45;cursor:default}.contextual-assistant-panel :is(button,textarea,input,select):focus-visible,.contextual-assistant-trigger:focus-visible{outline:2px solid #288cb0;outline-offset:3px}
.contextual-assistant-panel .contextual-assistant-header{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:10px;align-items:center;flex:none;border:0;background:transparent;padding:0;min-height:48px;box-shadow:none}
.contextual-assistant-header>div{text-align:center;min-width:0}.contextual-assistant-header h2{margin:0;font-size:16px;font-weight:700;line-height:1.6;overflow-wrap:anywhere}.contextual-assistant-context{display:block;color:var(--assistant-muted);font-size:11px;font-weight:400;line-height:1.7}.contextual-assistant-emblem{display:grid;place-items:center}.contextual-assistant-emblem .voice-sphere{width:26px;height:26px;opacity:.8}.contextual-assistant-panel .contextual-assistant-close{display:grid;place-items:center;border:0;background:transparent;padding:0;border-radius:50%;width:44px;height:44px}
.contextual-assistant-conversation{flex:1;display:flex;flex-direction:column;gap:14px;min-width:0;overflow:auto;min-height:0;line-height:1.85;padding:2px 3px 10px;scrollbar-width:thin;scrollbar-color:#6f9da54a transparent;overscroll-behavior:contain;scroll-padding-block:18px}.contextual-assistant-conversation.is-empty{justify-content:center}.contextual-assistant-conversation p{margin:0;overflow-wrap:anywhere}.contextual-assistant-welcome{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px 8px}.contextual-assistant-welcome>.voice-large{width:92px;height:92px;box-shadow:inset 0 0 0 1px #d7f9ff8c,0 18px 40px -16px #65a5c84d}.contextual-assistant-welcome>p{font-size:19px;font-weight:400}
.contextual-assistant-shortcuts{display:grid;gap:7px;width:100%;max-width:250px}.contextual-assistant-panel .contextual-assistant-shortcuts button{display:flex;align-items:center;justify-content:space-between;font-size:12px;text-align:start;border-color:transparent;background:transparent;padding:10px 14px}.contextual-assistant-shortcuts svg{width:15px;height:15px;color:var(--assistant-muted)}
.contextual-assistant-panel .contextual-assistant-composer{flex:none;display:block;margin:0;padding:12px 12px 10px;border:1px solid var(--assistant-line);border-radius:23px;background:var(--assistant-field);box-shadow:inset 0 1px 0 #ffffff60,0 4px 20px #19354404;transition:border-color 200ms,box-shadow 200ms}.contextual-assistant-composer:focus-within{border-color:#6eafc1;box-shadow:0 0 0 3px #82c7da15}.contextual-assistant-panel .contextual-assistant-composer textarea{display:block;width:100%;min-height:50px;max-height:140px;resize:none;background:transparent;border:0;box-shadow:none;padding:4px 4px 8px;border-radius:8px;font-size:14px;line-height:1.7;outline:none}.contextual-assistant-composer textarea::placeholder{color:var(--assistant-muted)}.contextual-assistant-composer-actions{display:flex;align-items:center;justify-content:space-between;direction:rtl;gap:8px}.contextual-assistant-panel .contextual-assistant-composer-actions button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;padding:0}.contextual-assistant-panel .contextual-assistant-mic{background:transparent}.contextual-assistant-panel .contextual-assistant-send{background:#285778;color:#fff;box-shadow:0 3px 10px #1c52712b}.contextual-assistant-panel .contextual-assistant-send:hover:enabled{background:#1c4767}.contextual-assistant-send:disabled{opacity:.3}
.contextual-assistant-panel .contextual-assistant-back{align-self:center;display:flex;align-items:center;gap:8px;font-size:11px;padding:8px 12px;border:0;background:transparent;color:var(--assistant-muted)}.contextual-assistant-back svg{width:16px;height:16px}.contextual-assistant-hint{font-size:12px;color:var(--assistant-muted)}
.contextual-assistant-thinking{display:grid;place-items:center;flex:1;min-height:170px;padding:16px 0}.contextual-assistant-thinking .voice-large{width:108px;height:108px}.contextual-assistant-message{padding:16px;background:var(--assistant-surface);border:1px solid var(--assistant-line);border-radius:20px;font-size:14px;animation:assistant-content 430ms cubic-bezier(.16,1,.3,1) both}
.contextual-assistant-answer{display:grid;gap:14px;font-size:14px;animation:assistant-content 430ms cubic-bezier(.16,1,.3,1) both}.contextual-assistant-answer>section{display:grid;gap:9px;border:1px solid var(--assistant-line);background:var(--assistant-surface);border-radius:20px;padding:16px;animation:assistant-content 500ms cubic-bezier(.16,1,.3,1) both}.contextual-assistant-answer h3{margin:0;font-size:14px}.contextual-assistant-answer small{font-size:11px;color:var(--assistant-muted)}.contextual-assistant-answer button{justify-self:start;font-size:12px}
.contextual-assistant-choices{display:grid;gap:9px;margin-block:14px;animation:assistant-content 430ms ease-out both}.contextual-assistant-choices button{text-align:start;display:grid;gap:4px}.contextual-assistant-choices small{color:var(--assistant-muted);font-size:11px}.contextual-assistant-choices button:nth-child(2){animation-delay:45ms}.contextual-assistant-choices button:nth-child(3){animation-delay:90ms}
/* The existing form lives inside this surface; it never adds another modal header. */
.contextual-assistant-panel .voice-dialog.contextual-inline-review[open]{display:block;position:relative;inset:auto;width:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;backdrop-filter:none;overflow:visible;animation:none;--voice-ink:var(--assistant-ink);--voice-muted:var(--assistant-muted);--voice-line:var(--assistant-line);--voice-field:var(--assistant-field);--voice-card-surface:var(--assistant-surface)}
.contextual-assistant-panel .contextual-inline-review::before{display:none}.contextual-assistant-panel .contextual-inline-review .voice-review{padding:0;background:transparent}.contextual-assistant-panel .contextual-inline-review .voice-cards{display:flex!important;flex-direction:column;grid-template-columns:minmax(0,1fr);overflow:visible;padding:0;gap:12px}.contextual-assistant-panel .contextual-inline-review .voice-card{width:100%;min-width:0;max-width:none;flex:auto;padding:16px;border:1px solid var(--assistant-line);border-radius:22px;background:var(--assistant-surface);animation:assistant-content 520ms cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--card-order,0)*40ms)}
.contextual-assistant-panel .contextual-inline-review .voice-actions{position:sticky;bottom:-10px;z-index:2;display:flex;flex-wrap:wrap;gap:8px;padding:14px 0 4px;background:linear-gradient(transparent,var(--assistant-field) 35%);backdrop-filter:blur(16px);border-radius:14px}.contextual-assistant-panel .contextual-inline-review .voice-primary{flex:1;background:#285778;color:white;border:0;min-width:180px}.contextual-inline-review .voice-stage{min-height:320px;padding:30px 0;gap:38px}.contextual-inline-review .voice-leave,.contextual-inline-review .voice-done{padding:30px 0}.contextual-inline-review :is(input,select,textarea){max-width:100%;box-sizing:border-box}.contextual-assistant-panel .contextual-inline-review .voice-toggle{padding:0;min-height:0}.contextual-assistant-panel .contextual-inline-review .voice-stop{background:var(--assistant-field);border-color:var(--assistant-line)}
.contextual-assistant-panel .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contextual-assistant-shade{position:fixed;inset:0;z-index:149;border:0;background:rgba(19,45,65,.16);backdrop-filter:blur(5px)}
@keyframes assistant-arrive{from{opacity:0;transform:translate(-18px,14px) scale(.94)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes assistant-content{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
[data-theme="dark"] .contextual-assistant-panel{--assistant-ink:#edf6fc;--assistant-muted:#adbfcd;--assistant-line:rgba(166,199,215,.19);--assistant-surface:rgba(150,188,207,.06);--assistant-field:rgba(12,30,46,.38);background:linear-gradient(140deg,#8298b518,transparent 60%,#5dabb417),rgba(21,38,56,.62);border-color:#c0d6e333;box-shadow:0 30px 70px -15px #0007,inset 0 1px 0 #c4e8f021}
[data-theme="dark"] .contextual-assistant-panel .contextual-assistant-send,[data-theme="dark"] .contextual-assistant-panel .contextual-inline-review .voice-primary{background:#b2dbe9;color:#183749}[data-theme="dark"] .contextual-assistant-panel .contextual-assistant-send:hover:enabled{background:#c9eaf5}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.contextual-assistant-panel{background:#f0f7fb}[data-theme="dark"] .contextual-assistant-panel{background:#192f42}}
@media(max-width:760px){.contextual-assistant-panel{inset:76px 12px max(12px,env(safe-area-inset-bottom));width:auto;max-height:none;padding:18px;border-radius:28px;transform-origin:bottom center}.contextual-assistant-welcome{gap:20px;padding:12px 8px}.contextual-inline-review .voice-stage{min-height:250px}.contextual-assistant-composer textarea{font-size:16px!important}}
@media(max-height:650px){.contextual-assistant-panel{top:64px;gap:10px;padding:14px}.contextual-assistant-welcome{gap:12px;padding:8px}.contextual-assistant-welcome>.voice-large{width:56px;height:56px}.contextual-assistant-shortcuts{display:flex;flex-wrap:wrap;max-width:none;justify-content:center}.contextual-assistant-shortcuts svg{display:none}.contextual-inline-review .voice-stage{min-height:160px}.contextual-assistant-thinking{min-height:140px}}
@media(prefers-reduced-motion:reduce){.contextual-assistant-panel,.contextual-assistant-panel::before,.contextual-assistant-panel *{animation:none!important;transition:none!important}.contextual-assistant-panel{transform:none;opacity:1}}
/* Source-list chips still belong to the original workspace. */
.read-scope-filters{display:flex;flex-wrap:wrap;gap:8px;margin-block:8px}.read-scope-filters:empty{display:none}.read-scope-filters button{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);color:inherit;font:inherit;font-size:12px}.read-scope-filters span{margin-inline-start:8px}
@media(max-width:760px){.contextual-assistant-panel{top:var(--assistant-top,76px);bottom:auto;height:var(--assistant-height,calc(100dvh - 88px - env(safe-area-inset-bottom)))}}
.contextual-inline-review textarea#voice-transcript-text{min-height:100px;height:112px}
/* Global CRM headers have a strong theme fill; this embedded surface is transparent. */
.contextual-assistant-panel .contextual-assistant-header{background:transparent!important}
.contextual-inline-review :is(input,select,textarea,button){scroll-margin-block:20px 90px}
.contextual-assistant-timestamp{line-height:1.9}
.contextual-assistant-panel .contextual-assistant-header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
@media(min-width:761px){.contextual-assistant-panel{bottom:auto;height:min(680px,calc(100dvh - 124px));overflow:hidden}.contextual-assistant-panel .voice-stage{min-height:230px;padding:16px 0}}
@media(prefers-reduced-motion:reduce){.contextual-assistant-panel{transition:none}}

/* Each item stays inside the one scrollable column; the composer never overlaps it. */
.contextual-assistant-conversation>*{flex-shrink:0;min-width:0;max-width:100%;box-sizing:border-box}
.contextual-assistant-conversation>.contextual-assistant-thinking{flex-shrink:1}
.contextual-assistant-panel .contextual-inline-review .voice-card{min-height:0;box-sizing:border-box;overflow-wrap:anywhere}
.contextual-assistant-panel .contextual-inline-review .voice-cards{width:100%;min-width:0}
.contextual-assistant-panel .contextual-inline-review :is(.voice-card,.voice-actions)>*{min-width:0;max-width:100%}
.contextual-assistant-panel .contextual-assistant-composer{position:relative;z-index:1;min-width:0;width:100%}

.contextual-assistant-message.is-user{align-self:flex-start;max-width:90%;background:var(--assistant-field);border:1px solid var(--assistant-line);border-radius:18px 18px 6px 18px;padding:10px 14px;white-space:pre-wrap}.contextual-assistant-answer{white-space:normal}.contextual-assistant-conversation .contextual-assistant-thinking{min-height:110px}.contextual-assistant-thinking .voice-large{width:60px;height:60px}

/* Library Eye: the existing particle orb is both launcher and assistant. */
#library-eye-trigger{border-radius:50%!important;background:transparent!important;border:0!important;box-shadow:none!important}
.library-eye-trigger{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;overflow:visible;border:1px solid var(--border);border-radius:50%;background:var(--library-chip);color:var(--text)}
.library-eye-trigger .library-eye-trigger-orb{position:absolute;inset:-10px;width:64px;height:64px;pointer-events:none;filter:brightness(.55) saturate(1.8)}
html[data-theme=dark] .library-eye-trigger .library-eye-trigger-orb{filter:brightness(1.65) saturate(1.15)}
#library-eye-panel{--assistant-ink:var(--text);--assistant-muted:var(--muted);--assistant-line:var(--border);--assistant-surface:var(--soft);--assistant-field:rgba(255,255,255,.72);gap:10px;background:radial-gradient(ellipse at 0% 100%,#e5edb78c,transparent 48%),radial-gradient(ellipse at 46% 110%,#8de8ee8c,transparent 44%),radial-gradient(ellipse at 110% 65%,#f0b2df73,transparent 45%),radial-gradient(ellipse at 0% 8%,#d4c5f52e,transparent 46%),#fcfbfff5;border-color:#d6c7ef8c;color:var(--text);font-family:Arada,sans-serif;direction:inherit;z-index:150}
html[data-theme=dark] #library-eye-panel{--assistant-ink:#f3eefb;--assistant-muted:#c2b9d9;--assistant-line:#b19bcc36;--assistant-surface:#57436a24;--assistant-field:#21182eb0;background:radial-gradient(ellipse at 0% 100%,#8cb89124,transparent 48%),radial-gradient(ellipse at 46% 110%,#59ced83b,transparent 44%),radial-gradient(ellipse at 110% 65%,#c981c53b,transparent 45%),radial-gradient(ellipse at 0% 8%,#9384d02e,transparent 46%),#231d30f5;color:#f3eefb}
#library-eye-panel::before{background:linear-gradient(135deg,#ddcfff80,#b8a2df0a,#b797e640);pointer-events:none}
#library-eye-panel .contextual-assistant-header{background:transparent!important;min-height:44px}
#library-eye-panel .contextual-assistant-header h2{margin:0;font-size:15px;font-weight:600;letter-spacing:.02em}
#library-eye-panel :is(button,textarea){font-family:inherit;min-height:44px}
#library-eye-panel .contextual-assistant-close{font-size:26px;line-height:1;flex:none}
#library-eye-panel .contextual-assistant-conversation{min-height:0;overflow:auto}
#library-eye-panel .contextual-assistant-conversation.is-empty{justify-content:center}
#library-eye-panel .contextual-assistant-welcome{padding:0;width:100%;min-height:0;gap:4px}
#library-eye-panel .library-eye-aura{position:relative;isolation:isolate;width:min(210px,100%);aspect-ratio:1;flex:none;margin:0 auto -24px;pointer-events:none}
#library-eye-panel .library-eye-orb{display:block;width:100%;height:auto;aspect-ratio:1;max-width:100%;max-height:none;min-height:0;margin-inline:auto;filter:brightness(.58) saturate(1.7)}

html[data-theme=dark] #library-eye-panel .library-eye-orb{filter:brightness(1.4) saturate(1.1)}
#library-eye-panel .contextual-assistant-welcome>p{margin:0;font-family:Masaar,Arada,sans-serif;font-size:17px;font-weight:300;line-height:1.6}
#library-eye-panel .library-eye-status{flex:none;margin:0;text-align:center;font-size:12px;line-height:1.7;color:var(--assistant-muted)}
#library-eye-panel .library-eye-status:empty{display:none}
#library-eye-panel .contextual-assistant-composer{padding:10px 12px;border-color:var(--assistant-line);background:var(--assistant-field);border-radius:25px;box-shadow:0 4px 24px #392a6108,inset 0 1px 0 #ffffff38}
#library-eye-panel .contextual-assistant-composer textarea{min-height:42px;max-height:120px;resize:none;color:var(--assistant-ink);background:transparent;caret-color:var(--assistant-ink);width:100%;box-sizing:border-box;font-size:12px!important;line-height:1.7;padding:4px 6px 8px}
#library-eye-panel .contextual-assistant-composer textarea::placeholder{font-size:12px;color:var(--assistant-muted);opacity:.9}
#library-eye-panel .contextual-assistant-composer-actions{display:flex;justify-content:flex-end;direction:ltr;gap:6px}
#library-eye-panel .contextual-assistant-composer-actions button{width:44px;height:44px;min-height:44px;border:0;border-radius:50%;padding:0;opacity:1}
#library-eye-panel .contextual-assistant-mic{background:#9a83c21a;color:#715390}
#library-eye-panel .contextual-assistant-send{background:#665083;color:#fff;box-shadow:none}
html[data-theme=dark] #library-eye-panel .contextual-assistant-mic{background:#bfa3ec14;color:#e3d7f4}
html[data-theme=dark] #library-eye-panel .contextual-assistant-send{background:#e1d4f6;color:#2b203c}
#library-eye-panel .contextual-assistant-send:hover:enabled{background:#765c99}
html[data-theme=dark] #library-eye-panel .contextual-assistant-send:hover:enabled{background:#efe5ff}
#library-eye-panel button:disabled{opacity:.35;cursor:not-allowed}
#library-eye-panel :is(button,textarea):focus-visible{outline:2px solid #a187d4;outline-offset:3px}
@media(max-width:760px){#library-eye-panel{top:var(--assistant-top,12px);left:12px;right:12px;bottom:auto;width:auto;height:var(--assistant-height,calc(100dvh - 24px));max-height:none;padding:16px;gap:10px;border-radius:28px}#library-eye-panel .library-eye-aura{width:min(198px,100%);margin-bottom:-22px}.contextual-assistant-shade{z-index:149}}
@media(max-height:660px){#library-eye-panel .library-eye-aura{width:min(144px,100%);margin-bottom:-14px}#library-eye-panel .contextual-assistant-welcome>p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.library-eye-trigger-orb,#library-eye-panel .library-eye-orb,#library-eye-panel .library-eye-aura::before{animation:none!important}}

#library-eye-panel .library-eye-result{display:flex;flex-direction:column;gap:8px;border:1px solid var(--assistant-line);background:var(--assistant-surface);border-radius:18px;padding:12px;margin-block:8px;overflow-wrap:anywhere}
#library-eye-panel .library-eye-result img{width:100%;max-height:160px;object-fit:contain;border-radius:12px}
#library-eye-panel .library-eye-result p{margin:0}#library-eye-panel .library-eye-receipt{overflow-wrap:anywhere;font-size:11px}

@media(max-width:760px){#library-eye-panel .contextual-assistant-composer textarea{font-size:16px!important}#library-eye-panel .contextual-assistant-composer textarea::placeholder{font-size:12px}}

/* One native result dialog; the same live orb becomes its floating companion. */
#library-eye-panel[hidden]{display:none!important}
#library-eye-panel .contextual-assistant-composer textarea:focus-visible{outline:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
#library-eye-panel .contextual-assistant-composer:focus-within{border-color:#a18abb66;box-shadow:0 0 0 2px #a18abb12}
dialog.library-eye-results-window[open]{position:fixed;inset:0;box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:28px;display:grid;place-items:center;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;color:var(--text);font-family:Arada,sans-serif}
.library-eye-results-window::backdrop{background:#18132d3b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.library-eye-results-card{width:min(860px,100%);max-height:calc(100dvh - 210px);margin-bottom:90px;display:flex;flex-direction:column;min-height:0;overflow:hidden;border:1px solid #e5dbf0b3;border-radius:28px;background:radial-gradient(ellipse at 0 100%,#e5edb754,transparent 50%),radial-gradient(ellipse at 100% 80%,#e6b3df54,transparent 50%),#fcfbfff2;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);box-shadow:0 28px 100px #251d4433}
.library-eye-results-header{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:none;padding:18px 22px;border-bottom:1px solid var(--border);background:transparent}
.library-eye-results-header small{font-size:11px;color:var(--muted);letter-spacing:.04em}
.library-eye-results-header h2{margin:3px 0 0;font-size:20px;font-weight:400}
.library-eye-results-window button{font-family:inherit;cursor:pointer;color:inherit}
.library-eye-results-close{display:grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;border:0;border-radius:50%;background:transparent;font-size:27px;font-weight:300}
.library-eye-results-content{display:flex;flex-direction:column;gap:14px;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 22px;scrollbar-width:thin}
.library-eye-results-content>small,.library-eye-results-content>p{grid-column:1/-1;margin:0;font-size:12px;color:var(--muted);line-height:1.8}
.library-eye-results-content .library-eye-result{display:flex;flex-direction:column;gap:9px;min-width:0;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--panel);line-height:1.7}
.library-eye-results-content .library-eye-result strong{font-size:17px;font-weight:400}
.library-eye-results-content .library-eye-result p{font-size:19px;margin:0}
.library-eye-results-content .library-eye-result small{font-size:12px;color:var(--muted)}
.library-eye-results-content .library-eye-result img{width:100%;max-height:210px;object-fit:contain;border-radius:12px}
.library-eye-results-content .library-eye-result button,.library-eye-show-results{align-self:flex-start;min-height:44px;padding:10px 16px;border:1px solid var(--border);border-radius:14px;background:var(--soft);font-size:13px}
.library-eye-floating{position:fixed;left:24px;bottom:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:112px;min-height:120px;padding:8px;border:1px solid #e1d3ec99;border-radius:30px;background:radial-gradient(at 10% 100%,#acdeeb66,transparent 70%),#fcfbffe3;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 35px #1f163b26}
.library-eye-floating .library-eye-aura{display:block;position:relative;width:116px;height:116px;margin:-14px -14px -22px;pointer-events:none}
.library-eye-floating .library-eye-orb{display:block;width:100%;height:100%;filter:brightness(.58) saturate(1.7)}
.library-eye-floating small{font-size:11px;line-height:1.8;pointer-events:none}
.library-eye-results-window button:focus-visible{outline:2px solid #ad91d2;outline-offset:3px}
html[data-theme=dark] .library-eye-results-card{background:radial-gradient(at 0 100%,#58c1ca24,transparent 55%),radial-gradient(at 100% 60%,#c284c52e,transparent 50%),#251e32f2;border-color:#bfa5d340;box-shadow:0 32px 100px #0006}
html[data-theme=dark] .library-eye-floating{background:radial-gradient(at 10% 100%,#78d8e42b,transparent 70%),#2d243be8;border-color:#c3b1d540}
html[data-theme=dark] .library-eye-floating .library-eye-orb{filter:brightness(1.4) saturate(1.1)}
@media(max-width:760px){dialog.library-eye-results-window[open]{padding:12px}.library-eye-results-card{max-height:calc(100dvh - 190px);margin-bottom:90px;border-radius:24px}.library-eye-results-header{padding:14px 16px}.library-eye-results-header h2{font-size:18px}.library-eye-results-content{padding:14px 16px;grid-template-columns:minmax(0,1fr)}.library-eye-floating{left:14px;bottom:14px;width:92px;min-height:104px;border-radius:26px}.library-eye-floating .library-eye-aura{width:98px;height:98px;margin:-10px -10px -18px}}

#library-eye-panel .library-eye-new-chat{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;padding:0;background:transparent}
.library-eye-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:14px;width:100%}
.library-eye-results-card[data-count="1"]{width:min(560px,100%)}
.library-eye-results-header h2:focus{outline:none}
/* Same opening LiquidPulse timing and visual as CRM; no input capture. */
.library-eye-liquid-backdrop{position:fixed;inset:0;z-index:149;pointer-events:none;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);animation:library-eye-liquid-blur var(--liquid-duration) ease-in-out both}
@keyframes library-eye-liquid-blur{0%,100%{-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}48%{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}
.library-eye-liquid-pulse{position:fixed;inset:0;z-index:151;pointer-events:none;overflow:hidden;contain:strict;isolation:isolate}
.library-eye-liquid-wave{position:absolute;display:block;left:var(--liquid-x);top:var(--liquid-y);width:var(--liquid-size);height:var(--liquid-size);border-radius:50%;pointer-events:none;background:radial-gradient(circle,transparent 24%,rgb(104 190 212 / 3%) 38%,rgb(149 219 234 / 13%) 55%,rgb(235 253 255 / 22%) 64%,rgb(92 172 203 / 9%) 76%,transparent 92%);transform-origin:center;will-change:transform,opacity;animation:library-eye-water-travel var(--liquid-duration) cubic-bezier(.62,.02,.83,.35) both,library-eye-water-fade var(--liquid-duration) ease-out both}
@keyframes library-eye-water-travel{from{transform:translate(-50%,-50%) scale(.008)}to{transform:translate(-50%,-50%) scale(1.04)}}
@keyframes library-eye-water-fade{0%{opacity:0}22%{opacity:.78}65%{opacity:.65}100%{opacity:0}}
[data-theme="dark"] .library-eye-liquid-wave{background:radial-gradient(circle,transparent 24%,rgb(90 164 197 / 3%) 38%,rgb(147 215 236 / 10%) 55%,rgb(215 250 255 / 17%) 64%,rgb(106 175 211 / 7%) 76%,transparent 92%)}
@media(prefers-reduced-motion:reduce){.library-eye-liquid-pulse,.library-eye-liquid-backdrop{display:none;animation:none}.library-eye-liquid-wave{animation:none;will-change:auto}}

.library-eye-results-content .library-eye-layout{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;font-size:15px!important}.library-eye-layout bdi{font-weight:700}.library-eye-results-content .library-eye-layout-note{font-size:12px;color:var(--muted);line-height:1.8}

/* Results arrive in their own calm motion, without changing the workspace. */
@keyframes library-eye-result-reveal{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
.library-eye-results-window[open] .library-eye-results-card{animation:library-eye-result-reveal 440ms cubic-bezier(.2,.75,.2,1) both}
.library-eye-results-window[open] .library-eye-result{animation:library-eye-result-reveal 380ms cubic-bezier(.2,.75,.2,1) both;animation-delay:calc(70ms + var(--result-order,0)*35ms)}
.library-eye-results-window[open] .library-eye-floating{animation:library-eye-result-reveal 280ms ease-out both}
@media(prefers-reduced-motion:reduce){.library-eye-results-window[open] .library-eye-results-card,.library-eye-results-window[open] .library-eye-result,.library-eye-results-window[open] .library-eye-floating{animation:none}}
