*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:#f5f5f7;color:#1c1c1e;font:14px/1.5 "SF Pro Display",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
button,input,select,textarea{font:inherit;color:inherit}
.top{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid #d9d9de;background:#fff;position:sticky;top:0;z-index:5;flex-wrap:wrap}
.top h1{font-size:14px;font-weight:600;margin:0 auto 0 0}
.btn{border:0;border-radius:999px;background:#1c1c1e;color:#fff;padding:7px 16px;cursor:pointer}
.btn.ghost{background:#e7e7ea;color:#1c1c1e}.btn.red{background:#c4361d}.btn.sm{padding:3px 10px;font-size:12px}
.btn:disabled{opacity:.5;cursor:default}
.page{max-width:760px;margin:0 auto;padding:24px 20px 80px}
.login{max-width:340px;margin:12vh auto;padding:0 20px}
input[type=text],input[type=password],input[type=number],select,textarea{width:100%;padding:8px 10px;border:1px solid #cfcfd4;border-radius:10px;background:#fff;margin:4px 0 10px}
textarea{min-height:90px;resize:vertical}
label{display:block;color:#6a6a70;font-size:12px}
.row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #d9d9de}
.row b{font-weight:600}.row .grow{flex:1;min-width:0}.muted{color:#8a8a90}
.err{color:#c4361d;margin:8px 0}.ok{color:#1f8a43;margin:8px 0}
.ed{display:grid;grid-template-columns:minmax(380px,520px) 1fr;height:calc(100vh - 53px)}
.form{overflow:auto;padding:16px 20px 80px;border-right:1px solid #d9d9de}
.prev{width:100%;height:100%;border:0;background:#f5f5f7}
.card{background:#fff;border:1px solid #d9d9de;border-radius:14px;padding:12px 14px;margin:0 0 12px}
.card.in{background:#fafafb;margin:8px 0}
.hd{display:flex;align-items:center;gap:6px;margin-bottom:8px}.hd b{margin-right:auto;font-weight:600}
.add{display:flex;gap:8px;margin-top:8px}.add select{margin:0}
.chk{display:flex;align-items:center;gap:8px;margin:4px 0 10px;color:#1c1c1e;font-size:14px}.chk input{width:auto;margin:0}
.img{display:flex;align-items:center;gap:10px;margin:4px 0 10px}.img img{width:64px;height:40px;object-fit:cover;border-radius:6px;background:#e7e7ea}
@media (max-width:900px){.ed{grid-template-columns:1fr;height:auto}.prev{height:70vh}}
