*{box-sizing:border-box}body{margin:0;background:#f3f6f8;color:#203547;font:15px/1.6 system-ui,-apple-system,"Microsoft YaHei",sans-serif}header{height:76px;background:#123047;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{font-weight:700;font-size:21px;color:white;text-decoration:none}nav{display:flex;gap:20px;align-items:center}nav a{color:#d5e4ed;text-decoration:none}main{max-width:1280px;margin:38px auto;padding:0 24px;min-height:70vh}h1{font-size:32px;line-height:1.3;margin:0 0 12px}h2{font-size:21px;margin-top:32px}.muted{color:#607687}.eyebrow{color:#247f85;font-size:12px;font-weight:700;letter-spacing:2px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.hero p{max-width:800px}.search{width:250px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{display:flex;flex-direction:column;background:white;border:1px solid #dce4e9;border-radius:12px;padding:22px;min-height:190px;text-decoration:none;color:inherit;transition:.18s}.card:hover{border-color:#17878b;transform:translateY(-2px);box-shadow:0 8px 22px #1230470d}.card h3{font-size:18px;margin:9px 0}.card p{color:#607687;margin:0 0 18px;font-size:14px}.card span{margin-top:auto;color:#137d83;font-size:13px}.badge{font-size:11px;color:#267980;background:#e7f4f1;border-radius:4px;padding:2px 7px;width:max-content}.login{max-width:440px;margin:70px auto;background:white;border:1px solid #dce4e9;border-radius:16px;padding:36px;box-shadow:0 20px 50px #1230470b}.login h1{font-size:25px}label{display:block;color:#40596c;font-size:14px;margin:17px 0 6px}input,select{width:100%;padding:11px 12px;border:1px solid #cbd6de;border-radius:7px;font:inherit;background:white}button,.button{background:#137d83;color:white;border:0;border-radius:7px;padding:11px 18px;font:inherit;cursor:pointer;text-decoration:none;display:inline-block}button:hover{background:#0b6267}form>button{margin-top:22px;width:100%}.error{color:#a34432;min-height:25px;white-space:pre-wrap}.note{font-size:12px;color:#7a6c4f;background:#fbf6ea;padding:10px;border-radius:6px;margin-top:22px}.login a{font-size:13px;color:#137d83}.admin-layout{display:grid;grid-template-columns:1fr 330px;gap:24px}.panel{background:white;padding:24px;border:1px solid #dce4e9;border-radius:12px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #e7edf0}td button{padding:5px 10px;margin:2px;font-size:12px}.secondary{background:#e7eef2;color:#25475e}footer{text-align:center;font-size:12px;color:#7d8d99;padding:28px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.admin-layout{grid-template-columns:1fr}.hero{display:block}.search{width:100%}header{height:auto;padding:18px;display:block}nav{margin-top:12px}}@media(max-width:550px){.grid{grid-template-columns:1fr}main{padding:0 15px}.login{padding:25px;margin:35px auto}.brand{font-size:18px}h1{font-size:25px}}

.login-page header,.login-page footer{display:none}.login-page{background:#f5f6f8}.login-page main{min-height:100svh;margin:0;max-width:none;display:grid;place-items:center;padding:24px}.login-page .login{width:100%;max-width:360px;margin:0;padding:30px 32px;border-radius:12px;box-shadow:0 12px 40px #172b4d0a}.login-page label:first-child{margin-top:0}.login-page .error:empty{display:none}.login-page .error{margin-bottom:0}button:disabled{opacity:.65;cursor:wait}
