.est-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin:22px 0}
.est-mode{border:0;padding:0;margin:0 0 18px}
.est-mode legend{font-weight:700;margin-bottom:8px;padding:0}
.est-opt{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;cursor:pointer}
.est-opt input{width:22px;height:22px;accent-color:var(--accent);flex:none}
.est-opt small{display:block;color:var(--muted)}
.est-opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.est-f{display:block;margin-bottom:18px}
.est-f>span:first-child{display:block;font-weight:700;margin-bottom:6px}
.est-f em{font-weight:400;color:var(--muted);font-style:normal}
.est-f small{display:block;color:var(--muted);margin-top:6px;font-size:.88rem}
.est-in{display:flex;align-items:center;border:1px solid #aab8b5;border-radius:12px;background:#fff;min-height:54px}
.est-in:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.est-in i{font-style:normal;padding:0 4px 0 16px;color:var(--muted);font-size:1.1rem}
.est-in input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1.15rem;padding:12px 16px 12px 4px;outline:0}
.est-go{width:100%}
.est-err{color:#8a1c1c;margin:12px 0 0;font-weight:600}
.est-out{margin:26px 0}
.est-rows{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.est-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}
.est-row:last-child{border-bottom:0}
.est-row strong{font-size:1.25rem;white-space:nowrap}
.est-row.big{background:var(--accent-soft)}
.est-row b{color:var(--accent-d)}
.est-note{color:var(--muted);font-size:.92rem}
.est-actions{display:flex;align-items:center;gap:12px;margin:12px 0 22px}
.est-ok{color:var(--accent-d);font-weight:700}
.est-wall{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.est-wall h3{margin:0 0 6px;font-size:1.25rem}
.est-wall ul{padding-left:20px;margin:10px 0 16px}
.est-wall .btn{width:100%}
.est-fine{font-size:.88rem;color:var(--muted);margin:10px 0 0}
.est-sticky{position:fixed;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:20}
.est-sticky .btn{width:100%}
@media(min-width:700px){.est-sticky{display:none!important}.est-wall .btn{width:auto}}
@media(max-width:699px){.est.doc{padding-bottom:96px}}
