:root{
    --blue:#286fd0;
    --text:#1d2327;
    --edmw-surface:#ffffff;
    --edmw-surface-soft:#f6f8fb;
    --edmw-surface-strong:#eef3f8;
    --edmw-border:#d7dee7;
    --edmw-border-strong:#bfd0e1;
    --edmw-text:#1d2327;
    --edmw-text-soft:#59636e;
    --edmw-accent:#286fd0;
    --edmw-accent-soft:#e2eeff;
    --edmw-shadow:0 12px 30px rgba(18,43,70,.08);
}
body.edmw-preview-dragging,
body.edmw-preview-dragging *{
    cursor:col-resize !important;
}
.edmw-admin-container{
    max-width:none;
    width:100%;
    margin-top:0;
}
.wrap .edmw-admin-container{
    max-width:none;
}
.edmw-admin-notices{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:16px;
}
.edmw-product-banner{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:20px;
    align-items:center;
    margin:18px 0 15px;
    padding:20px 22px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    background:linear-gradient(135deg,#13192f 0%,#213866 60%,#274b86 100%);
    box-shadow:0 18px 36px rgba(12,24,48,.22);
    color:#fff;
}
.edmw-product-banner-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border-radius:16px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.16);
}
.edmw-product-banner-icon img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:inherit;
}
.edmw-product-banner-copy{
    min-width:0;
}
.edmw-product-banner-copy h2{
    margin:0 0 8px;
    padding:0;
    border:0;
    font-size:20px;
    color:#fff;
}
.edmw-product-banner-copy p{
    margin:0;
    color:rgba(255,255,255,.84);
}
.edmw-product-banner-actions{
    display:flex;
    align-items:center;
}
.edmw-product-banner-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(101, 214, 145, .16);
    border:1px solid rgba(122, 230, 164, .38);
    color:#e9fff0;
    font-weight:700;
    letter-spacing:.01em;
}
.edmw-product-banner .edmw-button{
    min-height:40px;
    padding:0 16px;
    border-radius:12px;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1.2 !important;
    vertical-align:middle;
    box-sizing:border-box;
}
.edmw-product-banner-actions .edmw-button.edmw-button-primary{
    background:linear-gradient(135deg,var(--blue) 0%,#3f91f2 100%);
    border:none;
    color:#fff;
    box-shadow:0 16px 32px rgba(40,111,208,.25);
}
.edmw-admin-section{
    background:var(--edmw-surface);
    border:1px solid var(--edmw-border);
    border-radius:18px;
    padding:28px;
    margin-bottom:24px;
    box-shadow:var(--edmw-shadow);
}
.edmw-admin-section > p{
    margin:0 0 28px;
    color:var(--edmw-text-soft);
    max-width:780px;
}
.edmw-admin-section > .edmw-guide-grid + .edmw-settings-card-wide,
.edmw-admin-section > .edmw-advanced-layout + .edmw-form-actions{
    margin-top:24px;
}
.edmw-admin-section > .edmw-guide-grid + .edmw-settings-card-wide{
    margin-top:28px;
}
#edmw-tab-guide .edmw-guide-grid + .edmw-settings-card-wide{
    margin-top:28px;
}
.edmw-admin-section > p + .edmw-settings-card-wide,
.edmw-subsection-title + p + .edmw-settings-card-wide{
    margin-top:24px;
}
.edmw-admin-container .edmw-button{
    min-height:40px;
    padding:0 16px;
    border-radius:12px;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1.2 !important;
    vertical-align:middle;
    box-sizing:border-box;
}
.edmw-admin-container .edmw-button.edmw-button-primary{
    background:linear-gradient(135deg,var(--blue) 0%,#3f91f2 100%);
    border-color:transparent;
    color:#fff;
    box-shadow:0 16px 32px rgba(40,111,208,.25);
}
.edmw-admin-container .edmw-button.edmw-button-primary:hover,
.edmw-admin-container .edmw-button.edmw-button-primary:focus{
    background:linear-gradient(135deg,#215fb5 0%,#3a87e5 100%);
    border-color:transparent;
    color:#fff;
}
.edmw-admin-container .edmw-button.edmw-button-secondary{
    background:rgba(255,255,255,.84);
    border-color:#cdddf4;
    color:var(--text);
    box-shadow:none;
}
.edmw-admin-container .edmw-button.edmw-button-secondary:hover,
.edmw-admin-container .edmw-button.edmw-button-secondary:focus{
    background:#fff;
    border-color:#b9cfe9;
    color:var(--text);
}
.edmw-admin-container .edmw-button.edmw-help-button{
    background:#effbc0;
    border-color:#d8eba2;
    color:#111;
    box-shadow:none;
    gap:6px;
}
.edmw-admin-container .edmw-button.edmw-help-button:hover,
.edmw-admin-container .edmw-button.edmw-help-button:focus{
    background:#e6f6ad;
    border-color:#cfe58e;
    color:#111;
}
.edmw-button-icon,
.edmw-help-button-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:15px;
    height:15px;
    flex:0 0 auto;
}
.edmw-button-icon svg,
.edmw-help-button-icon svg{
    display:block;
    width:15px;
    height:15px;
}
.edmw-button-icon + span,
.edmw-help-button-icon + span{
    margin-left:8px;
}
.edmw-admin-container .button.edmw-help-button .edmw-help-button-icon + span{
    margin-left:6px;
}
.edmw-admin-section h2{
    margin-top:0;
    color:var(--edmw-text);
    border-bottom:1px solid #edf1f5;
    padding-bottom:12px;
}
.edmw-color-grid{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin:20px 0;
}

.edmw-color-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:10px 14px;
    background:#f8fafc;
    border:1px solid #dde5ee;
    border-radius:14px;
    transition:all 0.2s ease;
    min-height:30px;
    box-shadow:0 3px 12px rgba(18,43,70,.05);
}
.edmw-color-item:hover{
    background:#f8fafc;
    border-color:var(--edmw-border-strong);
    box-shadow:0 8px 18px rgba(18,43,70,.10);
    transform:translateY(-1px);
}
.edmw-color-item[data-mapped="true"]{
    background:#effff1;
    border-color:#aceba6;
}
.edmw-color-item[data-mapped="true"]:hover{
    background:#e7fbe9;
    border-color:#8fdd89;
    box-shadow:0 8px 18px rgba(70,150,82,.14);
    transform:translateY(-1px);
}
.edmw-color-left{
    display:flex;
    align-items:center;
    gap:15px;
    flex:1 1 auto;
    min-width:0;
}
.edmw-color-title{
    font-weight:600;
    color:var(--edmw-text);
    font-size:13px;
    width:auto;
    min-width:0;
    letter-spacing:.01em;
}
.edmw-color-preview{
    width:18px;
    height:18px;
    border-radius:50%;
    border:2px solid #fff;
    box-shadow:0 2px 4px rgba(0,0,0,0.15);
    flex-shrink:0;
}
.edmw-color-hex{
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:12px;
    color:var(--edmw-text-soft);
    background:none;
    padding:0;
    border:none;
    min-width:0;
    text-align:center;
    font-weight:500;
}
.edmw-color-reference{
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:10px;
    color:#51606f;
    background:#edf3f9;
    padding:2px 6px;
    border-radius:999px;
    border:1px solid #d5e0eb;
    display:inline-block;
    white-space:nowrap;
}
.edmw-color-right{
    display:flex;
    align-items:center;
    gap:10px;
    flex-shrink:0;
}
.edmw-dark-mode-label{
    display:inline-flex;
    align-items:center;
    font-weight:600;
    color:var(--edmw-text-soft);
    font-size:10px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.04em;
    white-space:nowrap;
}
.edmw-color-picker-container{
    display:flex;
    align-items:center;
    gap:8px;
}
.edmw-color-picker-container .edmw-color-hex-input[type="text"]{
    width:80px !important;
    min-height:30px !important;
    height:30px !important;
    flex:0 0 80px;
    margin:0;
    padding:0 8px !important;
    border:1px solid #ccd6e0;
    border-radius:8px;
    background:#fff;
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:10px;
    line-height:1 !important;
    text-align:center;
    color:#1f2933;
    box-shadow:none;
    box-sizing:border-box;
    appearance:none;
    -webkit-appearance:none;
}
.edmw-color-picker-container .edmw-color-hex-input[type="text"]::placeholder{
    color:#8c8f94;
}
.edmw-color-picker-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    min-width:28px;
    padding:0;
    margin:0;
    border:1px solid #ccd6e0;
    border-radius:999px;
    background:linear-gradient(180deg,#ffffff 0%,#f3f7fb 100%);
    box-shadow:0 2px 8px rgba(18,43,70,.08);
    cursor:pointer;
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.edmw-color-picker-btn:hover{
    border-color:var(--edmw-accent);
    transform:scale(1.04);
}
.edmw-color-picker-btn:focus{
    outline:none;
    border-color:var(--edmw-accent);
    box-shadow:0 0 0 3px rgba(31,111,178,.18);
}
.edmw-color-picker-btn.is-open{
    border-color:var(--edmw-accent);
    box-shadow:0 0 0 4px rgba(31,111,178,.14),0 10px 20px rgba(18,43,70,.12);
}
.edmw-color-picker-preview{
    width:18px;
    height:18px;
    border-radius:50%;
    background:#f8f9fa;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.75);
}
.edmw-color-picker{
    width:40px;
    height:40px;
    border:2px solid #dee2e6;
    border-radius:50%;
    cursor:pointer;
    background:none;
    flex-shrink:0;
    position:relative;
    transition:all 0.2s ease;
}
.edmw-color-picker:hover{
    border-color:#0073aa;
    transform:scale(1.05);
}
.edmw-color-picker:not([value]){
    background:linear-gradient(45deg,#fff 0%,#fff 70%,#dc3545 70%,#dc3545 100%);
    border-color:#dc3545;
}
.edmw-form-actions{
    margin-top:25px;
    padding-top:20px;
    border-top:1px solid #e9ecef;
    display:flex;
    gap:15px;
    align-items:center;
}
.edmw-success-message{
    background:#dff2e5;
    border:1px solid #bfdfc8;
    color:#1f6a40;
    padding:12px 16px;
    border-radius:12px;
    font-size:14px;
    font-weight:500;
    box-shadow:0 8px 20px rgba(18,43,70,.08);
}
.edmw-error-message{
    background:#fff1f1;
    border:1px solid #f1c5c5;
    color:#9f2c2c;
    padding:12px 16px;
    border-radius:12px;
    font-size:14px;
    font-weight:500;
    box-shadow:0 8px 20px rgba(18,43,70,.08);
}
.edmw-info-box{
    background:#f0f8ff;
    border:1px solid #b3d9ff;
    border-radius:6px;
    padding:18px;
    color:#0c5460;
}
.edmw-info-box ul{
    margin:12px 0 0 22px;
}
.edmw-info-box li{
    margin-bottom:6px;
}
.edmw-no-colors{
    background:#fff6da;
    border:1px solid #f0d48b;
    border-radius:14px;
    padding:25px;
    text-align:center;
    color:#856404;
}
.edmw-no-colors p{
    margin:0;
    font-size:16px;
}
.edmw-mapping-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    margin-bottom:30px;
    gap:20px;
    padding:22px 24px;
    background:linear-gradient(135deg,#f7fbff 0%,#edf4fb 100%);
    border-radius:18px;
    border:1px solid #dce7f2;
}
.edmw-mapping-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    flex-shrink:0;
    flex-wrap:wrap;
}
.edmw-mapping-shell{
    overflow:visible;
}
.edmw-mapping-workspace{
    display:flex;
    gap:20px;
    align-items:stretch;
    width:100%;
}
.edmw-mapping-main{
    flex:1 1 auto;
    min-width:0;
}
.edmw-preview-resizer{
    position:relative;
    flex:0 0 18px;
    width:18px;
    min-width:18px;
    cursor:col-resize;
    opacity:0;
    pointer-events:none;
    user-select:none;
    touch-action:none;
    align-self:stretch;
}
.edmw-preview-resizer::before{
    content:"";
    position:absolute;
    left:50%;
    top:0;
    bottom:0;
    width:1px;
    transform:translateX(-50%);
    background:#d9e4ef;
}
.edmw-preview-resizer-handle{
    position:sticky;
    top:calc(50vh - 32px);
    display:block;
    width:18px;
    height:64px;
    margin:0 auto;
    border-radius:999px;
    background:linear-gradient(180deg,#f8fbff 0%,#eef5fb 100%);
    border:1px solid #cfddea;
    box-shadow:0 10px 24px rgba(18,43,70,.12);
}
.edmw-preview-resizer:hover .edmw-preview-resizer-handle,
.edmw-preview-resizer.is-dragging .edmw-preview-resizer-handle{
    border-color:#9ebbd6;
    background:linear-gradient(180deg,#ffffff 0%,#eaf3fb 100%);
}
.edmw-mapping-shell[data-preview-open="true"] .edmw-preview-resizer{
    opacity:1;
    pointer-events:auto;
}
.edmw-preview-panel{
    position:sticky;
    top:56px;
    align-self:flex-start;
    flex:0 0 0;
    width:0;
    min-width:0;
    max-width:0;
    opacity:0;
    transform:translateX(24px);
    pointer-events:none;
    overflow:hidden;
    transition:opacity .18s ease,transform .18s ease;
}
.edmw-mapping-shell[data-preview-open="true"] .edmw-preview-panel{
    flex:0 1 auto;
    width:min(46vw,780px);
    min-width:520px;
    max-width:62vw;
    opacity:1;
    transform:translateX(0);
    pointer-events:auto;
    overflow:visible;
}
.edmw-mapping-shell[data-preview-open="true"] .edmw-color-reference{
    display:none;
}
.edmw-preview-panel-header{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:18px;
    padding-top:12px;
    margin-bottom:16px;
}
.edmw-preview-intro{
    flex:1 1 auto;
}
.edmw-preview-toolbar{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    align-items:end;
    overflow:visible;
}
.edmw-preview-panel-header h3{
    margin:0 0 6px;
}
.edmw-preview-panel-header p{
    margin:0;
    color:var(--edmw-text-soft);
}
.edmw-preview-feedback{
    margin:0 0 14px;
    padding:12px 14px;
    border-radius:12px;
    border:1px solid #d7dee7;
    background:#f6f8fb;
    color:var(--edmw-text);
    font-size:13px;
    line-height:1.5;
}
.edmw-preview-feedback[data-state="warning"]{
    border-color:#f1d089;
    background:#fff8e6;
    color:#7a5500;
}
.edmw-preview-feedback[data-state="error"]{
    border-color:#e6b4b4;
    background:#fff1f1;
    color:#8b1f1f;
}
.edmw-preview-panel.is-compact-toolbar .edmw-preview-toolbar{
    grid-template-columns:1fr;
}
.edmw-preview-controls{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:8px;
    width:100%;
    overflow:visible;
}
.edmw-preview-controls label{
    font-weight:600;
    color:var(--edmw-text);
}
.edmw-preview-controls select{
    width:100%;
    height:46px;
    border:1px solid #ccd6e0;
    border-radius:12px;
    padding:0 40px 0 12px;
    background:#fff;
    line-height:1.35;
    appearance:none;
    -webkit-appearance:none;
    background-image:linear-gradient(45deg,transparent 50%,#6d7782 50%),linear-gradient(135deg,#6d7782 50%,transparent 50%);
    background-position:calc(100% - 18px) calc(50% - 1px),calc(100% - 12px) calc(50% - 1px);
    background-size:6px 6px,6px 6px;
    background-repeat:no-repeat;
}
.edmw-preview-device-group{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    width:100%;
}

.edmw-preview-device-btn{
    min-height:46px;
    width:100%;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    color:var(--edmw-text-soft);
    font-weight:600;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0;
}
.edmw-preview-device-btn.is-active{
    border-color:var(--edmw-accent);
    background:var(--edmw-accent-soft);
    color:var(--edmw-accent);
}
.edmw-preview-device-icon{
    font-size:18px;
    line-height:1;
}
.edmw-preview-mode-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:46px;
    padding:10px 16px;
    border:1px solid #d8e1ea;
    border-radius:14px;
    background:#f8f9fa;
    color:#495057;
    cursor:pointer;
    transition:all .2s ease;
}
.edmw-preview-mode-button:hover{
    background:#e9ecef;
}
.edmw-preview-mode-button.is-dark{
    background:#13192f;
    border-color:#13192f;
    color:#fff;
}
.edmw-preview-panel .edmw-preview-mode-button{
    width:100%;
    justify-content:center;
}
.edmw-preview-panel .edmw-preview-mode-button .edmw-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
}
.edmw-preview-panel .edmw-preview-mode-button .edmw-icon-light{
    display:flex;
}
.edmw-preview-panel .edmw-preview-mode-button .edmw-icon-dark{
    display:none;
}
.edmw-preview-panel .edmw-preview-mode-button .edmw-button-text-light{
    display:inline-flex;
}
.edmw-preview-panel .edmw-preview-mode-button.is-dark .edmw-icon-light{
    display:none;
}
.edmw-preview-panel .edmw-preview-mode-button.is-dark .edmw-icon-dark{
    display:flex;
}
.edmw-preview-panel .edmw-preview-mode-button.is-dark .edmw-button-text-dark{
    display:inline-flex;
}
.edmw-preview-panel .edmw-preview-mode-button.is-dark .edmw-button-text-light{
    display:none;
}
.edmw-preview-panel .edmw-preview-mode-button .edmw-button-text-dark{
    display:none;
}
.edmw-preview-frame-wrap{
    border:1px solid #dce7f2;
    border-radius:18px;
    background:#f3f7fb;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
    overflow:hidden;
    min-height:680px;
    min-width:0;
    position:relative;
}
.edmw-preview-canvas{
    position:relative;
    width:100%;
    height:100%;
    min-height:680px;
    overflow:hidden;
}
.edmw-preview-stage{
    position:absolute;
    top:0;
    left:0;
    width:var(--edmw-preview-stage-width,100%);
    height:var(--edmw-preview-stage-height,900px);
    transform-origin:top left;
    will-change:transform;
}
.edmw-preview-viewport{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 36px rgba(18,43,70,.12);
}
.edmw-preview-frame-wrap iframe{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:#fff;
    opacity:1;
    visibility:visible;
    transition:opacity .12s ease;
}
.edmw-preview-frame-wrap[data-preview-device="desktop"] .edmw-preview-viewport{
    border-radius:18px;
}
.edmw-preview-frame-wrap[data-preview-device="tablet"] .edmw-preview-viewport{
    border-radius:24px;
}
.edmw-preview-frame-wrap[data-preview-device="mobile"] .edmw-preview-viewport{
    border-radius:28px;
    box-shadow:0 20px 30px rgba(18,43,70,.14);
}
.edmw-preview-frame-wrap[data-preview-device="desktop"],
.edmw-preview-frame-wrap[data-preview-device="tablet"]{
    background:linear-gradient(180deg,#edf4fb 0%,#f7fbff 100%);
}
.edmw-preview-frame-wrap iframe[data-ready="false"]{
    opacity:0;
    visibility:hidden;
}
.edmw-mapping-title h2{
    margin:0 0 10px;
    color:var(--edmw-text);
}
.edmw-mapping-title p{
    margin:0;
    color:var(--edmw-text-soft);
    max-width:620px;
}
.edmw-mapping-shell[data-preview-open="true"] .edmw-dark-mode-label{
    font-size:0;
    min-width:18px;
}
.edmw-mapping-shell[data-preview-open="true"] .edmw-dark-mode-label::before{
    content:"\2192";
    font-size:16px;
    line-height:1;
    color:#6b7682;
}
.edmw-logo-picker{
    display:flex;
    flex-direction:column;
    gap:16px;
}
.edmw-logo-picker-preview{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.edmw-logo-preview-card{
    display:flex;
    flex-direction:column;
    gap:12px;
    min-width:0;
    padding:16px;
    border:1px solid #dce6f0;
    border-radius:16px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);
}
.edmw-logo-preview-card-dark{
    background:linear-gradient(180deg,#17212d 0%,#223246 100%);
    border-color:#304760;
}
.edmw-logo-preview-caption{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:#5f6d7b;
}
.edmw-logo-preview-card-dark .edmw-logo-preview-caption{
    color:#c9d7e4;
}
.edmw-logo-picker-preview img,
.edmw-logo-preview-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:120px;
    max-height:180px;
    object-fit:contain;
    padding:18px;
    border-radius:14px;
    border:1px solid #dce6f0;
    background:#ffffff;
    box-sizing:border-box;
}
.edmw-logo-preview-card-dark img,
.edmw-logo-preview-card-dark .edmw-logo-preview-placeholder{
    border-color:#3b536d;
    background:rgba(255,255,255,.06);
}
.edmw-logo-preview-placeholder{
    color:var(--edmw-text-soft);
    text-align:center;
}
.edmw-mapping-stats{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:15px;
    flex-wrap:wrap;
    margin-top:16px;
}
.edmw-active-preset{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:10px;
    min-width:0;
}
.edmw-modified-count{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:10px;
}
.edmw-count-label{
    font-size:12px;
    color:#646970;
    text-transform:uppercase;
    letter-spacing:.5px;
}
.edmw-count-number{
    display:inline-block;
    padding:6px 10px;
    background:#fff;
    color:#314355;
    border-radius:20px;
    font-weight:500;
    font-size:14px;
    min-width:20px;
    text-align:center;
    border:1px solid #d8e3ee;
}
.edmw-active-preset-badge{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    max-width:100%;
    padding:0 12px;
    background:#fff;
    color:#314355;
    border-radius:20px;
    font-weight:500;
    font-size:14px;
    border:1px solid #d8e3ee;
    white-space:normal;
}
.edmw-auto-save-indicator{
    margin:20px 0 36px;
    padding:14px 18px;
    background:linear-gradient(135deg,#edf7ff 0%,#f7fbff 100%);
    border:1px solid #c7ddf1;
    border-radius:14px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.edmw-auto-save-status,
.edmw-auto-save-feedback{
    display:flex;
    align-items:center;
    gap:10px;
}
.edmw-auto-save-status{
    color:#0c5460;
}
.edmw-auto-save-feedback{
    color:#856404;
}
.edmw-auto-save-indicator[data-status="dirty"]{
    background:linear-gradient(135deg,#fff8e8 0%,#fffdf7 100%);
    border-color:#f0d9a5;
}
.edmw-auto-save-indicator[data-status="dirty"] .edmw-auto-save-status{
    color:#8a5a00;
}
.edmw-auto-save-indicator[data-status="success"]{
    background:linear-gradient(135deg,#edf9f1 0%,#f8fffb 100%);
    border-color:#b9e2c5;
}
.edmw-auto-save-indicator[data-status="success"] .edmw-auto-save-status{
    color:#1f6a40;
}
.edmw-tab-nav-scroll{
    border-bottom:none;
    margin:0;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scroll-padding-inline:12px;
    padding:0 0 30px;
}
.edmw-tab-nav{
    display:flex;
    gap:8px;
    flex-wrap:nowrap;
    overflow:visible;
    min-width:max-content;
    padding:0 2px;
}
.edmw-tab-btn{
    flex:0 0 auto;
    background:#f1f5f9;
    border:1px solid #e2ebf3;
    border-radius:999px;
    padding:12px 20px;
    cursor:pointer;
    font-size:14px;
    color:#6c757d;
    transition:all .2s ease;
    white-space:nowrap;
    word-break:normal;
    line-height:1.2;
}
.edmw-tab-btn:hover{
    color:var(--edmw-accent);
    background:#eaf3fb;
    border-color:#d5e5f5;
}
.edmw-tab-btn.active{
    color:#fff;
    border-color:#2f7de0;
    background:linear-gradient(135deg,var(--blue) 0%,#3f91f2 100%);
    box-shadow:0 12px 24px rgba(40,111,208,.22);
}
.edmw-diagnostic-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    margin-top:20px;
}
.edmw-settings-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin-top:20px;
}
.edmw-advanced-layout{
    display:grid;
    grid-template-columns:240px minmax(0,1fr);
    gap:20px;
    margin-top:20px;
}
.edmw-advanced-nav{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.edmw-settings-nav-btn{
    min-height:48px;
    padding:0 16px;
    border:1px solid #cdddf4;
    border-radius:14px;
    background:#f6f9fc;
    color:var(--edmw-text);
    text-align:left;
    cursor:pointer;
    transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.edmw-settings-nav-btn:hover{
    background:#edf5fb;
    border-color:#b9cfe9;
}
.edmw-settings-nav-btn.is-active{
    background:var(--edmw-accent);
    border-color:var(--edmw-accent);
    color:#fff;
}
.edmw-guide-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin:20px 0 36px;
    align-items:stretch;
}
.edmw-guide-grid > .edmw-settings-card{
    min-height:100px;
    height:100px;
    overflow:hidden;
}
.edmw-guide-stack{
    display:flex;
    flex-direction:column;
    gap:24px;
    margin-top:0;
}
.edmw-subsection-title{
    margin:28px 0 12px;
}
.edmw-shortcode-card{
    margin-top:0;
}
.edmw-shortcode-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:24px;
    align-items:start;
}
.edmw-shortcode-main{
    min-width:0;
}
.edmw-shortcode-toolbar{
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
    align-items:start;
}
.edmw-shortcode-code{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding:0 14px;
    margin:0;
    border:1px solid #d7e2ef;
    border-radius:12px;
    background:#f8fbff;
    color:var(--edmw-text);
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:13px;
}
.edmw-shortcode-settings-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    align-items:end;
    margin-top:0;
}
.edmw-shortcode-color-field{
    display:flex;
    align-items:center;
    gap:8px;
}
.edmw-shortcode-settings-grid .edmw-field label{
    margin-bottom:6px;
    font-size:12px;
    line-height:1.35;
}
.edmw-shortcode-settings-grid .edmw-field{
    min-width:0;
}
.edmw-shortcode-settings-grid .edmw-field > input[type="text"],
.edmw-shortcode-settings-grid .edmw-field > input[type="number"]{
    width:100%;
    height:42px;
    min-height:42px;
    padding:0 11px;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    box-sizing:border-box;
}
.edmw-shortcode-color-input{
    width:100%;
    height:42px;
    min-height:42px;
    min-width:0;
    padding:0 11px;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    line-height:40px;
    box-sizing:border-box;
}
.edmw-shortcode-color-picker-btn{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    cursor:pointer;
    flex:0 0 auto;
}
.edmw-shortcode-color-picker-preview{
    width:20px;
    height:20px;
    border-radius:999px;
    box-shadow:0 0 0 2px rgba(17,24,39,.06);
}
.edmw-shortcode-radius-value{
    display:inline-flex;
    margin-top:10px;
    color:var(--edmw-text-soft);
    font-weight:600;
}
.edmw-shortcode-radius-field input{
    width:100%;
    height:42px;
    min-height:42px;
    padding:0 11px;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    box-sizing:border-box;
}
.edmw-shortcode-border-width-field input,
.edmw-shortcode-padding-field input{
    width:100%;
    height:42px;
    min-height:42px;
    padding:0 11px;
    border:1px solid #ccd6e0;
    border-radius:12px;
    background:#fff;
    box-sizing:border-box;
}
.edmw-shortcode-preview-block{
    margin-top:0;
    padding:16px;
    border:1px solid #dce6f0;
    border-radius:16px;
    background:#fbfdff;
}
.edmw-shortcode-preview-label,
.edmw-shortcode-preview-state-label{
    display:block;
    margin-bottom:10px;
    font-weight:600;
    color:var(--edmw-text);
}
.edmw-shortcode-preview-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.edmw-shortcode-preview-state{
    padding:12px;
    border:1px solid #dce6f0;
    border-radius:14px;
    background:#fff;
}
.edmw-dark-mode-shortcode-preview .edmw-dark-mode-button{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:var(--edmw-shortcode-preview-padding,10px) 14px;
    border-radius:var(--edmw-shortcode-preview-radius,15px);
    border:var(--edmw-shortcode-preview-border-width,1px) solid var(--edmw-shortcode-preview-border-light,var(--edmw-shortcode-border-light,#1D2327));
    line-height:1;
}
.edmw-dark-mode-shortcode-preview .edmw-icon{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.edmw-dark-mode-shortcode-preview .edmw-button-text{
    display:inline-flex;
    align-items:center;
    line-height:1.05;
}
.edmw-shortcode-preview-state.is-light .edmw-dark-mode-shortcode-preview .edmw-dark-mode-button{
    background:var(--edmw-shortcode-preview-light-bg,#F8F9FA);
    color:var(--edmw-shortcode-preview-light-text,#495057);
}
.edmw-shortcode-preview-state.is-dark .edmw-dark-mode-shortcode-preview .edmw-dark-mode-button{
    background:var(--edmw-shortcode-preview-dark-bg,#13192F);
    color:var(--edmw-shortcode-preview-dark-text,#FFFFFF);
    border-color:var(--edmw-shortcode-preview-border-dark,var(--edmw-shortcode-border-dark,#1D2327));
}
.edmw-shortcode-preview-state.is-dark .edmw-dark-mode-shortcode-preview .edmw-icon-light{
    display:flex;
}
.edmw-shortcode-preview-state.is-dark .edmw-dark-mode-shortcode-preview .edmw-icon-dark{
    display:none;
}
.edmw-shortcode-preview-state.is-light .edmw-dark-mode-shortcode-preview .edmw-icon-dark{
    display:flex;
}
.edmw-shortcode-preview-state.is-light .edmw-dark-mode-shortcode-preview .edmw-icon-light{
    display:none;
}
.edmw-widget-guide-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:24px;
    align-items:start;
}
.edmw-widget-guide-copy{
    min-width:0;
}
.edmw-widget-guide-copy .ul-disc{
    margin-bottom:16px;
}
.edmw-widget-option-teasers{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:16px;
}
.edmw-widget-option-group{
    padding:14px;
    border:1px solid #dce6f0;
    border-radius:14px;
    background:#fbfdff;
}
.edmw-widget-option-group h4{
    margin:0 0 10px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:#60758b;
}
.edmw-widget-option-pills{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.edmw-widget-option-pill{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 9px;
    border-radius:999px;
    background:#eef5fc;
    border:1px solid #d8e5f2;
    color:#34526e;
    font-size:11px;
    font-weight:600;
    white-space:nowrap;
    line-height:1;
}
.edmw-diagnostic-section .description{
    margin:0 0 12px;
    color:var(--edmw-text-soft);
}
.edmw-widget-scene{
    border:1px solid #dce6f0;
    border-radius:16px;
    overflow:hidden;
    background:#f8fbff;
    width:100%;
    max-width:400px;
    margin-left:auto;
}
.edmw-widget-scene img{
    display:block;
    width:100%;
    height:auto;
}
.edmw-advanced-panels{
    min-width:0;
}
.edmw-settings-panel{
    display:none;
}
.edmw-settings-panel.is-active{
    display:block;
}
.edmw-empty-state{
    padding:18px;
    border:1px dashed #c8d7e5;
    border-radius:14px;
    color:var(--edmw-text-soft);
    background:#fbfdff;
    line-height:1.6;
}
.edmw-settings-card{
    background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);
    padding:20px;
    border-radius:16px;
    border:1px solid #e2ebf3;
    box-shadow:0 8px 22px rgba(18,43,70,.05);
}
.edmw-settings-card + .edmw-settings-card{
    margin-top:24px;
}
.edmw-guide-stack > .edmw-settings-card{
    margin-top:0;
}
.edmw-guide-grid > .edmw-settings-card,
.edmw-advanced-panels > .edmw-settings-card{
    margin-top:0;
}
.edmw-settings-card-subtle{
    background:linear-gradient(180deg,#fdfefe 0%,#f7fbff 100%);
}
.edmw-settings-card-wide{
    grid-column:1 / -1;
}
.edmw-settings-card h3{
    margin:0 0 16px;
}
.edmw-settings-card h4{
    margin:0 0 14px;
    font-size:14px;
    color:var(--edmw-text);
}
.edmw-field{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-bottom:16px;
}
.edmw-field label{
    font-weight:600;
    color:var(--edmw-text);
}
.edmw-switch-field{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px 18px;
    border:1px solid #dce6f0;
    border-radius:16px;
    background:#fbfdff;
    margin-bottom:16px;
}
.edmw-switch-copy{
    min-width:0;
}
.edmw-switch-copy label{
    display:block;
    margin:0 0 6px;
    font-weight:600;
}
.edmw-switch-copy p{
    margin:0;
    color:var(--edmw-text-soft);
}
.edmw-switch{
    position:relative;
    display:inline-flex;
    align-items:center;
    flex-shrink:0;
}
.edmw-switch input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.edmw-switch-track{
    position:relative;
    display:block;
    width:54px;
    height:30px;
    border-radius:999px;
    background:#d7e3ef;
    transition:background .18s ease;
}
.edmw-switch-thumb{
    position:absolute;
    top:4px;
    left:4px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 2px 8px rgba(18,43,70,.18);
    transition:transform .18s ease;
}
.edmw-switch input:checked + .edmw-switch-track{
    background:var(--edmw-accent);
}
.edmw-switch input:checked + .edmw-switch-track .edmw-switch-thumb{
    transform:translateX(24px);
}
.edmw-field input[type="text"],
.edmw-field input[type="time"],
.edmw-field select,
.edmw-field textarea{
    width:100%;
    border:1px solid #ccd6e0;
    border-radius:10px;
    padding:10px 12px;
    background:#fff;
}
.edmw-field textarea{
    min-height:100px;
    resize:vertical;
}
.edmw-field input:focus,
.edmw-field select:focus,
.edmw-field textarea:focus{
    outline:none;
    border-color:var(--edmw-accent);
    box-shadow:0 0 0 3px rgba(31,111,178,.12);
}
.edmw-two-cols{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.edmw-checkbox-row{
    margin-bottom:10px;
}
.edmw-checkbox-row label{
    display:flex;
    align-items:flex-start;
    gap:10px;
    font-weight:500;
}
.edmw-inline-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:14px;
}
.description{
    color:var(--edmw-text-soft);
    margin-top:0;
    margin-bottom:16px;
}
.edmw-diagnostic-section{
    background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);
    padding:20px;
    border-radius:16px;
    border:1px solid #e2ebf3;
}
.edmw-diagnostic-list{
    margin-top:15px;
}
.edmw-diagnostic-item{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:8px 0;
    border-bottom:1px solid #e9ecef;
}
.edmw-diagnostic-item:last-child{
    border-bottom:none;
}
.edmw-diagnostic-value{
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:12px;
    color:#6c757d;
    word-break:break-word;
}
.edmw-test-buttons{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:15px;
}
.edmw-test-results{
    margin-top:15px;
    padding:10px;
    background:#fff;
    border-radius:4px;
    border:1px solid #e9ecef;
    min-height:60px;
}
.edmw-test-loading{
    color:#6c757d;
    font-style:italic;
}
.edmw-test-success{
    color:#28a745;
    font-weight:500;
}
.edmw-test-error{
    color:#dc3545;
    font-weight:500;
}
.edmw-logs-container{
    margin-top:15px;
}
.edmw-logs-header{
    display:flex;
    gap:10px;
    margin-bottom:15px;
    flex-wrap:wrap;
}
.edmw-logs-header .edmw-button-copied,
.edmw-logs-header .edmw-button-copied:hover,
.edmw-logs-header .edmw-button-copied:focus{
    background:#1f9d55;
    border-color:#1f9d55;
    color:#fff;
    box-shadow:0 10px 24px rgba(31,157,85,.22);
}
.edmw-logs-content{
    background:#f8fbfd;
    border:1px solid #e2ebf3;
    border-radius:12px;
    padding:15px;
    max-height:400px;
    overflow-y:auto;
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:12px;
    line-height:1.4;
}
.edmw-logs-loading{
    color:#6c757d;
    font-style:italic;
}
.edmw-color-hex-input:focus{
    border-color:var(--edmw-accent);
    outline:none;
    box-shadow:0 0 0 3px rgba(31,111,178,.12);
}
.pcr-app{
    z-index:1000000;
}
.elementor-color-picker__header{
    align-items:center;
    box-shadow:0 2px 8px rgba(0,0,0,.1);
    display:flex;
    font-size:12px;
    font-weight:700;
    justify-content:space-between;
    padding:10px;
}
.e-color-picker__tools{
    display:flex;
}
.e-control-tool{
    background-color:#fff;
    border:0;
    border-radius:3px;
    display:inline-flex;
    height:20px;
    margin:0 3px;
    position:relative;
    width:20px;
    box-shadow:0 1px 5px rgba(0,0,0,.1);
    cursor:pointer;
}
.e-control-tool i{
    color:#404349;
    font-size:13px;
    left:50%;
    position:absolute;
    top:50%;
    transform:translate(-50%,-50%);
}
.pcr-app[data-theme='monolith']{
    padding:0;
    width:270px;
    background-color:#fff;
    box-shadow:0 12px 28px rgba(0,0,0,.16);
    color:#404349;
    font-family:inherit;
}
.pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-chooser,
.pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-opacity{
    height:8px;
}
.pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-palette{
    height:150px;
}
.pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview{
    display:none;
}
.pcr-interaction,
.pcr-selection{
    padding:0 20px;
}
.pcr-selection{
    padding-top:20px;
}
.pcr-app .pcr-selection .pcr-picker{
    box-shadow:0 0 5px 1px rgba(0,0,0,.2);
}
.pcr-app .pcr-interaction{
    padding-bottom:20px;
}
.pcr-app .pcr-interaction input.pcr-result{
    background-color:transparent;
    border:1px solid #d5d8dc;
    border-radius:8px;
    color:#1f2933;
    margin:0;
    box-shadow:none;
    min-height:36px;
    height:36px;
    padding:0 8px;
    font-family:'Monaco','Menlo','Ubuntu Mono',monospace;
    font-size:10px;
    line-height:34px;
    box-sizing:border-box;
}
.pcr-app .pcr-interaction input.pcr-result:focus{
    border-color:#7d8590;
    box-shadow:none;
}
.pcr-app .pcr-interaction input.pcr-type{
    all:unset;
    color:#8a8f98;
    cursor:pointer;
    font-size:10px;
    padding-left:5px;
    text-transform:uppercase;
}
.pcr-app .pcr-interaction input.pcr-type.active{
    background-color:transparent;
    color:#1f2124;
}
@media (max-width:1200px){
    .edmw-mapping-header{
        flex-direction:column;
    }
    .edmw-mapping-actions{
        width:100%;
        justify-content:flex-start;
    }
    .edmw-mapping-stats{
        width:100%;
        justify-content:flex-start;
    }
    .edmw-mapping-workspace,
    .edmw-mapping-shell[data-preview-open="true"] .edmw-mapping-workspace{
        flex-direction:column;
    }
    .edmw-preview-resizer{
        display:none;
    }
    .edmw-preview-panel{
        position:relative;
        top:auto;
        border-top:1px solid #e2ebf3;
        padding-top:20px;
        width:100%;
        max-width:none;
        min-width:0;
    }
    .edmw-mapping-shell[data-preview-open="true"] .edmw-preview-panel{
        width:100%;
        max-width:none;
        min-width:0;
    }
    .edmw-preview-controls{
        min-width:0;
        width:100%;
    }
    .edmw-preview-toolbar{
        grid-template-columns:1fr 1fr 1fr;
    }
    .edmw-advanced-layout{
        grid-template-columns:1fr;
    }
    .edmw-advanced-nav{
        flex-direction:row;
        flex-wrap:wrap;
    }
    .edmw-settings-nav-btn{
        text-align:center;
    }
    .edmw-switch-field{
        align-items:flex-start;
    }
    .edmw-mapping-shell[data-preview-open="true"] .edmw-color-item{
        flex-wrap:nowrap;
    }
    .edmw-mapping-shell[data-preview-open="true"] .edmw-color-left,
    .edmw-mapping-shell[data-preview-open="true"] .edmw-color-right{
        flex-wrap:nowrap;
        min-width:0;
    }
    .edmw-mapping-shell[data-preview-open="true"] .edmw-color-hex{
        display:none;
    }
}
@media (max-width:1200px){
    .edmw-widget-guide-card{
        grid-template-columns:minmax(0,1fr) 320px;
    }
    .edmw-shortcode-layout{
        grid-template-columns:minmax(0,1fr) 320px;
    }
}
@media (max-width:1024px){
    .edmw-widget-guide-card{
        grid-template-columns:1fr;
    }
    .edmw-shortcode-layout{
        grid-template-columns:1fr;
    }
    .edmw-widget-scene{
        max-width:260px;
        margin-left:0;
    }
}
@media (max-width:900px){
    .edmw-guide-grid{
        grid-template-columns:1fr;
    }
    .edmw-guide-grid > .edmw-settings-card{
        height:auto;
    }
    .edmw-widget-option-teasers{
        grid-template-columns:1fr;
    }
    .edmw-shortcode-settings-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:768px){
    .edmw-product-banner{
        grid-template-columns:1fr;
        justify-items:start;
    }
    
@media (max-width:640px){
    .edmw-logs-header{
        flex-direction:column;
        align-items:stretch;
    }
    .edmw-logs-header #edmw-copy-report{
        align-self:flex-start;
    }
}
@media (max-width:480px){
    .edmw-mapping-shell .edmw-color-item{
        flex-wrap:wrap;
    }
    .edmw-mapping-shell .edmw-color-left,
    .edmw-mapping-shell .edmw-color-right{
        width:auto;
        margin-left:0;
    }
    .edmw-mapping-shell .edmw-color-title{
        white-space:normal;
    }
    .edmw-shortcode-settings-grid,
    .edmw-shortcode-preview-grid{
        grid-template-columns:1fr;
    }
    .edmw-form-actions .button{
        width:100%;
    }
    .edmw-success-message{
        margin-left:0;
        margin-top:15px;
        text-align:center;
    }
}
