/* Hitarth Event — admin panel styles. Uses the site design tokens. */

*{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);background:var(--surface-page);color:var(--text-primary);font-size:15px}

.admin-shell{display:flex;min-height:100vh}
.admin-sidebar{width:230px;flex:0 0 230px;background:var(--surface-inverse);color:var(--text-on-dark);display:flex;flex-direction:column;padding:24px 0;position:sticky;top:0;height:100vh;overflow-y:auto}
.admin-brand{font-family:var(--font-display);font-size:20px;padding:0 24px 24px;border-bottom:1px solid var(--border-on-dark);color:#fff;text-decoration:none;display:block}
.admin-brand span{display:block;font-family:var(--font-body);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-gold);margin-top:4px}
.admin-sidebar nav{display:flex;flex-direction:column;padding:16px 0;flex:1}
.admin-sidebar nav a{padding:12px 24px;color:var(--text-on-dark-secondary);font-size:14px;border-left:3px solid transparent;text-decoration:none}
.admin-sidebar nav a.active,.admin-sidebar nav a:hover{color:#fff;background:rgba(255,255,255,.06);border-left-color:var(--accent-gold)}
.admin-side-foot{padding:0 24px;display:flex;flex-direction:column;gap:10px}
.admin-logout,.admin-viewsite{padding:10px;text-align:center;border:1px solid var(--border-on-dark);border-radius:var(--radius-md);color:var(--text-on-dark-secondary);font-size:13px;text-decoration:none}
.admin-logout:hover,.admin-viewsite:hover{color:#fff;border-color:var(--accent-gold)}
.admin-user{padding:0 24px 12px;font-size:12px;color:var(--text-on-dark-secondary)}

.admin-main{flex:1;padding:36px 44px;max-width:1180px;min-width:0}
.admin-main h1{font-family:var(--font-display);font-size:28px;margin:0 0 8px}
.admin-main h2{font-family:var(--font-display);font-size:20px;margin:28px 0 14px}
.admin-main h3{font-family:var(--font-display);font-size:17px;margin:22px 0 10px}
.admin-lede{color:var(--text-secondary);font-size:14px;margin:0 0 24px}

.admin-flash{padding:12px 18px;border-radius:var(--radius-md);margin-bottom:20px;font-size:14px}
.admin-flash-success{background:#EAF3EA;color:#2A5F2A}
.admin-flash-error{background:#FBEAEA;color:var(--color-burgundy)}

.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}
.stat-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:18px;font-size:13px;color:var(--text-secondary);box-shadow:var(--shadow-sm);text-decoration:none;display:block}
.stat-card span{display:block;font-family:var(--font-display);font-size:28px;color:var(--text-primary)}
.stat-card.highlight span{color:var(--accent-primary)}
a.stat-card:hover{border-color:var(--accent-primary)}

.admin-quick-actions{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}
.admin-btn{background:var(--accent-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;letter-spacing:.04em;cursor:pointer;text-decoration:none;display:inline-block;font-family:inherit}
.admin-btn:hover{background:var(--accent-primary-hover);color:#fff}
.admin-btn-outline{background:transparent;color:var(--accent-primary);border:1px solid var(--accent-primary)}
.admin-btn-outline:hover{background:var(--accent-primary);color:#fff}
.admin-btn-tiny{font-size:12px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:#fff;cursor:pointer;text-decoration:none;color:var(--text-primary);margin-right:6px;display:inline-block;font-family:inherit}
.admin-btn-tiny:hover{border-color:var(--accent-primary);color:var(--accent-primary)}
.admin-btn-danger{color:var(--color-burgundy);border-color:rgba(122,31,43,.4)}
.admin-btn-danger:hover{background:var(--color-burgundy);color:#fff;border-color:var(--color-burgundy)}

.admin-table-wrap{overflow-x:auto}
.admin-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px;background:var(--surface-card)}
.admin-table th,.admin-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}
.admin-table th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-weight:600}
.admin-table tr:hover td{background:rgba(246,238,228,.5)}
.admin-table .nowrap{white-space:nowrap}
.admin-thumb{width:56px;height:44px;object-fit:cover;border-radius:var(--radius-sm);display:block;background:var(--surface-sunken)}

.badge{padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;text-transform:uppercase;letter-spacing:.06em;display:inline-block}
.badge-new{background:#FBEAEA;color:var(--color-burgundy)}
.badge-contacted{background:#FFF3DE;color:#8A5A00}
.badge-follow-up{background:#E8F0FE;color:#1A4B8C}
.badge-booked{background:#EAF3EA;color:#2A5F2A}
.badge-closed{background:#EEE;color:#666}
.badge-yes{background:#EAF3EA;color:#2A5F2A}
.badge-no{background:#EEE;color:#777}

.admin-form{display:flex;flex-direction:column;gap:16px;max-width:680px;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:28px;margin-bottom:28px}
.admin-form.wide{max-width:100%}
.admin-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-secondary)}
.admin-form input[type=text],.admin-form input[type=password],.admin-form input[type=date],.admin-form input[type=number],.admin-form input[type=url],.admin-form input[type=email],.admin-form input[type=file],.admin-form select,.admin-form textarea{
  font-family:var(--font-body);font-size:14px;padding:10px 12px;border:1px solid var(--border-subtle);
  border-radius:var(--radius-md);color:var(--text-primary);background:#fff;width:100%
}
.admin-form textarea{min-height:80px;resize:vertical}
.admin-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.admin-form .actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:6px}
.admin-checkbox{flex-direction:row!important;align-items:center;gap:8px!important}
.admin-checkbox input{width:auto!important}
.admin-fieldset{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:18px;display:flex;flex-direction:column;gap:14px;margin:0}
.admin-fieldset legend{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-gold);padding:0 8px}

.admin-form-inline{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:14px}
.admin-form-inline input,.admin-form-inline select{padding:8px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:13px;font-family:inherit}
.admin-form-inline label{font-size:13px;color:var(--text-secondary)}
.admin-hint{font-size:13px;color:var(--text-secondary);margin:-8px 0 20px}
.admin-hint a{color:var(--accent-primary)}

.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.media-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;background:#fff}
.media-card img,.media-card video{width:100%;height:140px;object-fit:cover;display:block;background:var(--surface-sunken)}
.media-meta{padding:10px;display:flex;flex-direction:column;gap:6px;font-size:12px}
.media-folder{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-gold);font-size:10px}
.media-url{word-break:break-all;color:var(--text-secondary);font-size:11px}
.media-meta form{margin:0}
.media-actions{display:flex;gap:6px;flex-wrap:wrap}

.admin-empty{color:var(--text-secondary);font-size:14px;padding:18px 0}
.admin-detail{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:28px;max-width:760px}
.admin-detail p{margin:0 0 12px;font-size:14px;line-height:1.7}
.admin-notes{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px;margin:12px 0 0}
.admin-notes li{border-bottom:1px solid var(--border-subtle);padding-bottom:8px;display:flex;justify-content:space-between;gap:16px}
.admin-note-date{color:var(--text-secondary);white-space:nowrap}

.admin-login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--surface-inverse);margin:0;padding:24px}
.admin-login-card{background:var(--surface-card);padding:40px;border-radius:var(--radius-lg);width:360px;max-width:100%;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-lg)}
.admin-login-card h1{font-family:var(--font-display);font-size:24px;margin:0}
.admin-login-card p{margin:0 0 8px;color:var(--text-secondary);font-size:14px}
.admin-login-card label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-secondary)}
.admin-login-card input{padding:10px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:14px;font-family:inherit}
.admin-login-card button{margin-top:8px;background:var(--accent-primary);color:#fff;border:none;padding:12px;border-radius:var(--radius-pill);font-weight:600;cursor:pointer;font-family:inherit;font-size:14px}
.admin-login-card button:hover{background:var(--accent-primary-hover)}
.admin-login-card .muted{font-size:12px;color:var(--text-secondary);text-align:center;margin:0}

@media (max-width:900px){
  .admin-shell{flex-direction:column}
  .admin-sidebar{width:100%;flex:none;height:auto;position:static;padding:16px 0}
  .admin-sidebar nav{flex-direction:row;flex-wrap:wrap;padding:12px 16px;gap:4px}
  .admin-sidebar nav a{padding:8px 12px;border-left:none;border-bottom:2px solid transparent;border-radius:var(--radius-sm)}
  .admin-sidebar nav a.active,.admin-sidebar nav a:hover{border-left-color:transparent;border-bottom-color:var(--accent-gold)}
  .admin-side-foot{flex-direction:row}
  .admin-side-foot a{flex:1}
  .admin-main{padding:24px 20px}
  .admin-stats{grid-template-columns:repeat(2,1fr)}
  .admin-form .row{grid-template-columns:1fr}
}
