*{box-sizing:border-box}body{margin:0;background:#f6f5ef;color:#223d33;font-family:Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ac702f;outline-offset:3px}.proto{padding:9px 5%;background:#ede0bd;color:#574321;font-size:13px;text-align:center}.top{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 5%;border-bottom:1px solid #d9ddcf}.brand{font-weight:800;letter-spacing:3px;text-decoration:none}.brand small{display:block;font-size:10px;letter-spacing:5px}.top nav{display:flex;gap:20px;flex-wrap:wrap;font-size:14px}.shell{max-width:1240px;margin:auto;padding:42px 5%}.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;align-items:start}.eyebrow{font-size:12px;letter-spacing:2px;color:#7c6844;font-weight:700}.intro h1{font-size:clamp(36px,4.5vw,58px);line-height:1.1;letter-spacing:-1.8px;margin:20px 0}.intro p{max-width:450px}.intro img{width:100%;max-width:420px;border-radius:25px;margin-top:22px}.panel{background:#fffdf8;border:1px solid #dfe1d4;border-radius:24px;padding:30px;min-width:0;box-shadow:0 10px 35px #203c3306}.panel h2{font-size:26px;line-height:1.3;margin:0 0 10px}.muted{color:#617064;font-size:14px}.notice{padding:14px 17px;border:1px solid #d7c498;background:#f8efd9;border-radius:12px;font-size:14px;margin:20px 0}.form-field{margin:20px 0}.form-field label{display:block;font-weight:600;font-size:14px;margin-bottom:7px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #adb8aa;background:#fff;border-radius:10px;padding:12px 14px;min-height:48px;font-size:16px;color:#223d33}.form-field small{font-size:12px;color:#647363;display:block;margin-top:6px}.password-row{display:flex;gap:8px}.password-row input{min-width:0}.secondary,.primary,.danger{border-radius:10px;min-height:46px;padding:11px 17px;font-weight:600;font-size:14px;border:1px solid #bac5b5;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:10px;background:white;color:#244638}.primary{background:#234c3e;color:white;border-color:#234c3e}.danger{color:#923f35;border-color:#cc9b93;background:#fff8f5}.full{width:100%}.form-bottom{margin-top:18px;text-align:center;font-size:14px}.status{padding:14px;background:#edf1e8;border-radius:12px;margin-top:15px;font-size:14px}.status:empty{display:none}.admin-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:34px}.side{padding:20px 0}.side strong{font-size:13px;letter-spacing:2px}.side a{display:flex;align-items:center;min-height:48px;text-decoration:none;padding:10px 15px;margin:6px 0;border-radius:10px;font-size:14px}.side a[aria-current=page]{background:#254d3f;color:white}.workspace{min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.page-heading h1{font-size:36px;line-height:1.2;letter-spacing:-1px;margin:10px 0}.pill{display:inline-flex;border-radius:30px;padding:5px 11px;background:#e9ede2;color:#52624b;font-size:12px;white-space:normal}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0}.toolbar .form-field{flex:1;min-width:160px;margin:0}.table-wrap{overflow-x:auto;margin-top:20px}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}th,td{padding:16px 12px;border-bottom:1px solid #e0e3d7;vertical-align:top}th{font-size:12px;color:#64705e;background:#f4f4ec}td small{display:block;color:#6b7464}td a{display:inline-flex;min-height:44px;align-items:center}.sample{border-left:3px solid #d0b779;padding-left:12px;font-size:13px;color:#796443}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.grid .panel{padding:23px}dl{margin:20px 0}dt{font-size:12px;color:#697561;margin-top:14px}dd{margin:3px 0;font-size:15px;overflow-wrap:anywhere}.action-stack{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.empty{padding:28px 18px;border:1px dashed #c8cfbf;border-radius:15px;text-align:center;color:#66725d;margin-top:20px}.timeline{padding-left:20px}.timeline li{padding:12px 0}.footer{padding:30px 5%;font-size:12px;color:#6d7764;text-align:center}dialog{width:min(94vw,520px);border:1px solid #c5cdbd;border-radius:20px;padding:26px;background:#fffdf8;color:#223d33}dialog::backdrop{background:#10261e88}dialog h2{font-size:25px;margin:0 0 15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:850px){.auth{grid-template-columns:minmax(0,1fr);gap:25px}.intro img{display:none}.intro h1{font-size:39px}.admin-shell{grid-template-columns:minmax(0,1fr);gap:18px}.side{display:flex;flex-wrap:wrap;gap:5px;padding:0}.side strong{width:100%;margin-bottom:5px}.side a{margin:0;min-height:44px;padding:8px 12px}.grid{grid-template-columns:minmax(0,1fr)}.shell{padding:28px 5%}.top{align-items:flex-start}.top nav{gap:8px 16px;font-size:12px}.panel{padding:23px}.page-heading{flex-direction:column;gap:8px}.page-heading h1{font-size:30px}.table-wrap table{min-width:600px}.proto{font-size:12px}.intro p{font-size:14px}.password-row .secondary{padding:8px 12px}.toolbar .form-field{min-width:100%;}.panel>p{font-size:14px}}/* Liên Phong independent auth readability: preserve form behavior. */
body:not(.admin-pro){font-size:17px;line-height:1.65;color:#193b2a}body:not(.admin-pro) .muted,body:not(.admin-pro) .form-field small,body:not(.admin-pro) .footer{font-size:15px;color:#405a48}body:not(.admin-pro) .form-field label{font-size:16px;color:#193b2a}body:not(.admin-pro) .form-field input,body:not(.admin-pro) .form-field select,body:not(.admin-pro) .form-field textarea{font-size:17px;min-height:50px;color:#193b2a;border-color:#798f7b}body:not(.admin-pro) .primary,body:not(.admin-pro) .secondary,body:not(.admin-pro) .danger{font-size:16px;min-height:50px}body:not(.admin-pro) .top nav,body:not(.admin-pro) .form-bottom,body:not(.admin-pro) .status,body:not(.admin-pro) .notice{font-size:16px;color:#244b34}body:not(.admin-pro) .eyebrow{font-size:14px;color:#6b4c23}body:not(.admin-pro) .brand small{font-size:12px;letter-spacing:2px}body:not(.admin-pro) .pill{font-size:14px;color:#304e35}@media(max-width:650px){body:not(.admin-pro) .top nav{font-size:15px;gap:12px}body:not(.admin-pro) .form-field label{font-size:16px}body:not(.admin-pro) .panel{padding:24px 20px}}
