:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#18312f;background:#eff4f2}*{box-sizing:border-box}body{margin:0}main{max-width:760px;margin:auto;padding:22px 16px 56px}header{display:flex;gap:16px;align-items:center;margin:5px 0 28px}.mark{background:#174c46;color:white;font-weight:800;border-radius:14px;padding:16px 12px}h1{font-size:1.65rem;margin:0}h2{font-size:1.2rem;margin:0 0 12px}p{line-height:1.45;margin:6px 0 16px;color:#506461}.panel{background:white;border-radius:16px;padding:20px;margin:18px 0;box-shadow:0 2px 12px #18312f12}.notice{background:#e3ede9;border-left:4px solid #174c46;border-radius:8px;padding:12px 14px;font-size:.95rem}.notice.warn{background:#fff0d7;border-color:#ab6d04}label{display:block;margin:14px 0;font-weight:600}input[type=password],input[type=text],input[type=file]{display:block;width:100%;padding:11px;border:1px solid #a8bcb6;border-radius:9px;margin-top:6px;font:inherit}button{background:#174c46;color:white;border:0;border-radius:9px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer}button:disabled{opacity:.45;cursor:default}.hidden{display:none!important}#preview canvas{display:block;max-width:min(100%,360px);height:auto;border:1px solid #a8bcb6;margin:12px 0}#jobs{padding:0;list-style:none}#jobs li{border-top:1px solid #dbe5e1;padding:12px 0;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.jobInfo{font-size:.9rem;color:#506461}#message{font-weight:600;color:#174c46}#message.error{color:#9b2c20}
