/* V18 feature layer - intentionally separate from app.css */
.student-status-card small{display:block;margin-top:4px;color:rgba(255,255,255,.86);font-size:11px}.profile-notification-badge{position:absolute;right:-4px;top:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#ef2b2d;color:#fff;border:3px solid #fff;font:800 11px/1 "Segoe UI",Arial,sans-serif;box-shadow:0 4px 10px rgba(239,43,45,.3);z-index:4}.companion-card{position:relative}.companion-line{font-size:13px!important;font-weight:800!important;color:#fff!important}.companion-line.inactive{opacity:.5}.companion-link{font-size:12px;color:#fff;text-decoration:underline;text-underline-offset:3px}.companion-card.companion-bronze{border-color:rgba(205,127,50,.8)}.companion-card.companion-silver{border-color:rgba(224,232,240,.95)}.companion-card.companion-gold{border-color:rgba(255,215,82,.95);box-shadow:0 10px 34px rgba(255,205,55,.2)}.profile-username-info small{font-size:11px;color:rgba(255,255,255,.8)}.profile-notice-line{padding:20px 22px;margin-bottom:18px}.profile-notice-line p{margin:7px 0 12px;color:#475569;line-height:1.65}.gift-received{display:inline-flex;padding:8px 12px;border-radius:999px;background:#eaf9ef;color:#15803d;font-weight:800;font-size:12px}.entitlement-summary{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:12px;align-items:center;padding:18px 20px;margin-bottom:18px}.entitlement-summary>div{padding:12px 16px;border-radius:16px;background:#f6f9ff}.entitlement-summary span{display:block;color:#64748b;font-size:12px;font-weight:700}.entitlement-summary strong{font-size:24px;color:#1d4ed8}.support-benefits-card{padding:24px;margin-bottom:18px}.support-package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.support-package{padding:16px;border:1px solid #dce8fa;border-radius:16px;background:#f8fbff;display:grid;gap:5px}.support-package strong{color:#1d4ed8}.support-package span{font-weight:800;color:#0f172a}.support-package small{color:#64748b;line-height:1.4}.support-voluntary{margin:16px 0 0;color:#64748b;font-size:12px}.bonus-history-page{padding-top:30px;padding-bottom:70px}.compact-student-hero{padding:34px 0 74px}.bonus-history-card{padding:4px 20px;margin-bottom:18px}.bonus-history-row{display:grid;grid-template-columns:46px 1fr auto;gap:14px;align-items:center;padding:18px 2px;border-bottom:1px solid #edf2f7}.bonus-history-row:last-child{border-bottom:0}.bonus-history-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#eff6ff;font-size:22px}.bonus-history-row small{display:block;color:#94a3b8;margin-top:3px}.bonus-history-row p{margin:5px 0 0;color:#64748b;font-size:13px}.bonus-total{font-weight:900;color:#16a34a;white-space:nowrap}.admin-entitlement-grid,.support-admin-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-entitlement-grid>div,.support-admin-summary>div{padding:16px;border-radius:15px;background:#f8fafc;border:1px solid #e5eaf2}.admin-entitlement-grid span,.support-admin-summary span{display:block;font-size:11px;color:#64748b;font-weight:700}.admin-entitlement-grid strong,.support-admin-summary strong{display:block;margin-top:4px;font-size:20px}.support-admin-card{padding:22px}.support-admin-packages{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.support-admin-packages .btn{display:grid;gap:2px}.support-admin-packages small{font-size:10px;opacity:.85}.tier-bronze{color:#a65f25}.tier-silver{color:#708090}.tier-gold{color:#b8860b}.notice-admin-form{padding:24px;display:grid;gap:28px}.notice-admin-form textarea{width:100%}.event-settings{padding-top:22px;border-top:1px solid #e8edf5;display:grid;gap:14px}.event-rule-note{padding:14px 16px;border-radius:14px;background:#fff8e7;border:1px solid #f6dc9c;color:#795b16;font-size:13px;line-height:1.55}.tm-notice-overlay[hidden]{display:none!important}.tm-notice-overlay{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px;background:rgba(7,20,41,.54);backdrop-filter:blur(5px)}.tm-notice-dialog{width:min(520px,100%);padding:30px;border-radius:26px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.24);text-align:center}.tm-notice-symbol{width:58px;height:58px;margin:0 auto 12px;display:grid;place-items:center;border-radius:18px;background:#eaf3ff;font-size:28px}.tm-notice-dialog h2{margin:0 0 12px;font-size:27px}.tm-notice-content{color:#475569;line-height:1.7}.tm-event-gift{margin:18px 0;padding:15px;border-radius:16px;background:#f0fdf4;border:1px solid #bbf7d0;display:grid;gap:4px}.tm-event-gift strong{color:#15803d}.tm-event-gift span{font-size:12px;color:#4b7b5d}.tm-notice-action{margin-top:18px}.tm-notice-close{margin-top:18px}.tm-notice-open{overflow:hidden}@media(max-width:760px){.entitlement-summary{grid-template-columns:1fr 1fr}.entitlement-summary>.btn{grid-column:1/-1}.support-package-grid{grid-template-columns:1fr 1fr}.admin-entitlement-grid,.support-admin-summary{grid-template-columns:1fr 1fr}}@media(max-width:520px){.support-package-grid{grid-template-columns:1fr}.bonus-history-row{grid-template-columns:42px 1fr}.bonus-total{grid-column:2}.tm-notice-dialog{padding:24px 18px;border-radius:22px}}
.companion-line b{display:inline-flex;margin-left:5px;padding:3px 8px;border-radius:999px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(255,255,255,.35)}
.companion-bronze .companion-line b{background:#b87333;color:#fff;border-color:#d7a06d}.companion-silver .companion-line b{background:#d9e0e8;color:#44515f;border-color:#f3f6f8}.companion-gold .companion-line b{background:#f2c94c;color:#5a4300;border-color:#ffe59a;box-shadow:0 3px 10px rgba(242,201,76,.25)}
.access-complete small{display:block;margin-top:5px}.access-complete small a{color:#15803d;font-weight:800;text-decoration:none}
.tm-event-gift small{font-size:11px;color:#64748b;margin-top:3px}

/* V19: wider companion card + configurable event gifts */
@media(min-width:821px){
  .profile-hero-layout{grid-template-columns:minmax(0,1fr) 406px!important;gap:42px!important}
  .profile-username-card{min-width:406px!important}
  .profile-username-info{min-width:0;flex:1}
  .profile-username-info strong{display:block;line-height:1.08}
}
.event-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.event-heading-row h2{margin-bottom:4px}.event-status{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.event-status.status-off{background:#f1f5f9;color:#64748b}.event-status.status-waiting{background:#fff7ed;color:#c2410c}.event-status.status-active{background:#ecfdf3;color:#15803d}.event-status.status-ended{background:#fef2f2;color:#b91c1c}.event-bonus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 150px;gap:12px;align-items:end}.event-bonus-grid label{margin:0}.event-total-preview{min-height:74px;padding:12px 14px;border-radius:15px;background:#eef5ff;border:1px solid #d8e7ff;display:flex;align-items:baseline;justify-content:center;gap:5px}.event-total-preview span{display:block;position:absolute;transform:translateY(-19px);font-size:10px;font-weight:800;color:#64748b}.event-total-preview strong{font-size:26px;color:#1d4ed8}.event-total-preview small{font-weight:800;color:#64748b}@media(max-width:760px){.event-bonus-grid{grid-template-columns:1fr 1fr}.event-total-preview{grid-column:1/-1}.event-heading-row{align-items:flex-start;flex-direction:column}}

/* V21: compact profile + compact admin student edit + manual rights + event revoke */
.profile-account-summary .profile-id-label{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:2px}.profile-account-summary .profile-username-info strong{font-size:24px}.profile-account-summary .profile-username-info small{display:block;margin-top:5px;font-size:12px;color:rgba(255,255,255,.88)}.profile-account-summary .profile-username-info small b{color:#fff;font-size:14px}
.profile-notice-compact{display:flex;align-items:center;justify-content:space-between;gap:18px}.profile-notice-compact>div{min-width:0}.profile-notice-compact p{margin:4px 0 0!important}.profile-notice-compact form{flex:0 0 auto;margin:0}
.profile-four-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.profile-compact-box{padding:22px;min-width:0}.compact-box-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.compact-box-head h2{margin:4px 0 0;font-size:21px}.compact-box-head .eyebrow{font-size:10px}.compact-profile-form,.admin-compact-form,.rights-edit-form{display:grid;gap:11px}.compact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-form-grid label,.admin-compact-form label,.rights-edit-form label{display:grid;gap:5px}.compact-form-grid label span,.admin-compact-form label span,.rights-edit-form label span{font-size:11px;font-weight:800;color:#334155}.compact-form-grid .wide{grid-column:1/-1}.compact-form-grid input,.compact-form-grid select,.admin-compact-form input,.admin-compact-form select,.rights-edit-form input{width:100%;min-height:43px;padding:9px 11px;border:1px solid #d7e0ed;border-radius:12px;background:#fff;font:600 13px "Segoe UI",Arial,sans-serif;color:#0f172a}.compact-save-btn{margin-top:12px;width:100%}.current-avatar-mini{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#eef5ff;font-size:27px}.profile-avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}.profile-avatar-grid .avatar-choice{padding:7px 3px!important;border-radius:11px!important}.profile-avatar-grid .avatar-emoji{font-size:25px!important}.companion-profile-box p{margin:0 0 13px;color:#64748b;line-height:1.5}.companion-tier-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#eef2f7;color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase}.companion-tier-pill.tier-bronze{background:#fff1e5;color:#9a5722}.companion-tier-pill.tier-silver{background:#eef2f6;color:#586778}.companion-tier-pill.tier-gold{background:#fff7d6;color:#8a6500}.companion-bonus-number{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;margin-bottom:12px;border-radius:14px;background:#f5f9ff}.companion-bonus-number span{font-size:11px;color:#64748b;font-weight:700}.companion-bonus-number strong{font-size:20px;color:#1d4ed8}.profile-package-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0}.profile-package-list>div{padding:9px 10px;border:1px solid #e2e8f0;border-radius:12px;background:#fbfdff;display:grid;grid-template-columns:1fr auto;gap:2px 8px}.profile-package-list span{font-size:11px;font-weight:800;color:#334155}.profile-package-list strong{font-size:12px;color:#1d4ed8}.profile-package-list small{grid-column:1/-1;color:#94a3b8;font-size:9px}.support-voluntary{display:block;line-height:1.45}.remaining-total-big{font-size:30px;color:#1d4ed8}.remaining-subject-list{display:grid;gap:9px}.remaining-subject-list>div{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:13px;background:#f6f9ff}.remaining-subject-list span{font-size:12px;font-weight:750;color:#475569}.remaining-subject-list strong{font-size:16px;color:#0f172a}.gift-history-link{display:flex;align-items:center;justify-content:center;margin-top:14px;padding:12px;border-radius:13px;background:#eef5ff;color:#1d4ed8;text-decoration:none;font-size:12px;font-weight:900}.gift-history-link:hover{background:#e2edff}

.admin-user-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start;margin:18px 0 26px}.admin-user-compact-card{padding:18px;min-width:0}.admin-user-compact-card .compact-box-head{margin-bottom:11px}.admin-user-compact-card h2{font-size:18px}.admin-mini-two{display:grid;grid-template-columns:110px minmax(0,1fr);gap:9px}.compact-check{display:flex!important;align-items:center;gap:8px!important;margin:2px 0}.compact-check input{width:auto!important;min-height:0!important}.admin-card-save{width:100%;margin-top:4px}.compact-help{margin:0 0 12px;color:#64748b;font-size:11px;line-height:1.45}.admin-total-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef5ff;color:#1d4ed8;font-size:11px;white-space:nowrap}.rights-edit-form{gap:9px}.rights-edit-form label{grid-template-columns:1fr 92px;align-items:center}.rights-edit-form input{text-align:center;font-size:16px;font-weight:900;color:#1d4ed8}.support-compact-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:11px}.support-compact-stats>div{padding:10px;border-radius:12px;background:#f8fafc}.support-compact-stats span{display:block;font-size:9px;font-weight:800;color:#94a3b8;text-transform:uppercase}.support-compact-stats strong{display:block;margin-top:3px;font-size:15px}.support-package-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px}.support-package-buttons-three{grid-template-columns:repeat(3,minmax(0,1fr))}.support-package-btn.tier-bronze{border-color:#d8b08a;background:#fff9f3}.support-package-btn.tier-silver{border-color:#cbd5e1;background:#f8fafc}.support-package-btn.tier-gold{border-color:#e6c766;background:#fffbea}.support-package-buttons form{margin:0}.support-package-btn{width:100%;min-height:52px;border:1px solid #dbe7f9;border-radius:12px;background:#f6f9ff;color:#1d4ed8;cursor:pointer;display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:left;padding:7px 9px;transition:.2s}.support-package-btn:hover{border-color:#9fc2ff;background:#edf4ff;transform:translateY(-1px)}.support-package-btn b{grid-row:1/3;font-size:15px;margin-right:7px}.support-package-btn span{font-size:12px;font-weight:900}.support-package-btn small{font-size:9px;color:#64748b}

.event-admin-meta{display:flex;gap:12px;flex-wrap:wrap;margin:-2px 0 4px}.event-admin-meta span{display:inline-flex;padding:6px 9px;border-radius:9px;background:#f8fafc;color:#64748b;font-size:10px}.event-admin-meta code{font-size:9px}.event-cancel-card{margin-top:18px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:#fecaca;background:#fffafa}.event-cancel-card h2{margin:0 0 5px;color:#b91c1c;font-size:18px}.event-cancel-card p{margin:0;color:#7f1d1d;font-size:12px;line-height:1.5}.event-cancel-card form{flex:0 0 auto;margin:0}

@media(max-width:1100px){.admin-user-top-grid{grid-template-columns:1fr 1fr}.admin-user-top-grid>.admin-user-compact-card:last-child{grid-column:1/-1}.profile-avatar-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(max-width:820px){.profile-four-grid{grid-template-columns:1fr}.profile-notice-compact{align-items:flex-start;flex-direction:column}.admin-user-top-grid{grid-template-columns:1fr}.admin-user-top-grid>.admin-user-compact-card:last-child{grid-column:auto}.event-cancel-card{align-items:stretch;flex-direction:column}.event-cancel-card .btn{width:100%}}
@media(max-width:520px){.compact-form-grid{grid-template-columns:1fr}.compact-form-grid .wide{grid-column:auto}.profile-avatar-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}.profile-package-list{grid-template-columns:1fr 1fr}.admin-mini-two{grid-template-columns:1fr 1fr}}


/* V22: profile hero companion identity + cleaner companion copy */
.profile-account-summary .profile-username-info{display:grid;gap:7px;align-content:center}
.profile-id-row{display:flex;align-items:baseline;gap:6px;min-width:0;color:#fff}
.profile-id-row>span{font-size:12px;font-weight:800;letter-spacing:.03em;color:rgba(255,255,255,.78)}
.profile-id-row>strong{font-size:24px!important;line-height:1.08;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}
.profile-account-summary .companion-line{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:0;font-size:13px!important;line-height:1.35}
.profile-account-summary .companion-line.inactive{opacity:.5}
.profile-account-summary .companion-line b{margin-left:2px}
.profile-account-summary .companion-link{display:inline-flex;width:max-content;max-width:100%;margin-top:0;font-size:12px;font-weight:700;color:#fff;text-decoration:underline;text-underline-offset:3px;opacity:.95}
.profile-account-summary .companion-link:hover{opacity:1}
.companion-profile-box .companion-intro-copy{font-size:15.5px;line-height:1.65;color:#5f6f86;margin-bottom:15px}
@media(max-width:520px){
  .profile-id-row>strong{font-size:21px!important}
  .profile-account-summary .companion-line{font-size:12px!important}
  .profile-account-summary .companion-link{font-size:11px}
  .companion-profile-box .companion-intro-copy{font-size:14.5px;line-height:1.6}
}

/* V23: guest trial without login */
.guest-trial-note{max-width:760px;margin:0 auto 22px;padding:12px 16px;border:1px solid #dbe7f9;border-radius:14px;background:#f6f9ff;color:#475569;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:700;text-align:center}
.guest-trial-note i{color:#1d4ed8}.guest-trial-form{display:grid;gap:12px}.guest-trial-form label{display:grid;gap:6px}.guest-trial-form label>span{font-size:11px;font-weight:800;color:#64748b}.guest-trial-form select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #d7e0ed;border-radius:13px;background:#fff;color:#0f172a;font:700 13px "Segoe UI",Arial,sans-serif}.guest-trial-form .legacy-action-btn:disabled{cursor:not-allowed;background:#e5e7eb;color:#6b7280;box-shadow:none}.guest-trial-grid .legacy-subject-card{display:flex;flex-direction:column}.guest-trial-grid .guest-trial-form{margin-top:auto}

/* Registration success + admin delete account */
.admin-row-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;white-space:nowrap}.admin-row-actions form{margin:0}.admin-delete-account-card{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:#fecaca;background:#fffafa}.admin-delete-account-card h2{margin:3px 0 5px}.admin-delete-account-card p{margin:0;max-width:720px}.registration-success-overlay{z-index:100001}.registration-success-dialog{width:min(570px,100%);padding:28px 30px}.registration-gift-icon{width:70px;height:70px;margin:0 auto 10px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#eaf3ff,#eefbf3);font-size:36px;box-shadow:0 12px 30px rgba(37,99,235,.12)}.registration-success-kicker{font-size:11px;font-weight:900;letter-spacing:.13em;color:#16a34a;margin-bottom:5px}.registration-success-dialog h2{margin:0 0 8px;font-size:27px}.registration-success-lead{margin:0 auto 16px;max-width:470px;color:#64748b;font-size:13px;line-height:1.55}.registration-account-details{display:grid;grid-template-columns:1fr 1fr;gap:9px;text-align:left;margin:14px 0}.registration-account-details>div{padding:12px 14px;border:1px solid #e5eaf2;border-radius:14px;background:#f8fafc}.registration-account-details span{display:block;color:#64748b;font-size:11px;font-weight:700;margin-bottom:3px}.registration-account-details strong{display:block;color:#0f172a;font-size:14px;overflow-wrap:anywhere}.registration-profile-link{margin:12px 0 0;color:#64748b;font-size:12px}.registration-profile-link a{font-weight:800;color:#2563eb;text-decoration:none}.registration-welcome-gift{margin:16px 0;padding:16px 17px;border-radius:17px;background:#f0fdf4;border:1px solid #bbf7d0;display:grid;gap:4px}.registration-welcome-gift strong{color:#15803d;font-size:16px}.registration-welcome-gift span{font-weight:800;color:#166534}.registration-welcome-gift small{color:#4b7b5d}.registration-gift-button{width:100%;margin-top:2px}@media(max-width:680px){.admin-delete-account-card{align-items:stretch;flex-direction:column}.admin-delete-account-card .btn{width:100%}.registration-success-dialog{padding:24px 18px}.registration-account-details{grid-template-columns:1fr}.registration-success-dialog h2{font-size:23px}}

/* V43: compact Merge Pet admin + 3-column student detail */
.pet-gift-page-head{margin-bottom:12px}.pet-gift-page-head h1{margin:4px 0}.pet-gift-page-head .muted{margin:0;font-size:12px}.pet-gift-admin-card{padding:15px 17px;display:grid;gap:14px}.pet-gift-section-title{min-width:150px;display:grid;gap:2px;align-content:center}.pet-gift-section-title .eyebrow{font-size:9px}.pet-gift-section-title strong{font-size:14px;color:#0f172a}.pet-gift-section-title small{font-size:9px;color:#94a3b8}.pet-gift-notice-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;align-items:end;padding-bottom:12px;border-bottom:1px solid #edf1f7}.pet-gift-notice-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.pet-gift-notice-form input{min-height:38px;padding:8px 10px;font-size:12px}.pet-gift-create-block{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;align-items:start}.pet-gift-compact-form{display:grid;gap:8px}.pet-gift-main-grid{display:grid;grid-template-columns:1.2fr .75fr 1fr 1fr;gap:7px}.pet-gift-reward-grid{display:grid;grid-template-columns:repeat(8,minmax(72px,1fr)) auto;gap:7px;align-items:end}.pet-gift-compact-form label{gap:3px}.pet-gift-compact-form label span{font-size:9px;color:#64748b;font-weight:800}.pet-gift-compact-form input{min-height:36px;padding:7px 8px;border-radius:9px;font-size:11px}.pet-gift-create-btn{min-height:36px!important;padding:7px 12px!important;white-space:nowrap;font-size:11px!important}.pet-gift-list-card{margin-top:14px;padding:0;overflow:hidden}.pet-gift-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid #edf1f7}.pet-gift-list-head h2{margin:2px 0 0;font-size:17px}.pet-gift-list-head .eyebrow{font-size:9px}.pet-gift-list-head>strong{padding:5px 9px;border-radius:999px;background:#eef5ff;color:#1d4ed8;font-size:10px}.pet-gift-table{width:100%;border-collapse:collapse;min-width:760px}.pet-gift-table th,.pet-gift-table td{padding:8px 11px;border-bottom:1px solid #edf1f7;text-align:left;font-size:11px;vertical-align:middle}.pet-gift-table th{background:#f8fafc;font-size:9px;text-transform:uppercase;color:#64748b}.pet-gift-table td:first-child strong{font-size:12px;color:#0f172a}.pet-gift-table td:first-child small{display:block;margin-top:2px;color:#94a3b8;font-size:9px}.pet-gift-table form{margin:0}

.admin-user-three-column-grid{grid-template-columns:minmax(270px,.95fr) minmax(245px,.8fr) minmax(430px,1.55fr);gap:14px}.admin-user-middle-stack{display:grid;gap:14px;min-width:0}.admin-user-middle-stack .admin-user-compact-card{margin:0}.admin-rights-stack-card,.admin-support-stack-card{padding:15px}.admin-rights-stack-card .compact-box-head,.admin-support-stack-card .compact-box-head{margin-bottom:8px}.admin-rights-stack-card .rights-edit-form{gap:6px}.admin-rights-stack-card .rights-edit-form input{min-height:36px;padding:6px 8px}.admin-rights-stack-card .admin-card-save{min-height:36px;padding:7px 10px}.admin-support-stack-card .support-compact-stats>div{padding:7px 9px}.admin-support-stack-card .support-package-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.admin-support-stack-card .support-package-btn{min-height:45px;padding:5px 6px}.admin-support-stack-card .support-package-btn b{font-size:12px;margin-right:4px}.admin-support-stack-card .support-package-btn span{font-size:10px}.admin-support-stack-card .support-package-btn small{font-size:8px}

.pet-admin-account-card{padding:15px;overflow:hidden}.pet-admin-head{margin-bottom:9px!important}.pet-admin-empty{min-height:150px;display:grid;place-items:center;align-content:center;gap:4px;border:1px dashed #d7e0ed;border-radius:13px;background:#f8fafc;text-align:center}.pet-admin-empty strong{font-size:15px}.pet-admin-empty span{font-size:10px;color:#64748b}.pet-admin-identity{display:grid;grid-template-columns:1fr 1.25fr;gap:7px;margin-bottom:7px}.pet-admin-identity>div{min-width:0;padding:8px 9px;border-radius:11px;background:#f8fafc;border:1px solid #edf1f7}.pet-admin-identity span,.pet-admin-stats span{display:block;font-size:8px;font-weight:900;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em}.pet-admin-identity strong{display:block;margin-top:2px;font-size:14px;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pet-admin-identity small{display:block;margin-top:2px;font-size:9px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pet-admin-money strong{color:#1d4ed8}.pet-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:8px}.pet-admin-stats>div{padding:6px 7px;border-radius:9px;background:#f4f8ff;text-align:center}.pet-admin-stats strong{display:block;margin-top:2px;font-size:12px;color:#0f172a}.pet-admin-subhead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:7px 1px 5px}.pet-admin-subhead strong{font-size:10px;color:#334155}.pet-admin-subhead span{font-size:8px;color:#94a3b8}.pet-admin-slot-matrix{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.pet-admin-slot{min-width:0;height:46px;border:1px solid #dfe7f2;border-radius:8px;background:#fbfdff;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr 1fr;align-items:center;gap:0 3px;padding:3px 4px;overflow:hidden}.pet-admin-slot>b{grid-row:1/3;font-size:7px;color:#94a3b8;align-self:start;margin-top:1px}.pet-admin-slot img{width:24px;height:24px;object-fit:contain;justify-self:center;grid-column:2;grid-row:1}.pet-admin-slot>strong{grid-column:2;grid-row:2;justify-self:center;font-size:8px;color:#1d4ed8;line-height:1}.pet-admin-slot>span{grid-column:2;grid-row:1/3;justify-self:center;font-size:10px;color:#94a3b8}.pet-admin-slot.locked{background:#f1f5f9;opacity:.72}.pet-admin-slot.occupied{background:#f7fbff;border-color:#d5e6ff}.pet-equipment-head{margin-top:8px}.pet-admin-equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.pet-admin-equipment{min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:5px;align-items:center;padding:5px 6px;border:1px solid #e4eaf3;border-radius:9px;background:#fff}.pet-admin-equipment img{width:25px;height:25px;object-fit:contain}.pet-admin-equipment>div{min-width:0}.pet-admin-equipment strong{display:block;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#334155}.pet-admin-equipment span{display:block;margin-top:1px;font-size:7px;color:#94a3b8}.pet-admin-equipment>b{font-size:8px;color:#1d4ed8;white-space:nowrap}.pet-admin-foot{display:flex;justify-content:space-between;gap:8px;margin-top:7px;padding-top:6px;border-top:1px solid #edf1f7;color:#94a3b8;font-size:8px}

@media(max-width:1280px){.pet-gift-create-block,.pet-gift-notice-row{grid-template-columns:140px minmax(0,1fr)}.pet-gift-reward-grid{grid-template-columns:repeat(4,minmax(80px,1fr))}.pet-gift-create-btn{grid-column:4}.admin-user-three-column-grid{grid-template-columns:minmax(250px,.9fr) minmax(230px,.8fr) minmax(390px,1.45fr)}}
@media(max-width:1050px){.admin-user-three-column-grid{grid-template-columns:1fr 1fr}.admin-user-three-column-grid>.pet-admin-account-card{grid-column:1/-1}.pet-admin-slot-matrix{grid-template-columns:repeat(10,minmax(0,1fr))}.pet-admin-equipment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-gift-create-block,.pet-gift-notice-row{grid-template-columns:1fr}.pet-gift-main-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.admin-user-three-column-grid{grid-template-columns:1fr}.admin-user-three-column-grid>.pet-admin-account-card{grid-column:auto}.pet-admin-slot-matrix{grid-template-columns:repeat(6,minmax(0,1fr))}.pet-admin-equipment-grid{grid-template-columns:1fr 1fr}.pet-admin-identity{grid-template-columns:1fr}.pet-gift-notice-form{grid-template-columns:1fr}.pet-gift-main-grid,.pet-gift-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-gift-create-btn{grid-column:1/-1}.pet-gift-list-card{overflow:auto}}

/* V45: compact editable Merge Pet account in Admin student detail */
.pet-admin-account-card{padding:13px 14px}.pet-admin-head{margin-bottom:7px!important}.pet-admin-inline-summary{display:flex;align-items:center;gap:5px 9px;flex-wrap:wrap;padding:7px 9px;margin-bottom:8px;border-radius:10px;background:#f8fafc;border:1px solid #edf1f7;font-size:9px;color:#64748b}.pet-admin-inline-summary>b{font-size:12px;color:#0f172a}.pet-admin-inline-summary strong{color:#1d4ed8}.pet-admin-edit-form{display:grid;gap:7px}.pet-admin-edit-grid{display:grid;grid-template-columns:1.15fr .65fr 1.45fr .75fr .7fr .8fr;gap:5px}.pet-admin-edit-grid label{display:grid;gap:2px;min-width:0}.pet-admin-edit-grid label span,.pet-admin-equipment-edit label span{font-size:7px;font-weight:900;color:#94a3b8;text-transform:uppercase}.pet-admin-edit-grid input,.pet-admin-edit-grid select{width:100%;min-width:0;height:31px;padding:4px 6px;border:1px solid #d7e0ed;border-radius:8px;background:#fff;color:#0f172a;font:700 10px "Segoe UI",Arial,sans-serif}.pet-admin-money-input input{color:#1d4ed8}.pet-admin-subhead{margin:3px 1px 2px}.pet-admin-subhead strong{font-size:9px}.pet-admin-subhead span{font-size:7px}.pet-admin-pet-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.pet-admin-pet-row{height:31px;display:grid;grid-template-columns:minmax(0,1fr) auto 46px;align-items:center;gap:4px;padding:3px 5px;border:1px solid #e1e8f1;border-radius:8px;background:#fbfdff}.pet-admin-pet-row>span{font-size:9px;font-weight:800;color:#334155;white-space:nowrap}.pet-admin-pet-row>b{font-size:8px;color:#64748b}.pet-admin-pet-row input{width:46px;height:23px;padding:2px 4px;border:1px solid #cbd8e6;border-radius:6px;text-align:center;font:900 10px "Segoe UI",Arial,sans-serif;color:#1d4ed8}.pet-admin-no-pet{padding:6px 8px;border:1px dashed #d7e0ed;border-radius:8px;color:#94a3b8;font-size:9px;text-align:center}.pet-admin-add-row{display:grid;grid-template-columns:auto 72px auto 52px;gap:4px;align-items:center;justify-content:start;padding:4px 6px;border-radius:8px;background:#f7fbff;color:#64748b;font-size:8px;font-weight:800}.pet-admin-add-row select,.pet-admin-add-row input{height:27px;padding:3px 5px;border:1px solid #cfdae7;border-radius:7px;background:#fff;font:700 9px "Segoe UI",Arial,sans-serif}.pet-admin-add-row input{width:52px;text-align:center}.pet-admin-equipment-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.pet-admin-equipment-edit{display:grid;grid-template-columns:minmax(50px,.8fr) 62px 76px 50px;gap:4px;align-items:end;padding:5px 6px;border:1px solid #e4eaf3;border-radius:8px;background:#fff}.pet-admin-equipment-edit>strong{align-self:center;font-size:9px;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pet-admin-equipment-edit label{display:grid;gap:1px;min-width:0}.pet-admin-equipment-edit input[type="number"]{width:100%;height:25px;padding:2px 4px;border:1px solid #d5dee9;border-radius:6px;text-align:center;font:800 9px "Segoe UI",Arial,sans-serif}.pet-admin-crafted{display:flex!important;align-items:center;gap:3px!important;height:25px}.pet-admin-crafted input{width:auto!important;height:auto!important;margin:0}.pet-admin-crafted span{font-size:7px!important;text-transform:none!important;white-space:nowrap}.pet-admin-save-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:5px;border-top:1px solid #edf1f7}.pet-admin-save-row small{font-size:7px;color:#94a3b8;line-height:1.35}.pet-admin-save-row .btn{min-height:31px;padding:5px 10px;font-size:9px;white-space:nowrap}.pet-admin-empty{min-height:92px}
@media(max-width:1280px){.pet-admin-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pet-admin-equipment-edit{grid-template-columns:minmax(60px,1fr) 62px 76px 50px}}
@media(max-width:1050px){.pet-admin-pet-list{grid-template-columns:repeat(3,minmax(0,1fr))}.pet-admin-equipment-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pet-admin-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-admin-pet-list{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-admin-equipment-edit-grid{grid-template-columns:1fr}.pet-admin-save-row{align-items:stretch;flex-direction:column}.pet-admin-save-row .btn{width:100%}}

/* v46: student edit keeps Merge Pet as a compact summary; full game administration lives on its own page. */
@media(min-width:1051px){.admin-user-three-column-grid{grid-template-columns:minmax(290px,1.12fr) minmax(245px,.88fr) minmax(260px,.82fr)}.pet-admin-account-card{align-self:start}.pet-admin-account-card .pet-admin-inline-summary{margin-bottom:5px}.pet-admin-summary-actions{margin-top:5px}}

/* Admin student: Pet Game is managed on its own page. Keep this card intentionally minimal. */
.pet-admin-link-card{padding:12px;align-self:start;display:flex;align-items:center;justify-content:center;min-height:58px}.pet-admin-link-card .btn{width:100%;min-height:36px;padding:7px 10px;font-size:10px;white-space:nowrap}
@media(min-width:1051px){.admin-user-three-column-grid{grid-template-columns:minmax(290px,1.18fr) minmax(245px,.9fr) minmax(190px,.54fr)}}
/* Pet V2: old per-student Pet admin panel removed during redesign. */
.admin-user-two-column-grid{grid-template-columns:minmax(300px,1.05fr) minmax(300px,.95fr)!important;max-width:920px}
@media(max-width:820px){.admin-user-two-column-grid{grid-template-columns:1fr!important;max-width:none}}

/* X15 Admin Pet V2 */
.pet-admin-user-list{margin-bottom:18px}.pet-admin-selected-row{background:#f0f7ff}.pet-admin-detail{display:grid;gap:16px}.pet-admin-profile-card{padding:20px}.pet-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pet-admin-stats>div{padding:12px 13px;border-radius:13px;background:#f7f9fc;border:1px solid #e5eaf2}.pet-admin-stats span{display:block;font-size:10px;font-weight:800;color:#94a3b8;text-transform:uppercase}.pet-admin-stats strong{display:block;margin-top:4px;font-size:15px;color:#0f172a}.pet-admin-tools-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:16px}.pet-admin-tool-card{margin-top:0}.pet-admin-tool-card h2{margin:4px 0 0;font-size:20px}.pet-admin-table-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px}.pet-admin-table-title h2{margin:4px 0 0;font-size:20px}.pet-admin-pet-name{display:flex;align-items:center;gap:8px;min-width:150px}.pet-admin-pet-name img{width:48px;height:48px;object-fit:contain}.pet-admin-inline-form{display:grid;grid-template-columns:132px 64px 64px auto;gap:6px;align-items:center;min-width:390px}.pet-admin-inline-form select,.pet-admin-inline-form input{min-height:34px;padding:6px 8px;font-size:12px}.pet-admin-empty{display:grid;gap:5px;text-align:center;color:#64748b}.pet-admin-empty strong{color:#334155}@media(max-width:900px){.pet-admin-stats{grid-template-columns:1fr 1fr}.pet-admin-tools-grid{grid-template-columns:1fr}}@media(max-width:520px){.pet-admin-stats{grid-template-columns:1fr}.pet-admin-inline-form{grid-template-columns:120px 58px 58px auto}}

/* X16: Pet V2 management lives inside each student account. */
.admin-user-pet-row{grid-template-columns:minmax(300px,1.1fr) minmax(250px,.85fr) minmax(300px,1fr)!important;max-width:none!important;align-items:start}
.pet-v2-quick-card{display:grid;gap:10px;align-content:start}.pet-v2-quick-card .compact-box-head{margin-bottom:0}.pet-quick-honor-form,.pet-quick-add-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}.pet-quick-honor-form label,.pet-quick-add-form label{display:grid;gap:4px;min-width:0}.pet-quick-honor-form label span,.pet-quick-add-form label span{font-size:9px;font-weight:900;color:#64748b;text-transform:uppercase}.pet-quick-honor-form input,.pet-quick-add-form select{width:100%;min-height:38px;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif}.pet-quick-honor-form input{color:#1d4ed8}.pet-quick-honor-form .btn,.pet-quick-add-form .btn{min-height:38px;padding:7px 10px;font-size:10px;white-space:nowrap}.pet-detail-admin-link{width:100%;min-height:39px;display:flex;align-items:center;justify-content:center;font-size:10px}.admin-support-wide-card{margin:0 0 26px;padding:15px 18px}.admin-support-wide-card .compact-box-head{margin-bottom:8px}.admin-support-wide-card .support-compact-stats{grid-template-columns:repeat(2,minmax(0,180px));justify-content:start}.admin-support-wide-card .support-package-buttons{grid-template-columns:repeat(6,minmax(110px,1fr));max-width:920px}
@media(max-width:1100px){.admin-user-pet-row{grid-template-columns:1fr 1fr!important}.admin-user-pet-row>.pet-v2-quick-card{grid-column:1/-1}.admin-support-wide-card .support-package-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-user-pet-row{grid-template-columns:1fr!important}.admin-user-pet-row>.pet-v2-quick-card{grid-column:auto}.pet-quick-honor-form,.pet-quick-add-form{grid-template-columns:1fr}.pet-quick-honor-form .btn,.pet-quick-add-form .btn{width:100%}.admin-support-wide-card .support-package-buttons{grid-template-columns:1fr 1fr}}

.pet-student-admin-top{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:14px;align-items:stretch;margin:18px 0 14px}.pet-student-summary-card,.pet-student-tool-card{padding:17px;margin:0}.pet-student-tool-card h2{margin:3px 0 0;font-size:18px}.pet-student-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pet-student-summary-grid>div{padding:10px 11px;border:1px solid #e4eaf2;border-radius:12px;background:#f8fafc}.pet-student-summary-grid span{display:block;font-size:9px;font-weight:900;color:#94a3b8;text-transform:uppercase}.pet-student-summary-grid strong{display:block;margin-top:3px;font-size:15px;color:#0f172a}.pet-admin-reset-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:18px}.pet-admin-reset-card h2{margin:3px 0 4px;font-size:18px}.pet-admin-reset-card p{margin:0}.pet-admin-reset-actions{display:flex;gap:8px;flex-wrap:wrap}.pet-admin-reset-actions form{margin:0}.pet-admin-reset-actions .btn{min-height:38px;font-size:10px}.pet-admin-grid-card{padding:14px}.pet-admin-detail-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px}.pet-admin-grid-item{position:relative;min-width:0;min-height:124px;padding:8px 6px;border:1px solid #dfe7f2;border-radius:13px;background:linear-gradient(180deg,#fff,#f8fbff);display:grid;grid-template-rows:72px auto auto;align-items:center;justify-items:center;gap:3px;cursor:pointer;font-family:inherit;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.pet-admin-grid-item:hover{transform:translateY(-2px);border-color:#9fc4ff;box-shadow:0 10px 24px rgba(37,99,235,.10)}.pet-admin-grid-item img{width:70px;height:70px;object-fit:contain}.pet-admin-grid-item strong{max-width:100%;font-size:10px;color:#25364a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pet-admin-grid-item span{font-size:9px;font-weight:900;color:#1d4ed8}.pet-admin-grid-item.has-stars{border-color:#e0b84e;background:linear-gradient(180deg,#fffdf2,#fff9dd)}.pet-admin-grid-empty{grid-column:1/-1;padding:28px;text-align:center;color:#94a3b8}.pet-admin-edit-overlay[hidden]{display:none!important}.pet-admin-edit-overlay{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.58);backdrop-filter:blur(4px)}.pet-admin-edit-dialog{position:relative;width:min(92vw,430px);padding:20px;border-radius:20px;background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.28)}.pet-admin-edit-close{position:absolute;right:11px;top:11px;width:34px;height:34px;border:0;border-radius:10px;background:#eef2f7;font-size:22px;cursor:pointer}.pet-admin-edit-preview{display:grid;grid-template-columns:105px 1fr;gap:14px;align-items:center;padding:4px 36px 14px 0}.pet-admin-edit-preview img{width:105px;height:105px;object-fit:contain}.pet-admin-edit-preview h2{margin:4px 0 4px;font-size:22px}.pet-admin-edit-preview strong{font-size:12px;color:#1d4ed8}.pet-admin-edit-dialog-form{margin:0!important;padding:0!important;box-shadow:none!important;border:0!important}.pet-admin-delete-wide{width:100%;margin-top:8px}.pet-admin-modal-open{overflow:hidden}
@media(max-width:1180px){.pet-student-admin-top{grid-template-columns:1fr 1fr}.pet-student-summary-card{grid-column:1/-1}.pet-admin-detail-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:760px){.pet-student-admin-top{grid-template-columns:1fr}.pet-student-summary-card{grid-column:auto}.pet-admin-reset-card{align-items:stretch;flex-direction:column}.pet-admin-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pet-admin-grid-item{min-height:116px}.pet-admin-grid-item img{width:64px;height:64px}}

/* X17: student edit + compact Pet admin refinements. */
.admin-user-edit-page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.admin-user-edit-page-head h1{margin:0}.admin-user-edit-page-head form{margin:0}.admin-title-delete-btn{min-height:38px;padding:8px 13px;font-size:10px}
.admin-user-pet-row>.admin-user-middle-stack{align-self:start}.admin-user-pet-row .admin-support-stack-card{margin:0}
.pet-quick-account-form{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(95px,.75fr) auto;gap:7px;align-items:end}.pet-quick-account-form label,.pet-quick-add-expanded label{display:grid;gap:4px;min-width:0}.pet-quick-account-form label span,.pet-quick-add-expanded label span{font-size:9px;font-weight:900;color:#64748b;text-transform:uppercase}.pet-quick-account-form input,.pet-quick-add-expanded input,.pet-quick-add-expanded select{width:100%;min-height:38px;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif;box-sizing:border-box}.pet-quick-account-form input[name="honor"]{color:#1d4ed8}.pet-quick-account-form .btn,.pet-quick-add-expanded .btn{min-height:38px;padding:7px 10px;font-size:10px;white-space:nowrap}
.pet-quick-add-expanded{display:grid!important;grid-template-columns:minmax(0,1.35fr) 62px 62px auto!important;gap:7px!important;align-items:end}.pet-quick-add-expanded .pet-quick-species{min-width:0}
.pet-student-summary-card--account{display:grid;gap:10px}.pet-admin-name-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}.pet-admin-name-form label{display:grid;gap:4px}.pet-admin-name-form label span{font-size:9px;font-weight:900;color:#64748b;text-transform:uppercase}.pet-admin-name-form input{width:100%;min-height:38px;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif;box-sizing:border-box}.pet-admin-name-form .btn{min-height:38px;padding:7px 10px;font-size:10px}.pet-admin-summary-reset-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pet-admin-summary-reset-actions form{margin:0}.pet-admin-summary-reset-actions .btn{width:100%;min-height:36px;padding:7px 8px;font-size:9px}
.pet-admin-detail-grid--text-only{grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}.pet-admin-grid-item--text{min-height:82px!important;padding:8px 6px!important;display:grid!important;grid-template-rows:auto auto auto auto!important;align-content:center!important;gap:2px!important;background:#fbfdff!important}.pet-admin-grid-item--text small{font-size:8px;font-weight:800;color:#94a3b8}.pet-admin-grid-item--text strong{font-size:10px!important;line-height:1.2;text-align:center}.pet-admin-grid-item--text span{font-size:10px!important}.pet-admin-grid-item--text em{font-style:normal;font-size:8px;font-weight:800;color:#64748b;text-align:center}.pet-admin-grid-item--text.has-stars{background:#fffbed!important;border-color:#e0b84e!important}.pet-admin-edit-preview--text{display:block!important;padding:2px 38px 14px 0!important}.pet-admin-edit-preview--text h2{margin:4px 0 4px;font-size:22px}.pet-admin-edit-preview--text strong{font-size:12px;color:#1d4ed8}
@media(max-width:1180px){.pet-admin-detail-grid--text-only{grid-template-columns:repeat(8,minmax(0,1fr))}.pet-quick-account-form{grid-template-columns:1fr 1fr}.pet-quick-account-form .btn{grid-column:1/-1;width:100%}.pet-quick-add-expanded{grid-template-columns:minmax(0,1fr) 70px 70px!important}.pet-quick-add-expanded .btn{grid-column:1/-1;width:100%}}
@media(max-width:760px){.admin-user-edit-page-head{align-items:flex-start}.pet-quick-account-form{grid-template-columns:1fr}.pet-quick-account-form .btn{grid-column:auto}.pet-quick-add-expanded{grid-template-columns:1fr 1fr!important}.pet-quick-add-expanded .pet-quick-species{grid-column:1/-1}.pet-quick-add-expanded .btn{grid-column:1/-1}.pet-admin-summary-reset-actions{grid-template-columns:1fr}.pet-admin-detail-grid--text-only{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* X17: keep the Honor save action compact like the nearby admin controls. */
.pet-admin-honor-save{width:auto!important;min-height:36px!important;padding:0 12px!important;font-size:10px!important;justify-self:start!important;align-self:end!important}

/* FINAL V4 admin Pet controls. */
.pet-quick-admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pet-quick-admin-actions form{margin:0}.pet-quick-admin-actions .btn{width:100%;min-height:36px;padding:7px 8px;font-size:9px;white-space:nowrap}.pet-quick-gender-action{display:grid;grid-template-columns:minmax(86px,.75fr) 1.25fr;gap:6px}.pet-quick-gender-action select{width:100%;min-height:36px;padding:6px 8px;border:1px solid #d7e0ed;border-radius:9px;background:#fff;color:#334155;font:800 10px "Segoe UI",Arial,sans-serif}.pet-quick-gender-action .btn{min-width:0}
.pet-admin-bulk-form{margin:0}.pet-admin-bulk-bar{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:8px 9px;border:1px solid #e4eaf2;border-radius:11px;background:#f8fafc}.pet-admin-bulk-bar>strong{margin-left:auto;font-size:10px;color:#64748b}.pet-admin-select-all{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:900;color:#475569;cursor:pointer}.pet-admin-select-all input{width:16px;height:16px;accent-color:#2563eb}.pet-admin-grid-select-wrap{position:relative;min-width:0}.pet-admin-grid-select-wrap .pet-admin-grid-item{width:100%;height:100%}.pet-admin-grid-check{position:absolute;z-index:6;left:5px;top:5px;width:22px;height:22px;display:grid;place-items:center;cursor:pointer}.pet-admin-grid-check input{position:absolute;opacity:0;pointer-events:none}.pet-admin-grid-check span{width:20px;height:20px;display:grid;place-items:center;border-radius:6px;border:1px solid #cbd5e1;background:rgba(255,255,255,.94);color:transparent;font-size:11px;font-weight:1000;box-shadow:0 2px 5px rgba(15,23,42,.08)}.pet-admin-grid-check input:checked+span{background:#2563eb;border-color:#2563eb;color:#fff}.pet-admin-grid-select-wrap:has(.pet-admin-grid-check input:checked) .pet-admin-grid-item{border-color:#60a5fa!important;box-shadow:inset 0 0 0 2px rgba(37,99,235,.12)}
@media(max-width:760px){.pet-quick-admin-actions{grid-template-columns:1fr}.pet-quick-gender-action{grid-template-columns:1fr 1.35fr}.pet-admin-bulk-bar{flex-wrap:wrap}.pet-admin-bulk-bar>strong{margin-left:0;flex:1}.pet-admin-bulk-bar .btn{width:100%}}

/* V5 admin Pet account controls */
.pet-game-admin-state{padding:8px 10px;border-radius:10px;font-size:10px;font-weight:800;text-align:center}.pet-game-admin-state.is-locked{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.pet-game-admin-state.is-empty{background:#f8fafc;border:1px dashed #cbd5e1;color:#64748b}

/* ===== Temporary cleanup: support / exam entitlement UI hidden ===== */
.admin-user-clean-grid{grid-template-columns:minmax(300px,1fr) minmax(420px,1.45fr);gap:16px}
.profile-two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
@media(max-width:900px){.admin-user-clean-grid,.profile-two-grid{grid-template-columns:1fr}}

.tier-diamond{color:#5b6ee1}.companion-card.companion-diamond{border-color:rgba(129,140,248,.95);box-shadow:0 10px 34px rgba(99,102,241,.2)}.companion-diamond .companion-line b,.companion-tier-pill.tier-diamond{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}

/* Admin user edit: 3 balanced cards + roomier Pet panel */
.admin-user-clean-grid.admin-user-pet-row{grid-template-columns:minmax(285px,.95fr) minmax(285px,.9fr) minmax(390px,1.35fr);gap:16px;align-items:stretch}
.admin-user-clean-grid.admin-user-pet-row>.admin-user-compact-card{height:100%;box-sizing:border-box}
.admin-membership-card{display:flex;flex-direction:column}
.admin-membership-form{display:grid;gap:11px}
.admin-membership-form label{display:grid;gap:5px}
.admin-membership-form label>span,.admin-membership-manual label>span{font-size:10px;font-weight:900;color:#64748b;text-transform:uppercase}
.admin-membership-form select,.admin-membership-form input,.admin-membership-manual select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;box-sizing:border-box}
.admin-membership-form small{display:block;margin-top:2px;color:#64748b;line-height:1.45}
.admin-membership-actions{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #e8eef6}
.admin-membership-actions>form>.btn{width:100%;min-height:40px}
.admin-membership-manual{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.admin-membership-manual label{display:grid;gap:5px;min-width:0}
.admin-membership-manual .btn{min-height:40px;white-space:nowrap}
.pet-v2-quick-card{display:flex;flex-direction:column}
.pet-quick-account-form{grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.pet-quick-account-form .btn{grid-column:1/-1;width:100%}
.pet-quick-add-expanded{grid-template-columns:1fr 1fr!important;gap:10px!important;align-items:end}
.pet-quick-add-expanded .pet-quick-species{grid-column:1/-1}
.pet-quick-add-expanded .btn{grid-column:1/-1;width:100%}
.pet-quick-admin-actions{margin-top:12px}
.pet-detail-admin-link{margin-top:auto}
@media(max-width:1250px){.admin-user-clean-grid.admin-user-pet-row{grid-template-columns:1fr 1fr}.admin-user-clean-grid.admin-user-pet-row>.pet-v2-quick-card{grid-column:1/-1}.pet-quick-account-form{grid-template-columns:1fr 1fr}.pet-quick-add-expanded{grid-template-columns:minmax(0,1.5fr) 1fr 1fr!important}.pet-quick-add-expanded .pet-quick-species{grid-column:auto}.pet-quick-add-expanded .btn{grid-column:1/-1}}
@media(max-width:820px){.admin-user-clean-grid.admin-user-pet-row{grid-template-columns:1fr}.admin-user-clean-grid.admin-user-pet-row>.pet-v2-quick-card{grid-column:auto}.admin-membership-manual{grid-template-columns:1fr}.pet-quick-account-form,.pet-quick-add-expanded{grid-template-columns:1fr!important}.pet-quick-add-expanded .pet-quick-species,.pet-quick-add-expanded .btn{grid-column:auto}}

/* Membership / supporter information */
.profile-membership-box{margin-bottom:18px;padding:22px}.membership-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.04em}.membership-status-pill.is-regular{background:#eef2f7;color:#64748b}.membership-status-pill.is-supporter{background:#fff4d6;color:#9a6500}.membership-lead{margin:0 0 15px;color:#64748b;line-height:1.6}.membership-expiry{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:13px 15px;margin-bottom:14px;border-radius:14px;background:#f6f9ff}.membership-expiry span{font-size:11px;font-weight:800;color:#64748b}.membership-expiry strong{color:#1d4ed8}.membership-expiry small{grid-column:1/-1;color:#64748b}.membership-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.membership-benefit-grid>div{display:flex;gap:10px;padding:13px;border:1px solid #e2e8f0;border-radius:14px;background:#fbfdff}.membership-benefit-grid i{margin-top:2px;color:#2563eb}.membership-benefit-grid span{display:grid;gap:3px}.membership-benefit-grid b{font-size:13px;color:#1e293b}.membership-benefit-grid small{color:#64748b;line-height:1.45}.membership-support-bank{margin-top:14px;padding:13px 15px;border-radius:14px;background:#eef6ff;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.membership-support-bank span{font-size:11px;font-weight:900;color:#64748b;text-transform:uppercase}.membership-support-bank strong{color:#0f172a}.membership-support-bank b{color:#1d4ed8}.admin-support-settings-card{margin-top:18px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(420px,1.2fr);gap:22px;align-items:end}.admin-support-settings-card h2{margin:5px 0 6px}.admin-support-settings-form{display:grid;grid-template-columns:1fr 1.5fr auto;gap:10px;align-items:end}.admin-support-settings-form label{display:grid;gap:5px}.admin-support-settings-form label span{font-size:11px;font-weight:800;color:#334155}.admin-support-settings-form input{width:100%;min-height:43px;padding:9px 11px;border:1px solid #d7e0ed;border-radius:12px;background:#fff}.admin-support-settings-form .btn{min-height:43px;white-space:nowrap}@media(max-width:900px){.membership-benefit-grid{grid-template-columns:1fr}.admin-support-settings-card{grid-template-columns:1fr}.admin-support-settings-form{grid-template-columns:1fr}}

/* Supporter information - softer, non-commercial presentation */
.support-thanks-box{margin-top:16px;padding:18px;border:1px solid #e5ebf4;border-radius:16px;background:linear-gradient(180deg,#fbfdff 0%,#f7faff 100%)}
.support-thanks-copy{display:grid;gap:6px;margin-bottom:14px}.support-thanks-copy strong{font-size:14px;color:#1e293b}.support-thanks-copy p{margin:0;color:#64748b;line-height:1.65;font-size:13px}
.support-transfer-info{display:grid;grid-template-columns:1.2fr 1fr 1.35fr;gap:10px;margin:0 0 14px;padding:12px;border:1px dashed #cbd5e1;border-radius:14px;background:#fff}.support-transfer-info>div{display:grid;gap:3px;min-width:0}.support-transfer-info span{font-size:10px;font-weight:900;letter-spacing:.035em;text-transform:uppercase;color:#64748b}.support-transfer-info strong{font-size:14px;color:#0f172a;overflow-wrap:anywhere}.support-transfer-info small{font-size:10px;line-height:1.4;color:#94a3b8}.support-transfer-info.is-pending{grid-template-columns:1fr}.support-transfer-pending{text-align:center}.support-thanks-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.support-thanks-tier{display:grid;gap:5px;padding:14px;border-radius:14px;background:#fff;border:1px solid #e2e8f0;min-width:0}.support-thanks-tier span{font-size:10px;font-weight:900;letter-spacing:.035em;color:#64748b}.support-thanks-tier strong{font-size:20px;line-height:1.2;color:#0f172a}.support-thanks-tier small{color:#64748b;line-height:1.45}.support-thanks-tier small b{color:#334155}.support-thanks-tier.bronze{border-top:3px solid #b87333}.support-thanks-tier.silver{border-top:3px solid #9aa6b2}.support-thanks-tier.gold{border-top:3px solid #d4a017}
@media(max-width:760px){.support-transfer-info{grid-template-columns:1fr}.support-thanks-grid{grid-template-columns:1fr}.support-thanks-tier{padding:13px}}

/* Standard account + membership layout refinements */
.home-standard-account-note{display:grid;gap:5px;margin:14px 0 0;padding:13px 15px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(255,255,255,.12);line-height:1.55}.home-standard-account-note strong{font-size:13px}.home-standard-account-note span{font-size:12px;opacity:.95}.profile-account-stack{display:grid;gap:18px;align-content:start}.profile-account-stack .profile-membership-box{margin-bottom:0}.companion-benefit-link{display:inline-flex;margin-top:5px;font-size:11px;font-weight:800;color:#e7f0ff;text-decoration:none;opacity:.9}.companion-benefit-link:hover{text-decoration:underline;opacity:1}.profile-account-layout{align-items:start}.support-package-buttons-three .support-package-btn{min-height:62px}.support-package-buttons-three .support-package-btn b{font-size:14px}.support-package-buttons-three .support-package-btn span{font-size:11px}.support-package-buttons-three .support-package-btn small{font-size:9px}
@media(max-width:1050px){.support-package-buttons-three{grid-template-columns:1fr}.support-package-buttons-three .support-package-btn{min-height:52px}}

/* 2026-09-13: account copy / supporter spacing */
.admin-membership-tier-gap{display:block;content:"";margin:4px 0 8px}
.home-standard-account-note .home-account-thanks-line{display:block;margin-top:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,.18)}
.home-support-note{margin-top:14px;padding:13px 15px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(255,255,255,.12);display:grid;gap:5px;color:inherit;font-size:12px;line-height:1.55}
.home-support-note>strong{color:inherit;font-size:13px}
.home-support-note .home-support-bank{color:inherit;opacity:.98}
.home-support-note .home-support-bank.muted{color:inherit;opacity:.75}

/* 2026-09-13: compact account/avatar row + membership below */
.profile-account-avatar-row{display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)!important;gap:18px;align-items:start}
.profile-account-avatar-row>.profile-compact-box{margin:0}
.profile-account-avatar-row+.profile-membership-box{margin-top:18px}
.profile-account-avatar-row .profile-avatar-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important}
.admin-membership-tier-gap{margin:18px 0 12px!important}
@media(max-width:900px){.profile-account-avatar-row{grid-template-columns:1fr!important}.profile-account-avatar-row .profile-avatar-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important}}
@media(max-width:620px){.profile-account-avatar-row .profile-avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}}

.weekly-free-status{display:block;margin-top:4px;color:#dbeafe}.weekly-free-status b{color:#fff}
.pet-daily-five-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.float-support-wrap{position:relative;display:flex;align-items:center;justify-content:flex-end}.float-stk-btn{font-size:12px!important;font-weight:900;letter-spacing:.03em}.float-stk-popover{position:absolute;right:68px;bottom:0;width:max-content;max-width:310px;padding:10px 12px;border-radius:13px;background:#fff;color:#1e293b;border:1px solid #dbe7f4;box-shadow:0 12px 30px rgba(15,23,42,.18);display:none;line-height:1.45;font-size:12px;text-align:left}.float-stk-popover.show{display:grid;gap:2px}.float-stk-popover b{color:#1d4ed8}.footer-support-bank{margin-top:7px!important;font-size:12px;line-height:1.55;color:#fff!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important}.footer-support-bank strong,.footer-support-bank b{color:#fff!important}
@media(max-width:640px){.pet-daily-five-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.float-stk-popover{right:62px;max-width:min(280px,calc(100vw - 100px))}}

.admin-weekly-free-info{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;margin:-2px 0 12px;padding:10px 12px;border-radius:12px;background:#f4f8ff;border:1px solid #dbe8ff}.admin-weekly-free-info span{font-size:10px;font-weight:800;color:#64748b}.admin-weekly-free-info strong{font-size:18px;color:#1d4ed8}.admin-weekly-free-info small{grid-column:1/-1;color:#94a3b8;font-size:9px}
/* Admin membership: keep tier buttons visually separated from the save button. */
.admin-membership-card .admin-membership-tier-gap{display:block!important;height:0!important;margin:26px 0 14px!important;line-height:0!important}
.admin-membership-card .support-package-buttons-three{margin-top:0!important}


/* PATCH 14-09: Pet quick admin layout */
.pet-quick-admin-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.pet-quick-gender-action{display:grid!important;grid-template-columns:minmax(110px,.8fr) minmax(180px,1.2fr)!important;gap:8px!important;width:100%}
.pet-quick-gender-action select,.pet-quick-gender-action .btn{width:100%!important;min-height:38px!important}
.pet-quick-reset-grid,.pet-quick-danger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
.pet-quick-reset-grid form,.pet-quick-danger-grid form{margin:0}
.pet-quick-reset-grid .btn,.pet-quick-danger-grid .btn{width:100%;min-height:38px}
@media(max-width:520px){.pet-quick-gender-action{grid-template-columns:minmax(92px,.72fr) minmax(150px,1.28fr)!important}.pet-quick-reset-grid,.pet-quick-danger-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Pet V3 admin: cân đều nút và thêm bộ chỉnh Linh Thạch / % lực chiến. */
.pet-student-admin-top{grid-template-columns:1.15fr .82fr .82fr 1fr}
.pet-student-tool-card{display:grid;grid-template-rows:auto 1fr auto;gap:10px}
.pet-student-tool-card .btn,.pet-admin-summary-reset-actions .btn,.pet-admin-name-form .btn{width:100%!important;min-height:38px!important;height:38px!important;padding:7px 10px!important;font-size:9px!important;justify-content:center!important;white-space:nowrap}
.pet-admin-tool-save{align-self:end!important}
.pet-admin-summary-reset-actions{align-items:stretch}
.pet-admin-summary-reset-actions form{display:block;height:38px}
.pet-admin-summary-reset-actions .btn{display:flex;align-items:center}
.pet-student-tool-card input,.pet-student-tool-card select{min-height:38px!important}
@media(max-width:1180px){.pet-student-admin-top{grid-template-columns:1fr 1fr}.pet-student-summary-card{grid-column:1/-1}}
@media(max-width:760px){.pet-student-admin-top{grid-template-columns:1fr}.pet-student-summary-card{grid-column:auto}}

/* Pet V3.2 admin detail: compact 3-column management layout. */
.pet-student-admin-top{grid-template-columns:minmax(340px,1.35fr) minmax(250px,.82fr) minmax(300px,1fr)!important;gap:14px!important;align-items:stretch!important}
.pet-student-summary-card--account,.pet-student-reset-card,.pet-student-add-card{padding:16px!important;margin:0!important}
.pet-student-summary-card--account{display:grid!important;gap:10px!important}
.pet-student-summary-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
.pet-student-summary-grid--compact>div{min-width:0;padding:9px 10px!important}
.pet-student-summary-grid--compact strong{font-size:13px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pet-admin-account-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.pet-admin-account-form label{display:grid;gap:4px;min-width:0}
.pet-admin-account-form label>span{font-size:9px;font-weight:900;color:#64748b;text-transform:uppercase}
.pet-admin-account-form input{width:100%;min-height:38px;box-sizing:border-box;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif}
.pet-admin-account-name{grid-column:1/-1}
.pet-admin-account-save{grid-column:1/-1;width:100%!important;min-height:38px!important;height:38px!important;font-size:9px!important;justify-content:center!important}
.pet-student-reset-card{display:grid;grid-template-rows:auto 1fr;gap:10px}
.pet-student-reset-card h2{margin:3px 0 4px;font-size:18px}
.pet-student-reset-card p{margin:0;font-size:10px;line-height:1.35}
.pet-admin-reset-box{align-self:end;display:grid;grid-template-columns:1fr 1fr;gap:7px}
.pet-admin-reset-box form{margin:0;min-width:0}
.pet-admin-reset-box .btn{width:100%!important;min-height:38px!important;height:38px!important;padding:7px 6px!important;font-size:9px!important;justify-content:center!important;white-space:nowrap}
.pet-admin-reset-all{grid-column:1/-1}
.pet-student-add-card{display:grid!important;grid-template-rows:auto auto auto auto!important;gap:9px!important}
.pet-student-add-card label{min-width:0}
.pet-admin-add-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pet-student-add-card .btn{width:100%!important;min-height:38px!important;height:38px!important;font-size:9px!important;justify-content:center!important}
@media(max-width:1180px){.pet-student-admin-top{grid-template-columns:1fr 1fr!important}.pet-student-summary-card--account{grid-column:1/-1!important}}
@media(max-width:760px){.pet-student-admin-top{grid-template-columns:1fr!important}.pet-student-summary-card--account{grid-column:auto!important}.pet-student-summary-grid--compact{grid-template-columns:1fr 1fr!important}.pet-admin-account-form{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.pet-student-summary-grid--compact,.pet-admin-account-form,.pet-admin-add-fields,.pet-admin-reset-box{grid-template-columns:1fr!important}.pet-admin-account-name,.pet-admin-account-save,.pet-admin-reset-all{grid-column:auto!important}}

/* Pet V3.3 - quản lý danh mục Pet động */
.pet-catalog-head{align-items:flex-end}.pet-catalog-create-card{padding:16px;margin-bottom:14px}.pet-catalog-create-card .compact-box-head{align-items:end;gap:16px}.pet-catalog-create-card .compact-box-head small{max-width:520px;color:#64748b;font-size:9px;line-height:1.4;text-align:right}
.pet-catalog-create-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,2.7fr) auto;gap:10px;align-items:end}.pet-catalog-name-field{display:grid;gap:4px}.pet-catalog-name-field span,.pet-catalog-upload-cell span,.pet-catalog-card-head label span,.pet-catalog-file span{font-size:8px;font-weight:900;color:#64748b;text-transform:uppercase}.pet-catalog-name-field input,.pet-catalog-card-head input{width:100%;height:38px;box-sizing:border-box;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif}
.pet-catalog-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pet-catalog-upload-cell{min-width:0;display:grid;gap:3px;padding:6px;border:1px solid #e1e8f1;border-radius:9px;background:#f8fbff}.pet-catalog-upload-cell input{width:100%;min-width:0;font-size:8px}.pet-catalog-create-form>.btn{height:38px;white-space:nowrap}
.pet-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pet-catalog-card{padding:14px;margin:0;display:grid;gap:8px}.pet-catalog-edit-form{display:grid;gap:10px}.pet-catalog-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.pet-catalog-card-head label{display:grid;gap:4px}.pet-catalog-card-head>div{min-width:88px;height:38px;box-sizing:border-box;padding:5px 9px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;text-align:right}.pet-catalog-card-head small{display:block;color:#94a3b8;font-size:7px;font-weight:900;text-transform:uppercase}.pet-catalog-card-head strong{display:block;margin-top:1px;color:#1d4ed8;font-size:11px}
.pet-catalog-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pet-catalog-stage{min-width:0;display:grid;gap:5px;padding:6px;border:1px solid #e2e8f0;border-radius:10px;background:#fbfdff}.pet-catalog-stage>b{text-align:center;font-size:8px;color:#334155}.pet-catalog-stage-preview{height:72px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(145deg,#f8fafc,#eef4fb);overflow:hidden}.pet-catalog-stage-preview img{max-width:100%;max-height:68px;object-fit:contain}.pet-catalog-file{display:grid;gap:2px}.pet-catalog-file input{width:100%;min-width:0;font-size:7px}.pet-catalog-save,.pet-catalog-delete{width:100%;min-height:36px!important;height:36px!important;font-size:9px!important;justify-content:center!important}.pet-catalog-delete{margin-top:0}
@media(max-width:1180px){.pet-catalog-create-form{grid-template-columns:1fr}.pet-catalog-create-form>.btn{width:100%}.pet-catalog-grid{grid-template-columns:1fr}.pet-catalog-stage-preview{height:82px}.pet-catalog-stage-preview img{max-height:78px}}
@media(max-width:760px){.pet-catalog-upload-grid,.pet-catalog-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-catalog-card-head{grid-template-columns:1fr}.pet-catalog-card-head>div{text-align:left}.pet-catalog-create-card .compact-box-head{align-items:start;flex-direction:column}.pet-catalog-create-card .compact-box-head small{text-align:left}}

.pet-catalog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}.pet-catalog-delete-form{display:none}.pet-catalog-actions .pet-catalog-save,.pet-catalog-actions .pet-catalog-delete{width:100%;margin:0}


/* Pet catalog compact layout — single-row create, compact existing cards. */
.pet-catalog-create-form--single-row{
  display:grid!important;
  grid-template-columns:minmax(150px,1.05fr) 104px repeat(3,minmax(150px,1.12fr)) auto!important;
  gap:8px!important;
  align-items:end!important;
}
.pet-catalog-create-form--single-row>label{min-width:0;display:grid;gap:4px}
.pet-catalog-create-form--single-row .pet-catalog-power-field input,
.pet-catalog-create-form--single-row .pet-catalog-name-field input{width:100%;height:38px;box-sizing:border-box;padding:7px 9px;border:1px solid #d7e0ed;border-radius:10px;background:#fff;color:#0f172a;font:800 12px "Segoe UI",Arial,sans-serif}
.pet-catalog-create-form--single-row .pet-catalog-upload-cell{height:38px;box-sizing:border-box;padding:5px 7px;align-content:center}
.pet-catalog-create-form--single-row .pet-catalog-upload-cell span{font-size:7px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pet-catalog-create-form--single-row .pet-catalog-upload-cell input{font-size:7px}
.pet-catalog-create-form--single-row>.btn{height:38px!important;min-width:126px!important;padding-inline:14px!important}

.pet-catalog-card-head{display:block!important}
.pet-catalog-card-head .pet-catalog-edit-fields{display:grid!important;grid-template-columns:minmax(0,1.45fr) 118px!important;gap:8px!important;align-items:end!important;width:min(100%,420px)}
.pet-catalog-card-head .pet-catalog-edit-fields>label{min-width:0;display:grid;gap:4px}
.pet-catalog-card-head .pet-catalog-edit-fields input{height:38px!important}
.pet-catalog-card-head .pet-catalog-edit-name{max-width:290px}
.pet-catalog-card-head .pet-catalog-edit-power{max-width:118px}

.pet-catalog-delete{
  background:#1e5303!important;
  border-color:#1e5303!important;
  color:#fff!important;
  box-shadow:none!important;
}
.pet-catalog-delete:hover{background:#173f03!important;border-color:#173f03!important}

@media(max-width:1280px){
 .pet-catalog-create-form--single-row{grid-template-columns:minmax(145px,1fr) 96px repeat(3,minmax(135px,1fr)) auto!important;gap:6px!important}
 .pet-catalog-create-form--single-row>.btn{min-width:112px!important;padding-inline:10px!important}
}
@media(max-width:980px){
 .pet-catalog-create-form--single-row{grid-template-columns:1fr 110px!important}
 .pet-catalog-create-form--single-row .pet-catalog-upload-cell{grid-column:span 1;height:auto}
 .pet-catalog-create-form--single-row>.btn{grid-column:1/-1;width:100%!important}
}
@media(max-width:620px){
 .pet-catalog-create-form--single-row{grid-template-columns:1fr!important}
 .pet-catalog-card-head .pet-catalog-edit-fields{grid-template-columns:minmax(0,1fr) 105px!important;width:100%}
}
.pet-catalog-card-head>.pet-catalog-edit-fields{height:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:left!important}

/* Guest 10-question trial selector */
.hero-trial-quick-form{display:grid;gap:10px;padding:16px}
.hero-trial-quick-form label{display:grid;gap:5px}.hero-trial-quick-form label span{font-size:11px;font-weight:800;color:#5d6b7e;text-transform:uppercase;letter-spacing:.04em}
.hero-trial-quick-form select{width:100%;min-height:42px;border:1px solid #d4deeb;border-radius:10px;background:#fff;color:#1f2937;padding:0 12px;font:inherit;font-weight:700}
.hero-trial-quick-form button{min-height:44px;border:0;border-radius:11px;background:#1f7bf2;color:#fff;font-weight:900;cursor:pointer}.hero-trial-quick-form button:disabled{opacity:.55;cursor:not-allowed}
.hero-trial-quick-note{margin:0 16px 16px;font-size:11px;line-height:1.45;color:#6b7280}

/* Guest trial card: improve contrast on blue hero background */
.hero-trial-panel .hero-trial-panel-title,
.hero-trial-panel .hero-trial-quick-form label > span,
.hero-trial-panel .hero-trial-quick-note,
.hero-trial-panel .hero-trial-unavailable,
.hero-trial-panel .hero-trial-resume strong,
.hero-trial-panel .hero-trial-resume span {
  color:#fff!important;
}

/* Form alignment cleanup */
.admin-support-settings-card{align-items:start}
.admin-support-settings-form{align-items:start}
.admin-support-settings-form label{align-content:start;min-width:0}
.admin-support-settings-form label>span{min-height:16px;display:flex;align-items:end}
.admin-support-settings-form label>small{display:block;min-height:32px;margin-top:2px;color:#64748b;line-height:1.35}
.admin-support-settings-form input,.admin-support-settings-form select{height:43px;box-sizing:border-box}
.admin-support-settings-form .btn{height:43px;margin-top:21px;align-self:start}

.admin-create-student-form{gap:14px}
.admin-create-student-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;align-items:start}
.admin-create-student-grid label{min-width:0;align-content:start}
.admin-create-student-grid .field-username{grid-column:span 4}
.admin-create-student-grid .field-password{grid-column:span 3}
.admin-create-student-grid .field-name{grid-column:span 5}
.admin-create-student-grid .field-phone{grid-column:span 3}
.admin-create-student-grid .field-email{grid-column:span 6}
.admin-create-student-grid .field-grade{grid-column:span 3}
.admin-create-student-grid input,.admin-create-student-grid select{height:43px;box-sizing:border-box}
.admin-create-active{margin-top:0}

.admin-form .form-grid{align-items:start}
.admin-form .form-grid>label{align-content:start;min-width:0}
.admin-form input:not([type="checkbox"]):not([type="radio"]),
.admin-form select,
.admin-compact-form input:not([type="checkbox"]):not([type="radio"]),
.admin-compact-form select,
.admin-membership-form input:not([type="checkbox"]):not([type="radio"]),
.admin-membership-form select{box-sizing:border-box}
.admin-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.admin-form select{min-height:43px}
.admin-form .button-row .btn{min-height:43px;display:inline-flex;align-items:center;justify-content:center}

@media(max-width:900px){
  .admin-create-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-create-student-grid .field-username,.admin-create-student-grid .field-password,.admin-create-student-grid .field-name,.admin-create-student-grid .field-phone,.admin-create-student-grid .field-email,.admin-create-student-grid .field-grade{grid-column:auto}
  .admin-support-settings-form .btn{margin-top:0;width:100%}
}
@media(max-width:620px){.admin-create-student-grid{grid-template-columns:1fr}}

/* Supporter package duration settings */
.admin-supporter-days-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}
.admin-supporter-tier-setting{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:7px 9px;align-items:end;padding:10px 11px;border:1px solid #e2e8f0;border-radius:14px;background:#fbfdff}
.admin-supporter-tier-setting>strong{grid-column:1/-1;font-size:12px;color:#1e293b}
.admin-supporter-tier-setting label{gap:4px}
.admin-supporter-tier-setting label>span{min-height:auto;font-size:10px}
.admin-supporter-tier-setting input{height:40px;min-height:40px}
.admin-supporter-days-form>.btn{margin-top:0;height:40px;align-self:end}
@media(max-width:1180px){.admin-supporter-days-form{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-supporter-days-form>.btn{grid-column:1/-1;width:100%}}
@media(max-width:820px){.admin-supporter-days-form{grid-template-columns:1fr}.admin-supporter-days-form>.btn{grid-column:auto}}

.admin-free-matrix-wrap{overflow:auto}.admin-free-matrix{min-width:820px}.admin-free-matrix th,.admin-free-matrix td{text-align:center}.admin-free-matrix td:first-child,.admin-free-matrix th:first-child{text-align:left}.admin-free-matrix input{width:58px;min-height:36px;text-align:center;border:1px solid #d7e0ed;border-radius:9px}.admin-supporter-limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.admin-supporter-limit-grid label{display:grid;gap:6px}.admin-supporter-limit-grid span{font-size:11px;font-weight:800;color:#334155}@media(max-width:760px){.admin-supporter-limit-grid{grid-template-columns:1fr}}

.admin-free-cell{display:flex;align-items:center;justify-content:center;gap:6px}.admin-free-cell input[type=checkbox]{width:16px;height:16px}.admin-free-cell input[type=number]{width:48px}

/* Admin quyền làm đề: ưu tiên bảng lịch Free, thu gọn quyền Người đồng hành */
.admin-access-settings-card{display:block;}
.admin-access-settings-head{margin-bottom:8px;}
.admin-access-config-form{display:block;}
.admin-access-toolbar{display:flex;align-items:end;justify-content:flex-end;gap:10px;margin-bottom:12px;}
.admin-access-toolbar .admin-supporter-limit-grid{display:flex;align-items:end;gap:8px;margin:0;}
.admin-access-toolbar .admin-supporter-limit-grid label{display:grid;grid-template-columns:auto 58px;grid-template-rows:auto auto;column-gap:7px;row-gap:2px;align-items:center;padding:7px 9px;border:1px solid #dbe4f0;border-radius:10px;background:#f8fbff;}
.admin-access-toolbar .admin-supporter-limit-grid span{font-size:10px;white-space:nowrap;}
.admin-access-toolbar .admin-supporter-limit-grid input{grid-column:2;grid-row:1/3;width:58px;height:34px;min-height:34px;padding:5px 7px;text-align:center;font-weight:800;border-radius:8px;}
.admin-access-toolbar .admin-supporter-limit-grid small{font-size:9px;color:#94a3b8;line-height:1.1;}
.admin-access-toolbar>.btn{height:38px;min-height:38px;margin:0;padding:8px 16px;align-self:end;}
.admin-access-settings-card .admin-free-matrix-wrap{width:100%;overflow-x:auto;}
.admin-access-settings-card .admin-free-matrix{width:100%;min-width:900px;table-layout:fixed;}
.admin-access-settings-card .admin-free-matrix th:first-child,
.admin-access-settings-card .admin-free-matrix td:first-child{width:150px;}
.admin-access-settings-card .admin-free-matrix th,
.admin-access-settings-card .admin-free-matrix td{padding:12px 8px;}
.admin-access-settings-card .admin-free-cell{gap:8px;}
.admin-access-settings-card .admin-free-cell input[type=number]{width:54px;min-height:36px;}
@media(max-width:900px){
  .admin-access-toolbar{align-items:stretch;flex-direction:column;}
  .admin-access-toolbar .admin-supporter-limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-access-toolbar .admin-supporter-limit-grid label{grid-template-columns:1fr 58px;}
  .admin-access-toolbar>.btn{width:100%;}
}
@media(max-width:560px){.admin-access-toolbar .admin-supporter-limit-grid{grid-template-columns:1fr;}}

/* Lịch quyền học tinh gọn: checkbox và số lượng trên một dòng */
.admin-access-settings-card .tm-access-section{margin-bottom:18px}
.admin-access-settings-card .tm-access-section h3{margin:0 0 5px;font-size:16px}
.admin-access-settings-card .tm-access-section h3 small{font-size:12px;font-weight:500;color:#64748b}
.admin-access-settings-card .tm-access-section p{margin:0 0 10px;font-size:12px}
.admin-access-settings-card .admin-free-matrix{min-width:760px;border-collapse:separate;border-spacing:0}
.admin-access-settings-card .admin-free-matrix th,.admin-access-settings-card .admin-free-matrix td{padding:7px 5px;border-bottom:1px solid #edf1f6}
.admin-access-settings-card .admin-free-matrix th{font-size:11px;background:#f5f8fc;white-space:nowrap}
.admin-access-settings-card .admin-free-matrix th:first-child,.admin-access-settings-card .admin-free-matrix td:first-child{width:145px;padding-left:12px}
.admin-access-settings-card .admin-free-matrix td:first-child strong{font-size:12px;white-space:nowrap}
.admin-access-settings-card .admin-free-cell{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
.admin-access-settings-card .admin-free-cell input[type=checkbox]{width:16px;min-height:16px;height:16px;flex:none;accent-color:#2563eb;margin:0}
.admin-access-settings-card .admin-free-cell input[type=number]{width:45px;min-width:45px;min-height:30px;height:30px;padding:3px;font-size:12px;text-align:center;border-radius:6px}
.admin-access-settings-card .tm-tri-compact{border-top:1px solid #e8edf5;padding-top:15px}
.admin-access-settings-card .tm-access-actions{margin-top:8px}

/* Tổng quan Admin – ba nội dung trang chủ cân đối trên một hàng */
.admin-home-content-card{display:block;min-width:0}
.admin-home-content-heading{margin-bottom:14px}
.admin-home-content-heading h2{margin:4px 0 0;font-size:20px}
.admin-home-content-form{display:block;min-width:0}
.admin-home-content-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.admin-home-content-field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0}
.admin-home-content-field strong{font-size:13px;line-height:1.4;color:#1e293b}
.admin-home-content-field textarea{display:block;box-sizing:border-box;width:100%;height:154px;min-height:154px;resize:vertical;padding:12px 13px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font:inherit;font-size:13px;line-height:1.5;outline:none}
.admin-home-content-field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.12)}
.admin-home-content-actions{display:flex;justify-content:flex-end;margin-top:14px}
@media(max-width:700px){.admin-home-content-fields{grid-template-columns:1fr;gap:12px}.admin-home-content-field textarea{height:125px;min-height:125px}.admin-home-content-actions .btn{width:100%}}
