.subscription-state{text-align:center}.subscription-state__icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:20px;background:#fff4cc;color:#a67200;font-size:28px}.subscription-state h2{margin:10px 0 8px;font-size:clamp(1.65rem,4vw,2.2rem)}.subscription-state p{max-width:570px;margin:0 auto 20px;color:var(--muted);line-height:1.85}.subscription-state__date{margin:0 auto 20px;padding:10px;border-radius:12px;background:#f4f8f6}

.subscribers-heading{margin-bottom:14px}.subscribers-heading h1{margin:4px 0;font-size:clamp(1.55rem,2.8vw,2.15rem)}.subscribers-heading p{margin:0;max-width:620px;font-size:.9rem}

.subscription-summary{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px;margin:14px 0}.summary-card{display:flex;min-height:58px;justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:inherit;text-decoration:none;transition:border-color .18s ease,background .18s ease,transform .18s ease}.summary-card:hover{transform:translateY(-1px);border-color:#bdcec8}.summary-card span{color:var(--muted);font-size:.76rem;font-weight:700;white-space:nowrap}.summary-card strong{font-size:1.25rem;line-height:1;color:var(--green)}.summary-card.is-current{border-color:#d9ad3d;background:#fffdf5;box-shadow:inset 0 0 0 1px rgba(217,173,61,.12)}

.subscriber-filters{display:grid;grid-template-columns:minmax(220px,1fr) 170px 72px;gap:8px;align-items:center;margin-bottom:12px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}.subscriber-filters input,.subscriber-filters select{height:38px;padding:7px 11px;border-radius:9px;font-size:.82rem}.subscriber-filters .button{min-height:38px;padding:7px 12px;border-radius:9px;font-size:.78rem}

.subscriber-list{display:grid;gap:10px}.subscriber-card{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(500px,1.15fr);gap:18px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(9,45,39,.035)}.subscriber-card__identity>div:first-child{display:flex;align-items:center;gap:9px;margin-bottom:10px}.subscriber-card__identity h2{margin:0;font-size:1rem;line-height:1.45}.subscriber-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin:0}.subscriber-card dl div{min-width:0;padding:0;background:transparent}.subscriber-card dt{display:inline;color:var(--muted);font-size:.68rem}.subscriber-card dt::after{content:" · "}.subscriber-card dd{display:inline;margin:0;font-size:.75rem;font-weight:700;overflow-wrap:anywhere}.subscriber-card__actions{display:grid;grid-template-columns:135px minmax(170px,1fr) auto;gap:8px;align-items:end;padding-inline-start:18px;border-inline-start:1px solid var(--line)}.subscriber-card__actions label{display:grid;gap:4px;color:var(--muted);font-size:.68rem;font-weight:700}.subscriber-card__actions select,.subscriber-card__actions input{height:36px;min-width:0;padding:6px 9px;border-radius:9px;font-size:.76rem}.subscriber-actions-row{display:flex;align-items:center;flex-wrap:nowrap;gap:6px}.subscriber-actions-row .button{min-height:34px;padding:6px 10px;border-radius:8px;font-size:.7rem;line-height:1.2;white-space:nowrap}.subscription-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:.66rem;font-weight:800;white-space:nowrap;background:#f0f2f1}.subscription-badge--active{background:#e0f4eb;color:#08704f}.subscription-badge--pending{background:#fff3cd;color:#8b6500}.subscription-badge--expired,.subscription-badge--cancelled{background:#f3e8e8;color:#914141}.subscription-badge--suspended{background:#f0ece7;color:#755334}

@media(max-width:1120px){.subscriber-card{grid-template-columns:1fr}.subscriber-card__actions{padding-inline-start:0;padding-top:12px;border-inline-start:0;border-top:1px solid var(--line)}}
@media(max-width:760px){.subscribers-heading{margin-bottom:10px}.subscription-summary{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px;margin:10px 0;scrollbar-width:thin}.summary-card{flex:0 0 120px;min-height:54px;scroll-snap-align:start}.subscriber-filters{grid-template-columns:minmax(0,1fr) 130px auto;padding:8px}.subscriber-card{gap:12px;padding:13px;border-radius:14px}.subscriber-card__actions{grid-template-columns:120px minmax(0,1fr)}.subscriber-actions-row{grid-column:1/-1}.subscriber-card dl{gap:5px 10px}}
@media(max-width:520px){.subscriber-filters{grid-template-columns:1fr 112px}.subscriber-filters .button{grid-column:1/-1;width:max-content;justify-self:end}.subscriber-card__identity>div:first-child{align-items:flex-start;flex-direction:column;gap:6px}.subscriber-card dl{grid-template-columns:1fr}.subscriber-card__actions{grid-template-columns:1fr}.subscriber-actions-row{grid-column:auto;flex-wrap:wrap}.subscriber-actions-row .button{flex:0 0 auto}}

.button--danger-compact{min-height:34px;padding:6px 10px;border:1px solid #f2c7c2;border-radius:8px;color:#9d241a;background:#fff5f3;font-size:.7rem;line-height:1.2;font-weight:800;white-space:nowrap}.button--danger-compact:hover{color:#fff;background:#b42318;border-color:#b42318}.subscriber-delete-dialog{width:min(440px,calc(100% - 28px));padding:0;border:0;border-radius:18px;background:transparent;box-shadow:0 28px 80px rgba(5,35,31,.24)}.subscriber-delete-dialog::backdrop{background:rgba(3,24,21,.58);backdrop-filter:blur(3px)}.subscriber-delete-dialog__card{display:grid;justify-items:center;padding:26px;text-align:center;border:1px solid #f0d6d2;border-radius:18px;background:#fff}.subscriber-delete-dialog__icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:11px;border-radius:14px;color:#fff;background:#b42318;font-size:1.25rem;font-weight:900}.subscriber-delete-dialog h2{margin:6px 0 8px;font-size:1.35rem}.subscriber-delete-dialog p{margin:0;color:var(--ink-soft);font-size:.86rem;line-height:1.75}.subscriber-delete-dialog small{margin-top:8px;color:#9d241a;font-size:.72rem}.subscriber-delete-dialog__actions{display:flex;justify-content:center;gap:8px;margin-top:20px}
