.admin-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.admin-nav{background:#10251e;color:#fff;padding:28px 22px;position:sticky;top:0;height:100vh}.admin-nav img{width:170px;height:auto;filter:brightness(0) invert(1);margin-bottom:45px}.admin-nav nav{display:flex;flex-direction:column}.admin-nav nav a{padding:13px;border-radius:10px}.admin-nav nav a:hover{background:#203b31}.admin-main{padding:42px;min-width:0}.admin-title,.panel-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.admin-title h1{font-size:42px;letter-spacing:-.04em;margin:8px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat-grid>div,.admin-panel,.admin-form{background:#fff;border:1px solid #dbe5df;border-radius:18px;padding:22px}.stat-grid span{display:block;color:#63716b;font-size:13px}.stat-grid strong{font-size:28px}.admin-panel h2{margin-top:0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:14px;border-bottom:1px solid #e6ece8;white-space:nowrap}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#63716b}td small{display:block;color:#63716b}.badge{padding:5px 9px;background:#eef3f0;border-radius:999px;font-size:12px;text-transform:capitalize}.badge.paid{background:#dff6e9}.badge.failed{background:#fee4e2}.admin-form{max-width:900px}.admin-form>label{display:flex;flex-direction:column;gap:7px;margin-top:16px;font-weight:650}.admin-form textarea{min-height:110px}.admin-form .check{flex-direction:row;align-items:center}.check input{width:auto}.order-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.admin-line{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid #e6ece8}.admin-line small{display:block;color:#63716b}.admin-line.total{font-size:20px}.admin-panel form label{display:flex;flex-direction:column;margin:12px 0;font-weight:650}.admin-login{min-height:100vh;display:grid;place-items:center;background:#eef7f2}.login-card{width:min(430px,calc(100% - 30px));padding:36px;background:#fff;border-radius:22px;box-shadow:0 20px 70px rgba(16,34,28,.12)}.login-card img{width:190px;margin-bottom:30px}.login-card h1{font-size:38px;margin:8px 0 22px}.login-card label{display:flex;flex-direction:column;gap:7px;margin:14px 0;font-weight:650}.login-card>a{display:block;text-align:center;margin-top:20px}.admin-error{color:#b42318;background:#fee4e2;padding:10px;border-radius:8px}.admin-success{color:#0b6b3a;background:#dff6e9;padding:10px;border-radius:8px}.admin-hint{color:#63716b;margin:-10px 0 20px;max-width:70ch}.admin-nav-note{color:#9db3aa;font-size:12px;margin-top:24px}.badge.pending{background:#fef0c7;color:#93610a}.button.ghost{background:transparent;border:1px solid #cfd9d3;color:#10251e}.button.small{padding:7px 12px;font-size:13px}.admin-inline-form{display:flex;gap:8px;align-items:center}.admin-inline-form input[type=password]{padding:8px;border:1px solid #cfd9d3;border-radius:8px;width:150px}.admin-review-actions{display:flex;gap:14px;align-items:center;margin-top:16px;flex-wrap:wrap}.admin-reject-form{display:flex;gap:8px;align-items:center}.admin-reject-form input{padding:8px;border:1px solid #cfd9d3;border-radius:8px}@media(max-width:850px){.admin-shell{grid-template-columns:1fr}.admin-nav{height:auto;position:static}.admin-nav img{margin-bottom:18px}.admin-nav nav{flex-direction:row;overflow-x:auto}.admin-main{padding:24px 14px}.stat-grid{grid-template-columns:1fr 1fr}.order-layout{grid-template-columns:1fr}}@media(max-width:500px){.stat-grid{grid-template-columns:1fr}.admin-title{align-items:start;flex-direction:column;gap:10px}}
.field-error{color:#b42318;font-size:13px;font-weight:600;margin:4px 0 0}
.admin-form input[aria-invalid=true],.admin-form select[aria-invalid=true],.admin-form textarea[aria-invalid=true]{border-color:#b42318;outline-color:#b42318}
/* Wider tap area on row action links, since the table stays horizontally scrollable (not reflowed) on mobile. */
td a{display:inline-block;padding:8px 6px;margin:-8px -6px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
