/* Flyme Core - apps, introducciones BP/Tienda (usa variables --fl-* del sistema Flyme) */
.flyme-pagehero{padding:56px 0 44px}
.flyme-pagehero h1{font-size:clamp(2rem,6vw,3.4rem);line-height:1.05;margin:14px 0 12px}
.flyme-pagehero .fh-lead{max-width:640px}
.fa-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;min-height:44px;padding:.65em 1.3em;border:2px solid var(--fl-gold,#C6A15B);border-radius:var(--fl-r,14px);background:var(--fl-gold,#C6A15B);color:var(--fl-black,#0B0D0C);font-weight:700;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.fa-btn:hover{transform:translateY(-2px);box-shadow:var(--fl-shadow,0 14px 28px rgba(18,60,42,.18));color:var(--fl-black,#0B0D0C)}
.fa-btn--ghost{background:transparent;color:var(--fl-green,#123C2A);border-color:var(--fl-green,#123C2A)}
.fa-btn--ghost:hover{color:var(--fl-green,#123C2A)}
.fa-btn--sm{min-height:40px;padding:.4em .9em;font-size:.9rem}
.fa-tag{display:inline-block;padding:.25em .8em;border-radius:999px;background:var(--fl-mint,#BFF2D2);color:var(--fl-black,#0B0D0C);font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fa-intro{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px;padding:22px 24px;border-radius:var(--fl-r-lg,22px);background:var(--fl-green,#123C2A);color:#fff}
.fa-intro h2{margin:8px 0 4px;color:#fff;font-size:1.5rem}
.fa-intro p{margin:0;color:#e7e2d6;max-width:560px}
.fa-intro__act{display:flex;flex-wrap:wrap;gap:10px}
.fa-intro .fa-btn--ghost{color:#fff;border-color:#fff}
.fa-intro--shop{background:var(--fl-cream,#F4F1E8);color:var(--fl-black,#0B0D0C)}
.fa-intro--shop h2{color:var(--fl-black,#0B0D0C)}.fa-intro--shop p{color:var(--fl-ink2,#3A3D3B)}
.fa-intro--shop .fa-btn--ghost{color:var(--fl-green,#123C2A);border-color:var(--fl-green,#123C2A)}

.flyme-app{max-width:880px;margin:0 auto}
.flyme-app *{box-sizing:border-box}
.fa-note{margin:0 0 16px;padding:12px 16px;border-radius:var(--fl-r,14px);background:var(--fl-yellow,#F6E05E);color:var(--fl-black,#0B0D0C);font-size:.95rem}
.fa-note a{color:var(--fl-black,#0B0D0C);font-weight:700;text-decoration:underline}
.fa-status{min-height:1.5em;margin:10px 0 0;font-size:.9rem;color:var(--fl-ink2,#3A3D3B)}
.fa-status.is-ok{color:var(--fl-green,#123C2A)}.fa-status.is-error{color:#B3261E;font-weight:700}
.fa-err{min-height:1.2em;margin:6px 0 0;color:#B3261E;font-weight:700;font-size:.9rem}
.fa-panel{background:#fff;border:1px solid var(--fl-line,rgba(11,13,12,.12));border-radius:var(--fl-r-lg,22px);padding:22px;margin:0 0 20px;box-shadow:0 6px 18px rgba(18,60,42,.06)}
.fa-panel h2,.fa-panel h3{margin:0 0 12px;font-size:1.25rem}
.fa-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.fa-f{display:flex;flex-direction:column;gap:4px;min-width:140px}
.fa-f--grow{flex:1 1 240px}
.fa-f label{font-size:.85rem;font-weight:700}
.fa-f input,.fa-f select{width:100%;min-height:44px}
.fa-progress{height:10px;border-radius:999px;background:var(--fl-cream,#F4F1E8);overflow:hidden;margin:6px 0 4px}
.fa-progress span{display:block;height:100%;width:0;background:var(--fl-gold,#C6A15B);border-radius:999px;transition:width .35s ease}
.fa-meta{display:flex;justify-content:space-between;gap:8px;font-size:.9rem;color:var(--fl-ink2,#3A3D3B);margin:0}
.fa-filters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.fa-chipbtn{min-height:40px;padding:.4em 1em;border-radius:999px;border:2px solid var(--fl-green,#123C2A);background:#fff;color:var(--fl-green,#123C2A);font-weight:700;cursor:pointer}
.fa-chipbtn[aria-pressed=true]{background:var(--fl-green,#123C2A);color:#fff}
.fa-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fa-item{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--fl-line,rgba(11,13,12,.12));border-radius:var(--fl-r,14px);background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.fa-item:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,60,42,.1)}
.fa-item input[type=checkbox]{width:22px;height:22px;accent-color:var(--fl-green,#123C2A);margin:0}
.fa-item__t{font-weight:600;word-break:break-word;cursor:pointer}
.fa-item.is-done .fa-item__t{text-decoration:line-through;opacity:.55}
.fa-pri{padding:.2em .7em;border-radius:999px;font-size:.75rem;font-weight:800}
.fa-pri--alta{background:var(--fl-coral,#FF7A59);color:#0B0D0C}.fa-pri--media{background:var(--fl-yellow,#F6E05E);color:#0B0D0C}.fa-pri--baja{background:var(--fl-mint,#BFF2D2);color:#0B0D0C}
.fa-due{font-size:.8rem;color:var(--fl-ink2,#3A3D3B);white-space:nowrap}
.fa-item.is-over .fa-due{color:#B3261E;font-weight:800}
.fa-x{min-width:44px;min-height:44px;border:0;border-radius:var(--fl-r,14px);background:transparent;color:var(--fl-ink2,#3A3D3B);font-size:1rem;cursor:pointer}
.fa-x:hover{background:var(--fl-cream,#F4F1E8);color:#B3261E}
.fa-empty{padding:28px 18px;text-align:center;border:2px dashed var(--fl-line,rgba(11,13,12,.2));border-radius:var(--fl-r-lg,22px);color:var(--fl-ink2,#3A3D3B)}
.fa-empty strong{display:block;margin-bottom:4px;color:var(--fl-black,#0B0D0C);font-size:1.05rem}
.fa-habit{display:grid;gap:10px;padding:14px;border:1px solid var(--fl-line,rgba(11,13,12,.12));border-radius:var(--fl-r,14px);background:#fff}
.fa-habit__top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fa-habit__top strong{word-break:break-word}
.fa-streak{font-size:.85rem;font-weight:800;color:var(--fl-green,#123C2A)}
.fa-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.fa-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;border-radius:12px;border:2px solid var(--fl-line,rgba(11,13,12,.2));background:#fff;color:var(--fl-black,#0B0D0C);cursor:pointer;font-size:.75rem;transition:transform .15s ease}
.fa-day b{font-size:1rem}
.fa-day:hover{transform:translateY(-2px)}
.fa-day.is-on{background:var(--fl-green,#123C2A);border-color:var(--fl-green,#123C2A);color:#fff}
.fa-clock{font-size:clamp(3.2rem,16vw,6rem);font-weight:800;letter-spacing:-.03em;line-height:1;text-align:center;margin:10px 0 18px;font-variant-numeric:tabular-nums}
.fa-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 12px}
.fa-sessions{text-align:center;margin:10px 0 0;color:var(--fl-ink2,#3A3D3B);font-size:.9rem}
.fa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.fa-cat{padding:20px;border-radius:var(--fl-r-lg,22px);border:1px solid var(--fl-line,rgba(11,13,12,.12));background:#fff;scroll-margin-top:90px}
.fa-cat h3{margin:0 0 6px}.fa-cat p{margin:0 0 12px;color:var(--fl-ink2,#3A3D3B)}
.fa-cat .fa-empty{padding:14px;font-size:.9rem}
@media (max-width:600px){.fa-item{grid-template-columns:auto 1fr auto;grid-template-areas:"c t x" ". p d"}.fa-item input[type=checkbox]{grid-area:c}.fa-item__t{grid-area:t}.fa-x{grid-area:x}.fa-pri{grid-area:p;justify-self:start}.fa-due{grid-area:d;justify-self:end}.fa-form .fa-btn{width:100%}.fa-intro{padding:18px}}
@media (prefers-reduced-motion:reduce){.fa-btn,.fa-item,.fa-day,.fa-progress span{transition:none!important}}