.campaign-ribbon{width:var(--ribbon-size,40px);height:calc(var(--ribbon-size,40px) * 1.3333);flex:none;display:block}
.portal-brand-mark{gap:8px;max-width:100%}
.portal-brand-mark .portal-brand-logo{max-width:100%;min-width:0;flex:0 1 auto}
.portal-brand-mark.has-campaign-ribbon .portal-brand-logo{max-width:calc(100% - var(--ribbon-size,40px) - 8px)}
.ribbon-left .campaign-ribbon{order:-1}
.portal-identity-editor{border-top:1px solid #d5dfd9;margin-top:20px;padding-top:16px}
.identity-preview{display:flex;align-items:center;gap:8px;max-width:440px;min-height:120px;border:1px solid #d5dfd9;padding:18px;margin:12px 0;background:#fff;border-radius:4px}
.identity-preview img{display:block;max-width:100%;height:82px;object-fit:contain;object-position:left center;min-width:0}
.identity-preview.has-campaign-ribbon img{max-width:calc(100% - var(--ribbon-size,40px) - 8px)}
.identity-preview:not(.has-campaign-ribbon) .campaign-ribbon{display:none}
.portal-logo-canvas{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0;position:relative}
.campaign-ribbon{transform:rotate(var(--ribbon-rotation,0deg));pointer-events:none}
.ribbon-overlay .campaign-ribbon{position:absolute;left:var(--ribbon-x,85%);top:var(--ribbon-y,50%);transform:translate(-50%,-50%) rotate(var(--ribbon-rotation,0deg));z-index:1}
.ribbon-overlay.has-campaign-ribbon .portal-brand-logo,.identity-preview.ribbon-overlay.has-campaign-ribbon img{max-width:100%}
.identity-dialog .ribbon-overlay .campaign-ribbon{pointer-events:auto;cursor:move;touch-action:none}
.identity-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;max-width:680px}
.identity-controls label{display:grid;gap:8px;min-width:0;font-size:14px}
.identity-controls select{height:44px;font:inherit;margin:0}
.identity-controls input[type=range]{width:100%;margin:0;accent-color:#087752}
.identity-controls input[type=color]{width:64px;min-height:40px;padding:3px;margin:0}
.identity-controls [hidden]{display:none}
.identity-viewport{display:grid;gap:6px;max-width:180px;font-size:13px}
.identity-viewport select{height:40px;margin:0;font:inherit}
.portal-identity-editor input[type=file][hidden]{display:none}
@media(max-width:600px){.identity-controls{grid-template-columns:1fr}}
.theme-customization-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.theme-customization-grid>section{min-width:0;margin-top:20px;padding-top:16px;border-top:1px solid #d5dfd9}
.identity-summary{background:#fff;border-bottom:1px solid #d5dfd9;margin:12px 0;padding:16px 0}
.identity-summary img{display:block;width:260px;max-width:100%;height:90px;object-fit:contain;object-position:left center}
.identity-dialog{width:1000px;max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #cad8d1;border-radius:8px;color:#243630;background:#fff}
.identity-dialog::backdrop{background:#14271f80}
.identity-dialog header,.identity-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #d5dfd9}
.identity-dialog header h2{font-size:20px;margin:0}.identity-dialog header svg{width:18px;height:18px}
.identity-dialog footer{justify-content:flex-end;border-top:1px solid #d5dfd9;border-bottom:0}
.identity-dialog .button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:4px;border:1px solid #c4d5cc;background:#08714d;color:#fff;padding:8px 12px;font:inherit;font-size:13px;cursor:pointer}
.identity-dialog .button.secondary{background:#fff;color:#315748}.identity-dialog [hidden]{display:none}
.identity-dialog-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;padding:20px;max-height:65dvh;overflow:auto}
.identity-dialog .identity-controls{grid-template-columns:minmax(0,1fr);margin:0;gap:12px}
.identity-dialog label{font-size:13px}.identity-dialog select,.identity-dialog input:not([type=range]){max-width:100%;box-sizing:border-box;padding:8px;border:1px solid #c4d5cc;border-radius:4px;background:#fff;color:#243630;min-height:40px;font:inherit}
.identity-library-toolbar{padding:12px 20px}.identity-library [data-logo-notice]{margin:0 20px;font-size:13px;color:#315748}
.logo-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px;max-height:65dvh;overflow:auto}
.logo-library-item{min-width:0;border:1px solid #d5dfd9;border-radius:6px;padding:12px}
.logo-library-item>img{width:100%;height:100px;object-fit:contain;background:#f5f7f6}.logo-library-item label{display:grid;gap:5px;margin:10px 0}.logo-library-item input{width:100%}.logo-library-item .actions{display:flex;flex-wrap:wrap;gap:6px}.logo-usage{font-size:12px;color:#08714d;display:block;min-height:18px;margin-top:6px}
.identity-dialog button:disabled{opacity:.5;cursor:default}
.settings-admin #tema{padding-bottom:100px}
@media(max-width:1000px){.theme-customization-grid{grid-template-columns:1fr}.identity-dialog-body{grid-template-columns:1fr}.logo-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.logo-library-grid{grid-template-columns:1fr}.identity-dialog header,.identity-dialog footer{padding:12px}.identity-dialog-body{padding:12px}.identity-dialog header h2{font-size:17px}.settings-admin #tema{padding-bottom:150px}}
