:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0f172a;background:#f8fafc}*{box-sizing:border-box}body{margin:0;background:#f8fafc;color:#0f172a}a{color:inherit}.min-h-screen{min-height:100vh}.mx-auto{margin-left:auto;margin-right:auto}.max-w-5xl{max-width:64rem}.max-w-2xl{max-width:42rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-16{padding-top:4rem;padding-bottom:4rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.mb-3{margin-bottom:.75rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-10{margin-top:2.5rem}.flex{display:flex}.grid{display:grid}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.border{border:1px solid #e2e8f0}.border-dashed{border-style:dashed}.bg-white{background:#fff}.bg-slate-950{background:#020617}.text-white{color:#fff}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.shadow-sm{box-shadow:0 1px 2px rgba(15,23,42,.06)}.divide-y>*+*{border-top:1px solid #e2e8f0}.overflow-hidden{overflow:hidden}.leading-8{line-height:2rem}@media(min-width:640px){.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:text-5xl{font-size:3rem}.sm\:text-6xl{font-size:3.75rem}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}}
.admin-shell{min-height:100vh}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#fff;position:sticky;top:0;z-index:20}.brand{font-size:1.25rem;font-weight:700;text-decoration:none}.admin-nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.admin-nav a,.link-button{font:inherit;color:#334155;background:none;border:0;padding:0;text-decoration:none;cursor:pointer}.admin-main{max-width:72rem;margin:0 auto;padding:2rem 1rem 4rem}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-heading h1,.auth-card h1{margin:.25rem 0 0;font-size:2rem}.eyebrow{margin:0;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#64748b}.muted{color:#64748b}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 1px 2px rgba(15,23,42,.04)}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stat{padding:1.25rem}.stat strong{display:block;margin-top:.5rem;font-size:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.65rem 1rem;border-radius:.75rem;text-decoration:none;border:1px solid transparent;font-weight:600;cursor:pointer}.button.primary{background:#0f172a;color:#fff}.button.secondary{background:#fff;border-color:#cbd5e1;color:#0f172a}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:1rem;text-align:left;border-bottom:1px solid #e2e8f0;white-space:nowrap}.data-table tr:last-child td{border-bottom:0}.actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.badge{display:inline-flex;padding:.25rem .55rem;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:700}.badge.active{background:#ecfdf5;color:#047857}.empty{text-align:center;color:#64748b}.form-card{padding:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.span-2{grid-column:span 2}.field{display:grid;gap:.45rem}.field span{font-size:.875rem;font-weight:600}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd5e1;border-radius:.75rem;background:#fff;padding:.75rem .85rem;font:inherit;color:#0f172a}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #94a3b8;outline-offset:1px}.check-row{display:flex;align-items:center;gap:.6rem;margin-top:1rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.notice{margin-bottom:1rem;padding:.85rem 1rem;border-radius:.75rem}.notice.success{background:#ecfdf5;color:#065f46}.notice.error{background:#fef2f2;color:#991b1b}.danger{color:#b91c1c}.auth-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.auth-card{width:min(100%,28rem);padding:1.5rem}.auth-card .field{margin-top:1rem}.auth-card .button{width:100%;margin-top:1.25rem}@media(max-width:700px){.admin-header{align-items:flex-start;flex-direction:column}.admin-nav{gap:.75rem}.page-heading{align-items:stretch;flex-direction:column}.stats-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.data-table th,.data-table td{padding:.8rem}.form-actions{position:sticky;bottom:0;background:#fff;padding-top:1rem}.admin-main{padding-top:1.25rem}}
/* Public Drago */
.drago-public{margin:0;background:#f4f6f5;color:#17211d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.drago-public *{box-sizing:border-box}
.drago-public a{color:inherit}
.drago-wrap{width:min(100% - 2rem,74rem);margin:0 auto}
.drago-header{background:#fff;border-bottom:1px solid #e2e8e4;position:sticky;top:0;z-index:30}
.drago-header__inner{height:4.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.drago-logo{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.drago-logo__icon{width:2.35rem;height:2.35rem;border-radius:.8rem;background:#123b31;color:#fff;display:grid;place-items:center;font-weight:900}
.drago-logo__text strong{display:block;font-size:1rem;line-height:1}
.drago-logo__text small{display:block;margin-top:.22rem;color:#78847e;font-size:.68rem}
.drago-admin{font-size:.8rem;color:#51615a;text-decoration:none}
.drago-intro{background:#123b31;color:#fff;padding:2.4rem 0}
.drago-intro__inner{display:flex;align-items:end;justify-content:space-between;gap:2rem}
.drago-intro h1{margin:.4rem 0 0;font-size:clamp(2rem,5vw,3.8rem);line-height:1;letter-spacing:-.045em}
.drago-intro p{margin:.7rem 0 0;color:#c8d5d0;font-size:.92rem}
.drago-overline{display:inline-block;color:#d5eb74;font-size:.68rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.drago-overline--dark{color:#66756e}
.drago-skip{color:#dbe7e2;text-decoration:none;font-size:.8rem;font-weight:700;white-space:nowrap}
.drago-page{padding:1.5rem 0 4rem}
.drago-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(18rem,.85fr);gap:1.4rem;align-items:start}
.drago-content{min-width:0}
.drago-now{background:#fff;border:1px solid #dde5e0;border-radius:1.25rem;overflow:hidden;box-shadow:0 14px 36px rgba(24,60,49,.08)}
.drago-now__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1.1rem;border-bottom:1px solid #e8edea;background:#fafcfb}
.drago-now__head p{margin:.28rem 0 0;color:#7b8881;font-size:.75rem}
.drago-live{display:inline-flex;align-items:center;gap:.45rem;color:#245f47;font-size:.78rem;font-weight:850}
.drago-live i{width:.5rem;height:.5rem;border-radius:50%;background:#34c276;box-shadow:0 0 0 .22rem rgba(52,194,118,.12)}
.drago-now__clock{font-size:.8rem;color:#5d6963;font-weight:800}
.drago-now__body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:center;padding:1.4rem 1.2rem}
.drago-label{display:block;margin-bottom:.35rem;color:#77837d;font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.drago-now__main h2{margin:0;font-size:clamp(1.75rem,4vw,2.5rem);letter-spacing:-.04em}
.drago-location{display:inline-block;margin:.45rem 0 0;color:#4d6a5d;text-decoration:none;font-size:.92rem}
.drago-location:hover{text-decoration:underline}
.drago-valid{margin:.95rem 0 0;color:#839088;font-size:.8rem}
.drago-now__actions{display:flex;flex-direction:column;gap:.5rem;min-width:8.5rem}
.drago-action{display:inline-flex;align-items:center;justify-content:center;min-height:2.7rem;padding:.68rem .9rem;border:1px solid #cfdbd5;border-radius:.75rem;background:#fff;text-decoration:none;font-size:.8rem;font-weight:800;white-space:nowrap}
.drago-action--primary{background:#123b31;border-color:#123b31;color:#fff}
.drago-upcoming{margin-top:1.55rem}
.drago-section-title{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.75rem}
.drago-section-title h2,.drago-ads__title h2{margin:.2rem 0 0;font-size:clamp(1.45rem,3vw,1.9rem);letter-spacing:-.035em}
.drago-section-title>span{font-size:.74rem;color:#7a8780}
.drago-list{background:#fff;border:1px solid #dde5e0;border-radius:1rem;overflow:hidden}
.drago-list__item{display:grid;grid-template-columns:4rem minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.9rem 1rem}
.drago-list__item+.drago-list__item{border-top:1px solid #e9eeeb}
.drago-day{display:grid;text-align:center;line-height:1}
.drago-day span,.drago-day small{font-size:.62rem;color:#7f8a84;text-transform:uppercase}
.drago-day strong{font-size:1.5rem;margin:.14rem 0}
.drago-list__info{min-width:0}
.drago-list__info h3{margin:0;font-size:.96rem}
.drago-list__info a{display:block;margin:.2rem 0 0;color:#708078;font-size:.78rem;text-decoration:none}
.drago-list__time{text-align:right;display:grid;gap:.12rem}
.drago-list__time strong{font-size:.88rem}
.drago-list__time span{font-size:.68rem;color:#7e8a84}
.drago-note{margin-top:1rem;padding:.9rem 1rem;border-radius:.85rem;background:#eaf0ed}
.drago-note strong{display:block;font-size:.8rem}
.drago-note p{margin:.28rem 0 0;color:#68756e;font-size:.78rem;line-height:1.5}
.drago-ads{display:grid;gap:1rem}
.drago-ads__title{margin-bottom:.05rem}
.drago-ad-card{position:relative;overflow:hidden;background:#fff;border:1px solid #dde5e0;border-radius:1rem}
.drago-ad-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e6ece8}
.drago-ad-card__badge{position:absolute;top:.65rem;left:.65rem;z-index:2;padding:.28rem .5rem;border-radius:999px;background:rgba(18,59,49,.9);color:#fff;font-size:.56rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.drago-ad-card__body{padding:.9rem}
.drago-ad-card__body strong{display:block;font-size:1rem}
.drago-ad-card__body p{margin:.35rem 0 0;color:#68766f;font-size:.76rem;line-height:1.45}
.drago-ad-card__body span{display:block;margin-top:.7rem;color:#4d675b;font-size:.72rem;font-weight:700}
.drago-cta{padding:1rem;border-radius:1rem;background:#123b31;color:#fff}
.drago-cta span{display:block;color:#a9c0b6;font-size:.7rem}
.drago-cta strong{display:block;margin:.35rem 0 0;font-size:1rem}
.drago-cta a{display:inline-block;margin-top:.8rem;padding:.55rem .75rem;border-radius:.65rem;background:#d5eb74;color:#123b31;text-decoration:none;font-size:.75rem;font-weight:850}
.drago-footer{border-top:1px solid #e0e5e2;background:#fff}
.drago-footer__inner{min-height:5.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#6d7a73;font-size:.76rem}
.drago-footer__inner>div{display:grid;gap:.1rem}
.drago-footer__inner strong{color:#1c2822}
@media(max-width:820px){
  .drago-grid{grid-template-columns:1fr}
  .drago-ads{grid-template-columns:1fr 1fr}
  .drago-ads__title,.drago-cta{grid-column:1/-1}
}
@media(max-width:620px){
  .drago-wrap{width:min(100% - 1rem,74rem)}
  .drago-header__inner{height:3.9rem}
  .drago-intro{padding:1.8rem 0}
  .drago-intro__inner{display:block}
  .drago-intro h1{font-size:2.15rem}
  .drago-intro p{font-size:.86rem;line-height:1.5}
  .drago-skip{display:none}
  .drago-page{padding-top:1rem}
  .drago-now__head,.drago-now__body{padding-left:.85rem;padding-right:.85rem}
  .drago-now__body{grid-template-columns:1fr}
  .drago-now__actions{display:grid;grid-template-columns:1fr 1fr;min-width:0}
  .drago-action{width:100%}
  .drago-section-title{align-items:flex-start;flex-direction:column}
  .drago-list__item{grid-template-columns:3.2rem minmax(0,1fr);gap:.7rem;padding:.82rem}
  .drago-list__time{grid-column:2;text-align:left;display:flex;gap:.35rem}
  .drago-ads{grid-template-columns:1fr}
  .drago-ads__title,.drago-cta{grid-column:auto}
  .drago-ad-card img{aspect-ratio:16/9}
  .drago-footer__inner{align-items:flex-start;flex-direction:column;justify-content:center}
}

/* Align admin typography with the public Drago site. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{font-family:"DM Sans",system-ui,-apple-system,sans-serif}

/* Pharmacy table: keep every cell in a single row and give actions their own column. */
.pharmacy-admin-table{table-layout:fixed}
.pharmacy-admin-table th,.pharmacy-admin-table td{vertical-align:middle;white-space:normal}
.pharmacy-admin-table th:nth-child(1){width:32%}
.pharmacy-admin-table th:nth-child(2){width:49%}
.pharmacy-admin-table th:nth-child(3){width:10%}
.pharmacy-admin-table th:nth-child(4){width:9%}
.pharmacy-admin-table .pharmacy-actions-cell{text-align:right;white-space:nowrap}
.pharmacy-edit-button{display:inline-flex;gap:7px;align-items:center;justify-content:center;min-height:36px;padding:7px 11px;border:1px solid #d8e4dd;border-radius:9px;background:#f7faf8;color:#18573a;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.pharmacy-edit-button svg{flex:none}
.pharmacy-edit-button:hover{background:#e7f3eb;border-color:#a8d3b8}
.pharmacy-edit-button:focus-visible{outline:2px solid #1d8052;outline-offset:3px}
@media(max-width:900px){.pharmacy-admin-table th:nth-child(1){width:28%}.pharmacy-admin-table th:nth-child(2){width:48%}.pharmacy-admin-table th:nth-child(3){width:11%}.pharmacy-admin-table th:nth-child(4){width:13%}}

/* Pharmacy editor: visual media fields and clear sections. */
.pharmacy-form-section{padding-top:8px}
.pharmacy-form-section:not(:first-child){border-top:1px solid #e2e8f0;margin-top:12px;padding-top:24px}
.pharmacy-form-section h2{font-size:17px;margin:0 0 5px}
.pharmacy-form-section p{font-size:13px;color:#64748b;margin:0}
.pharmacy-media-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}
.pharmacy-media-field{padding:16px;border:1px solid #dce3df;border-radius:12px;min-width:0}
.pharmacy-media-field h3{font-size:15px;margin:0 0 4px}
.pharmacy-media-field>p{font-size:12px;color:#64748b;margin:0 0 12px}
.pharmacy-media-preview{display:flex;justify-content:center;align-items:center;overflow:hidden;border:1px dashed #cbd5e1;background:#f2f5f3;color:#64748b;border-radius:10px;margin-bottom:12px;font-size:13px}
.pharmacy-media-preview--cover{aspect-ratio:3/2}
.pharmacy-media-preview--logo{aspect-ratio:1/1;max-height:280px}
.pharmacy-media-preview img{display:block;width:100%;height:100%;object-fit:contain}
.pharmacy-media-preview--cover img{object-fit:cover}
.pharmacy-media-field input[type=file]{padding:10px;font-size:12px}
.pharmacy-media-help{grid-column:1/-1}
@media(max-width:700px){.pharmacy-media-grid{grid-template-columns:1fr}.pharmacy-media-preview--logo{max-width:220px}}

/* Pharmacy list: details, subtle status, clear actions and on-scroll creation. */
.pharmacy-admin-table{table-layout:fixed}
.pharmacy-admin-table th:nth-child(1){width:33%}
.pharmacy-admin-table th:nth-child(2){width:53%}
.pharmacy-admin-table th:nth-child(3){width:14%;text-align:center}
.pharmacy-admin-table td.pharmacy-actions-cell{text-align:center;padding-inline:16px}
.pharmacy-admin-table .pharmacy-edit-button{min-width:86px}
.pharmacy-status-active{color:#15803d;font-weight:700}
.pharmacy-status-inactive{color:#b45309;font-weight:700}
.pharmacy-mobile-state{font-size:12px;color:#64748b;margin:7px 0 0}
.pharmacy-mobile-state strong{font-size:inherit}
.pharmacy-create-main{gap:8px;white-space:nowrap}
.pharmacy-create-main>span{font-size:20px;line-height:1;font-weight:500}
.pharmacy-create-fab{position:fixed;right:24px;bottom:24px;z-index:25;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:#0f172a;color:#fff;box-shadow:0 7px 25px rgba(15,23,42,.22);font-size:30px;font-weight:400;line-height:1;text-decoration:none}
.pharmacy-create-fab[hidden]{display:none!important}
.pharmacy-create-fab:hover{background:#1b5038}
.pharmacy-create-fab:focus-visible{outline:3px solid #3cab77;outline-offset:3px}
@media(max-width:900px){.pharmacy-admin-table th:nth-child(1){width:30%}.pharmacy-admin-table th:nth-child(2){width:52%}.pharmacy-admin-table th:nth-child(3){width:18%}}
@media(max-width:700px){.pharmacy-create-fab{right:16px;bottom:20px}.pharmacy-mobile-item .pharmacy-edit-button{width:100%}}

/* Flat, full-width pharmacy editor on phones; desktop remains unchanged. */
@media(max-width:700px){
  .admin-main:has(.pharmacy-editor-form){padding-inline:16px}
  .pharmacy-editor-form.panel{
    margin-inline:-16px;
    padding:0 16px 90px;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .pharmacy-editor-form .form-grid{gap:20px}
  .pharmacy-editor-form .pharmacy-form-section{padding-top:0}
  .pharmacy-editor-form .pharmacy-form-section:not(:first-child){
    margin-top:6px;
    padding-top:24px;
    border-top:1px solid #dce4ec;
  }
  .pharmacy-editor-form .pharmacy-media-grid{display:block}
  .pharmacy-editor-form .pharmacy-media-field{
    border:0;
    border-radius:0;
    padding:0;
    background:transparent;
  }
  .pharmacy-editor-form .pharmacy-media-field+.pharmacy-media-field{
    margin-top:24px;
    padding-top:24px;
    border-top:1px solid #dce4ec;
  }
  .pharmacy-editor-form .pharmacy-media-preview--cover{width:100%;margin-bottom:12px}
  .pharmacy-editor-form .pharmacy-media-preview--logo{max-width:200px}
  .pharmacy-editor-form .pharmacy-media-help{margin-top:12px}
  .pharmacy-editor-form .pharmacy-media-field input[type=file]{
    display:block;
    min-width:0;
    width:100%;
    padding:10px 8px;
    font-size:12px;
    overflow:hidden;
  }
  .pharmacy-editor-form .form-actions{
    position:sticky;
    bottom:0;
    z-index:5;
    margin:24px -16px -90px;
    padding:14px 16px max(16px,env(safe-area-inset-bottom));
    background:var(--surface,#fff);
    border-top:1px solid #dce4ec;
    box-shadow:0 -8px 20px rgba(15,23,42,.04);
  }
}
