:root{--vp-bg:#f2f3f5;--vp-surface:#fff;--vp-text:#121417;--vp-muted:#5c6570;--vp-line:#e4e6ea;--vp-accent:#1f6feb;--vp-accent-hover:#1858c4;--vp-danger-bg:#fdeceb;--vp-danger-text:#8a1f1b;--vp-ok-bg:#eaf7ee;--vp-ok-text:#1d5c2e;--vp-radius:14px;--vp-shadow:0 10px 28px rgba(16,24,40,.07);--vp-safe-top:env(safe-area-inset-top,0px);--vp-safe-right:env(safe-area-inset-right,0px);--vp-safe-bottom:env(safe-area-inset-bottom,0px);--vp-safe-left:env(safe-area-inset-left,0px);--vp-topbar-h:3.75rem;--vp-tabbar-h:4.25rem;--vp-touch:2.75rem}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body.vagtplan-portal-app{background:var(--vp-bg);color:var(--vp-text);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.45;margin:0;min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);overscroll-behavior:none}body.vagtplan-portal-app .cookie,body.vagtplan-portal-app .cookie-trigger{display:none!important}.vagtplan-portal-shell{align-items:stretch;display:flex;height:100vh;height:100dvh;justify-content:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:0}.vagtplan-portal{background:var(--vp-surface);margin:0;max-width:28rem;padding:1.5rem 1.25rem calc(1.5rem + var(--vp-safe-bottom));width:100%}.vagtplan-portal--login{display:flex;flex-direction:column;justify-content:center;min-height:100vh;min-height:100dvh;padding-left:max(1.25rem,var(--vp-safe-left));padding-right:max(1.25rem,var(--vp-safe-right));padding-top:calc(1.5rem + var(--vp-safe-top))}.vagtplan-portal--app{background:var(--vp-bg);display:flex;flex-direction:column;height:100%;max-width:40rem;min-height:0;overflow:hidden;padding:0}.vagtplan-portal-brand{margin-bottom:1.75rem;text-align:center}.vagtplan-portal-brand--compact{align-items:center;display:flex;gap:.75rem;margin:0;min-width:0;text-align:left}.vagtplan-portal-brand__text{min-width:0}.vagtplan-portal-logo{display:flex;justify-content:center;margin-bottom:1.15rem}.vagtplan-portal-brand--compact .vagtplan-portal-logo{flex-shrink:0;margin:0}.vagtplan-portal-logo__img{display:block;height:auto;max-height:56px;max-width:168px;object-fit:contain;width:auto}.vagtplan-portal-brand--compact .vagtplan-portal-logo__img{max-height:32px;max-width:84px}.vagtplan-portal-sitename{font-size:1.2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .75rem}.vagtplan-portal-brand--compact .vagtplan-portal-sitename{margin:0}.vagtplan-portal-title{font-size:1.45rem;font-weight:700;letter-spacing:-.03em;margin:0 0 .35rem}.vagtplan-portal-brand--compact .vagtplan-portal-title{font-size:1.05rem;line-height:1.2;margin:0}.vagtplan-portal-lead,.vagtplan-portal-welcome{color:var(--vp-muted);font-size:.95rem;margin:0}.vagtplan-portal-brand--compact .vagtplan-portal-welcome{font-size:.8rem;font-weight:500;line-height:1.2;margin-bottom:.1rem}.vagtplan-portal-topbar{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:hsla(0,0%,100%,.92);border-bottom:1px solid var(--vp-line);display:flex;flex-shrink:0;gap:.75rem;justify-content:space-between;min-height:var(--vp-topbar-h);padding:calc(.65rem + var(--vp-safe-top)) max(1rem,var(--vp-safe-right)) .65rem max(1rem,var(--vp-safe-left));position:sticky;top:0;z-index:20}.vagtplan-portal-logout{flex-shrink:0;margin:0}.vagtplan-portal-logout__btn{appearance:none;background:transparent;border:0;color:var(--vp-accent);cursor:pointer;font:inherit;font-size:.95rem;font-weight:600;min-height:var(--vp-touch);padding:.55rem .35rem}.vagtplan-portal-logout__btn:focus,.vagtplan-portal-logout__btn:hover{color:var(--vp-accent-hover);text-decoration:underline;text-underline-offset:2px}.vagtplan-portal-main{flex:1 1 auto;min-height:0;overflow:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:1rem max(1rem,var(--vp-safe-right)) 1.25rem max(1rem,var(--vp-safe-left));padding-bottom:calc(1.25rem + var(--vp-tabbar-h) + var(--vp-safe-bottom))}.vagtplan-portal-error,.vagtplan-portal-notice{border-radius:12px;font-size:.95rem;margin:0 0 .85rem;padding:.85rem .95rem}.vagtplan-portal-notice{background:var(--vp-ok-bg);color:var(--vp-ok-text)}.vagtplan-portal-error{background:var(--vp-danger-bg);color:var(--vp-danger-text)}.vagtplan-portal-field{margin:0 0 1.1rem}.vagtplan-portal-field label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.4rem}.vagtplan-portal-login-form input[type=password],.vagtplan-portal-login-form input[type=tel],.vagtplan-portal-login-form input[type=text]{background:#fff;border:1px solid #c8ccd1;border-radius:12px;color:var(--vp-text);font:inherit;font-size:1.05rem;min-height:3.15rem;padding:.85rem .95rem;width:100%}.vagtplan-portal-login-form input:focus{border-color:var(--vp-accent);outline:2px solid var(--vp-accent);outline-offset:1px}.vagtplan-portal-button{align-items:center;background:var(--vp-accent);border:1px solid var(--vp-accent);border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-size:1.05rem;font-weight:650;justify-content:center;min-height:var(--vp-touch);padding:.85rem 1.2rem;text-decoration:none;-webkit-user-select:none;user-select:none}.vagtplan-portal-button:focus,.vagtplan-portal-button:hover{background:var(--vp-accent-hover);border-color:var(--vp-accent-hover);color:#fff}.vagtplan-portal-button--block{margin-top:.5rem;min-height:3.25rem;width:100%}.vagtplan-portal-button--secondary{background:#fff;border-color:#c8ccd1;color:var(--vp-text);font-weight:500}.vagtplan-portal-button--secondary:focus,.vagtplan-portal-button--secondary:hover{background:var(--vp-bg);border-color:#9aa1a9;color:var(--vp-text)}.vagtplan-portal-tabs{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:hsla(0,0%,100%,.96);border-top:1px solid var(--vp-line);bottom:0;box-shadow:0 -8px 24px rgba(16,24,40,.05);display:flex;gap:0;left:50%;margin:0;max-width:40rem;padding:.35rem max(.5rem,var(--vp-safe-left)) calc(.35rem + var(--vp-safe-bottom)) max(.5rem,var(--vp-safe-right));position:fixed;transform:translateX(-50%);width:100%;z-index:30}.vagtplan-portal-tab{align-items:center;border-radius:12px;color:var(--vp-muted);display:inline-flex;flex:1;font-size:.92rem;font-weight:650;justify-content:center;min-height:3.35rem;padding:.55rem .65rem;text-decoration:none;-webkit-user-select:none;user-select:none}.vagtplan-portal-tab:focus,.vagtplan-portal-tab:hover{color:var(--vp-text)}.vagtplan-portal-tab.is-active{background:rgba(31,111,235,.1);color:var(--vp-accent)}.vagtplan-portal-empty{color:var(--vp-muted);font-size:1rem;margin:0;padding:3rem .75rem;text-align:center}.vagtplan-portal-list{display:flex;flex-direction:column;gap:.75rem}.vagtplan-portal-card{background:var(--vp-surface);border:1px solid var(--vp-line);border-radius:var(--vp-radius);box-shadow:0 1px 2px rgba(16,24,40,.03);padding:1.05rem 1.1rem}.vagtplan-portal-card__header{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem .65rem;justify-content:space-between;margin-bottom:.3rem}.vagtplan-portal-card__date{font-size:1.12rem;letter-spacing:-.02em;text-transform:capitalize}.vagtplan-portal-card__products{font-size:1.02rem;font-weight:650;margin:0 0 .7rem}.vagtplan-portal-card__place{background:var(--vp-bg);border-radius:10px;margin:0 0 .75rem;padding:.65rem .75rem}.vagtplan-portal-card__customer,.vagtplan-portal-card__location,.vagtplan-portal-card__phone{font-size:.94rem;line-height:1.4;margin:0}.vagtplan-portal-card__customer{color:var(--vp-text);font-weight:650}.vagtplan-portal-card__location,.vagtplan-portal-card__phone{color:var(--vp-muted)}.vagtplan-portal-card__customer+.vagtplan-portal-card__location,.vagtplan-portal-card__customer+.vagtplan-portal-card__phone,.vagtplan-portal-card__location+.vagtplan-portal-card__phone{margin-top:.2rem}.vagtplan-portal-card__phone a{align-items:center;color:var(--vp-accent);display:inline-flex;font-weight:600;min-height:1.75rem;text-decoration:none}.vagtplan-portal-card__phone a:focus,.vagtplan-portal-card__phone a:hover{text-decoration:underline;text-underline-offset:2px}.vagtplan-portal-card__meta{color:var(--vp-text);display:grid;font-size:.95rem;gap:.35rem;grid-template-columns:1fr;list-style:none;margin:0;padding:.15rem 0}.vagtplan-portal-card__meta li{align-items:baseline;border-bottom:1px solid var(--vp-line);display:flex;gap:.75rem;justify-content:space-between;margin:0;padding:.35rem 0}.vagtplan-portal-card__meta li:last-child{border-bottom:0;padding-bottom:0}.vagtplan-portal-card__meta-label{color:var(--vp-muted);font-size:.88rem;font-weight:500}.vagtplan-portal-card__meta-value{font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:-.01em}.vagtplan-portal-card__staff{color:var(--vp-muted);font-size:.9rem;margin:.7rem 0 0}.vagtplan-portal-card__note{background:#fff8e8;border-radius:10px;color:#5c4a1a;font-size:.92rem;margin:.75rem 0 0;padding:.7rem .8rem}.vagtplan-badge{background:#eef0f2;border-radius:999px;color:var(--vp-text);display:inline-block;font-size:.72rem;font-weight:650;line-height:1.35;padding:.2em .6em;white-space:nowrap}.vagtplan-badge--not-required{background:#eef0f2;color:var(--vp-muted)}.vagtplan-badge--missing{background:var(--vp-danger-bg);color:var(--vp-danger-text)}.vagtplan-badge--partial{background:#fff6e5;color:#7a4d00}.vagtplan-badge--full{background:var(--vp-ok-bg);color:var(--vp-ok-text)}.vagtplan-badge--cancelled{background:#eef0f2;color:var(--vp-muted);text-decoration:line-through}@media(min-width:720px){.vagtplan-portal-shell{align-items:flex-start;height:auto;min-height:100dvh;overflow:visible;padding:1.5rem 1rem 2rem}.vagtplan-portal--login{border:1px solid var(--vp-line);border-radius:var(--vp-radius);box-shadow:var(--vp-shadow);margin-top:2rem;min-height:auto;padding:2rem 1.75rem}.vagtplan-portal--app{background:var(--vp-bg);border:1px solid var(--vp-line);border-radius:18px;box-shadow:var(--vp-shadow);height:calc(100dvh - 3rem);min-height:0;overflow:hidden}.vagtplan-portal-topbar{border-radius:18px 18px 0 0;padding-left:1.15rem;padding-right:1.15rem;padding-top:.85rem}.vagtplan-portal-main{padding-bottom:1.25rem}.vagtplan-portal-tabs{border-radius:0 0 18px 18px;bottom:auto;box-shadow:none;flex-shrink:0;left:auto;margin-top:auto;position:relative;transform:none}}
