@import url("shelter-brand/tokens.css");
@font-face{font-family:Tajawal;src:url("shelter-brand/Tajawal-Arabic-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Tajawal;src:url("shelter-brand/Tajawal-Arabic-500.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Tajawal;src:url("shelter-brand/Tajawal-Arabic-700.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Tajawal;src:url("shelter-brand/Tajawal-Arabic-800.woff2") format("woff2");font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:Poppins;src:url("shelter-brand/Poppins-Latin-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url("shelter-brand/Poppins-Latin-500.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url("shelter-brand/Poppins-Latin-600.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url("shelter-brand/Poppins-Latin-700.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Poppins;src:url("shelter-brand/Poppins-Latin-800.woff2") format("woff2");font-style:normal;font-weight:800;font-display:swap}

:root{
  --sh-color-background-canvas:#fff;
  --sh-color-background-subtle:#f4f4f5;
  --sh-color-surface-default:#fff;
  --sh-color-text-primary:#1d1e1f;
  --sh-color-text-secondary:#58595b;
  --sh-color-border-default:#ddddde;
  --sh-color-border-input:#78797b;
  --sh-color-action-primary-bg:#1d1e1f;
  --sh-color-action-primary-text:#fff;
  --sh-color-action-secondary-hover:#ebebec;
  --sh-color-focus-ring:#1d1e1f;
  --sh-color-success-bg:#ebf8ec;
  --sh-color-success-text:#21763c;
  --sh-color-error-bg:#ffefec;
  --sh-color-error-text:#9c443c;
  --sh-color-scrim:rgba(0,0,0,.48);
  --sh-space-4:4px;--sh-space-8:8px;--sh-space-12:12px;
  --sh-space-16:16px;--sh-space-20:20px;--sh-space-24:24px;--sh-space-32:32px;
  --sh-corner-md:10px;--sh-corner-lg:16px;--sh-corner-pill:999px;
  --sh-control-min:44px;--sh-container:1050px;
  font-family:Poppins,Tajawal,Arial,sans-serif;
  color:var(--sh-color-text-primary);
  background:var(--sh-color-background-canvas);
  font-size:16px;
}
*{box-sizing:border-box}
body{margin:0;line-height:1.75}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.6}
:focus-visible{outline:2px solid var(--sh-color-focus-ring);outline-offset:2px}
input,select,textarea{
  width:100%;min-height:var(--sh-control-min);border:1px solid var(--sh-color-border-input);
  background:var(--sh-color-surface-default);border-radius:var(--sh-corner-md);
  padding:8px 12px;color:var(--sh-color-text-primary)
}
label{display:grid;gap:var(--sh-space-4);font-size:14px;font-weight:700;color:var(--sh-color-text-primary)}
form{display:grid;gap:var(--sh-space-16)}
.loading{padding:64px;text-align:center}
.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:var(--sh-space-20);background:var(--sh-color-background-subtle)}
.login-card,.panel,.card,.metric{background:var(--sh-color-surface-default);border:1px solid var(--sh-color-border-default);border-radius:var(--sh-corner-lg)}
.login-card{width:min(100%,420px);padding:var(--sh-space-32)}
.mark{width:48px;height:48px;flex:none;display:grid;place-items:center}
.mark img{display:block;width:100%;height:100%;object-fit:contain}
.login-card .mark{width:64px;height:64px}
.login-card h1{font-size:28px;line-height:1.35;margin:var(--sh-space-24) 0 var(--sh-space-4)}
.login-card form{margin-top:var(--sh-space-24)}
.subtle,.hint{color:var(--sh-color-text-secondary);font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sh-space-8);border:1px solid transparent;border-radius:var(--sh-corner-md);min-height:var(--sh-control-min);padding:8px 16px;font-weight:700;background:var(--sh-color-action-primary-bg);color:var(--sh-color-action-primary-text);line-height:1.4;transition:background-color .12s ease,border-color .12s ease}
.btn:hover{background:var(--sh-color-text-secondary)}
.btn.secondary{background:var(--sh-color-background-subtle);color:var(--sh-color-text-primary)}
.btn.secondary:hover{background:var(--sh-color-action-secondary-hover)}
.btn.outline{background:var(--sh-color-surface-default);color:var(--sh-color-text-primary);border-color:var(--sh-color-border-default)}
.btn.outline:hover{background:var(--sh-color-background-subtle)}
.btn.small{min-height:var(--sh-control-min);font-size:14px;padding:8px 12px}
.btn.full{width:100%}
.shell{max-width:var(--sh-container);margin:auto;padding:var(--sh-space-24) var(--sh-space-20) 100px}
.top,.row,.card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sh-space-12)}
.top{padding-bottom:var(--sh-space-20);border-bottom:1px solid var(--sh-color-border-default)}
.brand{display:flex;gap:var(--sh-space-12);align-items:center}
.brand-title{font-weight:700;font-size:20px;line-height:1.4}
.brand-small{font-size:13px;color:var(--sh-color-text-secondary)}
.user-badge{font-size:13px;color:var(--sh-color-text-secondary)}
.top-brand{display:flex;align-items:center;gap:var(--sh-space-12);min-width:0}
.navigation-toggle,.navigation-close{width:44px;height:44px;min-width:44px;border:1px solid var(--sh-color-border-default);border-radius:var(--sh-corner-md);background:var(--sh-color-surface-default);color:var(--sh-color-text-primary);display:grid;place-items:center}
.navigation-toggle:hover,.navigation-close:hover{background:var(--sh-color-background-subtle)}
.navigation-close{font-size:26px;line-height:1}
body.navigation-open{overflow:hidden}
body.navigation-open #ring-alert{display:none}
.navigation-backdrop{position:fixed;inset:0;background:var(--sh-color-scrim);z-index:90}
.side-navigation{position:fixed;inset-block:0;inset-inline-start:0;width:min(86vw,360px);z-index:91;background:var(--sh-color-surface-default);box-shadow:0 0 28px #0003;display:flex;flex-direction:column;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));max-height:100dvh}
.side-navigation[hidden],.navigation-backdrop[hidden]{display:none}
.navigation-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 16px;border-bottom:1px solid var(--sh-color-border-default)}
.navigation-head strong{display:block;font-size:20px;line-height:1.4}
.navigation-user{display:block;color:var(--sh-color-text-secondary);font-size:13px;overflow-wrap:anywhere}
.navigation-ring{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--sh-color-border-default)}
.navigation-ring[hidden]{display:none}
.navigation-links{display:flex;flex-direction:column;gap:4px;overflow-y:auto;overscroll-behavior:contain;padding:12px 0;flex:1;min-height:0}
.navigation-scroll-hint{margin:0;padding:4px 12px;color:var(--sh-color-text-secondary);font-size:12px;line-height:1.4}
.navigation-scroll-hint[hidden]{display:none}
.navigation-links button,.navigation-footer button{width:100%;min-height:48px;text-align:start;border:0;border-radius:var(--sh-corner-md);padding:8px 12px;background:transparent;color:var(--sh-color-text-primary);font-size:15px;font-weight:700}
.navigation-links button:hover,.navigation-footer button:hover{background:var(--sh-color-background-subtle)}
.navigation-links button.active,.navigation-footer button.active{background:var(--sh-color-action-primary-bg);color:var(--sh-color-action-primary-text)}
.navigation-footer{display:grid;gap:4px;padding-top:12px;border-top:1px solid var(--sh-color-border-default)}
.navigation-footer .navigation-logout{color:var(--sh-color-error-text)}
.notification-button{position:relative;min-width:44px;padding:8px!important}
.notification-count{position:absolute;top:0;right:0;min-width:19px;height:19px;border-radius:var(--sh-corner-pill);padding:0 4px;background:var(--sh-color-error-text);color:#fff;font:700 11px/19px Poppins,Tajawal,sans-serif;text-align:center}
.notification-count[hidden]{display:none}
.notification-item{padding:var(--sh-space-12);border:1px solid var(--sh-color-border-default);border-radius:var(--sh-corner-md);margin-bottom:var(--sh-space-8)}
.notification-item.unread{border-inline-start:4px solid var(--sh-color-text-primary)}
.notification-item p{margin:0 0 var(--sh-space-8);overflow-wrap:anywhere}
.notification-actions{display:flex;gap:var(--sh-space-8);flex-wrap:wrap;margin:var(--sh-space-12) 0}
.ring-alert,.ring-inline{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #d9d2c9;box-shadow:0 6px 24px #0002}
.ring-alert{position:fixed;z-index:999;bottom:max(20px,env(safe-area-inset-bottom));left:16px;right:16px;max-width:520px;margin:auto}
.ring-inline{position:sticky;top:0;z-index:2;margin-bottom:16px;box-shadow:0 4px 16px #0001;background:#faf8f5}
.ring-details{flex:1;min-width:0;line-height:1.5}
.ring-details strong{display:block;font-size:15px}
.ring-remaining{display:block;font-size:13px;color:#625b54;font-variant-numeric:tabular-nums}
.ring-track{height:5px;margin-top:8px;background:#e7e1da;border-radius:99px;overflow:hidden;direction:rtl}
.ring-progress{width:100%;height:100%;background:#b87947;border-radius:99px;transition:width .25s linear}
.ring-alert[hidden],#ring-stop-modal[hidden]{display:none}
.tabs{display:flex;gap:var(--sh-space-4);overflow:auto;padding:var(--sh-space-16) 0 var(--sh-space-4);scrollbar-width:thin}
.tabs button{white-space:nowrap;background:transparent;color:var(--sh-color-text-secondary);border:0;min-height:var(--sh-control-min);padding:8px 16px;border-radius:var(--sh-corner-md);font-size:14px;font-weight:700}
.tabs button:hover{background:var(--sh-color-background-subtle)}
.tabs button.active{background:var(--sh-color-action-primary-bg);color:var(--sh-color-action-primary-text)}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sh-space-16);margin:var(--sh-space-24) 0 var(--sh-space-20)}
.eyebrow{font-size:13px;font-weight:700;color:var(--sh-color-text-secondary)}
.page-head h1{font-size:28px;line-height:1.4;margin:var(--sh-space-4) 0}
.page-head p{color:var(--sh-color-text-secondary);margin:0;font-size:14px}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sh-space-12);margin-bottom:var(--sh-space-24)}
.metric{padding:var(--sh-space-20)}
.metric .number{font-size:28px;line-height:1.4;font-weight:700}
.metric .label{font-size:13px;color:var(--sh-color-text-secondary)}
.section-title{display:flex;justify-content:space-between;align-items:center;gap:var(--sh-space-12);margin:var(--sh-space-24) 0 var(--sh-space-12)}
.section-title h2,.panel h2{font-size:18px;margin:0;line-height:1.4}
.stack{display:grid;gap:var(--sh-space-12)}
.card,.panel{padding:var(--sh-space-20)}
.card-title{font-weight:700}
.card-meta{font-size:14px;color:var(--sh-color-text-secondary);margin-top:var(--sh-space-4)}
.card-actions{display:flex;gap:var(--sh-space-8);flex-wrap:wrap;margin-top:var(--sh-space-16)}
.pill{display:inline-block;border-radius:var(--sh-corner-pill);padding:4px 12px;background:var(--sh-color-background-subtle);color:var(--sh-color-text-primary);font-size:13px;font-weight:700;white-space:nowrap}
.pill.green{background:var(--sh-color-success-bg);color:var(--sh-color-success-text)}
.pill.red{background:var(--sh-color-error-bg);color:var(--sh-color-error-text)}
.empty{text-align:center;padding:var(--sh-space-32) var(--sh-space-20);background:var(--sh-color-surface-default);border:1px dashed var(--sh-color-border-default);border-radius:var(--sh-corner-lg);color:var(--sh-color-text-secondary);font-size:14px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sh-space-16)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sh-space-12)}
.form-grid .wide{grid-column:1/-1}
.product-line{display:grid;grid-template-columns:minmax(0,1fr) 95px;align-items:center;gap:var(--sh-space-12);padding:var(--sh-space-12) 0;border-bottom:1px solid var(--sh-color-border-default)}
.product-line small{display:block;color:var(--sh-color-text-secondary);font-size:13px}
.product-line input{padding:8px}
.divider{height:1px;background:var(--sh-color-border-default);margin:var(--sh-space-16) 0}
.amount{font-weight:700;direction:ltr;display:inline-block}
.help{padding:var(--sh-space-12);border-radius:var(--sh-corner-md);background:var(--sh-color-background-subtle);color:var(--sh-color-text-secondary);font-size:14px}
.forecast-note{margin-bottom:var(--sh-space-16)}
.forecast-filter{padding:var(--sh-space-16)}
.forecast-filter p{margin:var(--sh-space-8) 0 0}
.forecast-card .card-top{align-items:flex-start}
.forecast-suggestion{display:flex;align-items:center;justify-content:space-between;gap:var(--sh-space-12);margin:var(--sh-space-16) 0;padding:var(--sh-space-12) var(--sh-space-16);background:var(--sh-color-background-subtle);border-radius:var(--sh-corner-md);font-size:14px}
.forecast-suggestion strong{font-size:27px;line-height:1.4;white-space:nowrap}
.forecast-suggestion strong small{font-size:13px;font-weight:400}
.forecast-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sh-space-12)}
.forecast-stats div{display:grid;gap:2px;min-width:0}
.forecast-stats span{font-size:13px;color:var(--sh-color-text-secondary)}
.forecast-stats b{font-size:15px}
.forecast-reason{margin:var(--sh-space-12) 0 0;color:var(--sh-color-text-secondary);font-size:14px}
.forecast-warnings{margin:var(--sh-space-12) 0 0;padding-inline-start:20px;color:var(--sh-color-text-secondary);font-size:13px}
.workshop-stock-line{grid-template-columns:minmax(0,1fr) auto}
.workshop-stock-line .row{justify-content:flex-end;flex-wrap:wrap}
.stock-history-entry{border:1px solid #ddddde;border-radius:10px;background:#fff;overflow:hidden}
.stock-history-entry summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 14px;cursor:pointer;list-style:none}
.stock-history-entry summary::-webkit-details-marker{display:none}
.stock-history-entry summary::after{content:'⌄';font-size:1.15rem;flex:none}
.stock-history-entry[open] summary{border-bottom:1px solid #ddddde}
.stock-history-entry[open] summary::after{content:'⌃'}
.stock-history-entry summary:focus-visible{outline:2px solid #1d1e1f;outline-offset:-3px}
.stock-history-entry summary>span:first-child{min-width:0;overflow-wrap:anywhere}
.stock-history-entry summary .hint{margin:0}
.stock-history-entry>p{margin:12px 14px}
.stock-history-table-wrap{overflow-x:auto}
.stock-history-table{width:100%;border-collapse:collapse;text-align:right;font-size:inherit}
.stock-history-table th,.stock-history-table td{padding:10px 14px;border-bottom:1px solid #ddddde;text-align:right;vertical-align:top}
.stock-history-table thead th{background:#f4f4f5;white-space:nowrap}
.stock-history-table tbody th{font-weight:500;overflow-wrap:anywhere}
.stock-history-table tbody tr:last-child th,.stock-history-table tbody tr:last-child td{border-bottom:0}
@media(max-width:600px){.stock-history-entry summary{flex-wrap:wrap}.stock-history-entry summary .hint{flex-basis:calc(100% - 30px);order:3}.stock-history-entry summary::after{margin-inline-start:auto}.stock-history-table th,.stock-history-table td{padding:9px 10px}}
.workshop-shortage{display:grid;gap:4px;padding:var(--sh-space-12) 0;border-bottom:1px solid var(--sh-color-border-default)}
.workshop-shortage span{font-size:13px;color:var(--sh-color-text-secondary)}
.account-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--sh-space-12);padding:var(--sh-space-16);background:var(--sh-color-background-subtle);border-radius:var(--sh-corner-md);margin-bottom:var(--sh-space-12)}
.account-summary strong{font-size:20px;direction:ltr;unicode-bidi:isolate}
.account-entries{display:grid;gap:var(--sh-space-12);margin:var(--sh-space-16) 0}
.account-entry{padding:var(--sh-space-16);border:1px solid var(--sh-color-border-default);border-radius:var(--sh-corner-md);background:var(--sh-color-surface-default);overflow-wrap:anywhere}
.account-entry-head{display:flex;justify-content:space-between;gap:var(--sh-space-12)}
.account-entry-head small{display:block;color:var(--sh-color-text-secondary);margin-top:var(--sh-space-4)}
.account-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sh-space-12);margin:var(--sh-space-12) 0}
.account-amounts div{display:grid;gap:4px;min-width:0}
.account-amounts span{font-size:12px;color:var(--sh-color-text-secondary)}
.account-amounts b{font-size:14px;overflow-wrap:anywhere}
.ai-disclosure{margin-bottom:var(--sh-space-16)}
.ai-chat{max-width:760px;margin-inline:auto}
.ai-chat-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sh-space-12);margin-bottom:var(--sh-space-16)}
.ai-messages{display:grid;gap:var(--sh-space-12);max-height:50dvh;overflow:auto;margin-bottom:var(--sh-space-16)}
.ai-message{padding:var(--sh-space-12) var(--sh-space-16);border-radius:var(--sh-corner-md);background:var(--sh-color-background-subtle);overflow-wrap:anywhere}
.ai-message strong{display:block;font-size:13px;margin-bottom:var(--sh-space-4)}
.ai-message div{white-space:pre-wrap}
.ai-message-user{border-inline-start:4px solid var(--sh-color-text-primary)}
.ai-message-assistant{border-inline-start:4px solid #b87947}
.ai-error{padding:var(--sh-space-12);margin-bottom:var(--sh-space-16);border-radius:var(--sh-corner-md);background:var(--sh-color-error-bg);color:var(--sh-color-error-text);overflow-wrap:anywhere}
.ai-chat textarea{resize:vertical}
#toast{position:fixed;bottom:var(--sh-space-24);left:50%;transform:translateX(-50%);background:var(--sh-color-action-primary-bg);color:var(--sh-color-action-primary-text);padding:var(--sh-space-12) var(--sh-space-20);border-radius:var(--sh-corner-md);font-size:14px;opacity:0;pointer-events:none;z-index:20;max-width:90%;box-shadow:0 4px 12px rgba(0,0,0,.12)}
#toast.show{opacity:1}
dialog{border:1px solid var(--sh-color-border-default);border-radius:var(--sh-corner-lg);padding:0;width:min(94%,570px);max-height:90dvh;color:var(--sh-color-text-primary);box-shadow:0 16px 48px rgba(0,0,0,.18)}
dialog::backdrop{background:var(--sh-color-scrim)}
.modal-inner{padding:var(--sh-space-24)}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sh-space-12);margin-bottom:var(--sh-space-20)}
.modal-head h2{font-size:20px;margin:0;line-height:1.4}
.close{border:0;background:var(--sh-color-background-subtle);border-radius:var(--sh-corner-md);min-width:var(--sh-control-min);min-height:var(--sh-control-min);font-size:24px;color:var(--sh-color-text-primary)}
.scroll-x{overflow:auto}
table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:14px}
th,td{text-align:right;border-bottom:1px solid var(--sh-color-border-default);padding:var(--sh-space-12) var(--sh-space-8)}
th{color:var(--sh-color-text-secondary);font-size:13px}
.photo{max-width:100%;max-height:250px;border-radius:var(--sh-corner-md)}
.invoice-paper{background:var(--sh-color-surface-default);padding:var(--sh-space-16)}
.invoice-total{font-size:18px;font-weight:700}
@media(max-width:650px){
  .shell{padding:var(--sh-space-16) var(--sh-space-20) 90px}
  .user-badge{display:none}
  .tabs{margin:0 calc(-1 * var(--sh-space-20));padding:var(--sh-space-12) var(--sh-space-20)}
  .tabs button{padding:8px 12px}
  .page-head{margin:var(--sh-space-20) 0 var(--sh-space-16)}
  .page-head h1{font-size:24px}
  .metric{padding:var(--sh-space-12)}
  .metric .number{font-size:22px}
  .grid{grid-template-columns:1fr}
}
@media(max-width:480px){
 .top,.top-brand,.brand,.top>.row{gap:8px}
 .top .brand-small{display:none}
}
@media(max-width:360px){.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.account-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.btn,.ring-progress{transition:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:0s!important;transition-duration:0s!important}.ring-track{display:none}}

