:root{font:16px/1.55 system-ui,sans-serif;color:#173136;background:#f4f7f5}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:16px;padding:18px 5%;border-bottom:1px solid #d4ded7;background:white}header a:first-child{font-weight:800;letter-spacing:2px}header a:last-child{margin-left:auto;font-size:14px}a{color:#176652}main{max-width:1040px;margin:auto;padding:30px 24px}h1{font-size:clamp(28px,5vw,44px);line-height:1.15;letter-spacing:-1px;margin:12px 0 20px}.intro{font-size:18px;max-width:720px}.open,fieldset{background:white;border:1px solid #cbd8d0;border-radius:12px;padding:20px;margin:20px 0}.open>label{display:block;font-weight:700;margin-bottom:10px}.open p,.hint{font-size:13px;color:#49645d;margin-bottom:0}canvas{width:100%;height:200px;background:#102b2c;border-radius:10px;display:block;touch-action:none}legend{font-size:20px;font-weight:700}.fields,.actions{display:flex;gap:18px;align-items:end;flex-wrap:wrap}.fields{margin:12px 0}label{font-size:14px}label input,label select{display:block;width:100%;margin-top:5px}input,select,button{font:inherit;border:1px solid #a6bcb0;border-radius:6px;padding:10px;background:white;color:inherit}input[type=number]{width:180px}button{cursor:pointer;min-height:44px}button:hover{background:#e4f2e9}.primary{background:#176652;color:white;border-color:#176652}.primary:hover{background:#104c3d}:disabled{opacity:.55;cursor:not-allowed}.actions{margin-top:18px}#status{padding:14px 16px;border-left:4px solid #176652;background:#e5efe8;white-space:pre-wrap;overflow-wrap:anywhere}footer{font-size:13px;margin:36px 0;color:#49645d}#file-info{overflow-wrap:anywhere}@media(max-width:600px){main{padding:22px 16px}.open,fieldset{padding:14px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields input{width:100%;min-width:0}.fields>label{min-width:0}.actions{gap:10px}.actions>label{width:100%}header{padding:14px 16px;font-size:14px;gap:10px}header a:last-child{font-size:12px}canvas{height:160px}}
input[type=file]{width:100%;max-width:100%;min-width:0;font-size:14px}.open{min-width:0;overflow:hidden}

/* Long source revisions and links must wrap on narrow screens. */
main p, main a, main code { overflow-wrap: anywhere; }
