:root{--app-bg: var(--mui-palette-background-default, #f6f7f3);--app-surface: var(--mui-palette-background-paper, #ffffff);--app-surface-muted: #eef2eb;--app-text: var(--mui-palette-text-primary, #18211c);--app-text-muted: var(--mui-palette-text-secondary, #637067);--app-primary: var(--mui-palette-primary-main, #245c43);--app-primary-contrast: var(--mui-palette-primary-contrastText, #ffffff);--app-error: var(--mui-palette-error-main, #8e2424);--app-border: var(--mui-palette-divider, #d9dfd5);--app-border-strong: #c7d0c5;--app-focus-ring: #2f6fed;--app-radius-sm: 8px;--app-touch-target: 44px;color:var(--app-text);background:var(--app-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:0;overflow-x:clip}#root{min-width:0}button,input,select,textarea{font:inherit;max-width:100%;min-inline-size:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--app-focus-ring);outline-offset:2px}.app-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);overflow-x:clip}.mobile-shell-header{display:none}.sidebar{background:#101611;color:#f5f7f1;padding:24px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;gap:12px;align-items:center;min-width:0}.brand h1,.workspace h2,.panel h3,.item h4,.image-tile h3{margin:0;letter-spacing:0}.brand h1{font-size:1.15rem;overflow-wrap:anywhere}.workspace h2,.panel h3,.item h4,.item p,.image-tile h3{min-width:0;overflow-wrap:anywhere}.brand p,.muted,.image-tile p{color:var(--app-text-muted);line-height:1.45}.brand p{color:#bac5bc;margin:2px 0 0;font-size:.88rem}.nav-list,.stack,.caption-list,.settings-list{display:grid;gap:10px}.nav-item,button{min-height:var(--app-touch-target);border:1px solid var(--app-border-strong);border-radius:var(--app-radius-sm);background:var(--app-surface);color:var(--app-text);display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:8px 12px;cursor:pointer;min-width:0;overflow-wrap:normal;white-space:nowrap;word-break:normal;text-align:center}.nav-item{width:100%;justify-content:flex-start;border-color:#263126;background:transparent;color:#e9efe8}.nav-item.active{background:#e3f265;color:#11180f}.nav-item span{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;white-space:normal;line-height:1.2}button svg{flex:0 0 auto}.primary{background:var(--app-primary);border-color:var(--app-primary);color:var(--app-primary-contrast);font-weight:700}.danger{border-color:#a93636;color:var(--app-error)}button:disabled{opacity:.55;cursor:not-allowed}.vault-chip{margin-top:auto;border-radius:8px;padding:12px;font-weight:700;display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;border:1px solid transparent}.vault-chip strong,.vault-chip span,.vault-callout strong,.vault-callout span,.restricted-notice strong,.restricted-notice span{display:block;min-width:0;overflow-wrap:anywhere}.vault-chip.good{border-color:#90c6a1;background:#1f3a2b;color:#f5fff8}.vault-chip.warn{border-color:#d5bf62;background:#3a3216;color:#fff7d6}.vault-chip.bad{border-color:#e19888;background:#431f1a;color:#fff4f1}.workspace{padding:28px;display:grid;align-content:start;gap:18px;min-width:0}.topbar,.row,.queue-row,.section-heading-row{display:flex;gap:10px;align-items:center;min-width:0}.topbar,.section-heading-row{justify-content:space-between;flex-wrap:wrap}.topbar>div{min-width:0}.eyebrow{margin:0 0 4px;color:#46634f;font-size:.78rem;font-weight:800;text-transform:uppercase}.icon-button{width:var(--app-touch-target);flex:0 0 var(--app-touch-target);padding:0}.notice{margin:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:12px 14px;overflow-wrap:anywhere}.catalogue-status{margin:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:10px 12px;overflow-wrap:anywhere}.catalogue-status.good{border-color:#9bc6a8;background:#f0f8f2}.catalogue-status.warn{border-color:#dacb92;background:#fff9e6}.catalogue-status.bad{border-color:#d8aaa0;background:#fff1ee}.grid{display:grid;gap:18px;min-width:0}.grid.two{grid-template-columns:minmax(300px,420px) minmax(0,1fr);align-items:start}.panel{display:grid;gap:12px;min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px}.modal-layer{position:fixed;inset:0;z-index:20;display:grid;align-items:center;justify-items:center;min-width:0;padding:20px;background:#101611ad}.modal-panel{width:min(100%,760px);max-height:min(88vh,880px);overflow:auto;display:grid;gap:16px;min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px;box-shadow:0 18px 48px #1016113d}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0}.modal-header>div{min-width:0}.modal-header h3,.modal-header p{margin:0;min-width:0;overflow-wrap:anywhere}.modal-header p{margin-top:4px;color:var(--app-text-muted);line-height:1.45}.modal-actions{justify-content:flex-end}.wide{grid-column:1 / -1}label{font-size:.92rem;font-weight:800}input,select,textarea{width:100%;inline-size:100%;min-width:0;border:1px solid #b9c4b6;border-radius:var(--app-radius-sm);background:#fbfcfa;color:var(--app-text);padding:10px 12px}input,select{contain:inline-size;overflow:hidden;text-overflow:ellipsis}textarea{min-height:104px;resize:vertical}.upload-panel{align-content:start}.upload-route{min-width:0}.upload-route-grid{display:grid;grid-template-columns:minmax(300px,.98fr) minmax(0,1.02fr);gap:18px;align-items:start;min-width:0}.upload-surface{min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px}.upload-dropzone{position:sticky;top:18px}.upload-target{min-width:0;border:1px dashed var(--app-border-strong);border-radius:var(--app-radius-sm);background:linear-gradient(180deg,#ffffffc7,#f6f7f3eb),var(--app-surface-muted);padding:clamp(18px,4vw,34px)}.upload-target-icon,.upload-empty-icon{width:52px;height:52px;border-radius:var(--app-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:#e8efe8;color:var(--app-primary)}.mui-upload-button{justify-self:start;white-space:nowrap}.selected-upload-card,.upload-empty-state,.upload-next-step{overflow:hidden}.upload-filename{min-width:0;overflow-wrap:anywhere}.upload-preview-frame{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface-muted)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0;white-space:nowrap}.preview{width:100%;aspect-ratio:4 / 3;object-fit:contain;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface-muted)}.generate-route{min-width:0}.generate-route-grid{display:grid;grid-template-columns:minmax(300px,430px) minmax(0,1fr);gap:18px;align-items:start;min-width:0}.generate-surface{min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px}.generate-command-panel{position:sticky;top:18px}.generate-preview-card{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;align-items:center;min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:#f8faf6;padding:10px}.generate-preview{display:block;width:100%;aspect-ratio:1 / 1;object-fit:contain;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface-muted)}.generate-filename{min-width:0;overflow-wrap:anywhere}.generate-empty-preview,.generate-empty-results{min-width:0;border:1px dashed var(--app-border-strong);border-radius:var(--app-radius-sm);background:#f8faf6;color:var(--app-text-muted);padding:16px}.generate-empty-preview{display:grid;justify-items:center;gap:10px;text-align:center}.generate-empty-icon{width:52px;height:52px;border-radius:var(--app-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:#e8efe8;color:var(--app-primary)}.generate-results-panel{overflow:hidden}.generate-caption-card{min-width:0;border-radius:var(--app-radius-sm);overflow:hidden}.generate-caption-actions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 16px 16px}.generate-caption-actions>button{flex:0 1 auto}.item{display:grid;gap:10px;min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:12px}.empty{margin:0;color:var(--app-text-muted)}.library-route{display:grid;gap:18px;min-width:0}.library-summary,.library-empty-state{min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px}.library-empty-state{border-style:dashed;background:#f8faf6}.library-empty-icon{width:52px;height:52px;border-radius:var(--app-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:#e8efe8;color:var(--app-primary)}.library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:14px;min-width:0}.image-tile{border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);overflow:hidden;min-width:0}.library-image-frame{background:var(--app-surface-muted)}.library-image-frame img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:contain;background:var(--app-surface-muted)}.library-image-body{padding:14px;display:grid;gap:16px;min-width:0}.library-image-title,.library-caption-section,.library-caption-section textarea{min-width:0;overflow-wrap:anywhere}.library-image-actions>button{flex:0 1 auto}.library-caption-section .generate-caption-card{background:#fbfcfa}.themes-route{display:grid;gap:18px;min-width:0}.themes-hero,.themes-loading,.themes-empty-state,.theme-card{min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface)}.themes-hero,.themes-loading,.themes-empty-state{padding:18px}.themes-summary-row,.theme-card-actions,.theme-dialog-actions{flex-wrap:wrap}.themes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px;min-width:0}.theme-card{overflow:hidden}.theme-card-title,.theme-prompt-preview,.theme-card .MuiChip-label,.theme-card .MuiAlert-message{min-width:0;overflow-wrap:anywhere}.theme-card-actions{gap:8px;padding:8px 16px 16px}.theme-card-actions>button,.theme-dialog-actions>button{flex:0 1 auto}.themes-empty-state{border-style:dashed;background:#f8faf6}.themes-empty-icon{width:52px;height:52px;border-radius:var(--app-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:#e8efe8;color:var(--app-primary)}.theme-dialog-paper{border-radius:var(--app-radius-sm)}.theme-dialog-paper.MuiDialog-paperFullScreen{border-radius:0;height:100%;max-height:100%}.theme-dialog-form{display:flex;flex-direction:column;min-height:100%;min-width:0}.theme-dialog-paper .MuiDialogTitle-root,.theme-dialog-actions{flex-shrink:0}.theme-dialog-paper .MuiDialogContent-root{flex:1 1 auto;overflow-y:auto}.theme-dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.theme-dialog-grid>div,.theme-dialog-paper .MuiDialogContent-root,.theme-dialog-paper .MuiInputBase-root,.theme-dialog-paper textarea,.theme-dialog-paper input{min-width:0}.settings-route{min-width:0}.settings-hero,.settings-secrets-panel{min-width:0;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:var(--app-surface);padding:18px}.settings-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:18px;align-items:start;min-width:0}.settings-card{min-width:0;border-radius:var(--app-radius-sm);overflow:hidden}.settings-vault-chip,.settings-vault-chip .MuiChip-label,.settings-card .MuiTypography-root,.settings-card .MuiAlert-message,.settings-card .MuiChip-label,.settings-secrets-panel .MuiTypography-root,.settings-secrets-panel .MuiAlert-message{min-width:0;overflow-wrap:anywhere}.settings-vault-chip{min-height:var(--app-touch-target)}.settings-vault-chip.good{border-color:#6fb081;background:#f0f8f2;color:#1d5b33}.settings-vault-chip.warn{border-color:#b89d35;background:#fff9e6;color:#6d5400}.settings-vault-chip.bad{border-color:#c47c6b;background:#fff1ee;color:#8e2424}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}.settings-form-grid>div,.settings-runtime-actions,.settings-actions{min-width:0}.settings-actions{flex-wrap:wrap;gap:10px;padding:8px 16px 16px}.settings-actions>button{flex:0 1 auto}.settings-mui-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.settings-mui-list>span{background:#fbfcfa}.instagram-page{width:100%;padding:0;min-width:0}.instagram-hero,.instagram-card,.instagram-queue-panel,.instagram-docs-panel,.instagram-queue-card{border:1px solid var(--app-border);background:#ffffffe0;min-width:0}.instagram-hero,.instagram-queue-panel,.instagram-docs-panel{padding:18px;border-radius:var(--app-radius-md)}.instagram-card,.instagram-queue-card{border-radius:var(--app-radius-md)}.instagram-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.instagram-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}.instagram-form-grid>div,.instagram-card,.instagram-card *{min-width:0}.instagram-actions,.instagram-status-chips{flex-wrap:wrap;min-width:0}.instagram-actions{gap:10px;padding:8px 16px 16px}.instagram-actions>button{flex:0 1 auto}.instagram-status-board{grid-template-columns:repeat(2,minmax(0,1fr))}.instagram-status-board>.connection-facts,.instagram-status-board>.diagnostics-panel{grid-column:1 / -1}.instagram-settings-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.instagram-settings-list>span{background:#fbfcfa}.instagram-url{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field-grid>div{min-width:0}.checkbox{display:flex;gap:10px;align-items:center}.checkbox input{width:18px;height:18px}.settings-list>span,.queue-row,.connection-facts>span,.diagnostics-panel>div,.vault-callout,.restricted-notice{border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:10px 12px}.settings-list>span,.connection-facts>span,.diagnostics-panel>div{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:6px;max-width:100%;overflow-wrap:anywhere}.vault-callout,.restricted-notice,.publish-readiness{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start}.vault-callout.good,.restricted-notice.good,.publish-readiness.good{border-color:#9bc6a8;background:#f0f8f2}.vault-callout.warn,.restricted-notice.warn{border-color:#dacb92;background:#fff9e6}.vault-callout.bad,.restricted-notice.bad{border-color:#d8aaa0;background:#fff1ee}.publish-readiness.warn{border-color:#dacb92;background:#fff9e6}.settings-list>span>span,.connection-facts>span>span,.diagnostics-panel>div>span,.queue-row>span{min-width:0;overflow-wrap:anywhere;word-break:break-word}.secret-input{font-family:ui-monospace,SFMono-Regular,Cascadia Code,Liberation Mono,Menlo,monospace}.field-help{margin:-4px 0 2px;color:var(--app-text-muted);font-size:.86rem;line-height:1.4;overflow-wrap:anywhere}.setup-panel{display:grid;gap:10px;padding:12px;border:1px solid #cfd8cb;border-radius:var(--app-radius-sm);background:#f7faf5;min-width:0}.setup-panel>div:first-child{display:grid;gap:4px;min-width:0}.setup-panel strong,.setup-panel span,.publish-readiness strong,.publish-readiness span,.publish-readiness code{min-width:0;overflow-wrap:anywhere}.publish-readiness>span{display:grid;gap:4px;line-height:1.35}.publish-readiness>span>strong,.publish-readiness>span>span{display:block}.publish-readiness{border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:10px 12px}.queue-row{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;background:#fbfcfa}.status-actions{display:flex;flex-wrap:wrap;gap:10px;min-width:0}.status-board,.connection-facts,.diagnostics-panel{display:grid;gap:10px;min-width:0}.status-board{grid-template-columns:repeat(2,minmax(0,1fr))}.status-card{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:12px;min-width:0}.status-card strong,.status-card span{display:block;min-width:0;overflow-wrap:anywhere}.status-card.good{border-color:#9bc6a8;background:#f0f8f2}.status-card.warn{border-color:#dacb92;background:#fff9e6}.status-card.bad{border-color:#d8aaa0;background:#fff1ee}.connection-facts,.diagnostics-panel{grid-column:1 / -1}.diagnostics-panel>div{grid-template-columns:minmax(0,11rem) minmax(0,1fr);background:var(--app-surface)}.diagnostics-panel>div>strong,.diagnostics-panel>div>span{min-width:0;overflow-wrap:anywhere}.diagnostics-panel>.diagnostic-warn{border-color:#dacb92;background:#fff9e6}.diagnostics-panel>.diagnostic-bad{border-color:#d8aaa0;background:#fff1ee}@media(max-width:920px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.sidebar{display:none}.mobile-shell-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid var(--app-border);background:var(--app-bg);padding:12px 16px}.mobile-title{min-width:0}.mobile-title p,.mobile-title h2{margin:0;min-width:0;overflow-wrap:anywhere;letter-spacing:0}.mobile-title p{color:#46634f;font-size:.78rem;font-weight:800;text-transform:uppercase}.mobile-title h2{font-size:1.25rem}.mobile-shell-actions{display:flex;gap:8px;align-items:center}.mobile-shell-actions .icon-button{background:var(--app-surface)}.vault-chip.mobile{grid-column:1 / -1;margin-top:0;padding:10px 12px}.mobile-nav{grid-column:1 / -1;display:grid;gap:8px}.mobile-nav[hidden]{display:none}.mobile-nav .nav-item{border-color:var(--app-border-strong);background:var(--app-surface);color:var(--app-text);white-space:normal}.mobile-nav .nav-item.active{border-color:#b1bf45;background:#f3f8c8}.mobile-nav .nav-item>span{overflow-wrap:anywhere;white-space:normal}.topbar{display:none}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.upload-route-grid,.generate-route-grid,.settings-grid{grid-template-columns:1fr}.upload-dropzone,.generate-command-panel{position:static}.status-board{grid-template-columns:1fr}}@media(max-width:560px){.workspace,.sidebar{padding:16px}.brand{align-items:flex-start}.nav-list{grid-template-columns:1fr}.row,.status-actions,.section-heading-row{flex-wrap:wrap;min-width:0}.row>button,.status-actions>button,.section-heading-row>button{flex:1 1 min(100%,16rem);min-width:max-content}.modal-layer{align-items:stretch;padding:10px}.modal-panel{max-height:calc(100vh - 20px);padding:14px}input[type=datetime-local]{appearance:textfield;-webkit-appearance:none;font-size:.86rem;padding-inline:8px}.field-grid,.instagram-grid,.instagram-form-grid,.instagram-status-board,.settings-form-grid,.settings-list>span,.connection-facts>span,.diagnostics-panel>div{grid-template-columns:1fr}.panel,.upload-surface,.generate-surface,.library-summary,.library-empty-state,.library-image-body,.themes-hero,.themes-loading,.themes-empty-state,.settings-hero,.settings-secrets-panel,.instagram-hero,.instagram-queue-panel,.instagram-docs-panel{padding:14px}.library-image-actions>button{flex:1 1 min(100%,14rem)}.theme-card-actions>button,.theme-dialog-actions>button,.settings-actions>button,.instagram-actions>button{flex:1 1 min(100%,14rem)}.theme-dialog-grid{grid-template-columns:1fr}.upload-target{padding:16px}.generate-preview-card{grid-template-columns:1fr}.generate-preview{aspect-ratio:4 / 3}.icon-button,.row>.icon-button,.status-actions>.icon-button,.section-heading-row>.icon-button{flex:0 0 var(--app-touch-target);min-width:var(--app-touch-target)}}
