
/* hide wordpress/theme header */
header,
.site-header,
.elementor-location-header,
#masthead,
#site-header,
.elementor-header,
.ast-header-break-point{
display:none !important;
}
body{margin-top:0 !important;}

/* Hide WordPress theme chrome on the NLFÍ app page */
body.nfli-app-page header,
body.nfli-app-page .site-header,
body.nfli-app-page #masthead,
body.nfli-app-page .wp-site-blocks > header,
body.nfli-app-page .site-branding,
body.nfli-app-page .site-title,
body.nfli-app-page .site-description,
body.nfli-app-page footer,
body.nfli-app-page .site-footer,
body.nfli-app-page #colophon {
  display: none !important;
}
body.nfli-app-page {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100vw !important;
  overflow-x: hidden !important;
}
html.nfli-app-page,
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}
body.nfli-app-page .site,
body.nfli-app-page #page,
body.nfli-app-page main,
body.nfli-app-page .content-area {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
  overflow-x: hidden !important;
}


:root{
  /* Institutional / neutral palette */
  --nfli-bg:#f3f4f6;
  --nfli-card:#ffffff;
  --nfli-ink:#0b1220;
  --nfli-text:#0f172a;
  --nfli-accent:#2563eb; /* professional blue */
  --nfli-accent-soft:#dbeafe;
  --nfli-border:#e5e7eb;
  --nfli-muted:#111111;
  --nfli-radius:16px;
  --nfli-vh:100vh;

  /* Typography */
  /* User request: use Arial everywhere (fallback to Helvetica/sans-serif). */
  --nfli-font: Arial, Helvetica, sans-serif;
  --nfli-font-size:15px;
  --nfli-line-height:1.35;

  /* Headings & UI scale (smaller / cleaner) */
  --nfli-h1:22px;
  --nfli-h1-mobile:20px;
  --nfli-brand-size:18px;
  --nfli-tab-size:13px;
  --nfli-btn-size:13px;
  --nfli-title:15px;
  --nfli-meta:12px;
}
*{box-sizing:border-box}
html{font-size:var(--nfli-font-size)}
html,body{font-family:var(--nfli-font); color:var(--nfli-ink); line-height:var(--nfli-line-height); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility}
.nfli-wrap{padding:24px 12px;max-width:980px;width:100%;margin:0 auto;overflow-x:hidden}

