.mf-app{position:relative;z-index:2;width:100%;padding:28px;border-radius:28px;background:rgba(255,255,255,.96);border:1px solid var(--mf-line,#dbe3df);box-shadow:0 30px 80px rgba(16,40,34,.14);overflow:hidden}
.mf-app:before{content:"";position:absolute;right:-70px;top:-85px;width:190px;height:190px;border-radius:50%;background:rgba(223,242,233,.72);z-index:-1}.mf-app:after{content:"";position:absolute;right:28px;top:25px;width:10px;height:10px;border-radius:50%;background:var(--mf-sun,#f3c85b);box-shadow:22px 12px 0 rgba(232,117,97,.55),-18px 24px 0 rgba(14,90,71,.22);z-index:-1}
.mf-app-head{max-width:480px;padding-right:70px}.mf-app-kicker{display:block;margin-bottom:7px;color:var(--mf-forest,#0e5a47);font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.11em}.mf-app-head h2{margin:0;font-size:clamp(1.85rem,4vw,2.7rem);line-height:.98;letter-spacing:-.055em;color:var(--mf-ink,#102822)}.mf-app-head p{margin:10px 0 0;color:#60706a;font-size:.93rem}
.mf-filters{margin-top:22px}.mf-filter-chips{display:flex;gap:8px;flex-wrap:wrap}.mf-chip{appearance:none;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 11px;border:1px solid #d7e0dc;border-radius:999px;background:#f8faf9;color:#40544d;font-size:.77rem;font-weight:800;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.mf-chip span{font-size:.9rem}.mf-chip:hover{transform:translateY(-1px);border-color:#aebfb7}.mf-chip[aria-pressed="true"]{background:var(--mf-forest,#0e5a47);border-color:var(--mf-forest,#0e5a47);color:#fff}
.mf-app-toolbar{display:flex;align-items:center;gap:13px;margin-top:20px}.mf-primary{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 18px;border:0;border-radius:15px;background:var(--mf-ink,#102822);color:#fff;font-weight:900;font-size:1rem;cursor:pointer;box-shadow:0 12px 24px rgba(16,40,34,.18);transition:transform .15s ease,background .15s ease}.mf-primary:hover{background:var(--mf-forest-dark,#0a4136);transform:translateY(-1px)}.mf-primary:active{transform:translateY(1px)}.mf-primary span{font-size:1.15rem}.mf-toolbar-note{color:#76837f;font-size:.75rem;font-weight:700}
.mf-result{margin-top:20px}.mf-result-placeholder{display:grid;gap:4px;padding:16px 17px;border-radius:16px;background:#f5f8f6;border:1px dashed #cad7d1;color:#5f6f69}.mf-result-placeholder span{font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--mf-forest,#0e5a47)}.mf-result-placeholder strong{font-size:.84rem;line-height:1.4}
.mf-card{position:relative;background:#fff;border:1px solid #d9e2de;border-radius:22px;padding:22px;box-shadow:0 12px 32px rgba(16,40,34,.08);animation:mf-pop .18s ease-out;outline:none}.mf-card:focus-visible{outline:3px solid #0b61ff;outline-offset:3px}@keyframes mf-pop{from{transform:translateY(6px);opacity:.3}to{transform:none;opacity:1}}
.mf-card-top{display:flex;gap:14px;align-items:flex-start;justify-content:space-between}.mf-card-kicker{font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.10em;color:var(--mf-forest,#0e5a47)}.mf-card h3{margin:5px 0 0;font-size:clamp(1.75rem,4vw,2.4rem);line-height:1;letter-spacing:-.05em;color:var(--mf-ink,#102822)}
.mf-meta{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 18px}.mf-meta span{display:inline-flex;align-items:center;min-height:29px;padding:5px 8px;border-radius:999px;background:#eef6f2;color:#3f5b51;border:1px solid #dce9e3;font-size:.68rem;font-weight:850}
.mf-steps{margin:0;padding:0;list-style:none;counter-reset:mfstep;display:grid;gap:12px}.mf-steps li{counter-increment:mfstep;display:grid;grid-template-columns:31px 1fr;gap:11px;align-items:start;color:#263d35;font-size:.9rem;font-weight:650}.mf-steps li:before{content:counter(mfstep);width:29px;height:29px;border-radius:9px;background:var(--mf-sun,#f3c85b);color:#102822;display:grid;place-items:center;font-size:.74rem;font-weight:950}
.mf-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.mf-note{border-radius:14px;padding:11px 12px;background:#f5faf7;border:1px solid #e0e9e4;color:#52635d;font-size:.78rem;line-height:1.45}.mf-note strong{display:block;margin-bottom:3px;color:#243a32;font-size:.75rem}.mf-safety{background:#fff8ec;border-color:#f3e3c6}
.mf-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:17px}.mf-secondary,.mf-text-button{appearance:none;min-height:40px;padding:8px 12px;border-radius:12px;font-size:.78rem;font-weight:850;cursor:pointer}.mf-secondary{border:1px solid var(--mf-ink,#102822);background:var(--mf-ink,#102822);color:#fff}.mf-text-button{border:0;background:transparent;color:#52635d;text-decoration:underline;text-underline-offset:.18em}.mf-pilot-note{font-size:.66rem;margin:13px 0 0;color:#7a8682}.mf-empty{padding:16px;border:1px dashed #b9c9c2;border-radius:15px;background:#fff;color:#53645e;font-size:.84rem}
.mf-install-dialog{border:0;padding:0;background:transparent;max-width:min(560px,calc(100vw - 24px));width:100%}.mf-install-dialog::backdrop{background:rgba(9,29,24,.64);backdrop-filter:blur(4px)}.mf-install-box{background:#fff;border:1px solid #d5dfda;border-radius:24px;padding:24px;box-shadow:0 28px 80px rgba(9,29,24,.26);color:#102822}.mf-install-box h2{margin:0 0 10px;font-size:1.7rem;line-height:1;letter-spacing:-.045em}.mf-install-box p{margin:.6em 0;color:#52635d}.mf-install-steps{padding-left:1.25rem}.mf-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}.mf-dialog-close,.mf-dialog-install{min-height:42px;border-radius:12px;padding:8px 13px;font-weight:850;border:1px solid #102822;cursor:pointer}.mf-dialog-close{background:#fff}.mf-dialog-install{background:#102822;color:#fff}
@media(max-width:620px){.mf-app{padding:22px 18px;border-radius:22px}.mf-app-head{padding-right:40px}.mf-filter-chips{display:grid;grid-template-columns:1fr 1fr}.mf-chip{justify-content:flex-start;width:100%;border-radius:12px}.mf-app-toolbar{align-items:stretch;flex-direction:column}.mf-primary{width:100%}.mf-toolbar-note{text-align:center}.mf-note-grid{grid-template-columns:1fr}.mf-card{padding:18px}.mf-card-top{display:block}}
@media(max-width:390px){.mf-filter-chips{grid-template-columns:1fr}.mf-app-head{padding-right:0}.mf-app:after{display:none}}
@media(prefers-reduced-motion:reduce){.mf-card,.mf-chip,.mf-primary{animation:none!important;transition:none!important}}
