:root{
    --blue:var(--brand-primary-ui);
    --blue-soft:var(--brand-primary-soft);
    --ink:var(--text-primary);
    --muted:var(--text-secondary);
    --line:var(--border-subtle);
    --surface:var(--surface-primary);
    --bg:var(--surface-secondary);
    --green:var(--status-success);
    --gold:var(--status-warning);
  }

  *{box-sizing:border-box}

  button{
    font:inherit;
  }

  body{
    margin:0;
    min-height:100vh;
    display:grid;
    place-items:center;
    background:var(--surface-tertiary);
    font-family:var(--font-family-base);
    color:var(--ink);
  }

  .screen{
    width:393px;
    height:852px;
    overflow:hidden;
    position:relative;
    background:#F4F6FB;
    box-shadow:var(--shadow-screen);
  }

  .app-preloader{
    position:absolute;
    inset:0;
    z-index:20;
    background:var(--surface-secondary);
    opacity:1;
    visibility:visible;
    transition:
      opacity 520ms var(--ease-standard),
      visibility 520ms var(--ease-standard);
  }

  .app-preloader.is-hidden{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
  }

  .app-preloader--disabled{
    display:none;
  }

  .app-preloader-frame{
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:transparent;
  }

  .screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:270px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 65%,rgba(247,249,252,0)),
      radial-gradient(circle at 86% 22%,color-mix(in srgb, var(--blue) 8%, transparent),transparent 32%);
    z-index:0;
  }

  .content{
    position:relative;
    z-index:2;
    height:100%;
    overflow-y:auto;
    overflow-x:hidden;
    padding:36px 18px 118px;
    background:
      linear-gradient(180deg, #fff 0%, #F4F6FB 100%) top / 100% 760px no-repeat,
      #F4F6FB;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
  }

  .content::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    aspect-ratio:800 / 425;
    background-image:url("../img/bg-kamaz50.png");
    background-repeat:no-repeat;
    background-position:top center;
    background-size:100% auto;
    pointer-events:none;
    z-index:0;
  }

  .content::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .topbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:0 6px;
    animation: fadeUp .55s .04s both;
  }

  .logo{
    display:block;
    width:106px;
    height:auto;
  }

  .actions{
    display:flex;
    align-items:center;
    gap:12px;
  }

  .icon-action{
    position:relative;
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 86%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
  }

  .icon-badge{
    position:absolute;
    top:-4px;
    right:-4px;
    min-width:19px;
    height:19px;
    padding:0 5px;
    border-radius:var(--radius-pill);
    display:grid;
    place-items:center;
    background:var(--status-danger);
    color:var(--surface-primary);
    font-size:10px;
    font-weight:var(--font-weight-extrabold);
    line-height:1;
    border:2px solid var(--surface-primary);
    box-shadow:0 6px 14px rgba(15,23,42,.1);
    animation:pulse 2.4s infinite;
  }

  @keyframes pulse{
    0%,100%{box-shadow:0 0 0 0 color-mix(in srgb, var(--status-danger) 26%, transparent), 0 6px 14px rgba(15,23,42,.1)}
    50%{box-shadow:0 0 0 7px color-mix(in srgb, var(--status-danger) 0%, transparent), 0 6px 14px rgba(15,23,42,.1)}
  }

  .profile-trigger{
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    background:transparent;
    cursor:pointer;
  }

  .avatar{
    width:46px;
    height:46px;
    border-radius:var(--radius-round);
    background:linear-gradient(145deg, var(--brand-primary-ui), var(--brand-primary));
    border:3px solid var(--surface-primary);
    box-shadow:0 10px 22px rgba(15,23,42,.12);
    position:relative;
    overflow:hidden;
    display:grid;
    place-items:center;
  }

  .avatar-initials{
    color:var(--surface-primary);
    font-size:13px;
    font-weight:var(--font-weight-bold);
    letter-spacing:.04em;
  }

  .hero{
    margin:22px 6px 30px;
    position:relative;
    z-index:1;
    animation: fadeUp .55s .10s both;
  }

  .hero-media{
    display:none;
  }

  .hero-copy{
    position:relative;
    z-index:2;
    max-width:272px;
    padding-top:6px;
  }

  h1{
    margin:0;
    font-size:26px;
    line-height:1.14;
    letter-spacing:-.45px;
    font-weight:700;
    color:var(--text-primary);
    max-width:258px;
  }

  .search{
    width:100%;
    height:58px;
    border-radius:var(--radius-sm);
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-soft) 96%, transparent);
    box-shadow:var(--shadow-card);
    margin:0 0 28px;
    display:flex;
    align-items:center;
    padding:0 18px;
    gap:14px;
    color:var(--text-secondary);
    font-size:15.5px;
    font-weight:var(--font-weight-medium);
    animation: fadeUp .55s .16s both;
    cursor:pointer;
    text-align:left;
  }
  .section-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:0 2px 12px;
  }

  .section-title{
    font-size:var(--font-size-title);
    line-height:1.2;
    font-weight:700;
    letter-spacing:-.45px;
  }

  .link{
    color:var(--blue);
    font-size:var(--font-size-body);
    font-weight:var(--font-weight-bold);
    display:flex;
    align-items:center;
    gap:7px;
    cursor:pointer;
  }

  .important{
    animation: fadeUp .55s .23s both;
  }

  .list-card{
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    border-radius:var(--radius-md);
    box-shadow:var(--shadow-card-strong);
    overflow:hidden;
  }

  .row{
    min-height:74px;
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 112px 22px;
    align-items:center;
    gap:12px;
    padding:13px 15px 13px 14px;
    position:relative;
    transition:transform var(--duration-fast) var(--ease-standard), background var(--duration-fast) var(--ease-standard);
    cursor:pointer;
  }
  .row:not(:last-child)::after{
    content:"";
    position:absolute;
    left:70px;
    right:16px;
    bottom:0;
    height:1px;
    background:var(--border-subtle);
  }
  .row:active{
    transform:scale(.99);
    background:color-mix(in srgb, var(--blue) 3.5%, transparent);
  }

  .icon-pill{
    width:40px;
    height:40px;
    border-radius:var(--radius-xs);
    display:grid;
    place-items:center;
  }
  .gold{background:var(--status-warning-bg);color:var(--status-warning)}
  .green{background:var(--status-success-bg);color:var(--status-success)}
  .blue{background:var(--status-info-bg);color:var(--status-info)}

  .row-title{
    font-size:15.6px;
    font-weight:var(--font-weight-medium);
    letter-spacing:-.12px;
    color:var(--text-primary);
    margin-bottom:0;
  }
  .status-label{
    font-size:12.8px;
    font-weight:var(--font-weight-semibold);
    white-space:nowrap;
    text-align:right;
    justify-self:end;
    letter-spacing:-.08px;
  }
  .quick{
    margin-top:28px;
    animation: fadeUp .55s .30s both;
  }

  .quick-strip{
    position:relative;
    margin:0 -2px;
    padding:2px;
    overflow:visible;
  }

  .quick-grid{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:120px;
    gap:10px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:2px 18px 12px 2px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    cursor:grab;
    -webkit-mask-image:linear-gradient(90deg, #000 0, #000 calc(100% - 40px), transparent 100%);
    mask-image:linear-gradient(90deg, #000 0, #000 calc(100% - 40px), transparent 100%);
  }

  .quick-grid::-webkit-scrollbar{
    display:none;
  }

  .quick-grid:active{
    cursor:grabbing;
  }

  .quick-card{
    min-height:110px;
    border-radius:var(--radius-sm);
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    box-shadow:0 6px 14px rgba(218,225,234,.42);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:11px;
    text-align:center;
    padding:15px 11px;
    transition:transform var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);
    cursor:pointer;
    scroll-snap-align:start;
  }
  .quick-card:active{
    transform:scale(.97);
    box-shadow:var(--shadow-focus);
    border-color:color-mix(in srgb, var(--blue) 24%, transparent);
  }
  .quick-title{
    color:var(--text-primary);
    font-size:14px;
    font-weight:var(--font-weight-bold);
    line-height:1.15;
    letter-spacing:-.2px;
    max-width:94px;
    text-wrap:balance;
  }

  .services-directory{
    margin-top:38px;
    animation: fadeUp .55s .37s both;
  }

  .service-grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:12px;
  }

  .service-tile{
    min-height:122px;
    border-radius:17px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    box-shadow:0 10px 22px rgba(15,23,42,.04);
    padding:16px;
    transition:transform var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);
    cursor:pointer;
  }

  .service-tile:active{
    transform:scale(.985);
    border-color:color-mix(in srgb, var(--blue) 22%, transparent);
    box-shadow:var(--shadow-focus);
  }

  .service-icon{
    width:42px;
    height:42px;
    border-radius:14px;
    display:grid;
    place-items:center;
    margin-bottom:14px;
    background:color-mix(in srgb, var(--blue) 6%, var(--surface-primary));
  }

  .service-name{
    color:var(--text-primary);
    font-size:15px;
    font-weight:var(--font-weight-bold);
    margin-bottom:6px;
  }

  .service-meta{
    color:var(--text-secondary);
    font-size:13px;
    line-height:1.3;
    font-weight:var(--font-weight-medium);
  }

  .nav{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:calc(88px + env(safe-area-inset-bottom, 0px));
    background:rgba(255,255,255,.68);
    backdrop-filter:blur(18px) saturate(160%);
    -webkit-backdrop-filter:blur(18px) saturate(160%);
    border-top:1px solid rgba(255,255,255,.55);
    box-shadow:0 -18px 40px rgba(15,23,42,.07);
    display:grid;
    grid-template-columns:repeat(4,1fr);
    padding:9px 16px calc(8px + env(safe-area-inset-bottom, 0px));
    z-index:8;
    overflow:visible;
  }

  .nav-indicator{
    position:absolute;
    bottom:10px;
    left:0;
    width:32px;
    height:2px;
    border-radius:999px;
    background:var(--blue);
    box-shadow:0 1px 10px color-mix(in srgb, var(--blue) 22%, transparent);
    transform:translateX(0) scaleX(1);
    transform-origin:center;
    transition:
      transform 520ms cubic-bezier(.22,1,.18,1),
      width 520ms cubic-bezier(.22,1,.18,1),
      opacity 220ms var(--ease-standard);
    will-change:transform,width;
  }

  .nav-item{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:var(--text-secondary);
    font-size:12.5px;
    font-weight:650;
    position:relative;
    transition:transform var(--duration-fast) var(--ease-standard);
    cursor:pointer;
    padding-top:2px;
  }
  .nav-item:active{transform:scale(.94)}
  .nav-item.active{color:var(--blue)}
  .news-preview{
    margin-top:26px;
    animation: fadeUp .55s .44s both;
  }

  .news-card{
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    border-radius:var(--radius-md);
    box-shadow:var(--shadow-card-strong);
    overflow:hidden;
  }

  .news-row{
    min-height:72px;
    display:grid;
    grid-template-columns:1fr 18px;
    gap:12px;
    align-items:center;
    padding:16px 15px 16px 18px;
    position:relative;
  }

  .news-row:not(:last-child)::after{
    content:"";
    position:absolute;
    left:18px;
    right:16px;
    bottom:0;
    height:1px;
    background:var(--border-subtle);
  }

  .news-title{
    font-size:15.6px;
    line-height:1.28;
    font-weight:720;
    letter-spacing:-.12px;
    color:var(--text-primary);
  }

  .news-meta{
    margin-top:6px;
    font-size:var(--font-size-meta);
    color:var(--text-secondary);
    font-weight:var(--font-weight-medium);
  }

  .footer-space{
    height:8px;
  }

  @media (max-width: 480px){
    html,
    body{
      width:100%;
      display:block;
      min-height:100vh;
      min-height:100dvh;
      background:#F4F6FB;
      overflow-x:hidden;
    }

    .screen{
      width:100vw;
      max-width:100vw;
      height:100vh;
      height:100dvh;
      min-height:100vh;
      min-height:100dvh;
      max-width:none;
      box-shadow:none;
      margin:0;
      border-radius:0;
      left:0;
    }

    .content{
      width:100%;
      padding-bottom:calc(118px + env(safe-area-inset-bottom, 0px));
    }

    .app-preloader{
      position:fixed;
      inset:0;
      z-index:120;
    }

    .nav{
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      width:100%;
      z-index:40;
    }
  }

  .business-trips-screen{
    position:absolute;
    inset:0;
    z-index:13;
    opacity:0;
    pointer-events:none;
    transform:translateX(32px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 860px no-repeat,
      #F4F6FB;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
  }

  .business-trips-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:260px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 84% 18%,color-mix(in srgb, var(--blue) 9%, transparent),transparent 32%);
    pointer-events:none;
  }

  .business-trips-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .business-trips-screen__inner{
    position:relative;
    z-index:1;
    min-height:100%;
    padding:28px 18px 108px;
  }

  .screen.business-trips-open .content,
  .screen.business-trips-open .nav,
  .screen.business-trips-open .profile-screen{
    opacity:0;
    pointer-events:none;
  }

  .screen.business-trips-open .content{
    transform:translateX(-22px);
  }

  .screen.business-trips-open .nav{
    transform:translateY(18px);
  }

  .screen.business-trips-open .business-trips-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .business-trips-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 2px 22px;
  }

  .business-trips-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .business-trips-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .business-trips-header__title{
    flex:1 1 auto;
    font-size:22px;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
  }

  .business-trips-create--header{
    width:40px;
    height:40px;
    min-height:40px;
    margin:0;
    border-radius:14px;
    padding:0;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg, #0057B8, #0B63CA);
    border:1px solid rgba(255,255,255,.34);
    box-shadow:
      0 10px 18px rgba(0,87,184,.16),
      inset 0 1px 0 rgba(255,255,255,.18);
    text-align:center;
    flex:0 0 auto;
  }

  .business-trips-summary{
    padding:8px 16px;
    border-radius:18px;
    background:
      linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,249,255,.94)),
      var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    box-shadow:var(--shadow-card-strong);
    margin-bottom:12px;
  }

  .business-trips-summary__item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:46px;
    padding:0;
  }

  .business-trips-summary__item:not(:last-child){
    border-bottom:1px solid color-mix(in srgb, var(--border-subtle) 64%, transparent);
  }

  .business-trips-summary__label{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    font-size:14px;
    line-height:1.2;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
  }

  .business-trips-summary__dot{
    width:8px;
    height:8px;
    border-radius:999px;
    flex:0 0 auto;
    box-shadow:0 0 0 5px color-mix(in srgb, currentColor 10%, transparent);
  }

  .business-trips-summary__dot--success{
    background:var(--status-success);
    color:var(--status-success);
  }

  .business-trips-summary__dot--warning{
    background:var(--status-warning);
    color:var(--status-warning);
  }

  .business-trips-summary__dot--info{
    background:var(--brand-primary);
    color:var(--brand-primary);
  }

  .business-trips-summary__value{
    min-width:24px;
    text-align:right;
    font-size:18px;
    line-height:1;
    letter-spacing:-.28px;
    color:var(--text-primary);
    font-weight:var(--font-weight-bold);
  }

  .business-trips-search{
    width:100%;
    height:56px;
    border-radius:18px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-soft) 96%, transparent);
    box-shadow:var(--shadow-card);
    display:flex;
    align-items:center;
    gap:14px;
    padding:0 18px;
    color:var(--text-secondary);
    font-size:15px;
    font-weight:var(--font-weight-medium);
    text-align:left;
    margin-bottom:14px;
    cursor:pointer;
  }

  .business-trips-filters{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
    margin:0 -2px 18px;
    scrollbar-width:none;
  }

  .business-trips-filters::-webkit-scrollbar{
    display:none;
  }

  .business-trips-filter{
    flex:0 0 auto;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    background:rgba(255,255,255,.86);
    color:var(--text-secondary);
    font-size:13px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .business-trips-filter.is-active{
    background:color-mix(in srgb, var(--blue) 10%, var(--surface-primary));
    color:var(--blue);
    border-color:color-mix(in srgb, var(--blue) 20%, transparent);
  }

  .business-trips-list{
    display:flex;
    flex-direction:column;
    gap:12px;
  }

  .business-trip-card{
    border-radius:20px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    box-shadow:var(--shadow-card-strong);
    padding:16px 16px 14px;
  }

  .business-trip-card--clickable{
    cursor:pointer;
  }

  .business-trip-card__top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
  }

  .business-trip-card__number{
    font-size:17px;
    line-height:1.18;
    letter-spacing:-.32px;
    font-weight:700;
    color:var(--text-primary);
  }

  .business-trip-card__route{
    margin-top:7px;
    font-size:14px;
    line-height:1.35;
    color:var(--text-secondary);
    font-weight:var(--font-weight-medium);
  }

  .business-trip-card__menu{
    width:32px;
    height:32px;
    border:0;
    border-radius:12px;
    background:transparent;
    display:grid;
    place-items:center;
    cursor:pointer;
    flex:0 0 auto;
  }

  .business-trip-card__status{
    flex:0 0 auto;
    min-height:26px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:var(--font-weight-semibold);
    display:grid;
    place-items:center;
  }

  .business-trip-card__status--warning{
    background:var(--status-warning-bg);
    color:var(--status-warning);
  }

  .business-trip-card__status--info{
    background:var(--status-info-bg);
    color:var(--status-info);
  }

  .business-trip-card__status--neutral{
    background:color-mix(in srgb, var(--text-secondary) 10%, var(--surface-primary));
    color:var(--text-secondary);
  }

  .business-trip-card__status--processing{
    background:rgba(79, 70, 229, .12);
    color:#4F46E5;
  }

  .business-trip-card__status--success{
    background:var(--status-success-bg);
    color:var(--status-success);
  }

  .business-trip-card__meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    margin-top:10px;
    font-size:12.8px;
    line-height:1.35;
    color:var(--text-secondary);
    font-weight:var(--font-weight-medium);
  }

  .business-trip-card__status-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid var(--border-subtle);
  }

  .business-trip-card__status-main{
    min-width:0;
  }

  .business-trip-card__substatus{
    margin-top:8px;
    font-size:13px;
    line-height:1.4;
    color:var(--text-secondary);
    font-weight:var(--font-weight-medium);
  }

  .business-trip-card__trail{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
    color:var(--text-secondary);
  }

  .business-trip-card__trail--chevron-only{
    width:24px;
    justify-content:flex-end;
    gap:0;
    flex:0 0 auto;
    color:var(--text-tertiary);
  }

  .business-trip-menu-dialog{
    position:fixed;
    inset:0;
    z-index:16;
    opacity:0;
    pointer-events:none;
    transition:opacity 220ms var(--ease-standard);
  }

  .business-trip-menu-dialog.is-open{
    opacity:1;
    pointer-events:auto;
  }

  .business-trip-menu-dialog__backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.22);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  .business-trip-menu-dialog__card{
    position:absolute;
    left:18px;
    right:18px;
    bottom:24px;
    padding:18px;
    border-radius:22px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 24px 54px rgba(15,23,42,.18);
    transform:translateY(24px) scale(.98);
    transition:transform 260ms var(--ease-standard);
  }

  .business-trip-menu-dialog.is-open .business-trip-menu-dialog__card{
    transform:translateY(0) scale(1);
  }

  .business-trip-menu-dialog__title{
    font-size:18px;
    line-height:1.18;
    font-weight:700;
    color:var(--text-primary);
    margin-bottom:12px;
  }

  .business-trip-menu-dialog__list{
    display:grid;
    gap:8px;
  }

  .business-trip-menu-dialog__action{
    min-height:48px;
    border-radius:16px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    background:rgba(255,255,255,.88);
    color:var(--text-primary);
    font-size:14px;
    font-weight:var(--font-weight-semibold);
    text-align:left;
    padding:0 16px;
    cursor:pointer;
  }

  .trip-create-screen{
    position:absolute;
    inset:0;
    z-index:15;
    opacity:0;
    pointer-events:none;
    transform:translateX(36px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 980px no-repeat,
      #F4F6FB;
    overflow:hidden;
  }

  .trip-create-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:250px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 82% 18%,color-mix(in srgb, var(--blue) 8%, transparent),transparent 34%);
    pointer-events:none;
  }

  .trip-create-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .trip-create-screen__inner{
    position:relative;
    z-index:1;
    height:100%;
    min-height:100%;
    padding:28px 18px 0;
    display:grid;
    grid-template-rows:auto auto minmax(0, 1fr) auto;
  }

