*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:#f4f5f1;color:#20251f}.top{height:72px;background:#fff;border-bottom:1px solid #e4e6df;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:5}.top b{font-size:18px}.top span{color:#81867f;font-size:12px;margin-left:8px}.top nav{display:flex;gap:8px}.top a,.button,button{border:0;border-radius:12px;padding:11px 16px;background:#263d2b;color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.top a.ghost,.button.secondary,button.secondary{background:#eef0eb;color:#334034}.wrap{max-width:1100px;margin:auto;padding:42px 20px}.welcome{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:26px}.welcome small,.section small,.qrcard small{letter-spacing:.12em;color:#7c8279;font-weight:800}.welcome h1{font-size:40px;margin:5px 0}.welcome p{color:#777}.welcome form{display:flex;gap:8px}.welcome input{width:260px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid #e4e6df;border-radius:20px;overflow:hidden}.thumb{height:190px;background:#e9eee6;display:grid;place-items:center;font-size:55px}.thumb img{width:100%;height:100%;object-fit:cover}.cardbody{padding:17px}.cardbody small{color:#8a8f87}.cardbody h2{font-size:19px;margin:6px 0 16px}.actions{display:flex;gap:7px;flex-wrap:wrap}.actions a{font-size:12px;text-decoration:none;background:#f0f2ed;color:#29372b;padding:8px 10px;border-radius:9px;font-weight:700}.empty,.success,.error{padding:16px;border-radius:14px;background:#fff;border:1px solid #e2e5de}.success{border-color:#c8dcc9}.error{border-color:#e2c8c8;color:#8c3434}.formwrap{max-width:850px;margin:auto;padding:36px 20px}.formcard{background:#fff;border:1px solid #e3e5de;border-radius:22px;overflow:hidden}.section{padding:28px;border-bottom:1px solid #eee}.section h1{font-size:30px;margin:7px 0 22px}.section label,.loginbox label{display:block;font-size:13px;font-weight:700;margin:14px 0}.section input,.section textarea,.loginbox input,.welcome input{width:100%;border:1px solid #dfe2db;border-radius:11px;padding:12px;margin-top:6px;font:inherit}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preview{display:block;max-width:220px;max-height:180px;object-fit:cover;border-radius:14px;margin-top:10px}.savebar{padding:20px 28px;display:flex;gap:10px}.login{display:grid;place-items:center;min-height:100vh}.loginbox{width:min(420px,92vw);background:#fff;border:1px solid #e2e5de;border-radius:24px;padding:34px;box-shadow:0 15px 50px #0000000a}.logo{width:52px;height:52px;border-radius:16px;background:#263d2b;color:#fff;display:grid;place-items:center;font-weight:900}.loginbox h1{margin-bottom:5px}.loginbox p{color:#777}.loginbox button{width:100%;margin-top:8px}.qrwrap{display:grid;place-items:center;padding:50px 20px}.qrcard{background:#fff;padding:35px;border-radius:25px;text-align:center;border:1px solid #e2e5de}.qrcard h1{max-width:500px}.qrcard #qrcode{margin:25px auto}.qrcard p{color:#73786f;font-size:13px;word-break:break-all}.qrcard button{margin:5px}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.grid,.two{grid-template-columns:1fr}.welcome{display:block}.welcome form{margin-top:15px}.welcome input{width:100%}.top{padding:0 15px}.top nav a{padding:9px 10px;font-size:12px}.qrcard{padding:22px 12px}}
@media print{.top,.qrcard button{display:none}.qrcard{border:0}}
