/* Installation layer: reuse the operational palette, do not restyle status meanings. */
.cc-tariff-access{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:90;border:1px solid #fff;border-radius:999px;background:#206740;color:white;padding:14px 20px;min-height:48px;font:700 16px system-ui;box-shadow:0 4px 20px #173b2c33;cursor:pointer}
.cc-app{padding-bottom:90px}
.cc-tariff-access,.cc-cash-access{bottom:calc(16px + env(safe-area-inset-bottom) + var(--session-controls-height,0px))!important}
.has-session-controls{padding-bottom:calc(100px + var(--session-controls-height,70px))!important}
.session-controls .session-office{color:#206740;background:#e7f1e4;border-radius:8px;font:600 14px system-ui;padding:8px}
.cc-cash-access{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:90;background:#fff;color:#206740;border:1px solid #206740;border-radius:999px;padding:14px 18px;font:700 15px system-ui;min-height:48px;cursor:pointer}
@media print{.cc-cash-access{display:none!important}}
.cc-tariff-dialog{width:min(680px,calc(100% - 24px));max-height:85dvh;box-sizing:border-box;border:1px solid #dce6df;border-radius:20px;padding:24px;color:#203329;background:#f4f6f2;font:16px/1.5 system-ui}
.cc-tariff-dialog::backdrop{background:#13251db3}
.cc-tariff-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.cc-tariff-dialog h2{margin:0;font-size:24px}.cc-tariff-dialog button{min-height:44px;padding:10px;border:1px solid #c1d0c4;border-radius:10px;background:white;color:#206740;cursor:pointer}
.cc-tariff-dialog label{display:grid;gap:8px;font-weight:650}.cc-tariff-dialog input{width:100%;box-sizing:border-box;font:16px system-ui;padding:14px;border:1px solid #93ad9b;border-radius:12px}
.cc-tariff-dialog article{padding:16px;background:white;border:1px solid #dce6df;border-radius:14px;margin:12px 0}.cc-tariff-dialog h3{margin:0;font-size:17px}.cc-tariff-dialog small{color:#52685b}.cc-tariff-fee{font-size:14px}
@media print{.cc-tariff-access,.cc-tariff-dialog{display:none!important}}
.cc-mobilebar { display:flex; align-items:center; gap:12px; max-width:1504px; margin:16px auto 0; padding:12px 18px; background:var(--cc-surface,#fff); color:var(--cc-ink,#203329); border:1px solid var(--cc-border,#e0e7de); border-radius:16px; font-family:var(--cc-font,system-ui,sans-serif); }
.cc-mobilebar img { display:block; object-fit:contain; border-radius:12px; flex-shrink:0; }
.cc-mobilebar strong,.cc-mobilebar small { display:block; }
.cc-mobilebar strong { font-size:18px; font-weight:750; letter-spacing:-.03em; }
.cc-mobilebar small { color:var(--cc-muted,#69776c); font-size:13px; margin-top:3px; }
.cc-mobilebar a { margin-left:auto; display:flex; align-items:center; min-height:44px; padding:8px 12px; border-radius:10px; color:var(--cc-green,#206740); background:var(--cc-soft,#e7f1e4); font-size:14px; text-decoration:none; }
.cc-connection-notice { margin:12px auto; max-width:1504px; padding:12px 18px; background:#fff4d6; color:#6b4500; border:1px solid #bb923c; border-radius:10px; font:500 15px/1.5 var(--cc-font,system-ui,sans-serif); }
.cc-connection-notice[hidden] { display:none!important; }
.cc-install-page { max-width:780px; margin:32px auto; padding:24px; background:var(--cc-surface,#fff); border:1px solid var(--cc-border,#e0e7de); border-radius:20px; line-height:1.65; }
.cc-install-page h1 { font-size:clamp(26px,5vw,36px); line-height:1.15; }
.cc-install-page h2 { font-size:20px; margin-top:30px; }
.cc-install-page a { text-decoration:underline; }
.cc-install-page .cc-action { display:inline-flex; min-height:44px; align-items:center; padding:10px 18px; margin:8px 8px 0 0; border-radius:12px; background:var(--cc-green,#206740); color:white; text-decoration:none; }
.cc-app :where(input,select,textarea) { scroll-margin-block:100px; }
@media (pointer:coarse) {
  .cc-app :where(button,summary,a.secondary,a.primary) { min-height:44px; touch-action:manipulation; }
  .cc-app :where(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-size:16px; }
}
@media(max-width:1560px) { .cc-mobilebar,.cc-connection-notice { margin-left:16px; margin-right:16px; } }
@media(max-width:760px) {
  .cc-app { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  .cc-mobilebar { margin-top:max(12px,env(safe-area-inset-top)); padding:10px 12px; }
  .cc-mobilebar a { max-width:145px; font-size:13px; line-height:1.3; }
  .cc-install-page { margin:16px; padding:20px; }
}
@media(display-mode:standalone) { .cc-install-link { display:none!important; } }
.cc-standalone .cc-install-link { display:none!important; }
@media print { .cc-mobilebar,.cc-connection-notice { display:none!important; } }
