    :root{
      /* Local Media Theme - Seibu Yellow Base */
      --bg:#F7F3E8;           /* 紙面のようなあたたかい背景 */
      --card:#FFFDF7;         /* 少しだけ紙色を含むカード面 */
      --muted:#756F61;        /* 補足情報用のウォームグレー */
      --text:#1F1A12;         /* 本文用の墨色 */
      --line:#E5DDC8;         /* 紙色に馴染むボーダー */
      --accent:#F7C114;       /* Seibu Yellow: ブランドカラー */
      --accent-text:#111827;  /* アクセント上の文字色（黒に近い濃色） */
      --page-pad:16px;        /* モバイル基準の左右余白 */
      --card-radius:12px;     /* カード角丸の統一 */
      --card-pad:16px;        /* カード内余白の統一 */
      --section-gap:16px;     /* セクション間の縦余白 */
      --composer-space:112px;
      --ink:#1F1A12;
      --green:#2E8B57;
      --paper:#FFFDF7;
      --paper-deep:#EFE6D0;
      --shadow-soft:0 14px 32px rgba(69,55,27,.10);
    }
    *{ box-sizing:border-box; }
    html, body{
      width:100%;
      overflow-x:hidden;
    }
    body{
      margin:0;
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Noto Sans JP",sans-serif;
      background:var(--bg);
      color:var(--text);
      -webkit-text-size-adjust:100%;
      text-size-adjust:100%;
    }
    button,
    input,
    textarea,
    select{
      font:inherit;
      letter-spacing:0;
    }
    .app{max-width:720px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;}
    .main{display:flex;flex-direction:column;min-width:0;max-width:100%;overflow:hidden;}
    .topbar{
      position:sticky;top:0;
      background:rgba(255,255,255,.95);
      backdrop-filter:blur(10px);
      border-bottom:1px solid var(--line);
      z-index:9999;
      width:100%;
      max-width:100%;
      overflow-x:visible;
      overflow-y:visible;
      transition:box-shadow .2s ease, background .2s ease;
    }
    .topbar-inner{
      padding:12px var(--page-pad) 10px;
      display:flex;
      align-items:center;
      gap:10px;
      overflow-x:visible;
      overflow-y:visible;
      width:100%;
      max-width:100%;
      transition:padding .2s ease;
    }
    .brand{
      font-weight:800;
      letter-spacing:.6px;
      display:flex;
      align-items:center;
      gap:8px;
      cursor:pointer;
      user-select:none;
      transition:opacity 0.2s ease;
    }
    .brand:hover{
      opacity:0.7;
    }
    .brand:active{
      opacity:0.5;
    }
    .brand img{
      height:24px;
      width:auto;
      display:block;
      object-fit:contain;
      flex-shrink:0;
      pointer-events:none;
    }
    .brand span{
      display:inline-block;
      pointer-events:none;
    }
    .kicker{color:var(--muted);font-size:12px;margin-top:2px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .stationBtn, .refreshBtn{
      border:1px solid var(--line);
      background:transparent;
      color:var(--text);
      padding:8px 10px;
      border-radius:12px;
      cursor:pointer;
      text-decoration:none;
      font:inherit;
      font-size:14px;
      font-weight:700;
      line-height:1.2;
      letter-spacing:0;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      appearance:none;
      -webkit-appearance:none;
      transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
    }
    .stationBtn:hover{
      background:rgba(247,193,20,.08);
      border-color:rgba(247,193,20,.45);
    }
    .refreshBtn{
      border-color:rgba(247,193,20,.4);
      box-shadow:0 0 0 3px rgba(247,193,20,.12);
      background:rgba(247,193,20,.08);
      display:flex;align-items:center;gap:8px;
      font-weight:600;
    }
    .refreshBtn:hover{
      background:rgba(247,193,20,.15);
      border-color:rgba(247,193,20,.6);
    }
    #myListBtn{
      gap:6px;
      background:linear-gradient(180deg,#ffd84a 0%,#F7C114 100%);
      border-color:#F7C114;
      color:#111827;
      font-weight:700;
      box-shadow:0 6px 14px rgba(247,193,20,.24),0 0 0 3px rgba(247,193,20,.13);
    }
    #nearbyEventsBtn,
    #tomorrowEventsBtn{
      gap:6px;
      background:linear-gradient(180deg,#fffdf5 0%,#fff4c7 100%);
      border-color:rgba(247,193,20,.72);
      color:#111827;
      font-weight:700;
    }
    #myListBtn:hover,
    #nearbyEventsBtn:hover,
    #tomorrowEventsBtn:hover{
      transform:translateY(-1px);
      border-color:#F7C114;
      box-shadow:0 8px 18px rgba(17,24,39,.12),0 0 0 3px rgba(247,193,20,.18);
    }
    @media (min-width: 769px) {
      .topbar-inner{
        flex-wrap:wrap;
        row-gap:10px;
      }
      .kicker{
        flex:1 1 170px;
        min-width:0;
      }
      .stationBtn, .refreshBtn{
        flex:0 1 auto;
        min-height:38px;
      }
      #myListBtn,
      #nearbyEventsBtn,
      #tomorrowEventsBtn{
        min-width:0;
        padding:9px 14px;
        border-radius:999px;
      }
    }
    .spin{
      width:12px;height:12px;
      border:2px solid rgba(247,193,20,.4);
      border-top-color:#F7C114;
      border-radius:50%;
      display:none;
      animation:spin .8s linear infinite;
    }
    @keyframes spin{to{transform:rotate(360deg)}}
    @keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.5;}}
    .tabs{
      display:flex;
      gap:8px;
      padding:0 var(--page-pad) 12px;
      overflow-x:auto;
      overflow-y:hidden;
      white-space:nowrap;
      scroll-behavior:smooth;
      -webkit-overflow-scrolling:touch;
      width:100%;
      max-width:100%;
      box-sizing:border-box;
      min-width:0;
      /* スクロールバーを非表示（見た目を良くする） */
      scrollbar-width:none; /* Firefox */
      -ms-overflow-style:none; /* IE/Edge */
    }
    .tabs::-webkit-scrollbar{display:none;} /* Chrome/Safari */
    
    /* スマホサイズでは2行表示 */
    @media (max-width: 768px) {
      .topbar-inner{
        gap:8px;
        padding:10px var(--page-pad);
        flex-wrap:wrap;
        align-items:center;
      }
      .brand{
        font-size:16px;
        flex-shrink:0;
        white-space:nowrap;
        order:1;
        flex:1 1 100%;
      }
      .brand img{
        height:22px;
      }
      .brand span{
        font-size:18px;
      }
      .kicker{
        display:none;
      }
      .stationBtn, .refreshBtn{
        padding:8px 10px;
        font-size:13px;
        flex:1 1 calc(33.333% - 8px);
        min-width:0;
        white-space:nowrap;
        justify-content:center;
      }
      .refreshBtn{display:none;}
      .feed-tools-head .refreshBtn{display:flex;}
      #notificationBtn{
        order:2;
        flex:0 0 42px;
        min-width:auto;
        padding:8px;
      }
      #userBtn{
        order:3;
        flex:1 1 calc(100% - 50px);
      }
      #myListBtn{
        order:4;
        flex:1 1 100%;
        width:100%;
        min-height:48px;
        font-size:15px;
      }
      #nearbyEventsBtn,
      #tomorrowEventsBtn{
        order:5;
        flex:1 1 100%;
        width:100%;
        min-height:44px;
        font-size:14px;
      }
      #tomorrowEventsBtn{order:6;}
      #stationBtn{order:7;}
      .topbar a.stationBtn[href="/notes.php"]{order:8;}
      .topbar a.stationBtn[href="/stations.php"]{order:9;}
      .tabs{
        flex-wrap:wrap;
        white-space:normal;
        overflow-x:visible;
        overflow-y:visible;
        gap:6px;
        padding:0;
      }
    }
    .tab{
      flex:0 0 auto;
      flex-shrink:0;
      border:1px solid var(--line);
      background:transparent;
      color:var(--text);
      padding:8px 10px;
      border-radius:999px;
      cursor:pointer;
      font-size:13px;
      opacity:.92;
      white-space:nowrap;
    }
    .tab.active{
      background:#F7C114;
      border-color:#F7C114;
      color:#000000;
      font-weight:700;
      box-shadow:0 0 0 3px rgba(247,193,20,.15);
      opacity:1;
    }
    .tab:hover:not(.active){
      background:rgba(247,193,20,.08);
      border-color:rgba(247,193,20,.4);
    }
    .feed-tools{margin:0 0 14px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;}
    .feed-tools-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:700;}
    .feed-tools-head .refreshBtn{flex:0 0 auto;min-width:0;padding:7px 12px;font-size:12px;justify-content:center;}
    .searchRow{padding:0 0 10px;display:flex;gap:8px;align-items:center;}
    .searchTopRight{display:none;}
    .searchInput{
      width:100%;
      border:1px solid var(--line);
      background:var(--card);
      color:var(--text);
      padding:10px 12px;
      border-radius:12px;
      font-size:13px;
      outline:none;
    }
    .searchInput:focus{
      border-color:rgba(247,193,20,.6);
      box-shadow:0 0 0 3px rgba(247,193,20,.12);
    }
    .hintRow{
      padding:0;
      color:var(--muted);
      font-size:12px;
      display:flex;
      justify-content:space-between;
      gap:10px;
      align-items:center;
    }
    .hintRow b{color:var(--text);font-weight:700;}
    .mini{
      opacity:.9;
      border:1px solid var(--line);
      border-radius:999px;
      padding:4px 10px;
      cursor:pointer;
      background:transparent;
      color:var(--text);
      font-size:12px;
    }
    .feed{padding:12px var(--page-pad) calc(var(--composer-space) + env(safe-area-inset-bottom, 0px));display:flex;flex-direction:column;gap:12px;}
    .card{
      background:var(--card);
      border:1px solid var(--line);
      border-radius:var(--card-radius);
      padding:var(--card-pad);
      transition:box-shadow 0.2s ease, transform 0.2s ease;
    }
    .card:hover{
      box-shadow:0 8px 20px rgba(15,23,42,.12);
      transform:translateY(-1px);
    }
    
    /* カードレイアウト（サムネイル + コンテンツ） */
    .cardLayout{display:flex;gap:12px;}
    .cardThumbnailWrap{
      flex-shrink:0;
      width:64px;
      height:64px;
      border-radius:12px;
      overflow:hidden;
      background:#F3F4F6;
      border:1px solid #E5E7EB;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .cardThumbnail{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      cursor:pointer;
      transition:transform .2s ease;
    }
    .cardThumbnail:hover{
      transform:scale(1.05);
    }
    .cardThumbnailIcon{
      width:100%;
      height:100%;
      display:flex;
      align-items:center;
      justify-content:center;
      background:#F3F4F6;
      border:1px solid #E5E7EB;
      color:#6B7280;
      opacity:1;
    }
    .cardThumbnailIcon svg{
      width:32px;
      height:32px;
    }
    .cardContent{
      flex:1;
      min-width:0;
    }
    
    .meta{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:12px;}
    .clusterRow{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:4px;}
    .clusterBadge{
      background:rgba(255,229,100,.35);
      color:#7a5800;
      padding:2px 8px;
      border-radius:999px;
      font-size:11px;
      font-weight:600;
      letter-spacing:.2px;
    }
    .clusterSources{
      display:flex;
      gap:6px;
      flex-wrap:wrap;
    }
    .clusterSourceBadge{
      font-size:10px;
      color:var(--muted);
      border-radius:999px;
      padding:2px 8px;
      background:rgba(107,114,128,.1);
    }
    .badge{font-size:11px;border:1px solid var(--line);padding:3px 8px;border-radius:999px;white-space:nowrap;font-weight:600;}
    .badge.station{
      background:rgba(247,193,20,.15);
      border-color:rgba(247,193,20,.5);
      color:#F7C114;
    }
    .badge.log{
      background:rgba(134,239,172,.12);
      border-color:rgba(134,239,172,.4);
      color:rgba(134,239,172,.95);
    }
    .badge.official{
      background:rgba(251,146,60,.12);
      border-color:rgba(251,146,60,.4);
      color:rgba(251,146,60,.95);
    }
    .time{margin-left:auto;white-space:nowrap;}
    .text{margin:8px 0 0;font-size:15px;line-height:1.45;}
    .sub{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.35;}
    .link{margin-top:8px;display:inline-block;color:var(--accent);text-decoration:none;font-size:13px;}
    
    .audioPlayer{margin-top:12px;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:12px;}
    .audioControls{display:flex;align-items:center;gap:12px;}
    .audioPlayBtn{width:40px;height:40px;border-radius:50%;background:var(--accent);color:var(--accent-text);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s,opacity .2s;}
    .audioPlayBtn:hover{transform:scale(1.1);opacity:.9;}
    .audioPlayBtn.playing{background:#ef4444;}
    .audioPlayBtn.playing svg{transform:scale(1.2);}
    .audioProgressWrap{flex:1;display:flex;flex-direction:column;gap:4px;}
    .audioProgressBar{width:100%;height:4px;background:var(--line);border-radius:2px;overflow:hidden;cursor:pointer;}
    .audioProgress{height:100%;background:var(--accent);width:0%;transition:width .1s;}
    .audioTime{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);}
    .audioVolumeBtn{width:32px;height:32px;border:none;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;transition:background .2s;}
    .audioVolumeBtn:hover{background:var(--line);}
    
    .videoPlayer{
      margin-top:12px;
      width:100%;
      max-width:100%;
      overflow:hidden; /* はみ出しを防ぐ */
    }
    .videoPlayer video{
      width:100%;
      max-width:100%;
      max-height:min(70vh, 600px); /* 画面の高さの70%または600pxの小さい方 */
      height:auto;
      border-radius:12px;
      background:#000;
      border:1px solid var(--line);
      object-fit:contain; /* アスペクト比を保ちつつ画面内に収める */
      display:block;
    }
    /* スマホでの動画表示最適化 */
    @media (max-width: 768px) {
      .videoPlayer video{
        max-height:50vh; /* スマホでは画面の高さの50%まで */
      }
    }
    
    .userInfo{display:flex;gap:8px;align-items:center;margin-top:8px;padding:4px;border-radius:8px;transition:background .2s ease;}
    .userInfo:hover{background:rgba(125,211,252,.08);}
    .avatar{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);background:var(--card);}
    .nickname{font-size:13px;font-weight:600;color:var(--text);}
    .userInfo:hover .nickname{color:var(--accent);}
    
    .actions-row{display:flex;gap:12px;margin-top:10px;padding-top:8px;border-top:1px solid var(--line);}
    .actionBtn{background:transparent;border:none;color:var(--muted);font-size:13px;cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:8px;}
    .actionBtn svg{transition:all .2s ease;}
    .actionBtn:hover{background:rgba(247,193,20,.12);color:#F7C114;}
    .actionBtn.liked{color:rgba(248,113,113,.95);}
    .actionBtn.liked svg{fill:rgba(248,113,113,.95);stroke:rgba(248,113,113,.95);}
    .actionBtn.liked:hover{background:rgba(248,113,113,.08);}
    .deleteBtn{color:#ef4444!important;}
    .deleteBtn:hover{background:rgba(239,68,68,.08)!important;color:#f87171!important;}
    
    .replyList{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;}
    .replyCard{padding:10px;background:rgba(18,24,38,.6);border:1px solid var(--line);border-radius:12px;}
    
    .replyTo{
      margin:8px 0;
      padding:8px 12px;
      background:rgba(247,193,20,.1);
      border-left:3px solid rgba(247,193,20,.6);
      border-radius:8px;
      font-size:13px;
      line-height:1.4;
      transition:background 0.2s;
      display:flex;
      align-items:center;
      gap:4px;
      cursor:pointer;
    }
    .replyTo svg{flex-shrink:0;color:#F7C114;}
    .replyTo:hover{
      background:rgba(247,193,20,.18);
      border-left-color:#F7C114;
    }
    .shareRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
    .shareBtn{border:1px solid var(--line);background:var(--bg);color:var(--text);padding:8px 12px;border-radius:999px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
    .shareBtn.primary{background:#111827;color:#fff;border-color:#111827;}
    .shareBox{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 6px 20px rgba(15,23,42,.08);}
    .shareHeader{font-size:12px;color:var(--muted);margin-bottom:8px;}
    .shareText{width:100%;min-height:120px;border:1px#E5E7EB;border-radius:12px;padding:10px;font-size:14px;color:var(--text);line-height:1.55;resize:vertical;}
    .shareLinkLabel{font-size:12px;color:var(--muted);margin-top:12px;}
    .shareLink{display:inline-block;margin-top:6px;font-size:12px;color:var(--accent);word-break:break-all;}
    .shareImageRow{margin-top:10px;display:flex;gap:10px;align-items:center;}
    .shareImageInput{display:none;}
    .shareImageBtn{border:1px solid var(--line);background:var(--card);color:var(--text);padding:8px 12px;border-radius:12px;cursor:pointer;font-size:13px;}
    .shareImagePreview{margin-top:8px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
    .shareImagePreview img{width:100%;border-radius:10px;border:1px solid var(--line);object-fit:cover;max-height:160px;}
    .imgGrid{margin-top:10px;display:grid;gap:8px;}
    .imgGrid.two{grid-template-columns:repeat(2,1fr);}
    .imgGrid.one{grid-template-columns:1fr;}
    .imgItem{
      width:100%;
      border-radius:14px;
      border:1px solid var(--line);
      object-fit:cover;
      max-height:280px;
      background:#0f1624;
      cursor:pointer;
      transition:transform .2s ease, box-shadow .2s ease;
    }
    .imgItem:hover{
      transform:scale(1.02);
      box-shadow:0 4px 16px rgba(125,211,252,.15);
    }
    .composer{
      position:fixed;left:0;right:0;bottom:0;
      background:rgba(255,255,255,.95);
      backdrop-filter:blur(10px);
      border-top:1px solid var(--line);
      z-index:9998;
      max-height:none;
      transform:translateY(0);
      opacity:1;
      transition:opacity .25s ease, transform .25s ease, max-height .25s ease;
      will-change:transform, opacity;
      overflow:hidden;
      padding-bottom:env(safe-area-inset-bottom, 0px);
    }
    .composer-inner{max-width:720px;margin:0 auto;padding:10px var(--page-pad);display:flex;gap:10px;align-items:center;}
    .postBtn{
      flex:1;border:1px solid var(--line);
      background:var(--card);color:var(--text);
      padding:12px 14px;border-radius:14px;
      cursor:pointer;text-align:left;
      transition:all 0.2s ease;
      display:flex;flex-direction:column;gap:8px;
    }
    .postBtn:hover{
      background:rgba(247,193,20,.08);
      border-color:rgba(247,193,20,.4);
    }
    .composerLabel{font-size:12px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;}
    .composerLine{display:flex;align-items:center;gap:6px;font-size:14px;}
    .composerPrompt{color:var(--muted);}
    .blinkCaret{
      width:2px;height:16px;background:#111827;display:inline-block;
      animation:blink 1s steps(1) infinite;
    }
    @keyframes blink { 50% { opacity:0; } }
    .composer.hidden{max-height:0;opacity:0;transform:translateY(100%);pointer-events:none;border-top-color:transparent;padding:0;overflow:hidden;margin:0;}
    .composer.hidden .composer-inner{padding:0;}
    @media (max-width: 1099px){
      .composer.hidden{
        max-height:none;
        opacity:1;
        transform:translateY(0);
        pointer-events:auto;
        border-top-color:var(--line);
        padding-bottom:env(safe-area-inset-bottom, 0px);
      }
      .composer.hidden .composer-inner{
        padding:10px var(--page-pad);
      }
    }
    .smallBtn{border:1px solid var(--line);background:transparent;color:var(--text);padding:12px 14px;border-radius:14px;cursor:pointer;}
    .danger{border-color:rgba(248,113,113,.45);color:rgba(248,113,113,.95);}
    .toast{
      position:fixed;left:50%;
      transform:translateX(-50%);
      bottom:114px;
      background:#FFFFFF;
      border:1px solid #E5E7EB;
      box-shadow:0 4px 12px rgba(0,0,0,.15);
      padding:12px 16px;
      border-radius:12px;
      color:#111827;
      font-size:13px;
      font-weight:500;
      display:none;
      z-index:20000;
      max-width:min(640px,calc(100vw - 24px));
      white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    }
    .modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:flex-start;justify-content:center;padding:18px;z-index:15000;overflow-y:auto;-webkit-overflow-scrolling:touch;}
    .panel{width:min(560px,100%);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;margin:18px auto;max-height:none;overflow-y:visible;}
    .panel h2{margin:0 0 10px;font-size:16px;}
    .row{display:flex;gap:10px;align-items:center;}
    
    /* Image Viewer */
    #externalViewerModal{background:rgba(0,0,0,.95);z-index:16000;padding:0;}
    .externalViewerContainer{
      position:relative;
      width:100vw;
      height:100vh;
      display:flex;
      flex-direction:column;
      overflow:hidden;
    }
    .externalViewerClose{
      position:fixed;top:12px;right:12px;z-index:16001;
      width:40px;height:40px;border-radius:50%;
      background:rgba(255,255,255,.9);border:none;
      display:flex;align-items:center;justify-content:center;
      cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.3);
      transition:background 0.2s;
    }
    .externalViewerClose:hover{background:rgba(255,255,255,1);}
    .externalViewerClose svg{color:#111827;width:20px;height:20px;}
    .externalViewerContent{
      width:100%;
      height:100%;
      position:relative;
      display:flex;
      align-items:stretch;
      justify-content:stretch;
      overflow:hidden;
    }
    #externalViewerIframe{
      width:100%;
      height:100%;
      border:none;
      background:#fff;
      display:block;
    }
    #imageViewerModal{background:rgba(0,0,0,.92);cursor:pointer;}
    .imageViewerContainer{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;}
    #imageViewerImg{
      max-width:90vw;
      max-height:90vh;
      object-fit:contain;
      border-radius:8px;
      box-shadow:0 8px 32px rgba(0,0,0,.5);
      cursor:default;
    }
    .imageViewerClose{
      position:absolute;
      top:20px;
      right:20px;
      background:#FFFFFF;
      border:1px solid rgba(255,255,255,.2);
      color:#111827;
      width:44px;
      height:44px;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      z-index:1;
      transition:all .2s ease;
      box-shadow:0 2px 8px rgba(0,0,0,.3);
    }
    .imageViewerClose:hover{
      background:#F3F4F6;
      transform:scale(1.05);
      box-shadow:0 4px 12px rgba(0,0,0,.4);
    }
    .imageViewerNav{
      position:absolute;
      top:50%;
      transform:translateY(-50%);
      background:#FFFFFF;
      border:1px solid rgba(255,255,255,.2);
      color:#111827;
      width:44px;
      height:44px;
      border-radius:50%;
      display:none;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition:all .2s ease;
      z-index:1;
      box-shadow:0 2px 8px rgba(0,0,0,.3);
    }
    .imageViewerNav:hover{
      background:#F3F4F6;
      transform:translateY(-50%) scale(1.05);
      box-shadow:0 4px 12px rgba(0,0,0,.4);
    }
    #imageViewerPrev{left:20px;}
    #imageViewerNext{right:20px;}
    .imageViewerNav.visible{display:flex;}
    input,textarea{
      width:100%;
      background:#F9FAFB;
      border:1px solid var(--line);
      color:var(--text);
      border-radius:14px;
      padding:12px 12px;
      font-size:14px;
      outline:none;
      transition:all 0.2s ease;
    }
    input:focus,textarea:focus{
      background:#FFFFFF;
      border-color:#F7C114;
      box-shadow:0 0 0 3px rgba(247,193,20,.25);
    }
    textarea{min-height:92px;resize:vertical;}
    .panel .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px;flex-wrap:wrap;}
    .primary{
      background:#F7C114;
      border-color:#F7C114;
      color:#000000;
      font-weight:700;
    }
    .primary:hover{
      background:#FFD13B;
      border-color:#FFD13B;
      transform:translateY(-1px);
      box-shadow:0 4px 12px rgba(247,193,20,.3);
    }
    .help{color:var(--muted);font-size:12px;margin-top:8px;line-height:1.4;}
    .results{margin-top:10px;display:flex;flex-direction:column;gap:8px;max-height:240px;overflow:auto;padding-right:2px;}
    .resultBtn{text-align:left;border:1px solid var(--line);background:var(--card);color:var(--text);padding:10px 12px;border-radius:14px;cursor:pointer;transition:background 0.2s ease, border-color 0.2s ease;}
    .resultBtn:hover{background:rgba(247,193,20,.08);border-color:rgba(247,193,20,.4);}
    .resultTitle{font-size:14px;font-weight:500;}
    .resultMeta{font-size:12px;color:var(--muted);margin-top:4px;}
    .confirmBox{margin-top:10px;border:1px solid var(--line);background:var(--bg);border-radius:14px;padding:10px 12px;}
    .confirmMain{font-size:14px;color:var(--text);}
    .confirmSub{font-size:12px;color:var(--muted);margin-top:4px;}
    .pill{display:inline-block;margin-top:8px;font-size:11px;border:1px solid var(--line);padding:3px 8px;border-radius:999px;}
    .pill.ok{border-color:rgba(134,239,172,.35);color:rgba(134,239,172,.95);}
    .fileRow{margin-top:10px;display:flex;flex-direction:column;gap:8px;}
    .previewGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
    .previewImg{width:100%;border-radius:14px;border:1px solid var(--line);object-fit:cover;max-height:220px;background:#0f1624;}
    .new-feed-banner{
      display:none;
      background:linear-gradient(145deg,#fffdf6,#fff5e0);
      border:1px solid rgba(249,115,22,.3);
      box-shadow:0 8px 30px rgba(15,23,42,.1);
      border-radius:14px;
      margin:0 14px 10px;
      padding:10px 14px;
      font-weight:600;
      color:#92400e;
      justify-content:space-between;
      align-items:center;
      gap:12px;
    }
    .new-feed-banner span{
      font-size:14px;
    }
    .new-feed-banner button{
      padding:6px 14px;
      border-radius:12px;
      border:none;
      font-weight:600;
      cursor:pointer;
    }
    /* Station page layout (SEO-first) */
    .station-page{max-width:1100px;margin:0 auto;padding:0 var(--page-pad);}
    body.home-view .station-page{display:none;}
    .home-seo{max-width:1100px;margin:0 auto var(--section-gap);padding:0 var(--page-pad);}
    body.station-selected .home-seo,
    body.note-view .home-seo{display:none;}
    .home-hero{background:#fff;border-radius:var(--card-radius);padding:26px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin:12px 0 var(--section-gap);}
    .home-hero-label{display:inline-flex;align-items:center;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:#111827;color:#fff;font-size:11px;font-weight:720;letter-spacing:.08em;}
    .home-hero h1{margin:0;color:#111827;font-size:clamp(28px,3.8vw,42px);line-height:1.36;font-weight:780;letter-spacing:0;}
    .home-hero-lead{max-width:780px;margin:14px 0 0;color:#374151;font-size:15.5px;line-height:1.85;}
    .home-hero-copy{max-width:720px;margin:18px 0 0;color:#6b7280;font-size:13px;line-height:1.75;font-weight:500;}
    .home-hero-copy::before{content:"";display:block;width:40px;height:2px;margin:0 0 10px;background:#f7c114;border-radius:999px;}
    .home-hero-segments{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin-top:22px;align-items:start;}
    .home-hero-segment{min-width:0;}
    .home-hero-segment-label{margin:0 0 8px;color:#6b7280;font-size:12px;font-weight:800;line-height:1.4;}
    .home-hero-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;}
    .home-hero-cta.single{grid-template-columns:1fr;}
    .home-hero-cta a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#111827;text-align:center;text-decoration:none;font-size:14px;font-weight:720;line-height:1.35;box-shadow:0 4px 12px rgba(15,23,42,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;}
    .home-hero-cta a:hover{transform:translateY(-1px);border-color:#F7C114;box-shadow:0 8px 18px rgba(17,24,39,.11);}
    .home-hero-cta-primary{background:linear-gradient(180deg,#ffd84a 0%,#F7C114 100%) !important;border-color:#F7C114 !important;}
    .home-hero-cta-soft{background:#fff8d8 !important;border-color:#fde68a !important;color:#7c3f00 !important;}
    .home-note-search{background:#fff;border-radius:var(--card-radius);padding:20px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin:12px 0 var(--section-gap);}
    .home-note-search-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;}
    .home-note-search h2{margin:0;color:#111827;font-size:24px;line-height:1.35;font-weight:820;}
    .home-note-search-lead{margin:4px 0 0;color:#6b7280;font-size:13.5px;line-height:1.7;}
    .home-note-search-all{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:38px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;text-decoration:none;font-size:13px;font-weight:720;}
    .home-note-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
    .home-note-search-input{width:100%;min-height:58px;padding:0 18px;border:1px solid #d1d5db;border-radius:14px;background:#f9fafb;color:#111827;font-size:17px;line-height:1.4;outline:none;}
    .home-note-search-input:focus{border-color:#F7C114;background:#fff;box-shadow:0 0 0 3px rgba(247,193,20,.22);}
    .home-note-search-submit{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 24px;border:1px solid #111827;border-radius:14px;background:#111827;color:#fff;font-size:16px;font-weight:850;cursor:pointer;white-space:nowrap;}
    .home-note-search-status{min-height:22px;margin:10px 0 0;color:#6b7280;font-size:13px;line-height:1.6;}
    .home-note-search-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px;}
    .home-note-search-grid:empty{display:none;}
    .home-note-search-more{display:none;margin-top:12px;}
    .home-note-search-more a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff8d8;color:#7c3f00;text-decoration:none;font-size:13px;font-weight:750;}
    .home-media-section{background:#fff;border-radius:var(--card-radius);padding:18px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin-bottom:var(--section-gap);}
    .home-media-section h2{margin:0 0 14px;color:#111827;font-size:19px;line-height:1.45;font-weight:760;}
    .home-popular-notes{overflow:hidden;}
    .home-popular-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
    .home-popular-card{display:flex;flex-direction:column;min-width:0;min-height:44px;color:inherit;text-decoration:none;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;transition:box-shadow .2s ease, transform .2s ease;}
    .home-popular-card:hover{box-shadow:0 10px 22px rgba(15,23,42,.10);transform:translateY(-1px);}
    .home-popular-thumb{width:100%;aspect-ratio:16 / 9;background:#f3f4f6;border-bottom:1px solid var(--line);overflow:hidden;}
    .home-popular-thumb img{display:block;width:100%;height:100%;object-fit:cover;}
    .home-popular-body{display:flex;flex-direction:column;gap:8px;padding:12px;}
    .home-popular-title{margin:0;color:#111827;font-size:15px;line-height:1.62;font-weight:720;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
    .home-popular-meta{display:flex;flex-wrap:wrap;gap:6px;color:#6b7280;font-size:12px;font-weight:500;}
    .home-popular-meta span{display:inline-flex;align-items:center;max-width:100%;padding:3px 7px;border-radius:999px;background:#f9fafb;border:1px solid var(--line);}
    .home-popular-excerpt{margin:0;color:#4b5563;font-size:13px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
    .home-popular-empty{border:1px dashed var(--line);border-radius:14px;padding:16px;color:#6b7280;font-size:14px;line-height:1.7;background:#fafafa;}
    .home-popular-empty a{font-weight:700;color:#111827;}
    .season-pick-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
    .season-pick-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;text-decoration:none;font-size:13px;font-weight:650;}
    .season-pick-nav a:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e;}
    .station-hero{display:flex;flex-direction:column;gap:14px;background:#fff;border-radius:var(--card-radius);padding:18px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin:12px 0 var(--section-gap);overflow:hidden;}
    .station-hero-copy{min-width:0;}
    .station-title{font-size:22px;font-weight:700;margin-bottom:6px;}
    .station-meta{color:#777;font-size:14px;margin-bottom:10px;}
    .station-summary{font-size:15px;line-height:1.6;color:#444;}
    .station-hero-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:142px;order:-1;}
    .station-hero-media a,.station-hero-media span{position:relative;display:block;min-width:0;aspect-ratio:16 / 9;overflow:hidden;border-radius:16px;background:#f3f4f6;border:1px solid var(--line);text-decoration:none;color:inherit;}
    .station-hero-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease;}
    .station-hero-media a:hover img{transform:scale(1.035);}
    .station-hero-media-title{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 9px;background:linear-gradient(180deg,rgba(17,24,39,0),rgba(17,24,39,.76));color:#fff;font-size:12px;font-weight:760;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    .station-hero-media-empty{display:flex !important;align-items:center;justify-content:center;padding:14px;color:#6b7280;font-size:13px;font-weight:700;line-height:1.6;text-align:center;background:linear-gradient(135deg,#fff7d6,#eef6ff);}
    .station-portal{background:#fff;border-radius:var(--card-radius);padding:18px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin:0 0 var(--section-gap);}
    .station-portal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;}
    .station-portal-head h2{margin:0;color:#111827;font-size:19px;line-height:1.45;font-weight:780;}
    .station-portal-lead{margin:4px 0 0;color:#6b7280;font-size:13px;line-height:1.7;}
    .station-portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
    .station-portal-block{min-width:0;border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px;box-shadow:0 6px 16px rgba(15,23,42,.04);}
    .station-portal-block:nth-child(1){background:linear-gradient(180deg,#fffdf5 0%,#fff 44%);border-color:#fde68a;}
    .station-portal-block:nth-child(2){background:linear-gradient(180deg,#f7fee7 0%,#fff 44%);border-color:#d9f99d;}
    .station-portal-block:nth-child(3){background:linear-gradient(180deg,#eff6ff 0%,#fff 44%);border-color:#bfdbfe;}
    .station-portal-block:nth-child(4){background:linear-gradient(180deg,#fff7ed 0%,#fff 44%);border-color:#fed7aa;}
    .station-portal-block:nth-child(5){background:linear-gradient(180deg,#f8fafc 0%,#fff 44%);}
    .station-portal-block:nth-child(6){background:linear-gradient(180deg,#f0fdf4 0%,#fff 44%);border-color:#bbf7d0;}
    .station-portal-block h3{margin:0 0 10px;color:#111827;font-size:15px;line-height:1.45;font-weight:800;}
    .station-portal-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
    .station-portal-list li{margin:0;}
    .station-portal-list a{display:grid;grid-template-columns:62px minmax(0,1fr);gap:9px;align-items:start;color:#111827;text-decoration:none;font-size:13.5px;font-weight:700;line-height:1.55;overflow-wrap:anywhere;}
    .station-portal-list a:hover .station-portal-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
    .station-portal-thumb{display:block;width:62px;aspect-ratio:4 / 3;border-radius:10px;overflow:hidden;background:#f3f4f6;border:1px solid var(--line);}
    .station-portal-thumb img{display:block;width:100%;height:100%;object-fit:cover;}
    .station-portal-text{display:block;min-width:0;}
    .station-portal-title{display:block;color:#111827;font-weight:800;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    .station-portal-meta{display:block;margin-top:3px;color:#6b7280;font-size:12px;font-weight:500;line-height:1.5;}
    .station-portal-empty{color:#6b7280;font-size:13px;line-height:1.7;}
    .station-theme-link-list,.station-nearby-link-list{display:flex;flex-wrap:wrap;gap:8px;}
    .station-theme-link-list a,.station-nearby-link-list a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;text-decoration:none;font-size:12.5px;font-weight:750;line-height:1.35;}
    .station-theme-link-list a:hover,.station-nearby-link-list a:hover{background:#fef3c7;border-color:#fcd34d;color:#92400e;}
    .station-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;}
    .station-page,
    .station-layout,
    .station-main,
    .station-sidebar,
    .station-main section{
      min-width:0;
      width:100%;
      max-width:100%;
      box-sizing:border-box;
    }
    .station-main{overflow:hidden;}
    .station-main section{background:#fff;border-radius:var(--card-radius);padding:18px var(--page-pad);box-shadow:0 2px 12px rgba(0,0,0,0.06);margin-bottom:var(--section-gap);}
    .station-notes h2,.station-feed h2{font-size:18px;margin-bottom:16px;}
    .station-notes,
    .station-feed{
      overflow:hidden;
    }
      .station-feed .feed{
        width:100%;
        max-width:none;
        margin:0;
        padding:0 0 calc(var(--composer-space) + env(safe-area-inset-bottom, 0px));
        gap:12px;
      }
    .station-feed .card,
    .station-feed .new-feed-banner{
      width:100%;
      max-width:100%;
      margin-left:0;
      margin-right:0;
      box-sizing:border-box;
    }
    .station-feed .cardLayout,
    .station-feed .cardContent{
      min-width:0;
      max-width:100%;
    }
    .station-feed .card *{
      box-sizing:border-box;
    }
    .station-feed .meta,
    .station-feed .clusterRow,
    .station-feed .clusterSources,
    .station-feed .actions-row,
    .station-feed .replyTo,
    .station-feed .userInfo{
      min-width:0;
      max-width:100%;
    }
    .station-feed .meta{
      flex-wrap:wrap;
      row-gap:6px;
    }
    .station-feed .time{
      margin-left:0;
    }
    .station-feed .text,
    .station-feed .sub,
    .station-feed .link,
    .station-feed .replyTo,
    .station-feed .replyTo span,
    .station-feed .clusterBadge,
    .station-feed .clusterSourceBadge,
    .station-feed .nickname{
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    .station-feed .link{
      max-width:100%;
    }
    .station-feed .actions-row{
      flex-wrap:wrap;
      gap:8px;
    }
    .station-feed .actionBtn{
      min-width:0;
      max-width:100%;
      flex-shrink:1;
    }
    .station-feed .deleteBtn{
      margin-left:0 !important;
    }
    .station-feed .imgGrid,
    .station-feed .audioPlayer,
    .station-feed .videoPlayer,
    .station-feed iframe,
    .station-feed video,
    .station-feed audio{
      width:100%;
      max-width:100%;
      min-width:0;
    }
    .station-feed iframe,
    .station-feed video,
    .station-feed img{
      max-width:100%;
    }
    @media (max-width: 600px){
      :root{
        --composer-space:92px;
      }
      .station-page{
        padding-left:10px;
        padding-right:10px;
      }
      .home-seo{
        padding-left:10px;
        padding-right:10px;
        padding-bottom:calc(var(--composer-space) + env(safe-area-inset-bottom, 0px) + 18px);
      }
      .home-hero{
        margin:8px 0 12px;
        padding:16px 14px;
        border-radius:14px;
        box-shadow:none;
        border:1px solid var(--line);
      }
      .home-hero h1{font-size:25px;line-height:1.38;}
      .home-hero-lead{font-size:14.5px;line-height:1.75;}
      .home-hero-segments{grid-template-columns:1fr;gap:14px;margin-top:18px;}
      .home-hero-segment-label{margin-bottom:7px;}
      .home-hero-cta{grid-template-columns:1fr 1fr;gap:8px;}
      .home-hero-cta a{min-height:44px;padding:9px 10px;border-radius:12px;font-size:13px;}
      .home-note-search{
        padding:14px 10px;
        border-radius:14px;
        box-shadow:none;
        border:1px solid var(--line);
      }
      .home-note-search-head{display:block;margin-bottom:12px;}
      .home-note-search-all{margin-top:10px;}
      .home-note-search-form{grid-template-columns:1fr;gap:8px;}
      .home-note-search-input,
      .home-note-search-submit{min-height:46px;border-radius:12px;}
      .home-note-search-grid{grid-template-columns:1fr;gap:12px;}
      .home-media-section{
        padding:14px 10px;
        border-radius:14px;
        box-shadow:none;
        border:1px solid var(--line);
      }
      .home-seo .home-media-section:last-child{
        margin-bottom:0;
      }
      .home-popular-grid{grid-template-columns:1fr;gap:12px;}
      .station-portal{
        padding:14px 10px;
        border-radius:14px;
        box-shadow:none;
        border:1px solid var(--line);
      }
      .station-portal-head{display:block;}
      .station-portal-grid{grid-template-columns:1fr;gap:10px;}
      .station-portal-block{padding:13px;}
      .station-hero{
        gap:12px;
        margin:8px 0 12px;
        padding:12px 14px;
        border-radius:14px;
        box-shadow:none;
        border:1px solid var(--line);
      }
      .station-hero-media{
        grid-template-columns:1fr 1fr 1fr;
        min-height:0;
        gap:7px;
      }
      .station-hero-media a,.station-hero-media span{border-radius:12px;}
      .station-hero-media a,.station-hero-media span{aspect-ratio:1 / 1;}
      .station-hero-media-title{display:none;}
      .station-title{
        font-size:18px;
        line-height:1.35;
        margin-bottom:4px;
      }
      .station-meta{
        margin-bottom:0;
        font-size:12px;
      }
      .station-summary{
        display:none;
      }
      .station-main section{
        padding:14px 10px;
      }
      .station-notes h2,
      .station-feed h2{
        font-size:20px;
        line-height:1.35;
        margin-bottom:14px;
      }
      .noteActions{
        justify-content:flex-start;
      }
      .note-tools{
        display:none;
      }
      .note-swipe-hint{
        margin:0 0 10px;
        font-size:13px;
      }
      .feed-tools{
        margin-bottom:14px;
        padding:10px;
        border-radius:14px;
      }
      .feed-tools-head{
        margin-bottom:8px;
      }
      .feed-tools .searchInput{
        font-size:14px;
        min-height:44px;
      }
      .feed-tools .hintRow{
        font-size:12px;
        padding-top:2px;
      }
      .composer-inner{
        padding:8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
      }
      .postBtn{
        padding:10px 12px;
        border-radius:14px;
        gap:5px;
      }
      .composerLabel{
        font-size:11px;
      }
      .composerPrompt{
        font-size:15px;
      }
      .station-feed .card{
        padding:12px;
        overflow:hidden;
      }
      .station-feed .cardLayout{
        gap:10px;
        align-items:flex-start;
      }
      .station-feed .cardThumbnailWrap{
        width:52px;
        height:52px;
        border-radius:10px;
      }
      .station-feed .cardContent{
        width:0;
        flex:1 1 auto;
      }
      .station-feed .text{
        font-size:14px;
        line-height:1.55;
      }
      .station-feed .sub{
        font-size:12px;
      }
      .station-feed .actionBtn{
        padding:5px 7px;
      }
    }
    .note-card{
      border:1px solid #eee;
      border-radius:var(--card-radius);
      padding:var(--card-pad);
      margin-bottom:var(--section-gap);
      max-width:100%;
      box-sizing:border-box;
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    .note-card .note-cover{
      width:100%;
      aspect-ratio:16 / 9;
      border-radius:14px;
      overflow:hidden;
      margin-bottom:14px;
      background:#f3f4f6;
      border:1px solid var(--line);
    }
    .note-card .note-cover-image{
      display:block;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .note-card h3{font-size:16px;margin-bottom:8px;font-weight:720;line-height:1.58;}
    .note-excerpt{font-size:14px;color:#555;margin-bottom:8px;overflow-wrap:anywhere;word-break:break-word;}
    .note-meta{font-size:12px;color:#999;margin-bottom:8px;}
    .note-readmore{color:var(--accent);font-weight:600;}
    .note-card.placeholder{border-style:dashed;color:#888;text-align:center;}
    .note-list{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:16px;
      width:100%;
      max-width:100%;
      min-width:0;
      box-sizing:border-box;
    }
    .note-list .note-card{
      width:100%;
      min-width:0;
      max-width:none;
      margin-bottom:0;
    }
    .note-more-row{
      grid-column:1 / -1;
      display:flex;
      justify-content:center;
      padding-top:2px;
    }
    .note-more-row .tab{
      min-width:min(280px,100%);
      justify-content:center;
      text-align:center;
    }
    .note-swipe-hint{font-size:12px;color:var(--muted);margin:-6px 0 8px;}
    @media (max-width: 768px){
      .note-list{grid-template-columns:1fr;gap:12px;}
      .note-card h3{
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
      }
      .note-excerpt{
        display:-webkit-box;
        -webkit-line-clamp:3;
        -webkit-box-orient:vertical;
        overflow:hidden;
      }
    }

    .note-detail{border:1px solid #eee;border-radius:var(--card-radius);padding:var(--card-pad);overflow-wrap:anywhere;word-break:break-word;}
    .note-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;}
    .note-back-top{font-size:13px;color:var(--accent);text-decoration:none;font-weight:600;}
    .note-back-top:hover{text-decoration:underline;}
    .note-context{font-size:12px;color:var(--muted);}
    .note-detail h3{font-size:18px;margin-bottom:10px;}
    .note-detail .note-body{font-size:15px;line-height:1.7;color:#333;overflow-wrap:anywhere;word-break:break-word;max-width:100%;min-width:0;overflow:hidden;}
    .note-detail .note-body *{max-width:100%;box-sizing:border-box;}
    .ekirip-note-content .ekirip-note-stack-mobile{max-width:100% !important;min-width:0 !important;}
    .ekirip-note-content .ekirip-article,
    .ekirip-note-content .ekirip-article *{overflow-wrap:break-word;word-break:normal;}
    .ekirip-countdown{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin:22px 0;
      padding:18px;
      border:1px solid #f1e5c8;
      border-radius:14px;
      background:#fff;
      box-shadow:0 8px 22px rgba(15,23,42,.05);
    }
    .ekirip-countdown-main{
      min-width:0;
      flex:1;
      display:flex;
      flex-direction:column;
      gap:6px;
    }
    .ekirip-countdown-text{
      display:block;
      color:#1f1a12;
      font-size:16px;
      font-weight:900;
      line-height:1.55;
    }
    .ekirip-countdown-main small{
      display:block;
      color:#6b7280;
      font-size:13px;
      line-height:1.7;
    }
    .ekirip-countdown-box{
      flex:0 0 auto;
      min-width:112px;
      padding:12px 14px;
      border:1px solid #f4dfaa;
      border-radius:12px;
      background:#fff8df;
      text-align:center;
      color:#1f1a12;
    }
    .ekirip-countdown-number{
      display:block;
      font-size:30px;
      font-weight:950;
      line-height:1.05;
      letter-spacing:0;
    }
    .ekirip-countdown-label{
      display:block;
      margin-top:3px;
      color:#6b5a24;
      font-size:12px;
      font-weight:850;
      line-height:1.3;
    }
    .note-author{display:flex;align-items:center;gap:10px;margin:8px 0 12px;}
    .note-author img{width:36px;height:36px;border-radius:50%;object-fit:cover;background:#eee;}
    .note-author .name{font-size:14px;color:#333;font-weight:600;}
    .note-profile{margin-top:18px;padding:18px;border:1px solid #e8e2d4;background:#fffdf8;border-radius:16px;}
    .note-profile-main{display:flex;gap:12px;align-items:flex-start;color:inherit;text-decoration:none;}
    .note-profile img{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#eee;}
    .note-profile .meta{font-size:14px;color:#555;line-height:1.6;}
    .note-profile .meta .name{font-weight:700;color:#333;margin-bottom:4px;}
    .note-profile .author-notes-link{display:inline-block;margin-top:8px;font-size:13px;font-weight:700;color:#8a5b00;text-decoration:none;}
    .note-profile .company{margin:16px 0 0 64px;padding:14px 15px;border:1px solid #ecdcae;border-radius:12px;background:#fff;color:#374151;overflow-wrap:anywhere;}
    .note-profile .company-label{font-size:11px;font-weight:700;color:#8a6a21;margin-bottom:4px;}
    .note-profile .company-name{font-size:15px;font-weight:800;color:#1f2937;}
    .note-profile .company a{display:block;font-size:13px;font-weight:500;margin-top:3px;color:#8a5b00;}
    .note-profile .company-description{font-size:13px;font-weight:400;line-height:1.7;margin-top:9px;padding-top:9px;border-top:1px solid #eee3c5;color:#4b5563;white-space:pre-wrap;}
    .note-author-notes{margin-top:14px;border-top:1px solid #eee;padding-top:14px;}
    .note-author-notes-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
    .note-author-notes-title{font-size:16px;font-weight:800;color:#111827;}
    .note-author-notes summary{list-style:none;cursor:pointer;}
    .note-author-notes summary::-webkit-details-marker{display:none;}
    .note-author-notes-cta{display:inline-flex;align-items:center;justify-content:center;border:1px solid #111827;background:#111827;color:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;text-decoration:none;}
    .note-author-note-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
    .note-author-note-list a{font-size:14px;font-weight:700;color:#111827;text-decoration:none;}
    .note-author-note-list a:hover{text-decoration:underline;}
    .note-author-note-date{font-size:12px;color:var(--muted);}
    .note-author-note-empty{font-size:13px;color:var(--muted);line-height:1.6;}
    .note-mid-links{margin:24px 0;padding:16px;border:1px solid #fde68a;border-radius:16px;background:#fffdf5;box-shadow:0 6px 16px rgba(15,23,42,.04);}
    .note-mid-links h2{margin:0 0 10px !important;color:#111827;font-size:17px !important;line-height:1.45 !important;font-weight:850 !important;}
    .note-mid-links ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
    .note-mid-links li{margin:0;padding:0;}
    .note-mid-links a{display:flex;align-items:center;gap:8px;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-size:14px;font-weight:720;line-height:1.5;overflow-wrap:anywhere;}
    .note-mid-links a::before{content:"";width:7px;height:7px;border-radius:999px;background:#F7C114;box-shadow:0 0 0 3px rgba(247,193,20,.18);flex:0 0 auto;}
    .note-mid-links a:hover{border-color:#F7C114;box-shadow:0 4px 12px rgba(17,24,39,.08);}
    .reader-note-cta{display:block;margin:18px 0 8px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#fff;text-decoration:none;box-shadow:0 6px 18px rgba(15,23,42,.08);}
    .reader-note-cta img{display:block;width:100%;height:auto;}
    .reader-note-cta:hover{box-shadow:0 8px 24px rgba(15,23,42,.14);}
    .ekirip-local-post-cta{margin:28px auto 20px;padding:0;}
    .ekirip-local-post-cta__inner{padding:24px 18px 22px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 22px rgba(15,23,42,.06);text-align:center;}
    .ekirip-local-post-cta__eyebrow{display:inline-flex;align-items:center;justify-content:center;margin:0 0 10px;padding:5px 11px;border-radius:999px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;font-size:12px;font-weight:800;letter-spacing:.04em;}
    .ekirip-local-post-cta__title{margin:0;color:#111827;font-size:22px;line-height:1.4;font-weight:900;}
    .ekirip-local-post-cta__text{max-width:620px;margin:14px auto 0;color:#4b5563;font-size:14.5px;line-height:1.85;text-align:left;}
    .ekirip-local-post-cta__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px auto 20px;}
    .ekirip-local-post-cta__chips span{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:#f9fafb;border:1px solid var(--line);color:#374151;font-size:12.5px;font-weight:700;white-space:nowrap;}
    .ekirip-local-post-cta__button{display:inline-flex;align-items:center;justify-content:center;width:min(100%,420px);min-height:52px;padding:13px 20px;border-radius:999px;background:#111827;color:#fff !important;font-size:16px;font-weight:900;text-decoration:none !important;box-shadow:0 10px 20px rgba(17,24,39,.16);}
    button.ekirip-local-post-cta__button{border:0;cursor:pointer;font-family:inherit;}
    .ekirip-local-post-cta__button::before{content:"＋";margin-right:6px;font-weight:900;}
    .ekirip-local-post-cta__note{margin:12px auto 0;color:var(--muted);font-size:12px;line-height:1.7;}
    .sp-only{display:none;}

    .note-detail .note-body img{max-width:100%;height:auto;max-height:420px;object-fit:contain;display:block;margin:12px auto;border-radius:10px;}
    .note-detail .note-body iframe{max-width:100% !important;width:100% !important;}
    .ekirip-note-audio{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fffdf7;text-align:center;box-shadow:0 6px 18px rgba(15,23,42,.06);}
    .ekirip-note-audio-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:0;border-radius:999px;background:#111827;color:#fff;font-size:16px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(17,24,39,.16);}
    .ekirip-note-audio-button::before{content:"▶";font-size:13px;margin-right:8px;}
    .ekirip-note-audio-button.is-playing::before{content:"■";}
    .ekirip-note-audio-note{margin:10px 0 0;color:#6b7280;font-size:13px;line-height:1.7;}
    .ekirip-note-audio audio{display:none;}
    .note-detail .note-body table{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0;}
    .note-detail .note-body th,.note-detail .note-body td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;}
    .note-detail .note-body th{font-weight:700;color:#333;}
    .note-detail .note-body table{table-layout:fixed;}
    .note-detail .note-body th,.note-detail .note-body td{word-break:break-word;}
    .note-share-inline{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fafafa;}
    .note-share-inline .label{flex:0 0 100%;font-size:12px;color:var(--muted);font-weight:700;}
    .note-share-inline button,.note-share-inline a{appearance:none;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;min-height:36px;}
    .note-share-inline button:hover,.note-share-inline a:hover{border-color:#d1d5db;box-shadow:0 2px 8px rgba(0,0,0,.06);}
    .note-share-inline .primary{background:#111827;color:#fff;border-color:#111827;}
    .note-link-preview{margin:10px 0;}
    .note-link-preview.loading,.note-link-preview.error{border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fff;color:var(--muted);font-size:13px;}
    .note-link-card{display:flex;gap:12px;align-items:stretch;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;text-decoration:none;color:inherit;transition:box-shadow .2s ease,border-color .2s ease;}
    .note-link-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px rgba(0,0,0,0.06);}
    .note-link-body{min-width:0;flex:1;}
    .note-link-meta{font-size:11px;color:var(--muted);margin-bottom:4px;}
    .note-link-title{font-size:14px;font-weight:700;margin-bottom:4px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word;}
    .note-link-desc{font-size:13px;color:#555;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;}
    .note-link-thumb{width:120px;height:90px;border-radius:10px;object-fit:cover;background:#f3f4f6;flex-shrink:0;}
    .note-x-embed{margin:10px 0;}
    .note-x-embed.loading{border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fff;color:var(--muted);font-size:13px;}
    .note-x-embed iframe,
    .note-x-embed .twitter-tweet{
      max-width:100% !important;
      width:100% !important;
    }
    .note-x-embed{overflow:hidden;}
    .note-live-preview{margin-top:12px;border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fff;}
    .note-live-preview .label{font-size:12px;color:var(--muted);margin-bottom:6px;}
    .affiliate-disclosure{display:flex;align-items:center;gap:8px;margin:6px 0 14px;padding:7px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc;color:#4b5563;font-size:12px;line-height:1.5;}
    .affiliate-disclosure[hidden]{display:none;}
    .affiliate-disclosure strong{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:1px 6px;border:1px solid #9ca3af;border-radius:999px;background:#fff;color:#374151;font-size:10px;letter-spacing:.04em;}
    .affiliate-disclosure a{margin-left:6px;color:#4b5563;text-decoration:underline;text-underline-offset:2px;}
    .note-live-title{font-size:15px;font-weight:700;margin:2px 0 8px;}
    .note-preview-body{font-size:15px;line-height:1.7;color:#333;overflow-wrap:anywhere;word-break:break-word;}
    .note-preview-body img{max-width:100%;height:auto;border-radius:8px;margin:8px 0;}
    .note-preview-body img.note-img.size-sm{max-width:50%;}
    .note-preview-body img.note-img.size-md{max-width:75%;}
    .note-preview-body img.note-img.size-lg{max-width:100%;}
    .note-preview-body table{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0;}
    .note-preview-body th,.note-preview-body td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;}
    .note-preview-body th{font-weight:700;color:#333;}
    .note-preview-body iframe{max-width:100% !important;width:100% !important;}
    .note-preview-body table{table-layout:fixed;}
    .note-preview-body th,.note-preview-body td{word-break:break-word;}
    .note-live-empty{font-size:13px;color:var(--muted);}
    @media (max-width: 820px){
      .ekirip-note-content .ekirip-hero-grid,
      .ekirip-note-content .ekirip-point-grid,
      .ekirip-note-content .ekirip-grid,
      .ekirip-note-content .ekirip-section-cards,
      .ekirip-note-content .ekirip-card-grid,
      .ekirip-note-content .ekirip-cards,
      .ekirip-note-content .ekirip-summary,
      .ekirip-note-content .ekirip-photo-grid,
      .ekirip-note-content .ekirip-sns-grid{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:16px !important;
      }
      .ekirip-note-content .ekirip-hero-grid > *,
      .ekirip-note-content .ekirip-point-grid > *,
      .ekirip-note-content .ekirip-grid > *,
      .ekirip-note-content .ekirip-section-cards > *,
      .ekirip-note-content .ekirip-card-grid > *,
      .ekirip-note-content .ekirip-cards > *,
      .ekirip-note-content .ekirip-summary > *,
      .ekirip-note-content .ekirip-photo-grid > *,
      .ekirip-note-content .ekirip-sns-grid > *{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
      }
    }
    @media (max-width: 600px){
      .ekirip-countdown{
        flex-direction:column;
        align-items:stretch;
        gap:12px;
        padding:16px;
      }
      .ekirip-countdown-box{
        width:100%;
        min-width:0;
      }
      .note-detail{
        padding:14px 12px;
        border-radius:14px;
      }
      .note-detail .note-body{
        font-size:15.5px;
        line-height:1.85;
      }
      .note-detail .note-body table,
      .note-detail .note-body thead,
      .note-detail .note-body tbody,
      .note-detail .note-body tr,
      .note-detail .note-body th,
      .note-detail .note-body td,
      .note-preview-body table,
      .note-preview-body thead,
      .note-preview-body tbody,
      .note-preview-body tr,
      .note-preview-body th,
      .note-preview-body td{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
        word-break:break-word !important;
      }
      .note-detail .note-body table,
      .note-preview-body table{
        table-layout:auto !important;
        overflow:hidden !important;
      }
      .note-detail .note-body tr,
      .note-preview-body tr{
        border-bottom:1px solid var(--line);
      }
      .note-detail .note-body th,
      .note-preview-body th{
        border-bottom:0 !important;
        padding-bottom:4px !important;
      }
      .note-detail .note-body td,
      .note-preview-body td{
        padding-top:0 !important;
      }
      .note-detail .note-body a,
      .note-detail .note-body button,
      .note-share-inline button,
      .note-share-inline a,
      .note-preview-body a,
      .note-preview-body button{
        max-width:100% !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
      }
      .ekirip-note-content :where(
        .ekirip-article,
        .ekirip-section,
        .ekirip-card,
        .ekirip-cards,
        .ekirip-section-cards,
        .ekirip-card-grid,
        .ekirip-summary,
        .ekirip-point,
        .ekirip-panel,
        .ekirip-box,
        .ekirip-frame,
        .ekirip-callout,
        .ekirip-highlight,
        [class*="card"],
        [class*="box"],
        [class*="panel"],
        [class*="frame"],
        [class*="summary"],
        [class*="section"]
      ),
      .ekirip-note-content :where(section, article, main, aside, div)[style*="border"],
      .ekirip-note-content :where(section, article, main, aside, div)[style*="max-width"],
      .ekirip-note-content :where(section, article, main, aside, div)[style*="width:"],
      .ekirip-note-content :where(section, article, main, aside, div)[style*="grid-template-columns"]{
        max-width:calc(100% + 8px) !important;
        width:auto !important;
        min-width:0 !important;
        margin-left:-4px !important;
        margin-right:-4px !important;
        padding-left:min(12px, 4vw) !important;
        padding-right:min(12px, 4vw) !important;
      }
      .ekirip-note-content :where(
        .ekirip-card,
        .ekirip-point,
        .ekirip-panel,
        .ekirip-box,
        .ekirip-frame,
        .ekirip-callout,
        .ekirip-highlight,
        [class*="card"],
        [class*="box"],
        [class*="panel"],
        [class*="frame"]
      ) :where(
        .ekirip-card,
        .ekirip-point,
        .ekirip-panel,
        .ekirip-box,
        .ekirip-frame,
        .ekirip-callout,
        .ekirip-highlight,
        [class*="card"],
        [class*="box"],
        [class*="panel"],
        [class*="frame"]
      ){
        margin-left:-2px !important;
        margin-right:-2px !important;
        padding-left:min(10px, 3.5vw) !important;
        padding-right:min(10px, 3.5vw) !important;
      }
      .ekirip-note-content .ekirip-note-stack-mobile,
      .ekirip-note-content [style*="grid-template-columns"]{
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        grid-template-columns:1fr !important;
        gap:12px !important;
      }
      .ekirip-note-content .ekirip-note-stack-mobile > *,
      .ekirip-note-content [style*="grid-template-columns"] > *{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        flex:0 1 auto !important;
      }
      .ekirip-note-content .ekirip-table-wrap{
        overflow:visible !important;
        border-radius:14px !important;
      }
      .ekirip-note-content table.ekirip-table{
        display:block !important;
        min-width:0 !important;
        width:100% !important;
        border-collapse:separate !important;
        border-spacing:0 !important;
      }
      .ekirip-note-content .ekirip-table tbody{
        display:block !important;
      }
      .ekirip-note-content .ekirip-table tr{
        display:grid !important;
        grid-template-columns:minmax(92px, 34%) minmax(0, 1fr) !important;
        gap:10px !important;
        padding:12px 0 !important;
        border-bottom:1px solid var(--line) !important;
      }
      .ekirip-note-content .ekirip-table tr:last-child{
        border-bottom:0 !important;
      }
      .ekirip-note-content .ekirip-table th,
      .ekirip-note-content .ekirip-table td{
        display:block !important;
        width:auto !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
        font-size:14px !important;
        line-height:1.6 !important;
      }
      .ekirip-note-content .ekirip-table th{
        color:#4b5563 !important;
        font-weight:700 !important;
      }
      .ekirip-note-content .ekirip-table td{
        color:#111827 !important;
        overflow-wrap:anywhere !important;
      }
      .note-link-card{flex-direction:column;}
      .note-link-thumb{width:100%;height:160px;}
    }
    .note-detail .note-back{display:inline-block;margin-top:12px;color:var(--accent);font-weight:600;}
    .note-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 10px;}
    .note-editor-toolbar button{padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;}
    .note-editor{min-height:240px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;outline:none;line-height:1.7;background:#fff;overflow-wrap:anywhere;word-break:break-word;}
    .note-editor-placeholder{position:absolute;left:12px;top:12px;color:#aaa;pointer-events:none;display:none;}
    .note-editor-wrap{position:relative;}
    .note-editor h2{font-size:18px;margin:12px 0 6px;}
    .note-editor blockquote{border-left:4px solid #f0c23c;padding-left:10px;color:#555;margin:8px 0;}
    #noteModal .panel{width:100vw;max-width:100vw;height:100vh;max-height:100vh;overflow-y:auto;border-radius:0;}
    @media (max-width: 600px) {
      #noteModal{align-items:stretch;}
      #noteModal .panel{padding:16px 14px 90px;height:100vh;border-radius:0;}
      #noteModal h2{font-size:20px;margin-bottom:8px;}
      #noteModal .note-editor-toolbar{position:sticky;top:0;background:#fff;z-index:2;padding:6px 0;margin:6px 0 8px;overflow-x:auto;flex-wrap:nowrap;gap:6px;}
      #noteModal .note-editor-toolbar button{flex:0 0 auto;font-size:13px;padding:6px 10px;}
      #noteModal .note-editor{min-height:320px;}
      #noteModal .actions{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);padding:10px 12px;display:flex;gap:8px;justify-content:space-between;z-index:3;}
      #noteModal .actions .tab{flex:1;text-align:center;}
      #noteModal .actions .tab.primary{flex:1.3;}
    }

    #noteModal .row{display:block;}
    #noteModal .note-editor-wrap{width:100%;}
    #noteModal .note-editor{width:100%;min-height:360px;}
    #noteModal .note-editor:focus{outline:2px solid var(--accent);}
    .note-image-help{font-size:12px;color:#888;margin:6px 0 10px;}
    .note-editor img{max-width:100%;border-radius:8px;margin:8px 0;}
    .note-editor img.note-img{max-width:100%;height:auto;cursor:pointer;}
    .note-editor img.note-img.size-sm{max-width:50%;}
    .note-editor img.note-img.size-md{max-width:75%;}
    .note-editor img.note-img.size-lg{max-width:100%;}
    .note-html-editor{width:100%;min-height:360px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;outline:none;line-height:1.6;background:#0f172a;color:#e5e7eb;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;resize:vertical;display:none;}
    .note-editor-toolbar button.active{background:#111827;color:#fff;border-color:#111827;}
    .note-editor table{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0;}
    .note-editor th,.note-editor td{padding:6px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;}
    .note-editor th{font-weight:700;color:#333;}
    .note-editor table{table-layout:fixed;}
    .note-editor th,.note-editor td{word-break:break-word;}
    .noteActions{display:flex;justify-content:flex-end;margin-bottom:12px;}
    .note-detail-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
    .note-wishlist-action{margin:12px 0 10px;}
    .note-wishlist-action.inline{margin:20px 0;}
    .note-wishlist-action.bottom{margin:24px 0 8px;}
    .note-wishlist-label{margin:0 0 7px;color:#6b7280;font-size:12px;font-weight:800;line-height:1.5;}
    .note-wishlist-btn{
      width:100%;
      border:1px solid rgba(247,193,20,.75);
      border-radius:14px;
      background:#111827;
      color:#fff;
      padding:13px 16px;
      font-size:15px;
      font-weight:900;
      cursor:pointer;
      box-shadow:0 8px 18px rgba(15,23,42,.12);
    }
    .note-wishlist-btn.saved{
      background:#fff8d7;
      color:#111827;
      border-color:#f1c232;
      box-shadow:none;
    }
    .note-wishlist-btn[data-button-position="after_summary"],
    .note-wishlist-btn[data-button-position="after_basic_info"],
    .note-wishlist-btn[data-button-position="near_map"],
    .note-wishlist-btn[data-button-position="bottom"]{
      background:#fff;
      color:#111827;
      box-shadow:0 5px 14px rgba(15,23,42,.06);
    }
    .note-wishlist-btn[data-button-position="after_summary"].saved,
    .note-wishlist-btn[data-button-position="after_basic_info"].saved,
    .note-wishlist-btn[data-button-position="near_map"].saved,
    .note-wishlist-btn[data-button-position="bottom"].saved{
      background:#fff8d7;
    }
    .note-wishlist-btn:disabled{opacity:.65;cursor:not-allowed;}
    .my-list-panel{width:min(760px,100%);}
    .my-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
    .my-list-head h2{margin:0;font-size:20px;font-weight:700;letter-spacing:0;}
    .my-list-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
    .my-list-share-btn{background:#111827;color:#fff;border-color:#111827;font-weight:700;}
    .my-list-body{display:flex;flex-direction:column;gap:20px;}
    .my-list-section{display:flex;flex-direction:column;gap:10px;}
    .my-list-section h3{font-size:13px;margin:0;color:#6b7280;font-weight:600;letter-spacing:0;}
    .my-list-empty{border:1px dashed var(--line);border-radius:14px;padding:14px;color:var(--muted);font-size:13px;background:#fafafa;}
    .my-list-card{
      display:grid;
      grid-template-columns:84px minmax(0,1fr);
      gap:13px;
      border:1px solid rgba(17,24,39,.08);
      border-radius:16px;
      padding:12px;
      background:#fff;
      box-shadow:0 8px 22px rgba(15,23,42,.06);
    }
    .my-list-thumb{width:84px;height:84px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#f8fafc,#eef2f7);border:1px solid #e5e7eb;}
    .my-list-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
    .my-list-content{min-width:0;display:flex;flex-direction:column;gap:7px;}
    .my-list-topline{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
    .my-list-station{display:inline-flex;align-items:center;max-width:100%;border:1px solid rgba(247,193,20,.55);border-radius:999px;background:#fff8d7;color:#111827;padding:4px 9px;font-size:12px;font-weight:700;line-height:1.2;}
    .my-list-deadline{display:inline-flex;align-items:center;border-radius:999px;background:#f9fafb;color:#92400e;padding:4px 8px;font-size:12px;font-weight:600;line-height:1.2;}
    .my-list-deadline.ended{color:#6b7280;background:#f3f4f6;}
    .my-list-title{font-size:15px;font-weight:600;line-height:1.55;color:#111827;text-decoration:none;overflow-wrap:anywhere;}
    .my-list-title:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
    .my-list-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:3px;}
    .my-list-actions a,
    .my-list-actions button{
      border:1px solid rgba(17,24,39,.12);
      border-radius:999px;
      background:#fff;
      color:#111827;
      padding:7px 12px;
      font-size:12px;
      font-weight:600;
      text-decoration:none;
      cursor:pointer;
    }
    .my-list-actions a{background:#111827;border-color:#111827;color:#fff;}
    .my-list-actions button{color:#b91c1c;}
    .my-list-actions button[data-wishlist-visited]{color:#15803d;background:#f0fdf4;border-color:#bbf7d0;}
    @media (max-width: 600px) {
      .my-list-card{
        grid-template-columns:72px minmax(0,1fr);
        gap:11px;
        padding:10px;
        border-radius:14px;
        box-shadow:0 4px 14px rgba(15,23,42,.05);
      }
      .my-list-thumb{
        width:72px;
        height:72px;
        border-radius:12px;
      }
      .my-list-title{
        font-size:14px;
        line-height:1.5;
      }
    }
    .review-panel{width:min(560px,100%);}
    .review-panel h2{margin-bottom:6px;}
    .review-lead{margin:0 0 12px;color:#4b5563;font-size:14px;line-height:1.7;}
    .review-chip-group{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;}
    .review-chip{appearance:none;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;padding:8px 11px;font-size:12.5px;font-weight:800;line-height:1.25;cursor:pointer;}
    .review-chip.is-selected{background:#fff7cc;border-color:#F7C114;box-shadow:0 0 0 3px rgba(247,193,20,.16);}
    .review-panel textarea{
      width:100%;
      min-height:112px;
      border:1px solid var(--line);
      border-radius:14px;
      padding:12px 14px;
      font-size:15px;
      line-height:1.7;
      resize:vertical;
      margin-bottom:10px;
    }
    .review-panel input[type="text"]{
      width:100%;
      border:1px solid var(--line);
      border-radius:14px;
      padding:11px 13px;
      font-size:14px;
      margin-bottom:10px;
    }
    .review-image-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;}
    .review-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0 14px;}
    .review-preview-item{position:relative;aspect-ratio:1;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#f3f4f6;}
    .review-preview-item img{width:100%;height:100%;object-fit:cover;display:block;}
    .review-preview-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border:0;border-radius:999px;background:rgba(17,24,39,.84);color:#fff;cursor:pointer;font-size:13px;}
    .article-reviews{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line);}
    .article-reviews h2{font-size:20px;margin:0 0 14px;}
    .article-review-list{display:flex;flex-direction:column;gap:12px;}
    .article-review-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff;}
    .article-review-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:900;color:#374151;margin-bottom:7px;}
    .article-review-time{font-size:12px;font-weight:700;color:var(--muted);}
    .article-review-text{font-size:14px;line-height:1.75;color:#111827;white-space:pre-wrap;overflow-wrap:anywhere;}
    .article-review-images{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;}
    .article-review-images img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;border:1px solid var(--line);}
    @media (max-width: 520px){
      .my-list-panel{margin:8px auto;padding:14px;}
      .my-list-card{grid-template-columns:64px minmax(0,1fr);gap:10px;}
      .my-list-thumb{width:64px;height:64px;}
      .review-preview,
      .article-review-images{grid-template-columns:repeat(2,minmax(0,1fr));}
    }
    .note-tools{display:flex;flex-direction:column;gap:10px;margin-bottom:10px;}
    .note-search-inline{
      border:1px solid var(--line);
      border-radius:12px;
      padding:10px 12px;
      background:#fff;
    }
    .note-search-inline .note-search-title{font-size:12px;color:var(--muted);margin-bottom:6px;}
    .note-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
    .note-actions .tab.primary{order:4;}
    .note-actions .tab#noteSave{order:3;}
    .note-actions .tab#noteCancel{order:2;}
    .note-actions .tab#noteDeleteInEditor{order:1;margin-right:auto;}
    #noteModal textarea{min-height:160px;}
    #noteModal input,#noteModal select,#noteModal textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;}
    .note-permalink-help{font-size:12px;line-height:1.6;color:var(--muted);margin:-4px 0 10px;}
    .note-permalink-help strong{color:#333;}
    .note-classification{margin-bottom:10px;}
    .note-field-label{display:block;margin:0 0 6px;font-size:12px;font-weight:800;color:#374151;}
    .note-affiliate-control{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:12px;border:1px solid #dfe3e8;border-radius:14px;background:#f8fafc;cursor:pointer;}
    #noteModal .note-affiliate-control input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;padding:0;}
    .note-affiliate-control span{display:grid;gap:3px;min-width:0;}
    .note-affiliate-control strong{font-size:13px;color:#374151;}
    .note-affiliate-control small{font-size:12px;line-height:1.55;color:#6b7280;}
    .note-affiliate-opportunity{margin:-2px 0 12px;padding:12px 14px;border:1px solid #f2c94c;border-radius:13px;background:#fff9df;color:#5d4a00;font-size:12px;line-height:1.65;}
    .note-affiliate-opportunity strong{display:block;margin-bottom:3px;color:#493a00;font-size:13px;}
    .note-affiliate-opportunity.ready{border-color:#9fd7b9;background:#edf9f2;color:#23613f;}
    .note-editor-toolbar button[data-cmd="affiliateLink"]{border-color:#cbd5e1;background:#f8fafc;color:#334155;font-weight:800;}
    .ekirip-note-content .ekirip-affiliate-guide{margin:20px 0;padding:16px 18px;border:1px solid #e5e7eb;border-radius:14px;background:#fafafa;color:#374151;}
    .ekirip-note-content .ekirip-affiliate-label{display:block;margin:0 0 6px;color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.04em;}
    .ekirip-note-content .ekirip-affiliate-title{margin:0 0 7px;color:#1f2937;font-size:17px;line-height:1.55;}
    .ekirip-note-content .ekirip-affiliate-text,.ekirip-note-content .ekirip-affiliate-note{margin:6px 0;color:#4b5563;font-size:13px;line-height:1.75;}
    .ekirip-note-content .ekirip-affiliate-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
    .ekirip-note-content a.ekirip-affiliate-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:100%;min-height:40px!important;margin:4px 0;padding:9px 14px!important;border:1px solid #94a3b8!important;border-radius:10px!important;background:#fff!important;color:#334155!important;-webkit-text-fill-color:#334155!important;font-size:15px!important;font-weight:700!important;line-height:1.4!important;text-align:center!important;text-decoration:none!important;text-indent:0!important;opacity:1!important;visibility:visible!important;overflow-wrap:anywhere;}
    .ekirip-note-content a.ekirip-affiliate-link *{color:#334155!important;-webkit-text-fill-color:#334155!important;font-size:inherit!important;opacity:1!important;visibility:visible!important;}
    .ekirip-note-content a.ekirip-affiliate-link:hover,.ekirip-note-content a.ekirip-affiliate-link:focus-visible{background:#f1f5f9!important;border-color:#64748b!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;box-shadow:0 3px 10px rgba(15,23,42,.08);}
    .ekirip-note-content a.ekirip-affiliate-link:hover *,.ekirip-note-content a.ekirip-affiliate-link:focus-visible *{color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;}
    @media (max-width:720px){.ekirip-note-content .ekirip-affiliate-actions{display:grid;grid-template-columns:1fr;}.ekirip-note-content a.ekirip-affiliate-link{width:100%;}}
    .ekirip-note-content .ekirip-stay-guide,.ekirip-note-content .ekirip-heat-guide{margin:24px 0;}
    .ekirip-note-content .ekirip-editor-picks{padding:18px;border:1px solid #fde68a;border-radius:16px;background:#fffbeb;}
    .ekirip-note-content .ekirip-editor-picks-label{display:inline-flex;margin-bottom:7px;padding:4px 9px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:800;letter-spacing:.04em;}
    .ekirip-note-content .ekirip-editor-picks-title{margin:0 0 8px;color:#78350f;font-size:20px;line-height:1.55;}
    .ekirip-note-content .ekirip-editor-picks-lead{margin:0 0 14px;color:#57534e;font-size:14px;line-height:1.8;}
    .ekirip-note-content .ekirip-stay-summary,.ekirip-note-content .ekirip-heat-alert{margin:0 0 14px;padding:12px 14px;border-left:4px solid #0f766e;border-radius:8px;background:#f0fdfa;color:#134e4a;font-size:14px;line-height:1.75;}
    .ekirip-note-content .ekirip-stay-grid,.ekirip-note-content .ekirip-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;}
    .ekirip-note-content .ekirip-stay-card,.ekirip-note-content .ekirip-product-card{min-width:0;padding:15px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(15,23,42,.05);}
    .ekirip-note-content .ekirip-stay-badge{display:inline-flex;margin-bottom:8px;padding:3px 8px;border-radius:999px;background:#ccfbf1;color:#115e59;font-size:11px;font-weight:800;}
    .ekirip-note-content .ekirip-stay-name,.ekirip-note-content .ekirip-product-name{margin:0 0 7px;color:#0f172a;font-size:16px;font-weight:800;line-height:1.5;}
    .ekirip-note-content .ekirip-stay-meta,.ekirip-note-content .ekirip-stay-fit,.ekirip-note-content .ekirip-stay-caution,.ekirip-note-content .ekirip-product-use,.ekirip-note-content .ekirip-product-note{margin:5px 0;color:#475569;font-size:13px;line-height:1.7;}
    .ekirip-note-content .ekirip-stay-caution,.ekirip-note-content .ekirip-product-note{color:#64748b;font-size:12px;}
    @media (max-width:720px){.ekirip-note-content .ekirip-stay-grid,.ekirip-note-content .ekirip-product-grid{grid-template-columns:1fr;}}
    .note-event-fields{padding:10px 12px 2px;border:1px solid var(--line);border-radius:14px;background:#fafafa;margin-bottom:10px;}
    .note-event-fields[hidden]{display:none;}
    .note-color-control{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;color:#111827;border-radius:12px;padding:6px 9px;font-size:13px;cursor:pointer;white-space:nowrap;}
    .note-color-control input{width:22px !important;height:22px !important;min-width:22px;padding:0 !important;margin:0 !important;border:0 !important;border-radius:999px;background:transparent;cursor:pointer;}
    .feed-card{border:1px solid #eee;border-radius:var(--card-radius);padding:var(--card-pad);margin-bottom:var(--section-gap);}
    .feed-card h3{font-size:15px;margin-bottom:8px;}
    .feed-text{font-size:14px;color:#555;margin-bottom:10px;}
    .feed-more{color:var(--accent);font-weight:600;}
    .station-sidebar .side-block{background:#fff;border-radius:16px;padding:16px;box-shadow:0 2px 12px rgba(0,0,0,0.06);margin-bottom:16px;}
    .station-sidebar h3{font-size:15px;margin-bottom:10px;}
    .station-sidebar ul{list-style:none;padding:0;margin:0;}
    .station-sidebar li{margin-bottom:6px;}
    .station-sidebar a{color:#333;}
    .popular-note-list{display:flex;flex-direction:column;gap:10px;}
    .popular-note-list li{margin:0;}
    .popular-note-card{
      display:grid;
      grid-template-columns:76px minmax(0,1fr);
      gap:10px;
      align-items:center;
      color:var(--text);
      text-decoration:none;
      border:1px solid var(--line);
      border-radius:14px;
      padding:8px;
      background:#fff;
      transition:box-shadow .2s ease, transform .2s ease;
    }
    .popular-note-card:hover{
      box-shadow:0 8px 18px rgba(15,23,42,.10);
      transform:translateY(-1px);
    }
    .popular-note-thumb{
      width:76px;
      aspect-ratio:4 / 3;
      border-radius:10px;
      overflow:hidden;
      background:#f3f4f6;
      border:1px solid var(--line);
    }
    .popular-note-thumb img{
      display:block;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .popular-note-title{
      min-width:0;
      font-size:13px;
      font-weight:700;
      line-height:1.45;
      display:-webkit-box;
      -webkit-line-clamp:3;
      -webkit-box-orient:vertical;
      overflow:hidden;
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    .popular-note-all{
      display:inline-flex;
      margin-bottom:12px;
      font-size:13px;
      font-weight:700;
      color:var(--accent);
    }
    .note-search-input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;}
    .note-search-results{list-style:none;padding:0;margin:0;}
    .note-search-results li{margin-bottom:6px;font-size:14px;}
    .note-search-results li.muted{color:var(--muted);}
    /* Desktop layout */
    @media (min-width: 1100px) {
      :root{
        --page-pad:24px;
        --card-pad:20px;
        --section-gap:20px;
      }
      .app{
        max-width:1200px;
        padding:20px 24px 40px;
        display:grid;
        grid-template-columns:240px minmax(0,1fr);
        gap:24px;
        align-items:start;
      }
      .searchRow{display:none;}
      .searchTopRight{display:flex;justify-content:flex-end;margin-bottom:8px;}
      .searchTopRight .searchInput{max-width:360px;}
      .main{
        grid-column:2;
        display:flex;
        flex-direction:column;
        gap:12px;
      }
      .topbar{
        position:sticky;
        top:16px;
        grid-column:1;
        max-height:calc(100vh - 32px);
        overflow:auto;
        border:1px solid var(--line);
        border-radius:16px;
        background:var(--card);
      }
      .topbar-inner{
        flex-direction:column;
        align-items:stretch;
        gap:10px;
        padding:12px;
      }
      .topbar .brand{justify-content:flex-start;}
      .topbar .kicker{font-size:12px;margin-bottom:6px;}
      .topbar .refreshBtn,
      .topbar .stationBtn,
      .topbar .tab{
        width:100%;
        justify-content:flex-start;
      }
      .tabs{
        padding:0 12px 12px;
        flex-direction:column;
        gap:8px;
      }
      .hintRow{
        padding:0 12px 12px;
        flex-direction:column;
        align-items:flex-start;
        gap:8px;
      }
      .composer{
        position:sticky;
        top:16px;
        bottom:auto;
        border:1px solid var(--line);
        border-radius:16px;
        background:var(--card);
        margin-bottom:8px;
        padding-bottom:0;
      }
      .composer-inner{
        max-width:820px;
        padding:12px;
      }
      .postBtn{padding:16px 18px;font-size:16px;border-radius:18px;background:#fff;}
      #newFeedBanner{margin:0;}
      .feed{
        max-width:820px;
        margin:0 auto;
        padding:12px 0 40px;
        gap:16px;
      }
      .station-feed .feed{
        padding:0;
      }
      .card{padding:16px 16px 14px;}
      .text{font-size:16px;line-height:1.65;}
      .cardThumbnailWrap{width:72px;height:72px;}
      .toast{bottom:24px;}
    }
    @media (max-width: 900px) {
      .station-layout{grid-template-columns:minmax(0,1fr);}
      .station-sidebar{display:none;}
      .topbar.compact .kicker,
      .topbar.compact .searchRow,
      .topbar.compact .tabs,
      .topbar.compact .hintRow{display:none;}
      .topbar.compact .topbar-inner{padding:8px 12px;}
      .topbar.compact .brand img{height:20px;}
      .topbar.compact .brand span{font-size:14px;}
      .topbar.compact .refreshBtn,
      .topbar.compact .stationBtn{padding:6px 10px;font-size:12px;}
      .topbar.compact #myListBtn{padding:10px 12px;font-size:13px;}
      .topbar.compact #nearbyEventsBtn,
      .topbar.compact #tomorrowEventsBtn{padding:8px 12px;font-size:12px;}
      body.zoomed .topbar{
        position:static;
        box-shadow:none;
      }
      body.zoomed .topbar-inner{
        padding:10px 12px;
      }
    }

    /* Note-only view */
    body.note-view .topbar,
    body.note-view .composer,
    body.note-view .station-hero,
    body.note-view .station-feed,
    body.note-view .station-sidebar,
    body.note-view .noteActions,
    body.note-view .note-swipe-hint{
      display:none !important;
    }
    body.note-view .station-layout{
      grid-template-columns:1fr;
    }
    body.note-view .station-main section{
      background:transparent;
      box-shadow:none;
      padding:0;
    }
    body.note-view .station-notes{
      padding:0;
      margin-top:24px;
    }
    body.note-view .note-detail{
      max-width:900px;
      margin:0 auto;
      border:1px solid var(--line);
      background:#fff;
      box-shadow:0 12px 28px rgba(15,23,42,.08);
      padding:24px;
      border-radius:20px;
    }
    body.note-view .note-detail h3{
      font-size:24px;
      line-height:1.4;
    }
    body.note-view .note-detail .note-body{
      font-size:16px;
      line-height:1.85;
    }
    body.note-view .note-profile{
      display:none;
    }
    @media (min-width: 1100px){
      body.note-view .app{
        max-width:1080px;
        padding:32px 24px 60px;
        display:block;
      }
      body.note-view .main{
        grid-column:1;
      }
    }
    @media (max-width: 600px){
      body.note-view .station-notes{margin-top:12px;}
      body.note-view .note-detail{
        padding:14px 12px;
        border-radius:14px;
      }
      body.note-view .note-detail h3{font-size:20px;}
      body.note-view .note-detail .note-body{font-size:15.5px;line-height:1.85;}
      .note-share-inline button,.note-share-inline a{flex:1 1 calc(50% - 6px);}
      .reader-note-cta{border-radius:12px;overflow:visible;background:transparent;border:0;box-shadow:none;margin-left:-4px;margin-right:-4px;}
      .reader-note-cta img{border-radius:12px;width:100%;max-width:100%;}
      .ekirip-local-post-cta__chips{justify-content:flex-start;}
      .sp-only{display:block;}
    }
    @media (max-width: 390px){
      body.note-view .station-page{
        padding-left:4px;
        padding-right:4px;
      }
      body.note-view .note-detail{
        padding-left:12px;
        padding-right:12px;
      }
    }
    
      .composer{border:1px solid rgba(17,24,39,.12);box-shadow:0 4px 12px rgba(17,24,39,.08);background:rgba(255,255,255,.98);} 
      .composer-inner{max-width:820px;}
      .postBtn{border:1px solid rgba(17,24,39,.12);background:#fff;}
      .composerLabel{font-weight:600;color:#6b7280;}
      .composerPrompt{font-size:18px;font-weight:600;color:#111827;}
    
	    /* Local media redesign layer */
	    body{
	      background:
	        radial-gradient(circle at 12% 0%, rgba(247,193,20,.22), transparent 28%),
	        linear-gradient(180deg,#fbf7ec 0%, var(--bg) 42%, #f4eddb 100%);
	      color:var(--ink);
	    }
	    body::before{
	      content:"";
	      position:fixed;
	      inset:0;
	      pointer-events:none;
	      opacity:.22;
	      background-image:
	        linear-gradient(rgba(31,26,18,.035) 1px, transparent 1px),
	        linear-gradient(90deg, rgba(31,26,18,.025) 1px, transparent 1px);
	      background-size:32px 32px;
	      z-index:-1;
	    }
	    .topbar{
	      background:rgba(255,253,247,.92);
	      border-color:rgba(197,182,143,.64);
	      box-shadow:0 10px 26px rgba(69,55,27,.08);
	    }
	    .brand{
	      color:var(--ink);
	      letter-spacing:0;
	    }
	    .brand span{
	      font-weight:900;
	    }
	    .kicker{
	      color:#8A6A16;
	      font-weight:700;
	    }
	    .stationBtn,
	    .refreshBtn,
	    .tab,
	    .smallBtn,
	    .mini{
	      border-color:rgba(197,182,143,.78);
	      background:rgba(255,253,247,.84);
	      color:var(--ink);
	      border-radius:999px;
	      font-weight:800;
	    }
	    .stationBtn:hover,
	    .refreshBtn:hover,
	    .tab:hover,
	    .smallBtn:hover,
	    .mini:hover{
	      border-color:var(--accent);
	      background:#fff8d8;
	    }
	    .tab.active,
	    .tab.primary,
	    .smallBtn.primary{
	      background:var(--accent);
	      border-color:var(--accent);
	      color:#1f1a12;
	      box-shadow:0 6px 16px rgba(247,193,20,.24);
	    }
	    .composer{
	      background:rgba(255,253,247,.86);
	      border-color:rgba(197,182,143,.62);
	      box-shadow:0 8px 24px rgba(69,55,27,.08);
	    }
	    body.home-view .composer{
	      display:none;
	    }
	    .postBtn{
	      border-color:rgba(197,182,143,.74);
	      background:#fffdf7;
	      border-radius:16px;
	    }
	    .composerLabel{
	      color:#8A6A16;
	      letter-spacing:.08em;
	      font-weight:900;
	    }
	    .composerPrompt{
	      color:var(--ink);
	    }
	    .home-seo,
	    .station-page{
	      max-width:1180px;
	    }
	    .home-hero{
	      position:relative;
	      min-height:520px;
	      margin:18px 0 28px;
	      padding:64px clamp(22px,5vw,56px);
	      overflow:hidden;
	      border:1px solid rgba(255,253,247,.65);
	      border-radius:18px;
	      background:
	        linear-gradient(90deg, rgba(31,26,18,.82) 0%, rgba(31,26,18,.58) 42%, rgba(31,26,18,.10) 74%),
	        url("/assets/images/ekirip-local-hero.jpg") center right / cover no-repeat;
	      box-shadow:var(--shadow-soft);
	      color:#fffdf7;
	    }
	    .home-hero::after{
	      content:"";
	      position:absolute;
	      left:clamp(22px,5vw,56px);
	      bottom:0;
	      width:min(520px,70%);
	      height:8px;
	      border-radius:999px 999px 0 0;
	      background:var(--accent);
	    }
	    .home-hero-label{
	      position:relative;
	      z-index:1;
	      margin-bottom:18px;
	      padding:0;
	      background:transparent;
	      color:var(--accent);
	      font-size:13px;
	      font-weight:950;
	      letter-spacing:.14em;
	    }
	    .home-hero h1{
	      position:relative;
	      z-index:1;
	      max-width:680px;
	      color:#fffdf7;
	      font-size:clamp(34px,5.4vw,66px);
	      line-height:1.18;
	      font-weight:950;
	      text-wrap:balance;
	      text-shadow:0 2px 18px rgba(0,0,0,.22);
	    }
	    .home-hero-lead{
	      position:relative;
	      z-index:1;
	      max-width:630px;
	      margin-top:20px;
	      color:rgba(255,253,247,.92);
	      font-size:17px;
	      line-height:2;
	      font-weight:650;
	    }
	    .home-hero-segments{
	      position:relative;
	      z-index:1;
	      grid-template-columns:1.45fr .9fr .7fr;
	      gap:12px;
	      max-width:850px;
	      margin-top:34px;
	    }
	    .home-hero-segment{
	      padding:14px;
	      border:1px solid rgba(255,253,247,.28);
	      border-radius:14px;
	      background:rgba(255,253,247,.14);
	      backdrop-filter:blur(10px);
	    }
	    .home-hero-segment-label{
	      color:rgba(255,253,247,.82);
	      font-size:12px;
	      letter-spacing:.08em;
	    }
	    .home-hero-cta a{
	      min-height:44px;
	      border-color:rgba(255,253,247,.42);
	      background:rgba(255,253,247,.92);
	      color:var(--ink);
	      border-radius:999px;
	      box-shadow:none;
	      font-weight:900;
	    }
	    .home-hero-cta-primary{
	      background:var(--accent) !important;
	      border-color:var(--accent) !important;
	    }
	    .home-hero-cta-soft{
	      background:#fff4bd !important;
	      border-color:#fff4bd !important;
	      color:#5b4100 !important;
	    }
	    .home-hero-copy{
	      position:relative;
	      z-index:1;
	      color:rgba(255,253,247,.78);
	    }
	    .home-hero-copy::before{
	      background:rgba(255,253,247,.68);
	    }
	    .home-media-section,
	    .home-note-search,
	    .station-portal,
	    .station-main section,
	    .station-sidebar .side-block,
	    .note-search-inline,
	    .feed-tools{
	      border:1px solid rgba(197,182,143,.68);
	      background:rgba(255,253,247,.92);
	      border-radius:16px;
	      box-shadow:0 10px 26px rgba(69,55,27,.07);
	    }
	    .home-media-section{
	      padding:26px clamp(16px,3vw,28px);
	      margin-bottom:24px;
	    }
	    .home-note-search{
	      margin:14px 0 24px;
	      padding:28px clamp(18px,3.2vw,34px);
	      border-color:rgba(247,193,20,.62);
	      background:linear-gradient(180deg,#fffdf7 0%,#fff8df 100%);
	      box-shadow:0 16px 34px rgba(69,55,27,.12),0 0 0 4px rgba(247,193,20,.10);
	    }
	    .home-note-search h2{
	      font-size:clamp(24px,3.2vw,34px);
	      font-weight:950;
	      color:var(--ink);
	    }
	    .home-note-search-lead{
	      max-width:760px;
	      color:#6f6247;
	      font-size:15px;
	      font-weight:650;
	    }
	    .home-note-search-input{
	      min-height:62px;
	      border-color:rgba(197,182,143,.88);
	      background:#fff;
	      font-size:18px;
	      font-weight:650;
	      box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
	    }
	    .home-note-search-submit{
	      min-height:62px;
	      min-width:118px;
	      border-color:#1f1a12;
	      background:#1f1a12;
	      font-size:17px;
	      box-shadow:0 8px 18px rgba(31,26,18,.18);
	    }
	    .home-note-search-all{
	      border-color:rgba(197,182,143,.88);
	      background:#fff;
	    }
	    .home-media-section h2,
	    .station-portal-head h2,
	    .station-notes h2,
	    .station-feed h2,
	    .station-sidebar h3{
	      display:flex;
	      flex-direction:column;
	      gap:5px;
	      margin:0 0 18px;
	      color:var(--ink);
	      font-size:clamp(21px,2.2vw,30px);
	      line-height:1.36;
	      font-weight:950;
	      letter-spacing:0;
	    }
	    .home-media-section h2 span,
	    .station-portal-head h2 span,
	    .station-notes h2 span,
	    .station-feed h2 span{
	      color:#B38600;
	      font-size:12px;
	      line-height:1;
	      font-weight:950;
	      letter-spacing:.14em;
	    }
	    .home-popular-grid{
	      gap:18px;
	    }
	    .home-popular-card,
	    .note-card,
	    .popular-note-card{
	      border-color:rgba(197,182,143,.68);
	      border-radius:14px;
	      background:#fffdf7;
	      box-shadow:none;
	    }
	    .home-popular-card:hover,
	    .note-card:hover,
	    .popular-note-card:hover{
	      border-color:rgba(247,193,20,.85);
	      box-shadow:0 14px 28px rgba(69,55,27,.12);
	      transform:translateY(-2px);
	    }
	    .home-popular-thumb,
	    .note-card .note-cover{
	      background:#efe6d0;
	      border-color:rgba(197,182,143,.64);
	    }
	    .home-popular-title,
	    .note-card h3,
	    .popular-note-title,
	    .station-portal-title{
	      color:var(--ink);
	      font-weight:900;
	    }
	    .note-card-topline{
	      display:flex;
	      align-items:center;
	      justify-content:space-between;
	      gap:8px;
	      margin:0 0 9px;
	      min-width:0;
	    }
	    .note-card-kicker{
	      display:inline-flex;
	      align-items:center;
	      justify-content:center;
	      flex:0 0 auto;
	      min-height:24px;
	      padding:4px 9px;
	      border-radius:999px;
	      background:var(--accent);
	      color:#1f1a12;
	      font-size:11px;
	      line-height:1;
	      font-weight:950;
	      letter-spacing:.06em;
	    }
	    .note-card-kicker--event{background:#1f1a12;color:#fffdf7;}
	    .note-card-kicker--gourmet{background:#fff0b3;color:#6f5200;border:1px solid rgba(247,193,20,.5);}
	    .note-card-kicker--shop{background:#edf7e6;color:#276749;border:1px solid rgba(46,139,87,.24);}
	    .note-card-kicker--life{background:#eef4ff;color:#31527a;border:1px solid rgba(49,82,122,.18);}
	    .note-card-meta-row{
	      display:flex;
	      align-items:center;
	      justify-content:flex-end;
	      flex-wrap:wrap;
	      gap:5px 8px;
	      min-width:0;
	      color:#7B6F59;
	      font-size:11.5px;
	      line-height:1.35;
	      font-weight:800;
	    }
	    .note-card-meta-row span{
	      display:inline-flex;
	      align-items:center;
	      max-width:100%;
	      min-width:0;
	    }
	    .note-card-meta-row span + span::before{
	      content:"";
	      width:4px;
	      height:4px;
	      margin-right:8px;
	      border-radius:999px;
	      background:rgba(123,111,89,.5);
	      flex:0 0 auto;
	    }
	    .note-cover--empty,
	    .home-popular-thumb:empty,
	    .popular-note-thumb:empty{
	      position:relative;
	      background:
	        linear-gradient(135deg,rgba(247,193,20,.26),rgba(255,253,247,.82) 50%,rgba(46,139,87,.12)),
	        repeating-linear-gradient(-45deg,rgba(31,26,18,.04) 0 1px,transparent 1px 12px);
	    }
	    .note-cover--empty::after,
	    .home-popular-thumb:empty::after,
	    .popular-note-thumb:empty::after{
	      content:"EKIRIP";
	      position:absolute;
	      left:12px;
	      bottom:10px;
	      color:#B38600;
	      font-size:11px;
	      line-height:1;
	      font-weight:950;
	      letter-spacing:.14em;
	    }
	    .home-popular-card{
	      position:relative;
	    }
	    .home-popular-body{
	      gap:9px;
	      padding:14px;
	    }
	    .home-popular-title{
	      font-size:16px;
	      line-height:1.55;
	    }
	    .home-popular-excerpt{
	      margin-top:1px;
	    }
	    .note-card{
	      display:flex;
	      flex-direction:column;
	      transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
	    }
	    .note-card .note-cover{
	      margin-bottom:12px;
	    }
	    .note-card h3{
	      margin:0 0 8px;
	      font-size:17px;
	      line-height:1.52;
	    }
	    .note-excerpt{
	      margin:0 0 12px;
	      line-height:1.72;
	    }
	    .note-card .note-author{
	      order:8;
	      margin:4px 0 0;
	      padding-top:11px;
	      border-top:1px solid rgba(197,182,143,.52);
	    }
	    .note-readmore{
	      order:9;
	      display:inline-flex;
	      align-items:center;
	      width:max-content;
	      max-width:100%;
	      margin-top:10px;
	      padding:7px 0 0;
	      color:#8A6A16;
	      font-size:13px;
	      font-weight:950;
	      text-decoration:none;
	    }
	    .note-readmore::after{
	      content:"";
	      width:7px;
	      height:7px;
	      margin-left:7px;
	      border-top:2px solid currentColor;
	      border-right:2px solid currentColor;
	      transform:rotate(45deg);
	      flex:0 0 auto;
	    }
	    .popular-note-body{
	      min-width:0;
	      display:flex;
	      flex-direction:column;
	      gap:4px;
	    }
	    .popular-note-kicker{
	      color:#B38600;
	      font-size:10.5px;
	      line-height:1;
	      font-weight:950;
	      letter-spacing:.1em;
	    }
	    .popular-note-meta{
	      color:#7B6F59;
	      font-size:11px;
	      font-weight:750;
	      line-height:1.35;
	    }
	    .home-popular-meta span,
	    .note-meta{
	      border-color:rgba(247,193,20,.36);
	      background:#fff7cf;
	      color:#6f5200;
	      font-weight:800;
	    }
	    .season-pick-nav{
	      gap:10px;
	    }
	    .season-pick-nav a,
	    .station-theme-link-list a,
	    .station-nearby-link-list a{
	      border-color:rgba(197,182,143,.7);
	      background:#fffdf7;
	      color:var(--ink);
	      font-weight:900;
	    }
	    .season-pick-nav a:hover,
	    .station-theme-link-list a:hover,
	    .station-nearby-link-list a:hover{
	      background:var(--accent);
	      border-color:var(--accent);
	      color:#1f1a12;
	    }
	    .station-hero{
	      display:grid;
	      grid-template-columns:minmax(0,.95fr) minmax(360px,1.35fr);
	      gap:22px;
	      align-items:stretch;
	      margin:18px 0 24px;
	      padding:22px;
	      border:1px solid rgba(197,182,143,.68);
	      border-radius:18px;
	      background:linear-gradient(135deg,#fffdf7 0%,#fff7d5 100%);
	      box-shadow:var(--shadow-soft);
	    }
	    .station-hero-copy{
	      display:flex;
	      flex-direction:column;
	      justify-content:center;
	      padding:10px 6px;
	    }
	    .station-title{
	      position:relative;
	      margin:0 0 10px;
	      color:var(--ink);
	      font-size:clamp(28px,3.4vw,44px);
	      line-height:1.25;
	      font-weight:950;
	    }
	    .station-title::before{
	      content:"STATION";
	      display:block;
	      margin-bottom:7px;
	      color:#B38600;
	      font-size:12px;
	      letter-spacing:.16em;
	      line-height:1;
	    }
	    .station-meta{
	      color:#7B6F59;
	      font-weight:800;
	    }
	    .station-summary{
	      color:#493F2B;
	      font-size:16px;
	      line-height:1.85;
	    }
	    .station-hero-media{
	      order:0;
	      min-height:220px;
	      gap:10px;
	    }
	    .station-hero-media a,
	    .station-hero-media span{
	      border-radius:12px;
	      border-color:rgba(197,182,143,.66);
	      background:#efe6d0;
	    }
	    .station-hero-media a:first-child{
	      grid-column:span 2;
	    }
	    .station-hero-media-title{
	      background:linear-gradient(180deg,rgba(31,26,18,0),rgba(31,26,18,.82));
	      font-weight:900;
	    }
	    .station-portal{
	      padding:24px clamp(16px,3vw,28px);
	    }
	    .station-portal-lead,
	    .station-portal-empty,
	    .note-excerpt,
	    .home-popular-excerpt{
	      color:#665D4D;
	    }
	    .station-portal-block{
	      border-color:rgba(197,182,143,.68);
	      border-radius:14px;
	      background:#fffdf7;
	      box-shadow:none;
	    }
	    .station-portal-block:nth-child(1),
	    .station-portal-block:nth-child(2),
	    .station-portal-block:nth-child(3),
	    .station-portal-block:nth-child(4),
	    .station-portal-block:nth-child(5),
	    .station-portal-block:nth-child(6){
	      background:#fffdf7;
	      border-color:rgba(197,182,143,.68);
	    }
	    .station-portal-block h3{
	      display:flex;
	      align-items:center;
	      gap:8px;
	      color:var(--ink);
	      font-size:16px;
	      font-weight:950;
	    }
	    .station-portal-block h3::before{
	      content:"";
	      width:10px;
	      height:10px;
	      border-radius:999px;
	      background:var(--accent);
	      box-shadow:0 0 0 4px rgba(247,193,20,.16);
	      flex:0 0 auto;
	    }
	    .station-portal-thumb,
	    .popular-note-thumb{
	      background:#efe6d0;
	      border-color:rgba(197,182,143,.64);
	    }
	    .station-main section{
	      padding:24px clamp(16px,3vw,28px);
	    }
	    .note-card{
	      transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
	    }
	    .note-readmore,
	    .popular-note-all,
	    .note-back-top,
	    .note-detail .note-back{
	      color:#9A7200;
	    }
	    .feed-tools{
	      padding:14px;
	    }
	    .feed-tools-head{
	      color:#8A6A16;
	      letter-spacing:.08em;
	    }
	    .searchInput,
	    .note-search-input,
	    #stationInput,
	    #noteModal input,
	    #noteModal select,
	    #noteModal textarea,
	    .note-editor{
	      border-color:rgba(197,182,143,.76);
	      background:#fffdf7;
	      color:var(--ink);
	    }
	    .card{
	      border-color:rgba(197,182,143,.68);
	      background:#fffdf7;
	      border-radius:14px;
	      box-shadow:0 6px 18px rgba(69,55,27,.06);
	    }
	    .badge.station,
	    .clusterBadge,
	    .clusterSourceBadge{
	      background:#fff7cf;
	      border-color:rgba(247,193,20,.42);
	      color:#6f5200;
	    }
	    body.note-view .note-detail{
	      background:#fffdf7;
	      border-color:rgba(197,182,143,.76);
	      box-shadow:var(--shadow-soft);
	    }
	    @media (min-width: 1100px){
	      .app{
	        max-width:1260px;
	      }
	      .topbar{
	        border-radius:18px;
	      }
	      .feed{
	        max-width:880px;
	      }
	    }
	    @media (max-width: 900px){
	      .home-hero{
	        min-height:0;
	        padding:42px 18px 34px;
	        background:
	          linear-gradient(180deg, rgba(31,26,18,.68) 0%, rgba(31,26,18,.58) 48%, rgba(31,26,18,.24) 100%),
	          url("/assets/images/ekirip-local-hero-mobile.jpg") center bottom / auto 145% no-repeat;
	      }
	      .home-hero h1{
	        max-width:100%;
	        font-size:clamp(28px,7.4vw,34px);
	        line-height:1.24;
	        overflow-wrap:anywhere;
	      }
	      .home-hero-lead{
	        font-size:15.5px;
	        line-height:1.85;
	        overflow-wrap:anywhere;
	      }
	      .home-hero-copy{
	        font-size:12px;
	        line-height:1.7;
	        overflow-wrap:anywhere;
	      }
	      .home-hero-segments{
	        grid-template-columns:1fr;
	      }
	      .home-hero-segment{
	        padding:12px;
	      }
	      .station-hero{
	        display:flex;
	        padding:16px;
	      }
	      .home-note-search{
	        margin:10px 0 18px;
	      }
	      .home-note-search-form{
	        grid-template-columns:1fr;
	      }
	      .home-note-search-input,
	      .home-note-search-submit{
	        min-height:56px;
	        width:100%;
	      }
	    }
		    @media (max-width: 600px){
		      .home-seo,
		      .station-page{
		        padding-left:10px;
		        padding-right:10px;
	      }
	      .topbar .stationBtn,
	      .topbar .refreshBtn{
	        flex:1 1 calc(50% - 8px);
	        min-width:0;
	      }
	      .home-hero{
	        margin-top:10px;
	        border-radius:16px;
	      }
	      .home-hero-cta{
	        grid-template-columns:1fr;
	      }
		      .home-media-section,
		      .home-note-search,
		      .station-portal,
		      .station-main section{
		        padding:18px 14px;
		        border-radius:14px;
		      }
		      .home-note-search{
		        margin-top:8px;
		        padding:18px 14px 16px;
		        border-radius:16px;
		      }
		      .home-note-search h2{
		        font-size:25px;
		        line-height:1.25;
		      }
		      .home-note-search-lead{
		        font-size:13.5px;
		        line-height:1.65;
		      }
		      .home-note-search-status{
		        font-size:12.5px;
		      }
		      .station-hero{
		        gap:14px;
		        margin:12px 0 16px;
		        padding:18px 14px 16px;
		        border-radius:18px;
		        background:linear-gradient(180deg,#fffdf7 0%,#fff8df 100%);
		        box-shadow:0 10px 22px rgba(69,55,27,.08);
		      }
		      .station-hero-copy{
		        padding:0 2px;
		      }
		      .station-title{
		        margin-bottom:9px;
		        font-size:clamp(30px,10vw,42px);
		        line-height:1.12;
		      }
		      .station-title::before{
		        margin-bottom:8px;
		        font-size:12px;
		        letter-spacing:.2em;
		      }
		      .station-meta{
		        display:inline-flex;
		        width:max-content;
		        max-width:100%;
		        margin:0;
		        padding:6px 10px;
		        border:1px solid rgba(197,182,143,.66);
		        border-radius:999px;
		        background:#fffdf7;
		        color:#7B6F59;
		        font-size:12px;
		        line-height:1.25;
		      }
		      .station-summary{
		        display:none;
		      }
		      .station-hero-media{
		        display:grid;
		        grid-template-columns:repeat(2,minmax(0,1fr));
		        min-height:0;
		        gap:10px;
		        width:100%;
		        max-width:100%;
		        overflow:hidden;
		      }
		      .station-hero-media a:first-child,
		      .station-hero-media span:first-child{
		        grid-column:1 / -1;
		        aspect-ratio:16 / 10;
		      }
		      .station-hero-media a:not(:first-child),
		      .station-hero-media span:not(:first-child){
		        grid-column:auto;
		        aspect-ratio:1 / 1;
		      }
		      .station-hero-media a,
		      .station-hero-media span{
		        min-width:0;
		        width:100%;
		        border-radius:14px;
		      }
		      .station-hero-media img{
		        object-fit:cover;
		      }
		      .station-hero-media-empty{
		        grid-column:1 / -1;
		        aspect-ratio:16 / 10;
		      }
		    }
	    @media (max-width: 420px){
	      .home-hero-cta,
	      .home-hero-cta.single{
	        grid-template-columns:1fr;
	      }
	    }
	    
	    /* sentinel */
    #sentinel{height:1px;}