.screen.trip-create-open .content,
.screen.trip-create-open .nav,
.screen.trip-create-open .profile-screen{
  opacity:0;
  pointer-events:none;
}

.screen.trip-create-open .content{
  transform:translateX(-22px);
}

.screen.trip-create-open .nav{
  transform:translateY(18px);
}

  .screen.trip-create-open .business-trips-screen{
    opacity:0;
    pointer-events:none;
    transform:translateX(-22px);
  }

  .screen.trip-create-open .trip-create-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .trip-create-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 2px 22px;
  }

  .trip-create-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .trip-create-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .trip-create-header__copy{
    min-width:0;
  }

  .trip-create-header__eyebrow{
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
    margin-bottom:4px;
  }

  .trip-create-header__title{
    font-size:22px;
    line-height:1.16;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
  }

  .trip-create-stepper{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:8px;
    margin-bottom:18px;
  }

  .trip-step{
    min-height:70px;
    border-radius:18px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 95%, transparent);
    background:rgba(255,255,255,.82);
    box-shadow:var(--shadow-card);
    padding:12px 8px 10px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    color:var(--text-secondary);
    cursor:pointer;
  }

  .trip-step.is-active{
    background:color-mix(in srgb, var(--blue) 10%, var(--surface-primary));
    border-color:color-mix(in srgb, var(--blue) 22%, transparent);
    color:var(--blue);
  }

  .trip-step__index{
    width:24px;
    height:24px;
    border-radius:999px;
    display:grid;
    place-items:center;
    background:color-mix(in srgb, var(--text-secondary) 10%, var(--surface-primary));
    font-size:12px;
    font-weight:700;
  }

  .trip-step.is-active .trip-step__index{
    background:var(--brand-primary-ui);
    color:var(--surface-primary);
  }

  .trip-step__label{
    font-size:12.5px;
    font-weight:var(--font-weight-semibold);
  }

  .trip-panel{
    display:none;
  }

  .trip-panel.is-active{
    display:block;
  }

  .trip-create-panels{
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding:0 0 24px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .trip-create-panels::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .trip-panel__intro{
    margin:0 2px 14px;
  }

  .trip-panel__title{
    font-size:22px;
    line-height:1.16;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
  }

  .trip-panel__text{
    margin-top:6px;
    font-size:14px;
    line-height:1.42;
    color:var(--text-secondary);
    max-width:320px;
  }

  .trip-card{
    border-radius:22px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    box-shadow:var(--shadow-card-strong);
    padding:18px;
    margin-bottom:12px;
  }

  .trip-card__title{
    font-size:17px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:-.24px;
    color:var(--text-primary);
    margin-bottom:14px;
  }

  .trip-card__subtitle{
    margin-top:4px;
    font-size:13px;
    color:var(--text-secondary);
  }

  .trip-card__headline{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
  }

  .trip-card__tag{
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    background:rgba(255,255,255,.88);
    color:var(--text-primary);
    font-size:12px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .trip-fields{
    display:grid;
    gap:12px;
  }

  .trip-fields.two-col{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .trip-field{
    display:block;
  }

  .trip-field__label{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:var(--font-weight-semibold);
    color:var(--text-secondary);
  }

  .trip-input,
  .trip-textarea{
    width:100%;
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    background:rgba(255,255,255,.86);
    border-radius:16px;
    padding:14px 15px;
    font:inherit;
    color:var(--text-primary);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  }

  .trip-input{
    min-height:50px;
  }

  .trip-textarea{
    min-height:108px;
    resize:none;
  }

  .trip-choice,
  .trip-inline-choice{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
  }

  .trip-inline-choice{
    padding:10px 0;
    border-bottom:1px solid var(--border-subtle);
  }

  .trip-inline-choice:last-of-type{
    border-bottom:0;
    margin-bottom:0;
  }

  .trip-choice__label,
  .trip-inline-choice span{
    font-size:14px;
    line-height:1.35;
    font-weight:var(--font-weight-medium);
    color:var(--text-primary);
  }

  .trip-choice__chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-end;
  }

  .trip-chip{
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    background:rgba(255,255,255,.84);
    color:var(--text-secondary);
    font-size:12.5px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .trip-chip.is-active{
    background:color-mix(in srgb, var(--blue) 11%, var(--surface-primary));
    border-color:color-mix(in srgb, var(--blue) 24%, transparent);
    color:var(--blue);
  }

  .trip-total-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-radius:22px;
    background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,249,255,.94));
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    box-shadow:var(--shadow-card-strong);
    padding:18px;
    margin-bottom:12px;
  }

  .trip-total-card__label{
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
    margin-bottom:6px;
  }

  .trip-total-card__value{
    font-size:26px;
    line-height:1;
    color:var(--brand-primary-ui);
    font-weight:700;
    letter-spacing:-.5px;
  }

  .trip-total-card__action{
    min-height:42px;
    padding:0 14px;
    border-radius:14px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    background:rgba(255,255,255,.88);
    color:var(--text-primary);
    font-size:13px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .trip-submit-note{
    margin-top:14px;
    font-size:13px;
    line-height:1.42;
    color:var(--text-secondary);
  }

  .trip-create-actions{
    position:sticky;
    bottom:0;
    display:grid;
    grid-template-columns:minmax(0, 42fr) minmax(0, 58fr);
    gap:14px;
    align-items:center;
    margin:-10px -18px calc(env(safe-area-inset-bottom, 0px) * -1);
    padding:16px 24px calc(16px + env(safe-area-inset-bottom, 0px));
    background:rgba(255,255,255,.92);
    border-top:1px solid #E6EAF0;
    box-shadow:0 -4px 20px rgba(0,0,0,.04);
    -webkit-backdrop-filter:blur(20px) saturate(180%);
    backdrop-filter:blur(20px) saturate(180%);
  }

  .trip-create-actions.is-single{
    grid-template-columns:minmax(0, 1fr);
    justify-items:center;
  }

  .trip-create-actions.is-single .trip-create-action{
    width:min(70%, 320px);
  }

  .trip-create-action{
    width:100%;
    min-height:58px;
    border-radius:18px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:700;
    letter-spacing:-.12px;
    transition:
      transform var(--duration-fast) var(--ease-standard),
      box-shadow var(--duration-fast) var(--ease-standard),
      border-color var(--duration-fast) var(--ease-standard),
      background-color var(--duration-fast) var(--ease-standard);
    cursor:pointer;
  }

  .trip-create-action.is-hidden{
    display:none;
  }

  .trip-create-action--secondary{
    background:#FFFFFF;
    border-color:#E1E7EF;
    color:#111827;
    box-shadow:none;
  }

  .trip-create-action--primary{
    background:#0B63CE;
    color:#FFFFFF;
    box-shadow:0 8px 20px rgba(11, 99, 206, .18);
  }

  .trip-create-action:active{
    transform:translateY(1px) scale(.988);
  }

  .trip-create-action--secondary:active{
    border-color:color-mix(in srgb, var(--blue) 18%, transparent);
  }

  .trip-create-action--primary:active{
    box-shadow:0 6px 16px rgba(11, 99, 206, .16);
  }

  .trip-confirm-dialog,
  .trip-success-dialog{
    position:fixed;
    inset:0;
    z-index:17;
    opacity:0;
    pointer-events:none;
    transition:opacity 220ms var(--ease-standard);
  }

  .trip-confirm-dialog.is-open,
  .trip-success-dialog.is-open{
    opacity:1;
    pointer-events:auto;
  }

  .trip-confirm-dialog__backdrop,
  .trip-success-dialog__backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.28);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  .trip-confirm-dialog__card,
  .trip-success-dialog__card{
    position:absolute;
    left:18px;
    right:18px;
    bottom:24px;
    border-radius:24px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 24px 54px rgba(15,23,42,.18);
    transform:translateY(24px) scale(.98);
    transition:transform 260ms var(--ease-standard);
  }

  .trip-confirm-dialog.is-open .trip-confirm-dialog__card,
  .trip-success-dialog.is-open .trip-success-dialog__card{
    transform:translateY(0) scale(1);
  }

  .trip-confirm-dialog__card{
    padding:20px 20px 18px;
  }

  .trip-success-dialog__card{
    padding:22px 20px 20px;
  }

  .trip-confirm-dialog__title,
  .trip-success-dialog__title{
    font-size:21px;
    line-height:1.16;
    letter-spacing:-.35px;
    font-weight:700;
    color:var(--text-primary);
  }

  .trip-confirm-dialog__summary{
    display:grid;
    gap:12px;
    margin-top:14px;
  }

  .trip-confirm-dialog__item{
    padding:12px 14px;
    border-radius:16px;
    background:color-mix(in srgb, var(--blue) 6%, var(--surface-primary));
  }

  .trip-confirm-dialog__item-title{
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.07em;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
    margin-bottom:6px;
  }

  .trip-confirm-dialog__item-text,
  .trip-success-dialog__text{
    font-size:14px;
    line-height:1.42;
    color:var(--text-secondary);
  }

  .trip-confirm-dialog__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
  }

  .trip-confirm-dialog__button,
  .trip-success-dialog__button{
    min-height:48px;
    border-radius:16px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .trip-confirm-dialog__button--secondary{
    background:rgba(255,255,255,.86);
    border-color:color-mix(in srgb, var(--border-subtle) 92%, transparent);
    color:var(--text-primary);
  }

  .trip-confirm-dialog__button--primary,
  .trip-success-dialog__button{
    background:var(--brand-primary-ui);
    color:var(--surface-primary);
    box-shadow:0 12px 24px rgba(0,87,184,.24);
  }

  .trip-success-dialog__text{
    margin-top:10px;
  }

  .trip-success-dialog__button{
    width:100%;
    margin-top:18px;
  }

  .notifications-screen{
    position:absolute;
    inset:0;
    z-index:13;
    opacity:0;
    pointer-events:none;
    transform:translateX(30px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 860px no-repeat,
      #F4F6FB;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
  }

  .notifications-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:260px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 86% 18%,color-mix(in srgb, var(--blue) 8%, transparent),transparent 34%);
    pointer-events:none;
  }

  .notifications-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .notifications-screen__inner{
    position:relative;
    z-index:1;
    min-height:100%;
    padding:28px 18px 34px;
  }

  .screen.notifications-open .content,
  .screen.notifications-open .nav,
  .screen.notifications-open .profile-screen,
  .screen.notifications-open .business-trips-screen,
  .screen.notifications-open .trip-create-screen{
    opacity:0;
    pointer-events:none;
  }

  .screen.notifications-open .content{
    transform:translateX(-22px);
  }

  .screen.notifications-open .nav{
    transform:translateY(18px);
  }

  .screen.notifications-open .notifications-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .notifications-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 2px 22px;
  }

  .notifications-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .notifications-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .notifications-header__title{
    font-size:22px;
    line-height:1.16;
    letter-spacing:-.4px;
    font-weight:700;
    color:var(--text-primary);
  }

  .notifications-hero{
    display:block;
    padding:18px 18px 16px;
    border-radius:24px;
    background:
      linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,249,255,.94)),
      var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 95%, transparent);
    box-shadow:var(--shadow-card-strong);
    margin-bottom:14px;
  }

  .notifications-hero__stat{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:44px;
    width:100%;
    padding:2px 0;
    border:0;
    background:transparent;
    cursor:pointer;
    transition:transform var(--duration-fast) var(--ease-standard);
  }

  .notifications-hero__stat:not(:last-child){
    border-bottom:1px solid color-mix(in srgb, var(--border-subtle) 64%, transparent);
  }

  .notifications-hero__stat.is-active{
    color:var(--brand-primary-ui);
  }

  .notifications-hero__stat.is-active .notifications-hero__stat-label,
  .notifications-hero__stat.is-active .notifications-hero__stat-value{
    color:var(--brand-primary-ui);
  }

  .notifications-hero__stat:active{
    transform:scale(.992);
  }

  .notifications-hero__stat-label{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    font-size:14px;
    line-height:1.2;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
    transition:color 220ms var(--ease-standard);
  }

  .notifications-hero__stat-dot{
    width:8px;
    height:8px;
    border-radius:999px;
    flex:0 0 auto;
    box-shadow:0 0 0 5px color-mix(in srgb, currentColor 10%, transparent);
    transition:
      background-color 220ms var(--ease-standard),
      color 220ms var(--ease-standard),
      box-shadow 220ms var(--ease-standard),
      transform 220ms var(--ease-standard);
  }

  .notifications-hero__stat-dot--new{
    background:var(--text-secondary);
    color:var(--text-secondary);
  }

  .notifications-hero__stat-dot--recent{
    background:var(--text-secondary);
    color:var(--text-secondary);
  }

  .notifications-hero__stat.is-active .notifications-hero__stat-dot{
    background:var(--brand-primary-ui);
    color:var(--brand-primary-ui);
    box-shadow:0 0 0 5px color-mix(in srgb, var(--brand-primary-ui) 12%, transparent);
    transform:scale(1.08);
  }

  .notifications-hero__stat-value{
    min-width:24px;
    text-align:right;
    font-size:17px;
    line-height:1;
    letter-spacing:-.28px;
    color:var(--text-secondary);
    font-weight:var(--font-weight-bold);
    transition:
      color 220ms var(--ease-standard),
      transform 220ms var(--ease-standard);
  }

  .notifications-hero__stat.is-active .notifications-hero__stat-value{
    transform:translateX(-1px);
  }

  .notifications-filters{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:0 2px 4px;
    margin:0 -2px 18px;
    scrollbar-width:none;
  }

  .notifications-filters::-webkit-scrollbar{
    display:none;
  }

  .notifications-filter{
    flex:0 0 auto;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    background:rgba(255,255,255,.86);
    color:var(--text-secondary);
    font-size:13px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .notifications-filter.is-active{
    background:color-mix(in srgb, var(--blue) 10%, var(--surface-primary));
    color:var(--blue);
    border-color:color-mix(in srgb, var(--blue) 20%, transparent);
  }

  .notifications-list{
    display:grid;
    gap:12px;
  }

  .notification-card{
    padding:18px;
    border-radius:22px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    box-shadow:var(--shadow-card-strong);
  }

  .notification-card--unread{
    background:
      linear-gradient(135deg, rgba(255,255,255,.99), rgba(243,248,255,.96)),
      var(--surface-overlay);
  }

  .notification-card__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
  }

  .notification-card__meta{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
  }

  .notification-card__dot{
    width:8px;
    height:8px;
    border-radius:999px;
    background:var(--brand-primary-ui);
    box-shadow:0 0 0 5px color-mix(in srgb, var(--brand-primary-ui) 10%, transparent);
    flex:0 0 auto;
  }

  .notification-card__category{
    font-size:12px;
    line-height:1.2;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
  }

  .notification-card__date{
    flex:0 0 auto;
    font-size:12.5px;
    line-height:1.2;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
  }

  .notification-card__title{
    font-size:18px;
    line-height:1.18;
    letter-spacing:-.26px;
    color:var(--text-primary);
    font-weight:700;
  }

  .notification-card__text{
    margin-top:10px;
    font-size:14px;
    line-height:1.46;
    color:var(--text-secondary);
  }

  .notification-card__link{
    min-height:34px;
    margin-top:14px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--blue) 14%, transparent);
    background:color-mix(in srgb, var(--blue) 8%, var(--surface-primary));
    color:var(--blue);
    font-size:13px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .screen--modal-lock{
    touch-action:none;
  }

  .screen-scroll-lock{
    overflow:hidden !important;
    overscroll-behavior:none;
    touch-action:none;
  }

  .profile-screen{
    position:absolute;
    inset:0;
    z-index:14;
    opacity:0;
    pointer-events:none;
    transform:translateX(30px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 820px no-repeat,
      #F4F6FB;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
  }

  .profile-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:280px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 88% 18%,color-mix(in srgb, var(--blue) 9%, transparent),transparent 32%);
    pointer-events:none;
  }

  .profile-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .profile-screen__inner{
    position:relative;
    z-index:1;
    min-height:100%;
    padding:28px 18px 32px;
  }

  .screen.profile-open .content,
  .screen.profile-open .nav{
    opacity:0;
    pointer-events:none;
  }

  .screen.profile-open .content{
    transform:translateX(-22px);
  }

  .screen.profile-open .nav{
    transform:translateY(18px);
  }

  .screen.profile-open .profile-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .content,
  .nav{
    transition:
      opacity 260ms var(--ease-standard),
      transform 320ms var(--ease-standard);
  }

  .profile-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 2px 22px;
  }

  .profile-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .profile-logout{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .profile-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .profile-header__title{
    font-size:22px;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
    flex:1 1 auto;
    text-align:left;
  }

  .profile-hero{
    display:flex;
    align-items:center;
    gap:16px;
    padding:18px;
    border-radius:22px;
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 95%, transparent);
    box-shadow:var(--shadow-card-strong);
    margin-bottom:18px;
  }

  .profile-avatar{
    border-radius:var(--radius-round);
    background:linear-gradient(145deg, var(--brand-primary-ui), var(--brand-primary));
    color:var(--surface-primary);
    display:grid;
    place-items:center;
    box-shadow:0 12px 24px rgba(15,23,42,.12);
    border:3px solid rgba(255,255,255,.96);
    font-weight:var(--font-weight-bold);
    letter-spacing:.04em;
    flex:0 0 auto;
  }

  .profile-avatar--large{
    width:74px;
    height:74px;
    font-size:21px;
  }

  .profile-hero__copy{
    min-width:0;
    max-width:188px;
  }

  .profile-name{
    margin:0;
    font-size:20px;
    line-height:1.25;
    letter-spacing:-.5px;
    font-weight:700;
    color:var(--text-primary);
  }

  .profile-role{
    margin:8px 0 0;
    font-size:15px;
    line-height:1.35;
    font-weight:var(--font-weight-medium);
    color:var(--text-secondary);
  }

  .profile-actions-card,
  .profile-data-card{
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    border-radius:22px;
    box-shadow:var(--shadow-card-strong);
  }

  .profile-actions-card{
    overflow:hidden;
    margin-bottom:18px;
  }

  .profile-action-row{
    width:100%;
    min-height:72px;
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 18px;
    align-items:center;
    gap:14px;
    padding:14px 16px;
    border:0;
    background:transparent;
    text-align:left;
    cursor:pointer;
    position:relative;
  }

  .profile-action-row:not(:last-child)::after{
    content:"";
    position:absolute;
    left:78px;
    right:16px;
    bottom:0;
    height:1px;
    background:var(--border-subtle);
  }

  .profile-action-icon{
    width:44px;
    height:44px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:color-mix(in srgb, var(--blue) 7%, var(--surface-primary));
  }

  .profile-action-icon .fa-icon{
    filter: brightness(0) saturate(100%) invert(22%) sepia(95%) saturate(2273%) hue-rotate(204deg) brightness(93%) contrast(106%);
  }

  .profile-action-label{
    font-size:15.5px;
    font-weight:var(--font-weight-semibold);
    letter-spacing:-.15px;
    color:var(--text-primary);
  }

  .profile-data-card{
    padding:20px 18px 10px;
    margin-bottom:20px;
  }

  .profile-dialog{
    position:fixed;
    inset:0;
    z-index:16;
    opacity:0;
    pointer-events:none;
    transition:opacity 220ms var(--ease-standard);
  }

  .profile-dialog.is-open{
    opacity:1;
    pointer-events:auto;
  }

  .profile-dialog__backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.26);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  .profile-dialog__card{
    position:absolute;
    left:18px;
    right:18px;
    bottom:28px;
    padding:20px 20px 18px;
    border-radius:24px;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 24px 54px rgba(15,23,42,.16);
    transform:translateY(24px) scale(.98);
    transition:transform 260ms var(--ease-standard);
  }

  .profile-dialog.is-open .profile-dialog__card{
    transform:translateY(0) scale(1);
  }

  .profile-dialog__icon{
    width:48px;
    height:48px;
    border-radius:16px;
    display:grid;
    place-items:center;
    margin-bottom:14px;
    background:color-mix(in srgb, var(--blue) 8%, var(--surface-primary));
  }

  .profile-dialog__title{
    margin:0 0 8px;
    font-size:21px;
    line-height:1.15;
    letter-spacing:-.35px;
    font-weight:700;
    color:var(--text-primary);
  }

  .profile-dialog__text{
    margin:0;
    font-size:14px;
    line-height:1.45;
    color:var(--text-secondary);
  }

  .profile-dialog__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
  }

  .profile-dialog__button{
    min-height:48px;
    border-radius:16px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
    transition:
      transform var(--duration-fast) var(--ease-standard),
      border-color var(--duration-fast) var(--ease-standard),
      background var(--duration-fast) var(--ease-standard);
  }

  .profile-dialog__button:active{
    transform:scale(.98);
  }

  .profile-dialog__button--secondary{
    background:rgba(255,255,255,.86);
    border-color:color-mix(in srgb, var(--border-subtle) 92%, transparent);
    color:var(--text-primary);
  }

  .profile-dialog__button--primary{
    background:var(--brand-primary-ui);
    color:var(--surface-primary);
    box-shadow:0 12px 24px rgba(0,87,184,.24);
  }

  .settings-screen{
    position:absolute;
    inset:0;
    z-index:14;
    opacity:0;
    pointer-events:none;
    transform:translateX(30px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 860px no-repeat,
      #F4F6FB;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
  }

  .settings-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:260px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 86% 18%,color-mix(in srgb, var(--blue) 8%, transparent),transparent 34%);
    pointer-events:none;
  }

  .settings-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .settings-screen__inner{
    position:relative;
    z-index:1;
    min-height:100%;
    padding:28px 18px 34px;
  }

  .screen.settings-open .content,
  .screen.settings-open .nav,
  .screen.settings-open .profile-screen,
  .screen.settings-open .notifications-screen,
  .screen.settings-open .business-trips-screen,
  .screen.settings-open .trip-create-screen{
    opacity:0;
    pointer-events:none;
  }

  .screen.settings-open .content{
    transform:translateX(-22px);
  }

  .screen.settings-open .nav{
    transform:translateY(18px);
  }

  .screen.settings-open .settings-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .settings-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 2px 22px;
  }

  .settings-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .settings-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .settings-header__title{
    font-size:22px;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
  }

  .settings-card{
    background:var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 96%, transparent);
    border-radius:22px;
    box-shadow:var(--shadow-card-strong);
    padding:18px;
    margin-bottom:14px;
  }

  .settings-card__title{
    margin:0 0 14px;
    font-size:18px;
    line-height:1.18;
    letter-spacing:-.28px;
    color:var(--text-primary);
    font-weight:700;
  }

  .settings-row{
    width:100%;
    min-height:72px;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    padding:14px 0;
    border:0;
    background:transparent;
    text-align:left;
    cursor:pointer;
    position:relative;
  }

  .settings-card .settings-row:not(:last-child)::after{
    content:"";
    position:absolute;
    left:58px;
    right:0;
    bottom:0;
    height:1px;
    background:var(--border-subtle);
  }

  .settings-row__icon{
    width:44px;
    height:44px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:color-mix(in srgb, var(--blue) 7%, var(--surface-primary));
  }

  .settings-row__icon .fa-icon{
    filter: brightness(0) saturate(100%) invert(22%) sepia(95%) saturate(2273%) hue-rotate(204deg) brightness(93%) contrast(106%);
  }

  .settings-row__label{
    font-size:16px;
    line-height:1.28;
    letter-spacing:-.16px;
    color:var(--text-primary);
    font-weight:var(--font-weight-semibold);
  }

  .settings-row__meta{
    margin-top:4px;
    font-size:13.5px;
    line-height:1.4;
    color:var(--text-secondary);
  }

  .settings-switch{
    width:52px;
    height:32px;
    border:0;
    border-radius:999px;
    background:color-mix(in srgb, var(--text-secondary) 22%, var(--surface-primary));
    padding:3px;
    position:relative;
    cursor:pointer;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);
    transition:
      background-color 220ms cubic-bezier(.22,1,.18,1),
      box-shadow 220ms cubic-bezier(.22,1,.18,1),
      transform 180ms var(--ease-standard);
  }

  .settings-switch__thumb{
    width:26px;
    height:26px;
    border-radius:999px;
    display:block;
    background:#FFFFFF;
    box-shadow:0 6px 14px rgba(15,23,42,.14);
    transition:
      transform 280ms cubic-bezier(.22,1,.18,1),
      box-shadow 220ms cubic-bezier(.22,1,.18,1);
    will-change:transform;
  }

  .settings-switch.is-active{
    background:color-mix(in srgb, var(--blue) 72%, white);
    box-shadow:
      inset 0 0 0 1px color-mix(in srgb, var(--blue) 16%, transparent),
      0 6px 18px color-mix(in srgb, var(--blue) 16%, transparent);
  }

  .settings-switch.is-active .settings-switch__thumb{
    transform:translateX(20px);
    box-shadow:0 8px 18px rgba(15,23,42,.16);
  }

  .settings-switch:active .settings-switch__thumb{
    transform:scale(.94);
  }

  .settings-switch.is-active:active .settings-switch__thumb{
    transform:translateX(20px) scale(.94);
  }

  .settings-switch:focus-visible{
    outline:none;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.24),
      0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent);
  }

  .settings-info-tile{
    display:flex;
    align-items:center;
    gap:14px;
    min-height:60px;
    padding:2px 0;
  }

  .settings-info-tile__icon{
    width:44px;
    height:44px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:color-mix(in srgb, var(--blue) 7%, var(--surface-primary));
  }

  .settings-info-tile__icon .fa-icon{
    filter: brightness(0) saturate(100%) invert(22%) sepia(95%) saturate(2273%) hue-rotate(204deg) brightness(93%) contrast(106%);
  }

  .settings-info-tile__label{
    font-size:13px;
    line-height:1.2;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--text-secondary);
    font-weight:var(--font-weight-semibold);
    margin-bottom:6px;
  }

  .settings-info-tile__value{
    font-size:20px;
    line-height:1.12;
    letter-spacing:-.28px;
    color:var(--text-primary);
    font-weight:700;
  }

  .settings-pill-action{
    width:100%;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    border-radius:18px;
    background:rgba(255,255,255,.88);
    color:var(--text-primary);
    font-size:15px;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 10px 22px rgba(15,23,42,.05);
  }

  .settings-pill-action--secondary{
    color:var(--text-secondary);
  }

  .chatbot-screen{
    position:absolute;
    inset:0;
    z-index:14;
    opacity:0;
    pointer-events:none;
    transform:translateX(30px);
    transition:
      opacity 320ms var(--ease-standard),
      transform 320ms var(--ease-standard);
    background:
      linear-gradient(180deg, #FFFFFF 0%, #F4F6FB 100%) top / 100% 900px no-repeat,
      #F4F6FB;
    overflow:hidden;
  }

  .chatbot-screen::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:260px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.82) 66%,rgba(244,246,251,0)),
      radial-gradient(circle at 86% 18%,color-mix(in srgb, var(--blue) 8%, transparent),transparent 34%);
    pointer-events:none;
  }

  .chatbot-screen::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .chatbot-screen__inner{
    position:relative;
    z-index:1;
    height:100%;
    min-height:100%;
    padding:20px 18px 0;
    display:flex;
    flex-direction:column;
  }

  .screen.chatbot-open .content,
  .screen.chatbot-open .nav,
  .screen.chatbot-open .profile-screen,
  .screen.chatbot-open .notifications-screen,
  .screen.chatbot-open .business-trips-screen,
  .screen.chatbot-open .trip-create-screen,
  .screen.chatbot-open .settings-screen{
    opacity:0;
    pointer-events:none;
  }

  .screen.chatbot-open .content{
    transform:translateX(-22px);
  }

  .screen.chatbot-open .nav{
    transform:translateY(18px);
  }

  .screen.chatbot-open .chatbot-screen{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }

  .chatbot-header{
    display:flex;
    align-items:center;
    gap:12px;
    margin:8px 2px 18px;
  }

  .chatbot-back{
    width:38px;
    height:38px;
    border:0;
    border-radius:var(--radius-round);
    background:color-mix(in srgb, var(--surface-primary) 88%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    padding:0;
    cursor:pointer;
    flex:0 0 auto;
  }

  .chatbot-back__arrow{
    width:10px;
    height:10px;
    border-left:2px solid var(--text-primary);
    border-bottom:2px solid var(--text-primary);
    transform:rotate(45deg) translateX(1px);
  }

  .chatbot-header__title{
    font-size:22px;
    font-weight:700;
    letter-spacing:-.4px;
    color:var(--text-primary);
    flex:1 1 auto;
  }

  .chatbot-header__status{
    display:flex;
    align-items:center;
    gap:7px;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    color:var(--text-secondary);
    font-size:12.5px;
    font-weight:var(--font-weight-semibold);
  }

  .chatbot-header__status-dot{
    width:7px;
    height:7px;
    border-radius:999px;
    background:var(--status-success);
    box-shadow:0 0 0 5px color-mix(in srgb, var(--status-success) 12%, transparent);
  }

  .chatbot-hero{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:18px;
    border-radius:24px;
    background:
      linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,249,255,.94)),
      var(--surface-overlay);
    border:1px solid color-mix(in srgb, var(--border-subtle) 95%, transparent);
    box-shadow:var(--shadow-card-strong);
  }

  .chatbot-hero.is-hidden{
    display:none;
  }

  .chatbot-hero__icon{
    width:52px;
    height:52px;
    border-radius:18px;
    display:grid;
    place-items:center;
    background:linear-gradient(145deg, var(--brand-primary-ui), var(--brand-primary));
    box-shadow:0 14px 28px rgba(0,87,184,.18);
    flex:0 0 auto;
  }

  .chatbot-hero__icon .fa-icon{
    filter:brightness(0) invert(1);
  }

  .chatbot-hero__title{
    font-size:20px;
    line-height:1.15;
    letter-spacing:-.34px;
    color:var(--text-primary);
    font-weight:700;
  }

  .chatbot-hero__text{
    margin-top:8px;
    font-size:14px;
    line-height:1.45;
    color:var(--text-secondary);
  }

  .chatbot-suggestions{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:16px 2px 4px;
    margin:0 -2px 12px;
    scrollbar-width:none;
  }

  .chatbot-suggestions::-webkit-scrollbar{
    display:none;
  }

  .chatbot-chip{
    flex:0 0 auto;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    background:rgba(255,255,255,.86);
    color:var(--text-secondary);
    font-size:13px;
    font-weight:var(--font-weight-semibold);
    cursor:pointer;
  }

  .chatbot-conversation{
    display:grid;
    flex:1 1 auto;
    gap:14px;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding:0 0 24px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .chatbot-conversation::-webkit-scrollbar{
    width:0;
    height:0;
  }

  .chatbot-message{
    display:flex;
    align-items:flex-end;
    gap:10px;
    max-width:100%;
  }

  .chatbot-message--user{
    justify-content:flex-end;
  }

  .chatbot-message__avatar{
    width:32px;
    height:32px;
    border-radius:12px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.88);
    border:1px solid color-mix(in srgb, var(--border-subtle) 94%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    flex:0 0 auto;
  }

  .chatbot-message__bubble{
    max-width:300px;
    padding:16px 16px 12px;
    border-radius:24px;
    box-shadow:var(--shadow-card-strong);
  }

  .chatbot-message--bot .chatbot-message__bubble{
    background:linear-gradient(145deg, #0B5CA9, #0A4F8A);
    color:#FFFFFF;
    border-bottom-left-radius:12px;
  }

  .chatbot-message--user .chatbot-message__bubble{
    background:linear-gradient(145deg, #0B63CE, #1E73DA);
    color:#FFFFFF;
    border-bottom-right-radius:12px;
  }

  .chatbot-message__text{
    font-size:16px;
    line-height:1.48;
    font-weight:var(--font-weight-medium);
  }

  .chatbot-message__meta{
    margin-top:10px;
    font-size:12.5px;
    line-height:1.2;
    font-weight:var(--font-weight-semibold);
    color:rgba(255,255,255,.82);
    text-align:right;
  }

  .chatbot-composer{
    position:relative;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 44px;
    gap:10px;
    align-items:center;
    margin:0 -18px 0;
    padding:14px 18px calc(16px + env(safe-area-inset-bottom, 0px));
    background:rgba(255,255,255,.92);
    border-top:1px solid #E6EAF0;
    box-shadow:0 -4px 20px rgba(0,0,0,.04);
    -webkit-backdrop-filter:blur(16px) saturate(180%);
    backdrop-filter:blur(16px) saturate(180%);
  }

  .chatbot-composer__icon,
  .chatbot-composer__send{
    width:44px;
    height:44px;
    border:0;
    border-radius:16px;
    background:#FFFFFF;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    display:grid;
    place-items:center;
    cursor:pointer;
  }

  .chatbot-composer__send{
    background:#0B63CE;
    border-color:transparent;
  }

  .chatbot-composer__send .fa-icon{
    filter:brightness(0) invert(1);
  }

  .chatbot-composer__field{
    min-height:52px;
    border:1px solid color-mix(in srgb, var(--border-subtle) 92%, transparent);
    background:rgba(255,255,255,.88);
    border-radius:18px;
    padding:0 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:var(--text-secondary);
    font-size:14px;
    font-weight:var(--font-weight-medium);
    box-shadow:0 8px 18px rgba(15,23,42,.05);
    cursor:text;
  }

  .profile-data-card__head{
    margin-bottom:8px;
  }

  .profile-data-card__title{
    margin:0;
    font-size:21px;
    line-height:1.2;
    letter-spacing:-.4px;
    font-weight:700;
    color:var(--text-primary);
  }

  .profile-data-list{
    display:flex;
    flex-direction:column;
  }

  .profile-data-item{
    padding:14px 0 16px;
    border-bottom:1px solid var(--border-subtle);
  }

  .profile-data-item:last-child{
    border-bottom:0;
    padding-bottom:8px;
  }

  .profile-data-label{
    font-size:12.5px;
    line-height:1.35;
    font-weight:var(--font-weight-semibold);
    text-transform:uppercase;
    letter-spacing:.04em;
    color:color-mix(in srgb, var(--text-secondary) 88%, #FFFFFF 12%);
    margin-bottom:7px;
  }

  .profile-data-value{
    font-size:16px;
    line-height:1.35;
    font-weight:var(--font-weight-medium);
    letter-spacing:-.15px;
    color:var(--text-primary);
  }

  @keyframes fadeUp{
    from{opacity:0; transform:translateY(14px)}
    to{opacity:1; transform:translateY(0)}
  }

  @media (max-height: 880px){
    body{align-items:start}
  }

.fa-icon{
  display:block;
  width:24px;
  height:24px;
  object-fit:contain;
  object-position:center;
}

.fa-icon--sm{
  width:21px;
  height:21px;
  opacity:.8;
}

.fa-icon--search{
  width:21px;
  height:21px;
  opacity:.7;
}

.fa-icon--pill{
  width:21px;
  height:21px;
  opacity:.9;
}

.fa-icon--quick{
  width:27px;
  height:27px;
}

.fa-icon--service{
  width:22px;
  height:22px;
}

.fa-icon--nav{
  width:24px;
  height:24px;
  opacity:.66;
}

.nav-icon-shell{
  width:32px;
  height:34px;
  display:grid;
  place-items:center;
  overflow:visible;
  flex:0 0 auto;
}

.fa-icon--nav-bot{
  width:30px;
  height:30px;
  padding:0;
}

.fa-icon--chevron{
  width:12px;
  height:12px;
  filter: brightness(0) saturate(100%) invert(22%) sepia(95%) saturate(2273%) hue-rotate(204deg) brightness(93%) contrast(106%);
}

.fa-icon--row-arrow{
  width:13px;
  height:13px;
  filter: brightness(0) saturate(100%) invert(47%) sepia(10%) saturate(814%) hue-rotate(184deg) brightness(92%) contrast(87%);
}

.gold .fa-icon,
.green .fa-icon,
.blue .fa-icon{
  filter: brightness(0) saturate(100%);
}

.gold .fa-icon{
  filter: brightness(0) saturate(100%) invert(57%) sepia(86%) saturate(1370%) hue-rotate(13deg) brightness(95%) contrast(101%);
}

.green .fa-icon{
  filter: brightness(0) saturate(100%) invert(44%) sepia(89%) saturate(1147%) hue-rotate(95deg) brightness(92%) contrast(87%);
}

.blue .fa-icon,
.quick-card .fa-icon{
  filter:none;
}

.search .fa-icon,
.nav-item .fa-icon{
  filter: brightness(0) saturate(100%) invert(53%) sepia(10%) saturate(628%) hue-rotate(184deg) brightness(92%) contrast(86%);
}

.nav-item.active .fa-icon{
  filter:none;
  opacity:.9;
}

.service-icon .fa-icon{
  filter:none;
}

.tap {
  transform: scale(.985);
}

.search:focus-visible,
.profile-trigger:focus-visible,
.business-trips-back:focus-visible,
.business-trip-card__menu:focus-visible,
.business-trips-filter:focus-visible,
.business-trips-search:focus-visible,
.business-trips-create:focus-visible,
.trip-create-back:focus-visible,
.trip-step:focus-visible,
.trip-card__tag:focus-visible,
.trip-chip:focus-visible,
.trip-total-card__action:focus-visible,
.trip-create-action:focus-visible,
.trip-confirm-dialog__button:focus-visible,
.trip-success-dialog__button:focus-visible,
.business-trip-menu-dialog__action:focus-visible,
.profile-back:focus-visible,
.profile-logout:focus-visible,
.profile-action-row:focus-visible,
.profile-dialog__button:focus-visible{
  outline:2px solid color-mix(in srgb, var(--blue) 40%, transparent);
  outline-offset:3px;
}

.fa-icon--business-trips-plus{
  width:15px;
  height:15px;
  filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
  opacity:.96;
}

.fa-icon--business-trip-menu{
  width:18px;
  height:18px;
  filter:brightness(0) saturate(100%) invert(52%) sepia(12%) saturate(726%) hue-rotate(184deg) brightness(92%) contrast(86%);
}

.fa-icon--business-trip-chevron{
  width:12px;
  height:12px;
  filter: brightness(0) saturate(100%) invert(47%) sepia(10%) saturate(814%) hue-rotate(184deg) brightness(92%) contrast(87%);
}

.fa-icon--profile-logout{
  width:20px;
  height:20px;
  filter: brightness(0) saturate(100%) invert(22%) sepia(12%) saturate(728%) hue-rotate(182deg) brightness(93%) contrast(90%);
  opacity:.84;
}

.fa-icon--profile-logout-dialog{
  width:22px;
  height:22px;
  filter: brightness(0) saturate(100%) invert(22%) sepia(95%) saturate(2273%) hue-rotate(204deg) brightness(93%) contrast(106%);
}
