:root{font-family:Inter,system-ui,-apple-system,Arial,sans-serif;color:#352c2e;background:#faf6ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{max-width:560px;margin:auto;padding:20px 16px 100px;min-height:100vh}header{display:flex;justify-content:space-between;align-items:center;padding:10px 0 20px}header h2{margin:6px 0 0;font-size:21px}header small,small,.hint{color:#827477}.pill{font-size:10px;background:#eadde0;color:#511d2a;border-radius:20px;padding:8px 10px;font-weight:700}section{background:#fff;border:1px solid #e7ddda;border-radius:20px;padding:18px;margin-bottom:18px;box-shadow:0 2px 12px #43202a08}h3{margin:0 0 16px;font-size:18px}h4{margin:12px 0}label{display:block;font-size:13px;font-weight:600;margin-bottom:13px}input,select{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #d7cdd0;border-radius:11px;background:#fff;color:#2d2527;font:inherit;min-height:45px}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:16px}.tiles>div,.preview{background:#faf6ef;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px}.tiles b,.preview b{font-size:20px;color:#511d2a}.quick{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}button{cursor:pointer;border:1px solid #e0cdd3;background:#fff;color:#511d2a;padding:11px;border-radius:12px;font-weight:700}button:disabled{opacity:.45;cursor:not-allowed}.primary{width:100%;background:#511d2a;border-color:#511d2a;color:#fff;padding:15px}.formbox{border-top:1px solid #ece1e3;margin-top:16px;padding-top:10px}.entry{border-bottom:1px solid #f0e8e9;padding:14px 0;display:flex;flex-direction:column;gap:5px;font-size:13px}.entry:last-child{border-bottom:0}.entry small{font-size:12px}.notice,.error{border-radius:12px;padding:12px;margin-bottom:12px;font-size:13px}.notice{background:#e4f3ea;color:#15683f}.error{background:#fff0e9;color:#993b21}.hint{font-size:12px;line-height:1.5;margin:12px 0 0}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#fff;border-top:1px solid #e7ddda;padding:9px max(8px,calc((100vw - 540px)/2));z-index:5}nav button{border:0;background:transparent;color:#8a7b7e;flex:1;display:flex;align-items:center;flex-direction:column;gap:4px;font-size:19px;padding:4px}nav button small{font-size:10px}nav button.active{color:#511d2a}nav button.active small{color:#511d2a;font-weight:700}
