    .btn-google-signin:hover {
      background: #FCE8B8;
      transform: translateY(-1px);
      box-shadow: 3px 6px 14px rgba(160, 130, 80, 0.26);
    }
    .btn-google-signin:active {
      transform: translateY(1.5px);
      box-shadow: 1.5px 2.5px 5px rgba(160, 130, 80, 0.2);
    }
    .checkbox-wrap {
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      cursor: pointer;
      user-select: none;
      margin: 0 auto;
      padding: 4px 8px;
      border-radius: 12px;
      border: none;
      transition: background 0.12s ease;
    }
    .checkbox-wrap:hover {
      background: rgba(220, 200, 180, 0.2);
    }
    .checkbox-box {
      width: 22px;
      height: 22px;
      min-width: 22px;
      min-height: 22px;
      border-radius: 7px;
      border: none;
      background: #C8E2D2;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 1.5px 2px 5px rgba(35, 70, 50, 0.18), inset 0.5px 1px 0 rgba(253, 241, 204, 0.9);
      transition: all 0.15s ease;
      flex-shrink: 0;
    }
    .checkbox-box.unchecked {
      background: #EADBCC;
      box-shadow: inset 1px 1.5px 3px rgba(140, 115, 90, 0.2);
    }
    .checkbox-check-icon {
      stroke: #1E3F30;
      stroke-width: 3.2;
      fill: none;
      transition: opacity 0.15s ease;
    }
    .checkbox-box.unchecked .checkbox-check-icon {
      opacity: 0;
    }
    .checkbox-label-text {
      font-size: 13px;
      font-weight: 700;
      color: #5A4E40;
      white-space: nowrap;
    }
    .security-note {
      font-size: 11px;
      font-weight: 700;
      color: #726453;
      line-height: 1.35;
      text-align: center;
      padding: 0 4px;
    }
    .auth-error-banner {
      background: #FCD6CF;
      color: #58241B;
      border-radius: 16px;
      padding: 12px 14px;
      border: none;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.4;
      display: none;
      align-items: flex-start;
      gap: 10px;
      box-shadow: 2.5px 4px 10px rgba(180, 60, 40, 0.15);
      text-align: left;
    }
    .auth-error-icon {
      font-size: 16px;
      flex-shrink: 0;
      margin-top: 1px;
    }
    .auth-success-banner {
      background: #C8E2D2;
      color: #1E3F30;
      border-radius: 16px;
      padding: 12px 14px;
      border: none;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.4;
      display: none;
      align-items: center;
      gap: 10px;
      box-shadow: 2.5px 4px 10px rgba(35, 70, 50, 0.15);
      text-align: left;
    }
    
    
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
    }
    body, button, input, select, textarea, span, div, p, h1, h2, h3 {
      font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
    }

    html, body {
      overflow-x: hidden;
      touch-action: manipulation;
      -webkit-text-size-adjust: 100%;
      scrollbar-gutter: stable;
    }

    body {
      font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
      background: #FAF2E7;
      color: #383025;
      padding: 20px 14px;
      line-height: 1.4;
    }

    .container {
      max-width: 1320px;
      margin: 0 auto;
    }

    /* ВЕРХНЕЕ МЕНЮ ПЕРЕКЛЮЧЕНИЯ ЭКРАНОВ */
    .screen-switcher {
      display: flex;
      justify-content: center;
      gap: 10px;
      margin-bottom: 22px;
      flex-wrap: wrap;
    }
    .switcher-btn {
      padding: 8px 16px;
      border-radius: 12px;
      text-decoration: none;
      font-size: 13px;
      font-weight: 800;
      color: #726453;
      background: #EADBCC;
      transition: all 0.15s ease;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    .switcher-btn:hover {
      background: #DFD0BE;
      color: #2F261D;
    }
    .switcher-btn.active {
      background: #5A4E40;
      color: #FFFFFF;
      box-shadow: 0 4px 12px rgba(90, 78, 64, 0.25);
    }

    /* ЗАГОЛОВОК */
    .top-header {
      margin-bottom: 20px;
      text-align: center;
    }
    .badge-status {
      display: inline-block;
      font-size: 11px;
      font-weight: 900;
      padding: 4px 12px;
      border-radius: 8px;
      background: #5A4E40;
      color: #fff;
      margin-bottom: 6px;
    }
    .screen-title {
      font-size: 24px;
      font-weight: 900;
      color: #2F261D;
      letter-spacing: -0.3px;
    }
    .screen-desc {
      font-size: 13px;
      color: #726453;
      margin-top: 4px;
    }

    /* СЕТКА: ТЕЛЕФОН СЛЕВА, ДЕСКТОП СПРАВА */
    .duo-grid {
      display: grid;
      grid-template-columns: 360px 1fr;
      gap: 28px;
      align-items: start;
    }
    @media (max-width: 1060px) {
      .duo-grid { grid-template-columns: 1fr; }
    }

    /* ---------------- ТЕЛЕФОН (IPHONE) ---------------- */
    .iphone-box {
      background: #F2E8DC;
      border-radius: 46px;
      padding: 12px;
      box-shadow: 14px 24px 50px -6px rgba(150, 125, 100, 0.32), 4px 8px 16px rgba(150, 125, 100, 0.15);
      border: 4px solid #EADBCC;
      max-width: 360px;
      margin: 0 auto;
    }
    .iphone-screen {
      background: #FAF2E7;
      border-radius: 36px;
      padding: 16px 14px 20px 14px;
      min-height: 690px;
      display: flex;
      flex-direction: column;
    }
    .iphone-island {
      width: 86px;
      height: 20px;
      background: #2B241E;
      border-radius: 12px;
      margin: 0 auto 10px auto;
    }
    .iphone-status {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 11px;
      font-weight: 700;
      color: #5A4E40;
      margin-bottom: 12px;
      padding: 0 6px;
    }
    .iphone-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 14px;
      padding: 0 4px;
    }
    .iphone-title {
      font-size: 22px;
      font-weight: 900;
      font-family: 'Manrope', sans-serif; font-weight: 900;
      color: #2F261D;
    }
    .cat-circle {
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background: #FCEFD9;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 4px 6px 14px rgba(160, 135, 110, 0.28), -2px -2px 6px rgba(255, 255, 255, 0.95);
      border: 1.5px solid #F5E5D0;
    }

    /* Календарь на телефоне: НЕЖНЫЕ СЛИВКИ #FDF1CC (НЕ БЕЛЫЙ) */
    .cal-box-mobile {
      background: #FDF1CC;
      border-radius: 20px;
      padding: 14px 10px;
      margin-bottom: 14px;
      box-shadow: 6px 10px 24px -4px rgba(175, 150, 110, 0.28), -3px -3px 10px rgba(255, 255, 255, 0.8), inset 1px 1px 1.5px rgba(255, 255, 255, 0.9);
      border: none;
    }
    .cal-nav {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 13px;
      font-weight: 800;
      color: #4A3E25;
      margin-bottom: 10px;
      padding: 0 6px;
      font-family: 'Manrope', sans-serif; font-weight: 900;
    }
