*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",sans-serif;background:#eef2f0;color:#1c2420;-webkit-tap-highlight-color:transparent}
#app{max-width:520px;margin:0 auto;min-height:100vh;background:#fff;display:flex;flex-direction:column;box-shadow:0 0 12px rgba(0,0,0,.06)}
#topbar{display:flex;align-items:center;justify-content:space-between;background:#1a7f4e;color:#fff;padding:14px 16px;position:sticky;top:0;z-index:10}
.brand{font-size:20px;font-weight:700}
.lang-btn{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:20px;padding:8px 16px;font-size:15px;font-weight:700;min-width:56px}
section{padding:16px;flex:1}
label{display:block;font-weight:600;margin:14px 0 6px;font-size:15px}
input,textarea{width:100%;padding:13px;font-size:17px;border:1.5px solid #cfd8d3;border-radius:10px;background:#fbfdfc}
input:focus,textarea:focus{outline:none;border-color:#1a7f4e}
textarea{font-family:ui-monospace,monospace;resize:vertical;line-height:1.5}
button{font-size:17px;padding:13px 18px;border-radius:10px;border:1px solid #cfd8d3;background:#f1f5f3;color:#1c2420;font-weight:600;cursor:pointer;margin-top:14px}
button:active{transform:scale(.98)}
button.primary{background:#1a7f4e;border-color:#1a7f4e;color:#fff;width:100%}
button.big{font-size:19px;padding:16px}
button.danger{background:#c0392b;border-color:#c0392b;color:#fff;width:100%}
.hint{font-size:13px;color:#6b7a72;margin-top:4px}
.opt{font-weight:400;color:#6b7a72;font-size:14px}
.err{color:#c0392b;font-weight:600;margin:10px 0;min-height:20px}
.field-err{color:#c0392b;font-size:14px;margin-top:4px;min-height:18px}
.msg{margin:10px 0;font-weight:600;color:#1a7f4e;min-height:22px}
.notice{background:#fef9e7;border:1.5px solid #f0c929;border-radius:10px;padding:14px;margin-top:14px}
.hidden{display:none!important}
.auth-tabs{display:flex;gap:8px;margin-bottom:6px}
.auth-tab{flex:1;margin-top:0;background:#eef2f0}
.auth-tab.active{background:#1a7f4e;color:#fff;border-color:#1a7f4e}
.qline{background:#f4f7f5;border-radius:10px;padding:12px}
.review{margin:12px 0;border:1.5px solid #e2e8e5;border-radius:10px;overflow:hidden}
.rline{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;border-bottom:1px solid #eef1ef;font-size:15px}
.rline:last-child{border-bottom:none}
.rline.joma{color:#1a7f4e}
.rline.cut{color:#999;text-decoration:line-through}
.rline.unknown{color:#999;font-style:italic}
.rline .rv{font-weight:700;white-space:nowrap}
.totals{background:#f4f7f5;border-radius:12px;padding:14px;margin:12px 0}
.trow{display:flex;align-items:center;justify-content:space-between;padding:7px 0;font-size:17px}
.trow.big{font-size:21px;border-top:2px solid #dfe6e2;margin-top:6px;padding-top:12px}
.trow.big b{color:#c0392b}
.trow input{width:130px;text-align:right;margin:0}
#bottomNav{position:sticky;bottom:0;display:flex;background:#fff;border-top:1.5px solid #dfe6e2;padding-bottom:env(safe-area-inset-bottom)}
.nav-btn{flex:1;margin:0;border:none;border-radius:0;background:#fff;padding:15px 4px;font-size:15px;color:#5c6b63}
.nav-btn.active{color:#1a7f4e;font-weight:800;border-top:3px solid #1a7f4e;padding-top:12px}
.card{background:#fbfdfc;border:1.5px solid #e2e8e5;border-radius:12px;padding:14px;margin:12px 0}
.listitem{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 12px;border-bottom:1px solid #eef1ef;font-size:16px}
.listitem:last-child{border-bottom:none}
.listitem .sub{font-size:13px;color:#6b7a72}
.bigbaki{font-size:44px;font-weight:800;color:#c0392b;text-align:center;margin:12px 0}
.cname{font-size:20px;font-weight:700;text-align:center}
.cmobile{font-size:16px;color:#5c6b63;text-align:center}
.row2{display:flex;gap:10px}
.row2 button{flex:1}
.jama-box{margin-top:12px;border-top:1.5px solid #e2e8e5;padding-top:12px}
.kv{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eef1ef;font-size:16px}
.kv:last-child{border-bottom:none}
select.lang-btn{appearance:auto}
select.lang-btn option{color:#1c2420;background:#fff}
