
:root{--l3cf-red:#e31b23;--l3cf-dark:#0b0b0d;--l3cf-card:#151519;--l3cf-line:#2a2a2f;--l3cf-text:#f5f5f5;--l3cf-muted:#a8a8ad}
.l3cf-shell{max-width:1220px;margin:0 auto;padding:28px 18px;color:var(--l3cf-text)}
.l3cf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}
.l3cf-head h1{font-size:clamp(30px,5vw,54px);line-height:1;margin:6px 0 8px;text-transform:uppercase}
.l3cf-head p{margin:0;color:var(--l3cf-muted)}
.l3cf-kicker,.l3cf-tag{color:var(--l3cf-red);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.l3cf-grid{display:grid;gap:18px}
.l3cf-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.l3cf-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.l3cf-gallery-card,.l3cf-photo-card{background:var(--l3cf-card);border:1px solid var(--l3cf-line);border-radius:12px;overflow:hidden}
.l3cf-gallery-card a{color:inherit;text-decoration:none}
.l3cf-cover{aspect-ratio:16/10;position:relative;background:#111;overflow:hidden}
.l3cf-cover img,.l3cf-photo-card img{width:100%;height:100%;object-fit:cover;display:block}
.l3cf-cover-empty{height:100%;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:900;color:#333}
.l3cf-photo-count{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.8);padding:6px 9px;border-radius:6px;font-size:12px}
.l3cf-card-body{padding:16px}.l3cf-card-body h2{font-size:20px;margin:8px 0 4px}.l3cf-card-body p{margin:0;color:var(--l3cf-muted)}
.l3cf-photo-open{border:0;background:none;padding:0;width:100%;aspect-ratio:4/5;cursor:zoom-in}
.l3cf-photo-meta{padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.l3cf-photo-meta strong,.l3cf-photo-meta span{display:block}.l3cf-photo-meta span{color:var(--l3cf-muted);font-size:13px;margin-top:3px}
.l3cf-add,.l3cf-cart-open,.l3cf-cart form button{border:0;border-radius:8px;background:var(--l3cf-red);color:#fff;font-weight:800;padding:10px 14px;cursor:pointer}
.l3cf-cart-open span{display:inline-flex;background:#fff;color:#111;border-radius:999px;min-width:20px;height:20px;align-items:center;justify-content:center;margin-left:5px}
.l3cf-empty{padding:34px;border:1px dashed var(--l3cf-line);border-radius:12px;text-align:center;color:var(--l3cf-muted)}
.l3cf-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:99998;display:none}
.l3cf-cart{position:fixed;right:0;top:0;width:min(440px,94vw);height:100vh;background:#101014;z-index:99999;padding:28px;transform:translateX(105%);transition:.25s;overflow:auto;box-sizing:border-box}
.l3cf-cart.is-open{transform:translateX(0)}.l3cf-overlay.is-open{display:block}
.l3cf-cart.is-inline{position:relative;transform:none;width:100%;height:auto;z-index:1;margin-top:20px;border-radius:12px;border:1px solid var(--l3cf-line)}
.l3cf-cart-close{position:absolute;right:16px;top:12px;border:0;background:none;color:#fff;font-size:32px;cursor:pointer}
.l3cf-cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--l3cf-line)}
.l3cf-cart-item img{width:58px;height:68px;object-fit:cover;border-radius:6px}.l3cf-cart-item button{background:none;border:0;color:#ff676c;cursor:pointer}
.l3cf-cart-total{display:flex;justify-content:space-between;font-size:20px;padding:18px 0}
.l3cf-cart form{display:grid;gap:10px}.l3cf-cart input{width:100%;box-sizing:border-box;padding:12px;border-radius:8px;border:1px solid #333;background:#19191e;color:#fff}
.l3cf-small{font-size:12px;color:var(--l3cf-muted)}[data-l3cf-result]{margin-top:14px}
.l3cf-success{background:#13261a;border:1px solid #245b34;padding:14px;border-radius:8px}.l3cf-error{background:#2a1515;border:1px solid #6d2e2e;padding:12px;border-radius:8px}
@media(max-width:900px){.l3cf-gallery-grid{grid-template-columns:repeat(2,1fr)}.l3cf-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.l3cf-head{align-items:flex-start;flex-direction:column}.l3cf-gallery-grid{grid-template-columns:1fr}.l3cf-photo-grid{grid-template-columns:repeat(2,1fr);gap:10px}.l3cf-photo-meta{align-items:stretch;flex-direction:column}.l3cf-add{width:100%}}


/* v0.2 - integração visual com o portal */
body.l3cf-page{background:#0a0a0d!important}
body.l3cf-page #content,
body.l3cf-page .site-content,
body.l3cf-page .entry-content,
body.l3cf-page .wp-site-blocks,
body.l3cf-page main{background:#0a0a0d!important}
body.l3cf-page .entry-header,
body.l3cf-page .page-header{display:none!important}

.l3cf-shell{
    max-width:1280px;
    padding:42px 22px 70px;
}
.l3cf-head{
    padding:26px 28px;
    border:1px solid #25252b;
    background:
      radial-gradient(circle at 85% 10%,rgba(227,27,35,.18),transparent 28%),
      linear-gradient(135deg,#111116,#0b0b0e);
    border-radius:16px;
    margin-bottom:28px;
}
.l3cf-head h1{font-weight:950;letter-spacing:-.03em}
.l3cf-head p{font-size:16px}
.l3cf-kicker{display:inline-flex;align-items:center;gap:8px}
.l3cf-kicker:before{content:'';width:28px;height:3px;background:var(--l3cf-red);display:inline-block}

.l3cf-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.l3cf-gallery-card{
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
    box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.l3cf-gallery-card:hover{
    transform:translateY(-4px);
    border-color:#3a3a43;
    box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.l3cf-cover{
    background:
      linear-gradient(135deg,rgba(227,27,35,.08),transparent 50%),
      #111116;
}
.l3cf-cover-empty{
    background:
      radial-gradient(circle at center,rgba(227,27,35,.12),transparent 40%),
      linear-gradient(135deg,#15151a,#0d0d10);
    color:#28282f;
    font-size:58px;
    letter-spacing:-.05em;
}
.l3cf-photo-count{
    background:#08080b;
    border:1px solid #33333a;
    font-weight:800;
}
.l3cf-card-body{padding:17px 18px 19px}
.l3cf-card-body h2{
    text-transform:uppercase;
    font-weight:900;
    letter-spacing:-.02em;
    color:#fff;
}

.l3cf-photo-card{position:relative}
.l3cf-photo-open{overflow:hidden}
.l3cf-photo-open img{transition:transform .25s ease}
.l3cf-photo-card:hover .l3cf-photo-open img{transform:scale(1.03)}
.l3cf-add{transition:.2s}
.l3cf-add:hover,.l3cf-cart-open:hover{filter:brightness(1.08);transform:translateY(-1px)}

@media(max-width:720px){
    .l3cf-shell{padding:24px 14px 50px}
    .l3cf-head{padding:20px;border-radius:12px}
    .l3cf-gallery-grid{grid-template-columns:1fr}
}


/* v0.3 — usa o cabeçalho/menu e rodapé do próprio portal.
   Somente o conteúdo nativo duplicado do WordPress é ocultado. */
body.l3cf-page .entry-title,
body.l3cf-page .wp-block-post-title,
body.l3cf-page .page-title,
body.l3cf-page .entry-meta,
body.l3cf-page .post-meta,
body.l3cf-page .wp-block-post-author,
body.l3cf-page .wp-block-post-date,
body.l3cf-page .posted-on,
body.l3cf-page .byline{
    display:none!important;
}

/* Remove o espaço que o template reserva para título/metadados,
   sem tocar no header/menu institucional do portal. */
body.l3cf-page .entry-header:empty,
body.l3cf-page header.entry-header{
    display:none!important;
}
body.l3cf-page .entry-content,
body.l3cf-page .wp-block-post-content{
    margin-top:0!important;
    padding-top:0!important;
}
body.l3cf-page main,
body.l3cf-page .site-main{
    padding-top:0!important;
}

/* Não escondemos header.site-header, .wp-site-blocks > header,
   menu principal ou footer: eles continuam sendo os do portal. */

.l3cf-single-gallery{padding-top:26px}
.l3cf-back{
    display:inline-flex;
    align-items:center;
    margin:0 0 16px;
    color:#b9b9bf!important;
    text-decoration:none!important;
    font-size:14px;
    font-weight:700;
}
.l3cf-back:hover{color:#fff!important}
.l3cf-gallery-info{
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin-top:10px;
    color:#aaaab0;
    font-size:14px;
}
.l3cf-gallery-info span{
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.l3cf-gallery-info span+span:before{
    content:'•';
    color:#e31b23;
    margin-right:8px;
}
.l3cf-single-gallery .l3cf-head{margin-bottom:24px}

/* Melhor placeholder quando a galeria ainda não possui capa */
.l3cf-cover-empty{
    position:relative;
    font-size:0;
}
.l3cf-cover-empty:before{
    content:'LIGA';
    position:absolute;
    left:50%;
    top:42%;
    transform:translate(-50%,-50%);
    font-size:15px;
    letter-spacing:.22em;
    font-weight:900;
    color:#55545b;
}
.l3cf-cover-empty:after{
    content:'3 COLINAS';
    position:absolute;
    left:50%;
    top:54%;
    transform:translate(-50%,-50%);
    white-space:nowrap;
    font-size:30px;
    letter-spacing:-.04em;
    font-weight:950;
    color:#2d2d34;
}

@media(max-width:600px){
    .l3cf-gallery-info{gap:5px 10px}
    .l3cf-gallery-info span+span:before{margin-right:4px}
}


/* v0.4 — template nativo da Liga para Fotos */
html,body.l3cf-native-portal{margin:0!important;padding:0!important;background:#050608!important;color:#fff!important}
body.l3cf-native-portal{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.l3cf-native-portal *{box-sizing:border-box}
body.l3cf-native-portal > header:not(.l3cf-portal-header),
body.l3cf-native-portal > footer:not(.l3cf-portal-footer){display:none!important}
.l3cf-native-main{min-height:65vh;background:#050608}

.l3cf-portal-header{position:sticky;top:0;z-index:9999;background:rgba(5,6,8,.97);border-bottom:1px solid rgba(226,27,35,.42);backdrop-filter:blur(14px)}
.admin-bar .l3cf-portal-header{top:32px}
.l3cf-portal-header-inner{max-width:1280px;margin:auto;min-height:68px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.l3cf-portal-brand{display:flex;align-items:center;gap:10px;color:#fff!important;text-decoration:none!important;font-weight:950;text-transform:uppercase;white-space:nowrap}
.l3cf-portal-brand small{display:block;color:#e21b23;font-size:9px;letter-spacing:.13em}
.l3cf-portal-logo{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px}
.l3cf-portal-logo img{width:43px!important;height:43px!important;max-width:43px!important;max-height:43px!important;object-fit:contain!important;display:block!important}
.l3cf-portal-nav{display:flex;gap:20px;align-items:center}
.l3cf-portal-nav a{color:#c7cbd1!important;text-decoration:none!important;font-size:11px;font-weight:850;text-transform:uppercase;white-space:nowrap}
.l3cf-portal-nav a:hover,.l3cf-portal-nav a.active{color:#fff!important}
.l3cf-portal-nav a.active{position:relative}
.l3cf-portal-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-24px;height:2px;background:#e21b23}

.l3cf-portal-footer{margin:0;background:#050608;border-top:1px solid #b5161f;color:#9da3ab}
.l3cf-footer-main{width:min(1280px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(150px,.7fr) minmax(150px,.7fr);gap:56px;padding:42px 0 34px}
.l3cf-footer-brand{display:flex;gap:18px;align-items:flex-start;max-width:520px}
.l3cf-footer-brand>a{width:74px;height:74px;flex:0 0 74px}
.l3cf-footer-brand img{width:100%;height:100%;object-fit:contain}
.l3cf-footer-brand strong{display:block;color:#fff;font-size:19px;text-transform:uppercase;margin:2px 0 8px}
.l3cf-footer-brand p{margin:0;color:#d7a64b;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.l3cf-footer-main nav h3{margin:0 0 14px;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.16em}
.l3cf-footer-main nav a{display:block;width:max-content;max-width:100%;color:#9da3ab!important;text-decoration:none!important;font-size:13px;margin:0 0 9px}
.l3cf-footer-main nav a:hover{color:#fff!important}
.l3cf-footer-bottom{border-top:1px solid #20242a;width:100%;padding:16px max(24px,calc((100% - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;color:#666d76;font-size:11px}

@media(max-width:1100px){
 .l3cf-portal-header-inner{align-items:flex-start;flex-direction:column;padding-top:9px;padding-bottom:7px;gap:4px}
 .l3cf-portal-nav{width:100%;overflow-x:auto;gap:17px;padding:5px 0 3px;scrollbar-width:none}
 .l3cf-portal-nav::-webkit-scrollbar{display:none}
 .l3cf-portal-nav a.active:after{bottom:-5px}
}
@media(max-width:782px){.admin-bar .l3cf-portal-header{top:46px}}
@media(max-width:700px){
 .l3cf-portal-header-inner{padding-left:13px;padding-right:13px}
 .l3cf-portal-brand{font-size:13px}
 .l3cf-portal-logo,.l3cf-portal-logo img{width:37px!important;height:37px!important;min-width:37px!important;max-width:37px!important}
 .l3cf-footer-main{grid-template-columns:1fr 1fr;gap:30px;width:calc(100% - 28px)}
 .l3cf-footer-brand{grid-column:1/-1}
 .l3cf-footer-bottom{padding:16px 14px;flex-direction:column;text-align:center;gap:7px}
}
@media(max-width:500px){.l3cf-footer-main{grid-template-columns:1fr}.l3cf-footer-brand{grid-column:auto}}


/* v0.4.1 — correção robusta de logo e refinamento do cabeçalho/rodapé */
.l3cf-portal-logo.logo-fallback,
.l3cf-footer-logo-link.logo-fallback{
    position:relative;
    background:#0a0b0f;
    border:1px solid rgba(226,27,35,.55);
    border-radius:10px;
}
.l3cf-portal-logo.logo-fallback:before,
.l3cf-footer-logo-link.logo-fallback:before{
    content:'L3C';
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:#fff;
    font-weight:950;
    letter-spacing:-.05em;
}
.l3cf-portal-logo.logo-fallback:after{
    content:'';
    position:absolute;
    left:7px;right:7px;bottom:6px;height:2px;background:#e21b23;
}
.l3cf-footer-logo-link.logo-fallback{display:block}
.l3cf-footer-logo-link.logo-fallback:before{font-size:20px}
.l3cf-footer-logo-link.logo-fallback:after{
    content:'3 COLINAS';
    position:absolute;
    left:0;right:0;bottom:9px;
    text-align:center;
    font-size:7px;
    color:#e21b23;
    font-weight:900;
    letter-spacing:.08em;
}

.l3cf-portal-header{box-shadow:0 8px 24px rgba(0,0,0,.18)}
.l3cf-portal-header-inner{min-height:72px}
.l3cf-portal-brand>span:last-child{line-height:1.02;font-size:16px}
.l3cf-portal-brand small{margin-top:3px}

.l3cf-footer-main{
    border-top:0;
    padding-top:38px;
}
.l3cf-footer-brand>a{
    border-radius:12px;
    overflow:hidden;
}
.l3cf-footer-bottom strong{color:#9399a2}


/* v0.4.2 — identidade oficial */
.l3cf-portal-logo{
    width:48px!important;
    height:56px!important;
    flex:0 0 48px!important;
    overflow:visible!important;
}
.l3cf-portal-logo img{
    width:48px!important;
    height:56px!important;
    max-width:48px!important;
    max-height:56px!important;
    object-fit:contain!important;
    display:block!important;
}
.l3cf-footer-brand>a,
.l3cf-footer-logo-link{
    width:82px!important;
    height:92px!important;
    flex:0 0 82px!important;
    background:transparent!important;
    border:0!important;
    overflow:visible!important;
}
.l3cf-footer-brand img{
    width:82px!important;
    height:92px!important;
    object-fit:contain!important;
    display:block!important;
}
.l3cf-portal-brand{
    gap:12px!important;
}
.l3cf-footer-brand{
    align-items:center!important;
}
@media(max-width:700px){
    .l3cf-portal-logo,
    .l3cf-portal-logo img{
        width:42px!important;
        height:50px!important;
        min-width:42px!important;
        max-width:42px!important;
    }
    .l3cf-footer-brand>a,
    .l3cf-footer-logo-link{
        width:72px!important;
        height:82px!important;
        flex-basis:72px!important;
    }
    .l3cf-footer-brand img{
        width:72px!important;
        height:82px!important;
    }
}


/* v0.5 — venda + álbuns gratuitos */
.l3cf-free-badge{
    color:#fff!important;
    background:#176b36;
    border:1px solid #278a4c;
    padding:4px 8px;
    border-radius:999px;
    font-size:10px!important;
    font-weight:900;
    letter-spacing:.06em;
}
.l3cf-download{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:8px;
    background:#176b36;
    color:#fff!important;
    font-weight:850;
    padding:10px 14px;
    text-decoration:none!important;
    transition:.2s;
}
.l3cf-download:hover{background:#208445;transform:translateY(-1px)}
.l3cf-photo-card{border-color:#292a30}
.l3cf-photo-card:hover{border-color:#45464e}


/* v0.5.1 — informações da partida */
.l3cf-game-summary{
    margin:0 0 24px;
    border:1px solid #292c33;
    border-radius:14px;
    background:#0d0f13;
    overflow:hidden;
}
.l3cf-game-summary-title{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    padding:12px 16px;
    border-bottom:1px solid #292c33;
    background:#111319;
}
.l3cf-game-summary-title span{
    font-size:11px;
    font-weight:950;
    letter-spacing:.12em;
    color:#e31b23;
}
.l3cf-game-summary-title a{
    color:#c4c8cf!important;
    text-decoration:none!important;
    font-size:12px;
    font-weight:800;
}
.l3cf-game-summary-title a:hover{color:#fff!important}
.l3cf-game-summary-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    background:#292c33;
}
.l3cf-game-info-box{
    padding:16px 18px;
    background:#0d0f13;
    min-height:78px;
}
.l3cf-game-info-box small{
    display:block;
    margin-bottom:6px;
    color:#7f858e;
    text-transform:uppercase;
    font-size:10px;
    font-weight:850;
    letter-spacing:.08em;
}
.l3cf-game-info-box strong{
    display:block;
    color:#fff;
    font-size:15px;
    line-height:1.3;
}
.l3cf-score-box{grid-column:1/-1;text-align:center}
.l3cf-score-box strong{font-size:20px}
.l3cf-score-box b{color:#e31b23;margin:0 6px}
@media(max-width:760px){
    .l3cf-game-summary-grid{grid-template-columns:1fr}
    .l3cf-score-box{grid-column:auto}
    .l3cf-game-summary-title{align-items:flex-start;flex-direction:column}
}


/* v0.6.2 — grade adaptativa das informações da partida */
.l3cf-game-summary-grid{
    display:grid!important;
    gap:1px!important;
    background:#292c33!important;
}
.l3cf-game-summary-grid.l3cf-cols-1{
    grid-template-columns:1fr!important;
}
.l3cf-game-summary-grid.l3cf-cols-2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.l3cf-game-summary-grid.l3cf-cols-3{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.l3cf-score-box{
    grid-column:1/-1!important;
}
.l3cf-game-info-box:empty{
    display:none!important;
}
@media(max-width:760px){
    .l3cf-game-summary-grid.l3cf-cols-2,
    .l3cf-game-summary-grid.l3cf-cols-3{
        grid-template-columns:1fr!important;
    }
}


/* v0.7.0 — pedido seguro, recuperação e downloads protegidos */
.l3cf-recover-open{
    margin-top:14px;border:0;background:transparent;color:#c2c6cc;
    padding:0;text-decoration:underline;cursor:pointer;font-weight:750;font-size:13px
}
.l3cf-recover-open:hover{color:#fff}
.l3cf-recover-modal{
    position:fixed;left:50%;top:50%;transform:translate(-50%,-48%) scale(.98);
    width:min(460px,92vw);background:#101014;border:1px solid #2d3036;border-radius:14px;
    z-index:100000;padding:26px;opacity:0;pointer-events:none;transition:.2s;color:#fff
}
.l3cf-recover-modal.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.l3cf-recover-close{position:absolute;right:14px;top:10px;border:0;background:none;color:#fff;font-size:30px;cursor:pointer}
.l3cf-recover-modal h2{margin:0 0 8px}.l3cf-recover-modal p{color:#a9adb5}
.l3cf-recover-modal form{display:flex;gap:8px}
.l3cf-recover-modal input{flex:1;padding:12px;border-radius:8px;border:1px solid #34373e;background:#17191e;color:#fff}
.l3cf-recover-modal form button,.l3cf-order-access-link{
    display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;
    background:#e31b23;color:#fff!important;padding:11px 15px;font-weight:850;text-decoration:none!important;cursor:pointer
}

.l3cf-order-page{max-width:980px}
.l3cf-order-card{background:#0d0f13;border:1px solid #292c33;border-radius:16px;overflow:hidden}
.l3cf-order-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px;border-bottom:1px solid #292c33;background:linear-gradient(135deg,#111318,#0a0c10)}
.l3cf-order-top h1{margin:6px 0 0;text-transform:uppercase;font-size:clamp(28px,5vw,44px)}
.l3cf-status{border-radius:999px;padding:7px 10px;font-size:10px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
.l3cf-status-aguardando{background:#3a2b11;color:#f0c36a;border:1px solid #725821}
.l3cf-status-pago,.l3cf-status-liberado{background:#14351f;color:#79d395;border:1px solid #285f3a}
.l3cf-status-cancelado,.l3cf-status-reembolsado{background:#3a1717;color:#ff9393;border:1px solid #6d2d2d}
.l3cf-order-customer{padding:18px 26px;border-bottom:1px solid #23262c;display:flex;flex-direction:column;gap:4px}
.l3cf-order-customer span{color:#8f949c;font-size:13px}
.l3cf-order-items{padding:10px 26px}
.l3cf-order-item{display:grid;grid-template-columns:74px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #22252b}
.l3cf-order-item img{width:74px;height:84px;object-fit:cover;border-radius:8px}
.l3cf-order-item strong,.l3cf-order-item span{display:block}.l3cf-order-item span{color:#9ca1a9;font-size:13px;margin-top:4px}
.l3cf-order-wait{font-size:12px!important;color:#8d929a!important}
.l3cf-order-total{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;font-size:19px}
.l3cf-order-total strong{font-size:25px}
.l3cf-order-payment,.l3cf-order-warning{margin:0 26px 26px;padding:16px;border-radius:10px}
.l3cf-order-payment{background:#121820;border:1px solid #263648}.l3cf-order-payment h2{margin-top:0}
.l3cf-order-payment code{display:block;background:#080a0d;border:1px solid #292d34;padding:12px;border-radius:8px;color:#fff;word-break:break-all}
.l3cf-order-warning{background:#2c2110;border:1px solid #654b1a;color:#f1c97a}
@media(max-width:650px){
 .l3cf-order-top{flex-direction:column}
 .l3cf-order-item{grid-template-columns:60px 1fr}
 .l3cf-order-item img{width:60px;height:70px}
 .l3cf-order-item>a,.l3cf-order-item>.l3cf-order-wait{grid-column:1/-1}
 .l3cf-recover-modal form{flex-direction:column}
}


/* v0.7.1 — recuperação visível e controle do fluxo de pedido */
.l3cf-recover-bar{
    display:flex;align-items:center;justify-content:center;gap:9px;
    margin:-2px 0 24px;padding:11px 14px;border:1px solid #25282e;
    border-radius:10px;background:#0d0f13;color:#92979f;font-size:13px
}
.l3cf-recover-bar .l3cf-recover-open{
    margin:0;color:#fff;text-decoration:none;font-weight:900
}
.l3cf-recover-bar .l3cf-recover-open:hover{color:#ef2029}
@media(max-width:600px){
    .l3cf-recover-bar{align-items:flex-start;flex-direction:column}
}


/* v0.7.3 — modal de recuperação isolado, preservando o layout do portal */
body.l3cf-modal-open{overflow:hidden!important}

#l3cf-recover-modal{
    position:fixed;
    left:50%;
    top:50%;
    width:min(460px,92vw);
    transform:translate(-50%,-46%) scale(.98);
    background:#101014;
    border:1px solid #30333a;
    border-radius:14px;
    padding:26px;
    color:#fff;
    z-index:100001;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
    box-shadow:0 24px 70px rgba(0,0,0,.55);
}

#l3cf-recover-modal.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,-50%) scale(1);
}

#l3cf-recover-modal .l3cf-recover-close{
    position:absolute;
    top:10px;
    right:14px;
    border:0;
    background:none;
    color:#fff;
    font-size:30px;
    line-height:1;
    cursor:pointer;
}

#l3cf-recover-modal h2{margin:0 36px 8px 0}
#l3cf-recover-modal p{margin:0 0 16px;color:#a7abb3;line-height:1.5}
#l3cf-recover-modal form{display:flex;gap:8px}
#l3cf-recover-modal input{
    flex:1;
    min-width:0;
    padding:12px;
    border-radius:8px;
    border:1px solid #343840;
    background:#17191e;
    color:#fff;
}
#l3cf-recover-modal form button{
    border:0;
    border-radius:8px;
    background:#e31b23;
    color:#fff;
    font-weight:850;
    padding:11px 15px;
    cursor:pointer;
}
#l3cf-recover-modal [data-l3cf-recover-result]{margin-top:12px}
.l3cf-overlay{z-index:99998!important}

@media(max-width:560px){
    #l3cf-recover-modal form{flex-direction:column}
}


/* v0.8.1 — Mercado Pago Checkout Pro */
.l3cf-mp-pay{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:12px 20px;border-radius:10px;
  background:#009ee3;color:#fff!important;text-decoration:none!important;
  font-weight:900;line-height:1;box-shadow:0 8px 22px rgba(0,158,227,.22);
  transition:.18s ease;
}
.l3cf-mp-pay:hover{transform:translateY(-1px);filter:brightness(1.05)}
.l3cf-order-payment{display:flex;flex-direction:column;align-items:flex-end;gap:8px;margin-top:18px}
.l3cf-order-payment small{color:#9299a4}
@media(max-width:640px){.l3cf-order-payment{align-items:stretch}.l3cf-mp-pay{width:100%}}


/* v0.8.7 — Checkout incorporado */
body.l3cf-checkout-open{overflow:hidden}
.l3cf-embedded-checkout{
  position:fixed;inset:0 0 0 auto;z-index:1000000;width:min(560px,100vw);
  background:#0d1015;color:#fff;transform:translateX(105%);transition:.25s ease;
  box-shadow:-24px 0 70px rgba(0,0,0,.45);overflow:auto;padding:22px;
}
.l3cf-embedded-checkout.open{transform:translateX(0)}
.l3cf-embedded-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.l3cf-embedded-head h3{font-size:28px;margin:3px 0 4px;color:#fff}
.l3cf-embedded-head p{margin:0;color:#a9b1bc}
.l3cf-kicker{font-size:10px;font-weight:950;letter-spacing:.12em;color:#ff3b43}
.l3cf-embedded-close{width:42px;height:42px;border-radius:50%;border:1px solid #303744;background:#151a21;color:#fff;font-size:25px;cursor:pointer}
#l3cf-payment-brick{background:#fff;border-radius:14px;padding:10px;overflow:hidden}
#l3cf-payment-result{margin-top:14px}
.l3cf-pay-ok,.l3cf-pay-pending,.l3cf-pay-error{padding:16px;border-radius:12px;line-height:1.55}
.l3cf-pay-ok{background:#102b1a;border:1px solid #255f3a}
.l3cf-pay-pending{background:#2c240f;border:1px solid #68531e}
.l3cf-pay-error{background:#351416;border:1px solid #7b2a2f}
.l3cf-pix-qr{display:block;max-width:260px;width:100%;margin:14px auto;background:#fff;padding:10px;border-radius:12px}
.l3cf-pix-code{width:100%;min-height:92px;margin-top:10px;border-radius:8px;padding:10px;resize:none}
.l3cf-copy-pix{margin-top:8px;width:100%;min-height:42px;border:0;border-radius:8px;background:#fff;color:#111;font-weight:800;cursor:pointer}
@media(max-width:640px){.l3cf-embedded-checkout{padding:14px}.l3cf-embedded-head h3{font-size:23px}}


/* v0.9.0 — Meus pedidos de fotos em Minha Conta */
.l3cf-my-orders{margin:28px 0;padding:22px;border:1px solid #29313b;border-radius:16px;background:#0d1117;color:#fff}
.l3cf-my-orders-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.l3cf-my-orders-head h2{margin:4px 0 5px;font-size:26px;color:#fff}
.l3cf-my-orders-head p{margin:0;color:#9fa9b5}
.l3cf-account-photos-link,.l3cf-my-order-open{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;font-weight:850;border-radius:9px}
.l3cf-account-photos-link{padding:10px 14px;background:#e31d2b;color:#fff!important}
.l3cf-my-orders-list{display:grid;gap:10px}
.l3cf-my-order-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #272f39;border-radius:12px;background:#11161d}
.l3cf-my-order-main{display:grid;gap:4px}.l3cf-my-order-number{font-size:12px;font-weight:900;color:#ff4149}
.l3cf-my-order-main>strong{font-size:22px;color:#fff}.l3cf-my-order-main>span:last-child{font-size:12px;color:#99a4b0}
.l3cf-my-order-side{display:flex;align-items:center;gap:10px}
.l3cf-order-status{padding:7px 9px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}
.l3cf-order-status.aguardando{background:#3b2d0d;color:#f6c85f}
.l3cf-order-status.pago,.l3cf-order-status.liberado{background:#123920;color:#74e69b}
.l3cf-order-status.reembolsado,.l3cf-order-status.cancelado{background:#3b171a;color:#ff8d94}
.l3cf-my-order-open{padding:9px 12px;background:#1a222d;color:#fff!important;border:1px solid #323c49}
.l3cf-my-orders-empty{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px dashed #34404d;border-radius:12px;color:#9da8b5}
.l3cf-my-orders-empty strong{color:#fff}
@media(max-width:680px){.l3cf-my-orders-head,.l3cf-my-order-card{flex-direction:column;align-items:stretch}.l3cf-my-order-side{justify-content:space-between}.l3cf-account-photos-link{width:100%}}

/* v0.9.2 - diagnóstico checkout */
.l3cf-diag-box{margin:14px 0;padding:15px;border:1px solid #394451;border-radius:12px;background:#111820;color:#fff}
.l3cf-diag-box>strong{display:block;font-size:17px;margin-bottom:10px}.l3cf-diag-list{display:grid;gap:6px}
.l3cf-diag-list>div{display:flex;justify-content:space-between;gap:12px;padding:7px 9px;background:#0c1117;border-radius:7px;font-size:12px}
.l3cf-diag-list b.ok{color:#70df96}.l3cf-diag-list b.fail{color:#ff747d}
.l3cf-diag-error{margin-top:10px;padding:10px;background:#271216;border:1px solid #5b252b;border-radius:8px}
.l3cf-diag-error small{display:block;color:#ff9ca2;margin-bottom:5px}.l3cf-diag-error code{display:block;white-space:pre-wrap;word-break:break-word;color:#fff}

.l3cf-diag-stage{margin:0 0 10px;padding:8px 10px;border-radius:8px;background:#10161d;color:#d7dee8;font-size:12px}
.l3cf-diag-stage b{color:#fff}

.l3cf-checkout-progress{display:flex;gap:12px;align-items:center;margin:14px 0;padding:13px 14px;border:1px solid #29313b;border-radius:10px;background:#101419;color:#fff}
.l3cf-checkout-progress small{display:block;margin-top:3px;color:#9ca8b5}
.l3cf-progress-dot{width:12px;height:12px;border-radius:50%;background:#ef1b2d;box-shadow:0 0 0 0 rgba(239,27,45,.55);animation:l3cfPulse 1.2s infinite}
.l3cf-checkout-progress.ready .l3cf-progress-dot{animation:none;background:#24b36b}
@keyframes l3cfPulse{70%{box-shadow:0 0 0 9px rgba(239,27,45,0)}100%{box-shadow:0 0 0 0 rgba(239,27,45,0)}}
#l3cf-payment-brick{min-height:80px}