/* iPhone Safari zooms text controls smaller than 16px on focus. Keep the
   control text readable even when a parent label or component sets a size. */
@media (max-width: 900px), (hover: none) and (pointer: coarse) {
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  select,
  textarea { font-size: 16px !important; }
}

/* viewport-fit=cover makes landscape content responsible for the cutout. */
.shell,
.login-wrap {
  padding-left: max(var(--sh-space-20), env(safe-area-inset-left, 0px));
  padding-right: max(var(--sh-space-20), env(safe-area-inset-right, 0px));
}
.side-navigation {
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
}
/* Fixed overlays must also remain inside the landscape cutout. The repeated
   class gives these rules precedence over the later widget stylesheet. */
.chat-widget-panel.chat-widget-panel {
  left: max(16px, env(safe-area-inset-left, 0px), calc((100vw - 1010px) / 2));
  max-width: calc(100vw - max(16px, env(safe-area-inset-left, 0px)) - max(16px, env(safe-area-inset-right, 0px)));
  overflow-y: auto;
  overscroll-behavior: contain;
}
.ring-alert.ring-alert {
  left: max(16px, env(safe-area-inset-left, 0px));
  right: max(16px, env(safe-area-inset-right, 0px));
}
@media (max-height: 500px) {
  .chat-widget-panel .chat-widget-header { padding: 8px 12px; }
  .chat-widget-panel .chat-widget-header span { display: none; }
  .chat-widget-panel .chat-widget-disclosure { padding: 4px 12px; }
  .chat-widget-panel .chat-widget-messages { padding: 4px 12px; min-height: 16px; }
  .chat-widget-panel .chat-widget-form { padding: 6px 12px 4px; }
  .chat-widget-panel .chat-widget-form textarea { min-height: 48px; height: 48px; }
  .chat-widget-panel .chat-widget-foot { margin: 2px 12px 6px; }
}
@media print{
  #app,#toast,.no-print,dialog .modal-head,.ring-alert,.ring-inline{display:none!important}
  dialog[open]{position:static;display:block!important;max-height:none;width:100%;box-shadow:none;border:0}
  dialog::backdrop{display:none}
  .modal-inner,.invoice-paper{padding:0}
}
.invoice-pdf-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.invoice-pdf-controls .hint{flex-basis:100%;margin:0}