/* Login overlay */
.nfli-login{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:100000;padding:18px}
.nfli-login[hidden]{display:none}
.nfli-login-card{width:100%;max-width:420px;background:#fff;border-radius:16px;padding:18px;box-shadow:0 12px 40px rgba(0,0,0,.25)}
.nfli-login-title{font-size:18px;font-weight:700;margin:0 0 12px 0}
.nfli-login-row{margin:10px 0}
.nfli-login-row input{width:100%}
.nfli-shell{background:var(--nfli-card);border:1px solid var(--nfli-border);border-radius:var(--nfli-radius);box-shadow:0 10px 26px rgba(15,23,42,.08)}
.nfli-topbar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(10px);padding:10px 12px;border-bottom:1px solid var(--nfli-border)}
.nfli-headercard{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--nfli-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(17,24,39,.08);flex-wrap:wrap}
.nfli-brand{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}
.nfli-logo-wrap{flex:0 0 auto;width:56px;height:56px;border-radius:16px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(0,0,0,.06)}
.nfli-logo{width:56px;height:56px;object-fit:contain;border:none;background:transparent;flex:0 0 auto}
.nfli-brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.nfli-title{font-weight:800;letter-spacing:.3px;font-size:22px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nfli-version{font-weight:700;color:var(--nfli-muted);font-size:12px;margin-left:8px;opacity:1}
.nfli-user{font-size:13px;color:#374151;font-weight:600;align-items:flex-start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media (max-width:520px){
  .nfli-headercard{flex-direction:column;align-items:stretch}
  .nfli-top-actions{justify-content:flex-end}
  .nfli-brand{width:100%}
}
.nfli-top-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex:0 0 auto}
.nfli-iconbtn{position:relative;width:44px;height:44px;border-radius:14px;border:1px solid var(--nfli-border);background:#fff;display:flex;align-items:center;justify-content:center;color:#111827;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.nfli-iconbtn:active{transform:translateY(1px)}
.nfli-icon{display:flex;align-items:center;justify-content:center}
.nfli-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:#d63638;color:#fff;font-size:12px;line-height:1;margin-left:4px}
.nfli-iconbtn .nfli-badge{position:absolute;top:-6px;right:-6px;margin-left:0;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.nfli-link{display:inline-block;padding:9px 12px;border:1px solid rgba(37,99,235,.35);border-radius:12px;text-decoration:none;color:var(--nfli-accent);font-weight:600;background:#fff;font-size:var(--nfli-btn-size)}
.nfli-link:hover{filter:brightness(.97)}

/* Ensure the logout button is always clickable even when embedded in editors/themes */
#nfliLogoutBtn{position:relative;z-index:30;pointer-events:auto}

.nfli-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:10px 18px 6px}
.nfli-tab{border:1px solid rgba(37,99,235,.25);background:#fff;border-radius:999px;padding:9px 12px;font-weight:600;cursor:pointer;color:var(--nfli-accent);font-size:var(--nfli-tab-size)}
.nfli-tab:hover{background:rgba(37,99,235,.06)}
.nfli-tab.is-active{background:var(--nfli-ink);color:#fff;border-color:var(--nfli-ink)}

.nfli-body{padding:10px 18px 18px}
.nfli-panel{display:none}
.nfli-panel.is-active{display:block}
.nfli-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.nfli-panel-head h2{margin:0;font-size:var(--nfli-h1);letter-spacing:-.2px;font-weight:700}
.nfli-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.nfli-inline{display:flex;gap:6px;align-items:center;font-size:13px}
.nfli-inline input[type=date]{height:34px}

.nfli-btn{border:1px solid rgba(37,99,235,.45);background:#fff;color:var(--nfli-accent);border-radius:14px;padding:9px 12px;font-weight:600;cursor:pointer;font-size:var(--nfli-btn-size)}
.nfli-btn.is-primary{background:var(--nfli-accent);color:#fff}
.nfli-btn:hover{filter:brightness(.97)}
.nfli-btn-ghost{border-color:rgba(15,23,42,.18);color:var(--nfli-ink);background:#fff}
.nfli-btn-danger{border-color:#b91c1c;color:#b91c1c}
.nfli-pill{display:inline-block;border:1px solid var(--nfli-border);border-radius:999px;padding:4px 10px;font-size:12px;background:#fff}

/* Status pill (same colour logic as task left stripe) */
.nfli-pill-status{margin-left:6px}
.nfli-pill-status[data-status*="ókl"],
.nfli-pill-status[data-status*="op"]{background:#fff7ed;border-color:#f59e0b;color:#92400e}
.nfli-pill-status[data-status*="vinn"]{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}
.nfli-pill-status[data-status*="loki"]{background:#ecfdf5;border-color:#10b981;color:#047857}
.nfli-pill-status[data-status*="hætt"]{background:#fef2f2;border-color:#ef4444;color:#b91c1c}

select,input,textarea{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:14px;padding:12px 12px;font-size:15px;outline:none;background:#fff}
textarea{min-height:92px;resize:vertical}
label{display:block;margin:10px 0 0;font-weight:600;color:#111827}
label > input,label > select,label > textarea{margin-top:6px;font-weight:500}

.nfli-list{margin-top:12px;border:1px solid rgba(15,23,42,.10);border-radius:16px;overflow:hidden;background:#fff}
.nfli-list.compact .nfli-item{padding:10px 12px}
.nfli-item{
  /* Unified row layout across Tasks / Shopping / Special / Inventory.
     Grid avoids overlap and keeps action buttons aligned in a clean right column. */
  display:grid;
  grid-template-columns: 1fr auto;
  align-items:center;
  gap:10px;
  padding:12px 12px;
  border-top:1px solid rgba(15,23,42,.08);
  background:#fff;
  position:relative;
}
.nfli-item:first-child{border-top:none}
.nfli-item .meta{color:var(--nfli-muted);font-size:var(--nfli-meta);margin-top:3px;line-height:1.3}
.nfli-item .title{font-weight:600;font-size:var(--nfli-title);letter-spacing:0;line-height:1.22}
.nfli-item .left{display:flex;flex-direction:column;min-width:0}
.nfli-item .right{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:nowrap; /* keep buttons in a single row */
}

/* When left contains thumbnail + text, keep it aligned and prevent overflow */
.nfli-left-with-thumb > div{min-width:0}
/*
  Text in list rows (Verkefni / Verkefni dagsins / Saga / Logg / Innkaupalistar o.fl.).
  We intentionally allow wrapping so the user can see full details on mobile.
*/
.nfli-item .title,
.nfli-item .meta{overflow:visible;text-overflow:clip;white-space:normal}

.nfli-task-row{padding-left:18px}

/* Left colour stripe (used for task status) */
.nfli-status-bar{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--nfli-border)}
.nfli-status-bar{border-top-left-radius:0;border-bottom-left-radius:0}
/* Match list rounding if the item itself is rounded elsewhere */
.nfli-card .nfli-status-bar{border-top-left-radius:12px;border-bottom-left-radius:12px}

.nfli-status-bar[data-status*="ókl"]{background:#f59e0b}
.nfli-status-bar[data-status*="op"]{background:#f59e0b}
.nfli-status-bar[data-status*="vinn"]{background:#3b82f6}
.nfli-status-bar[data-status*="loki"]{background:#10b981}
.nfli-status-bar[data-status*="hætt"]{background:#ef4444}

.nfli-profile-top{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.nfli-profile-name{font-weight:700;font-size:18px}
.nfli-avatar{width:64px;height:64px;border-radius:999px;object-fit:cover;border:1px solid var(--nfli-border)}

/* Section cards (used in editor panes) */
.nfli-card{border:1px solid rgba(15,23,42,.10);border-radius:16px;padding:14px;margin-bottom:12px;background:#fff}
.nfli-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:10px}
@media(min-width:720px){.nfli-grid{grid-template-columns:2fr 1fr 1fr}}
.nfli-row{display:grid;grid-template-columns:2fr 1fr 1fr 2fr auto auto;gap:8px;align-items:center;margin-bottom:8px}
.nfli-check{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--nfli-text)}

.nfli-row{display:flex;gap:10px;align-items:center;margin-top:10px}
.nfli-row > *{flex:1}
.nfli-row .nfli-check{flex:0 0 auto;display:flex;align-items:center;gap:8px;font-weight:700;color:#111827}
.nfli-row .nfli-check input{width:auto}

/* Innkaupalisti: einfaldari vörulína (nafn + magn + eining + eyða) */
.nfli-shop-row{display:grid;grid-template-columns:minmax(0,1fr) 64px 104px 44px;gap:8px;align-items:start;margin:10px 0}
.nfli-shop-row input,.nfli-shop-row select{padding:10px 12px;font-size:16px}
.nfli-shop-name-wrap{position:relative;min-width:0}.nfli-shop-row .nfli-shop-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:44px}.nfli-shop-pick-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:1px solid rgba(214,54,56,.45);background:#fff;font-size:16px;line-height:1;padding:0;width:34px;height:34px;border-radius:10px;color:#c24170;display:flex;align-items:center;justify-content:center}.nfli-shop-picker{display:grid;gap:10px}.nfli-shop-picker input{padding:12px 14px;font-size:16px}.nfli-shop-picker-list{display:grid;gap:6px;max-height:52vh;overflow:auto}.nfli-shop-picker-item{display:block;width:100%;text-align:left;border:1px solid #d8dbe6;background:#fff;border-radius:14px;padding:12px 14px;font-size:16px}.nfli-shop-inline-suggestions{display:none;position:absolute;left:0;right:auto;top:calc(100% + 6px);z-index:9999;width:max(100%,360px);max-width:min(96vw,520px);background:#fff !important;border:1px solid #d1d5db;border-radius:14px;box-shadow:0 12px 28px rgba(15,23,42,.12);max-height:260px;overflow:auto;-webkit-overflow-scrolling:touch;padding:8px 0}.nfli-shop-name-wrap.is-open .nfli-shop-inline-suggestions{display:block !important}.nfli-shop-inline-suggestions *{float:none !important}.nfli-shop-inline-item,.nfli-shop-inline-suggestions .nfli-shop-inline-item,.nfli-shop-inline-suggestions button.nfli-shop-inline-item{display:block !important;width:100% !important;max-width:none !important;text-align:left !important;background:transparent !important;border:0 !important;box-shadow:none !important;border-radius:0 !important;padding:14px 16px !important;margin:0 !important;font-size:16px;line-height:1.4;color:#111 !important;white-space:normal;word-break:break-word;-webkit-appearance:none;appearance:none;clear:both}.nfli-shop-inline-item + .nfli-shop-inline-item{border-top:1px solid #eef2f7}.nfli-shop-inline-item:hover,.nfli-shop-inline-item:active,.nfli-shop-inline-item:focus{background:#f8fafc !important;color:#111 !important;outline:none}
.nfli-shop-row .nfli-shop-qty{text-align:center}
.nfli-shop-del{padding:10px 0;width:44px;min-width:44px;border-radius:12px}

@media(max-width:640px){
  .nfli-shop-row{grid-template-columns:minmax(0,1fr) 48px 96px 40px;gap:6px}
  .nfli-shop-row input,.nfli-shop-row select{padding:9px 8px;font-size:14px}
  .nfli-shop-row .nfli-shop-name{padding-right:40px}
  .nfli-shop-pick-btn{right:4px;width:30px;height:30px;font-size:14px}
  .nfli-shop-inline-suggestions{left:0;right:auto;width:max(100%,320px);max-width:min(96vw,520px);max-height:36vh;border-radius:12px}
  .nfli-shop-inline-item{padding:10px 12px;font-size:15px;line-height:1.3}
  .nfli-shop-del{width:40px;min-width:40px;border-radius:12px}
  .nfli-actions{gap:8px}
  .nfli-actions .nfli-btn{padding:8px 10px;font-size:14px}
}

/* "Listi" (lesanlegur textalisti fyrir innkaup) */
.nfli-listview{display:flex;flex-direction:column;gap:8px}
.nfli-list-line{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--nfli-border);border-radius:12px;background:#fff}
.nfli-list-line .name{font-weight:700;color:#111}
.nfli-list-line .qty{white-space:nowrap;font-weight:700;color:#111}

.nfli-muted{color:var(--nfli-muted)}
.nfli-alert{border:1px solid rgba(15,23,42,.12);border-left:6px solid var(--nfli-accent);border-radius:14px;padding:10px 12px;margin:10px 0;color:var(--nfli-ink);background:#fff}

.nfli-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:10px}
@media(min-width:880px){.nfli-grid{grid-template-columns:1fr 1fr 1fr}}
.nfli-box{border:1px solid var(--nfli-border);border-radius:14px;padding:12px}
.nfli-box h3{margin:0 0 6px;font-size:18px}

.nfli-subhead{margin-top:14px;font-weight:900}

/* Modal */
.nfli-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;z-index:9999;padding:14px;align-items:center;justify-content:center}
.nfli-modal.is-open{display:flex}
.nfli-modal-sheet{background:#fff;border-radius:16px;max-width:760px;width:100%;max-height:calc(100vh - 28px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 60px rgba(0,0,0,.35)}
.nfli-modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--nfli-border)}
.nfli-modal-title{font-weight:900;font-size:20px}
.nfli-modal-body{padding:12px 14px;overflow:auto;-webkit-overflow-scrolling:touch;flex:1}

/* Lyklaborð á síma: tryggja að hægt sé að skruna framhjá botni þegar keyboard er opið. */
@media(max-width:640px){
  .nfli-modal-body{padding-bottom:calc(14px + env(safe-area-inset-bottom) + 380px)}
}

.nfli-asset-results{margin-top:10px;border:1px solid var(--nfli-border);border-radius:14px;overflow:hidden}
.nfli-asset-row{display:flex;gap:10px;align-items:center;padding:10px 12px;border-top:1px solid var(--nfli-border)}
.nfli-asset-row:first-child{border-top:none}
.nfli-asset-row input{width:auto}

.nfli-footer-actions{margin-top:14px}
.nfli-footer-actions .nfli-btn{flex:0 0 auto}

/* Mobile: make panels comfortable */
@media(max-width:520px){
  .nfli-wrap{padding:12px 10px}
  .nfli-topbar{padding:12px 14px 0}
  .nfli-brand{min-width:0}
  .nfli-user{width:100%;align-items:flex-start}
  .nfli-user-meta{text-align:left;max-width:none}
  .nfli-user-actions{width:100%;justify-content:flex-start}
  .nfli-panel-head{flex-direction:column;align-items:stretch}
  .nfli-panel-head h2{font-size:var(--nfli-h1-mobile)}
  .nfli-actions{width:100%;justify-content:flex-start}
  .nfli-actions .nfli-btn{flex:1}
  .nfli-row{flex-direction:column;align-items:stretch}
  .nfli-row > *{flex:auto}
  .nfli-modal{padding:0;align-items:stretch}
  .nfli-modal-sheet{width:100%;height:100vh;max-height:100vh;border-radius:0}
}

/* iOS / modern browsers: use dynamic viewport units so modals behave when the keyboard opens */
@supports(height: 100dvh){
  .nfli-modal-sheet{max-height:calc(100dvh - 28px)}
  @media(max-width:520px){
    .nfli-modal-sheet{height:100dvh;max-height:100dvh}
  }
}

/*
  Modal stacking:
  When a confirm/edit dialog is opened from inside another modal (e.g. delete from "Breyta verkefni"),
  it must appear above the task modal. We raise the edit-modal above the task-modal.
*/
#nfli-task-modal{z-index:15000}
/* Eyða/staðfesting innan úr verkefnaglugga (Safari/iOS): tryggja að edit-modal sé alltaf ofan á. */
#nfli-edit-modal{z-index:50000 !important}
#nfli-edit-modal .nfli-modal-sheet{position:relative; z-index:50001}

/* Photos */
.nfli-photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px}
.nfli-photo-item{position:relative;border:1px solid var(--nfli-border);border-radius:12px;overflow:hidden;background:#fff}
.nfli-photo-item img{width:100%;height:90px;object-fit:cover;display:block}
.nfli-photo-item button{position:absolute;top:6px;right:6px;border:0;background:rgba(0,0,0,.6);color:#fff;width:26px;height:26px;border-radius:999px;cursor:pointer;line-height:26px;padding:0}
.nfli-photo-item a{display:block}

/* Thumbnails & profile grids */
.nfli-thumb{width:48px;height:48px;object-fit:cover;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#fff;display:block}
.nfli-thumb--empty{width:48px;height:48px;border-radius:10px;border:1px dashed rgba(0,0,0,.15);background:rgba(0,0,0,.02)}

/* Inventory picker: use custom button on small screens (native select can't show images) */
.nfli-inv-pick-wrap{width:100%}
.nfli-inv-pick-btn{width:100%;justify-content:space-between;gap:10px}
.nfli-inv-pick-btn .nfli-thumb{width:34px;height:34px;border-radius:8px}
@media (max-width:720px){
  .nfli-inv-native{display:none!important}
  .nfli-inv-pick-btn{display:flex!important}
}
@media (min-width:721px){
  .nfli-inv-pick-btn{display:none}
}

.nfli-picker-search{width:100%;margin-bottom:10px}
.nfli-picker-list .nfli-item{cursor:pointer}
.nfli-left-with-thumb{display:flex;gap:10px;align-items:center;min-width:0}
.nfli-linklike{background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:2px}

.nfli-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.nfli-photo{position:relative}
.nfli-photo-btn{width:100%;border:0;padding:0;background:none;cursor:pointer}
.nfli-photo-btn img{width:100%;height:110px;object-fit:cover;border-radius:12px;border:1px solid rgba(0,0,0,.08);background:#fff}
.nfli-photo-del{position:absolute;left:8px;bottom:8px;padding:6px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:#fff;color:#b40028;font-size:12px}

/* Inventory list: photo buttons must behave like thumbnails (not full-width grid photos).
   The inventory UI reuses .nfli-photo-btn for tap-to-view, so we override it inside list rows.
   Fixes: huge images + broken row height in Lager list. */
.nfli-item[data-inv-id] .nfli-photo-btn{
  width:auto;
  display:inline-block;
}
.nfli-item[data-inv-id] .nfli-photo-btn img{
  width:48px;
  height:48px;
  border-radius:10px;
}
.nfli-item[data-inv-id] .nfli-left-with-thumb{
  align-items:flex-start;
}
/* Allow long inventory names to wrap (tasks can stay single-line with ellipsis). */
.nfli-item[data-inv-id] .title{
  white-space:normal;
}
.nfli-item[data-inv-id] .meta{
  white-space:normal;
}


.nfli-hidden-by-perm{display:none !important;}

#nfli-app, .nfli-shell, .nfli-topbar, .nfli-tabs, .nfli-body{max-width:100%;}
.nfli-shell{overflow-x:hidden;}
@media(max-width:640px){.nfli-wrap{padding-left:10px;padding-right:10px;}}


/* v0.12.13.80: use full mobile viewport width more aggressively */
body.nfli-app-page .site,
body.nfli-app-page #page,
body.nfli-app-page main,
body.nfli-app-page .content-area,
body.nfli-app-page .site-main,
body.nfli-app-page article,
body.nfli-app-page .entry-content,
body.nfli-app-page .entry,
body.nfli-app-page .post,
body.nfli-app-page .ast-container,
body.nfli-app-page .ast-plain-container,
body.nfli-app-page .ast-separate-container,
body.nfli-app-page .inside-article,
body.nfli-app-page .elementor,
body.nfli-app-page .elementor-section-wrap,
body.nfli-app-page .elementor-widget-wrap,
body.nfli-app-page .elementor-widget-container{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

#nfli-app.nfli-wrap{max-width:none !important;width:100% !important;}

@media (max-width: 640px){
  html,body{width:100%;max-width:100%;overflow-x:hidden;}
  #nfli-app.nfli-wrap{padding:2px 0 calc(8px + env(safe-area-inset-bottom)) !important;}
  #nfli-app .nfli-shell{border-radius:12px !important;margin:0 !important;}
  #nfli-app .nfli-topbar{padding:8px 6px 0 !important;}
  #nfli-app .nfli-tabs{padding:8px 6px 4px !important;gap:6px !important;}
  #nfli-app .nfli-body{padding:8px 6px !important;}
  #nfli-app .nfli-headercard{padding:8px !important;}
  #nfli-app .nfli-panel-head{gap:8px !important;}
  #nfli-app .nfli-list{border-radius:14px !important;}
}

/* v0.12.13.81: use nearly full screen width on mobile */
@media (max-width: 640px){
  body.nfli-app-page .site,
  body.nfli-app-page #page,
  body.nfli-app-page .site-content,
  body.nfli-app-page .content-area,
  body.nfli-app-page .site-main,
  body.nfli-app-page .entry-content,
  body.nfli-app-page .inside-article,
  body.nfli-app-page .ast-container,
  body.nfli-app-page .ast-container > *,
  body.nfli-app-page .wp-block-group,
  body.nfli-app-page .elementor,
  body.nfli-app-page .elementor-section,
  body.nfli-app-page .elementor-container,
  body.nfli-app-page .elementor-column,
  body.nfli-app-page .elementor-widget-wrap,
  body.nfli-app-page .elementor-widget-container{
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    max-width:none !important;
    width:100% !important;
  }
}
