@media (max-width:700px), (max-width:900px) and (pointer:coarse){
  html{scroll-snap-type:none;scroll-padding-top:104px}
  body{padding-top:calc(96px + env(safe-area-inset-top));overflow-x:hidden}

  .rail{position:fixed;left:0;right:0;top:0;bottom:auto;width:auto;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;display:grid;grid-template-columns:1fr auto;grid-template-rows:38px 38px;gap:6px 10px;background:rgba(7,7,11,.94);border-right:0;border-bottom:1px solid rgba(233,184,114,.10);backdrop-filter:blur(18px)}
  .rail-brand{grid-column:1;grid-row:1;margin:0;gap:8px;align-self:center}
  .rail-brand>span{width:30px;height:30px;font-size:11px}
  .rail-brand b{font-size:14px}
  .home-return{grid-column:2;grid-row:1;margin:0;height:32px;padding:0 11px;align-self:center;font-size:11px;border-radius:8px}
  .rail nav{grid-column:1/-1;grid-row:2;display:flex;flex-direction:row;gap:6px;overflow-x:auto;overflow-y:hidden;padding-bottom:1px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .rail nav::-webkit-scrollbar{display:none}
  .rail-link{display:flex;grid-template-columns:none;flex:0 0 auto;align-items:center;gap:5px;padding:5px 10px;border:1px solid transparent;border-radius:999px;color:#817b73}
  .rail-link.sub{display:none}
  .rail-link i{font-size:10px}
  .rail-link span{font-size:12px}
  .rail-link.active{border-color:rgba(233,184,114,.20);background:rgba(233,184,114,.055);color:var(--ink)}
  .rail-link.active::after{display:none}
  .rail-foot{display:none}
  .rail+main{margin-left:0}

  .chapter,.hero{min-height:auto;display:block;padding:52px 0 58px;scroll-snap-align:none;border-bottom:0;margin-bottom:18px;position:relative;background:rgba(255,255,255,.006)}
  main .chapter:nth-of-type(even){background:rgba(233,184,114,.009)}
  main .chapter:not(:last-child)::after{content:"";position:absolute;left:0;right:0;bottom:-18px;height:18px;background:#050509;border-top:1px solid rgba(255,255,255,.035);border-bottom:1px solid rgba(255,255,255,.025)}
  .wrap{width:100%;padding:0 18px}
  .eyebrow{font-size:10px;letter-spacing:.24em;margin-bottom:10px}
  .chapter h1{font-size:42px}
  .chapter h2{font-size:31px;line-height:1.18}
  .chapter-indicator{display:none}

  .flow-canvas{margin-top:38px;display:flex;flex-direction:column;gap:0}
  .flow-step{width:100%;min-height:68px;padding:14px 12px}
  .flow-step span{font-size:17px}
  .flow-step.focus{min-height:102px;border-radius:16px}
  .flow-step.focus strong{font-size:26px}
  .flow-arrow{margin:2px 0;transform:rotate(90deg);font-size:18px;line-height:1.2}
  .flow-arrow.strong{font-size:21px}

  .difficulty-layout{margin-top:34px;grid-template-columns:1fr;gap:34px}
  .difficulty-panel-head,.difficulty-row{grid-template-columns:minmax(0,1fr) 104px;gap:12px}
  .difficulty-panel-head{padding:0 4px 10px}
  .difficulty-panel-head span{font-size:21px}
  .difficulty-panel-head em{font-size:11px}
  .difficulty-row{padding:13px 4px}
  .difficulty-row b,.core-panel .difficulty-row b{font-size:15px}
  .difficulty-row>span{font-size:15px;letter-spacing:.035em}

  .architecture-map{margin-top:34px;display:grid;grid-template-columns:1fr;gap:0;min-height:0}
  .arch-lines{display:none}
  .arch-main-box{width:min(100%,330px);padding:15px 16px}
  .arch-main-box strong{font-size:20px}
  .arch-main-box span{font-size:12px}
  .arch-input-label{font-size:15px}
  .arch-output-branch{margin-top:20px;padding-top:20px;gap:7px}
  .arch-output-branch::before{top:-20px;height:20px}
  .arch-output-branch span{font-size:15px}
  .arch-state-column,.arch-storage-column{padding-top:0;margin-top:34px}
  .arch-column-title{text-align:center;margin-bottom:12px}
  .arch-state-box{margin-bottom:10px;padding:15px;text-align:center;font-size:17px}
  .arch-sqlite{margin-top:10px;padding:22px 16px}
  .arch-sqlite strong{font-size:26px}
  .arch-support-layer{margin-top:34px}
  .arch-support-row{grid-template-columns:1fr;gap:10px}
  .arch-support-row>div{padding:15px 16px}
  .arch-support-row strong{font-size:18px}

  .dialogue-stage{margin-top:34px;gap:14px}
  .chat-turn{max-width:84%}
  .role-label{font-size:14px;margin-bottom:5px}
  .dialogue-bubble{padding:12px 15px;font-size:17px;line-height:1.55}
  .system-note,.system-note.slim{min-width:0;width:84%;max-width:84%;padding:8px 12px}
  .system-note span{font-size:13px}
  .system-note b{font-size:14px}
  .single-question .customer-turn{max-width:84%}
  .dialogue-order .order-ticket{width:84%;max-width:84%;margin-left:auto;padding:20px}

  .chat-sequence{margin-top:34px;flex-direction:column;gap:8px}
  .sequence-msg{min-height:auto;padding:18px 16px}
  .sequence-msg b{font-size:21px}
  .sequence-arrow{transform:rotate(90deg);font-size:20px}

  .vertical-flow{width:100%;margin-top:24px}
  .process-box{padding:18px 16px}
  .process-box strong{font-size:21px}
  .branch-flow{margin-top:34px}
  .branch-node{min-width:0;width:100%;padding:17px 16px;font-size:20px}
  .branch-question{font-size:24px}
  .branch-split,.big-split{grid-template-columns:1fr;gap:16px}
  .branch-split>div{padding:18px 12px}

  .interrupt-flow{margin-top:34px}
  .interrupt-step{padding:15px 14px}
  .interrupt-step strong{font-size:20px}
  .error-inputs{margin-top:34px;grid-template-columns:1fr 1fr;gap:10px}
  .error-inputs span{padding:18px 8px;font-size:17px}

  #context-inputs h2{font-size:28px;line-height:1.22;text-wrap:balance}
  .context-stage{margin-top:28px;grid-template-columns:1fr 1fr;gap:12px 10px;align-items:start;justify-items:stretch}
  .context-core{grid-column:1/-1;width:164px;height:164px;order:1;justify-self:center;margin-bottom:8px}
  .context-core small{font-size:9px}
  .context-core strong{font-size:21px}
  .context-orbit{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .left-orbit{order:2}.right-orbit{order:3}
  .left-orbit span,.right-orbit span{text-align:center;border:1px solid rgba(233,184,114,.10);border-radius:10px;background:rgba(255,255,255,.018);padding:11px 8px;font-size:14px;line-height:1.35;color:#aaa39a}

  .transform-flow{margin-top:36px;display:flex;flex-direction:column;gap:10px}
  .transform-flow>i{transform:rotate(90deg);font-size:22px}
  .transform-source,.transform-action,.transform-result{width:100%;min-height:0;padding:19px 16px}
  .transform-target{width:100%;grid-template-columns:1fr 1fr}
  .transform-target span{padding:13px 8px;font-size:13px}
  .memory-layers{margin-top:36px;grid-template-columns:1fr 1fr;gap:10px}
  .memory-layers>div{min-height:120px;padding:18px 14px}
  .memory-layers b{font-size:17px}
  .memory-core{padding:18px 16px}
  .memory-core strong{font-size:20px}

  .profile-scene{margin-top:34px;grid-template-columns:1fr;gap:24px}
  .extract-arrow{text-align:center;transform:rotate(90deg);margin:12px 0}
  .profile-sheet{padding:20px 16px}
  .sheet-head span{font-size:23px}
  .sheet-row{grid-template-columns:88px 1fr auto;gap:8px;padding:12px 0}
  .sheet-row>span{font-size:12px}.sheet-row>b{font-size:15px}.sheet-row>em{font-size:10px}
  .profile-change{margin-top:36px;grid-template-columns:1fr;gap:10px}
  .profile-change>i{transform:rotate(90deg);text-align:center;font-size:22px}
  .profile-state,.profile-new-msg{min-height:0;padding:20px}
  .profile-state strong,.profile-new-msg strong{font-size:21px}
  .known-unknown{margin-top:36px;grid-template-columns:1fr;gap:16px}
  .known-msg,.no-guess{padding:20px 16px}

  .order-story{margin-top:34px}
  .horizontal-order{display:flex;flex-direction:column;gap:8px}
  .horizontal-order>i{transform:rotate(90deg);font-size:20px}
  .horizontal-order .order-turn,.horizontal-order .order-final{width:100%;padding:18px 14px}
  .horizontal-order .order-final strong{font-size:21px}
  .pipeline-flow{margin-top:36px;display:flex;flex-direction:column;gap:8px}
  .pipeline-flow span,.pipeline-flow strong{width:100%;padding:18px 12px}
  .pipeline-flow i{transform:rotate(90deg);font-size:20px}

  .entry-top{margin-top:28px;flex-direction:column;gap:8px;text-align:center}
  .entry-top i{transform:rotate(90deg);font-size:18px}
  .route-row{margin-top:34px;grid-template-columns:1fr;gap:12px}
  .route-type{padding:12px 0 18px}
  .route-type b{font-size:24px}
  .state-track{grid-template-columns:1fr;gap:6px;margin-top:26px}
  .state-track>div{padding:14px 8px}
  .state-track i{transform:rotate(90deg);text-align:center}

  .decision-stage{margin-top:36px;grid-template-columns:1fr;gap:24px;justify-items:center}
  .decision-input,.decision-output{width:100%;grid-template-columns:1fr 1fr;gap:8px}
  .decision-input span,.decision-output span{padding:10px 6px;font-size:14px}
  .decision-engine{width:205px;height:205px}
  .decision-engine strong{font-size:27px}
  .decision-boundary{grid-template-columns:1fr;gap:12px}
  .rules-contrast{margin-top:34px;grid-template-columns:1fr;gap:24px}
  .rules-contrast section{padding:0 8px}
  .rules-contrast span{font-size:15px}

  .knowledge-scene{margin-top:36px;grid-template-columns:1fr;gap:18px}
  .knowledge-half{min-height:0;padding:24px 20px}
  .knowledge-half strong{font-size:29px}
  .knowledge-half p{margin-top:20px}
  .knowledge-join span{font-size:28px}
  .dual-query{margin-top:26px;grid-template-columns:1fr;gap:12px}
  .dual-query>b{text-align:center;font-size:28px}
  .dual-query>div{padding:20px}

  .bot-scene{margin-top:34px;grid-template-columns:1fr;gap:28px}
  .bot-pipeline{margin-top:36px;display:flex;flex-direction:column;gap:10px}
  .bot-pipeline>div:not(.bot-output){width:100%;min-height:0;padding:18px 14px}
  .bot-pipeline>b{font-size:20px}
  .bot-pipeline>i{transform:rotate(90deg);font-size:21px}
  .bot-output{width:100%;padding:20px 16px}
  .bot-output strong{font-size:22px}
  .expression-grid{margin-top:34px;grid-template-columns:1fr;gap:12px}
  .expression-grid>div{min-height:0;padding:21px 16px}
  .mini-ai-chat p{font-size:16px}

  .data-scene,.database-scene{margin-top:36px;grid-template-columns:1fr;gap:28px}
  .database-shape{width:210px;height:125px;margin:0 auto}
  .database-shape strong{font-size:29px}
  .database-grid{grid-template-columns:1fr 1fr;gap:8px}
  .database-grid span{padding:14px 8px;font-size:14px}
  .human-decision{margin-top:34px}
  .handoff-scene{margin-top:36px}
  .handoff-center{padding:16px 22px;font-size:21px}
  .handoff-items{grid-template-columns:1fr 1fr;gap:8px}
  .handoff-items span{padding:16px 10px;font-size:14px}

  .confirm-board{margin-top:34px;grid-template-columns:1fr}
  .confirm-section{min-height:0;padding:21px 18px}
  .confirm-section h3{font-size:23px}
  .scope-foot{grid-template-columns:1fr;gap:12px}

  .delivery-track{margin-top:36px;display:flex;flex-direction:column;gap:7px}
  .delivery-track>i{transform:rotate(90deg);align-self:center}
  .delivery-step{min-height:0;padding:19px 16px}
  .delivery-step span{margin-top:10px}
  .delivery-step strong{font-size:36px;margin-top:12px}
  .quote{margin-top:30px}
  .quote strong{font-size:52px}

  /* Mobile hierarchy: strong chapter separation, quiet internal grouping. */
  .flow-canvas,.difficulty-layout,.architecture-map,.dialogue-stage,.chat-sequence,.branch-flow,.interrupt-flow,.error-inputs,.context-stage,.transform-flow,.memory-layers,.profile-scene,.profile-change,.known-unknown,.order-story,.pipeline-flow,.route-row,.decision-stage,.rules-contrast,.knowledge-scene,.dual-query,.bot-scene,.bot-pipeline,.expression-grid,.data-scene,.database-scene,.human-decision,.handoff-scene,.confirm-board,.delivery-track{margin-top:26px}
  .difficulty-layout{gap:26px}
  .dialogue-stage{gap:10px}
  .profile-scene,.bot-scene,.data-scene,.database-scene{gap:20px}
  .known-unknown,.knowledge-scene,.rules-contrast{gap:16px}
  .expression-grid,.handoff-items,.database-grid{gap:0}

  .context-stage{margin-top:24px;gap:10px}
  .context-core{margin-bottom:2px}
  .context-orbit{gap:0;padding:4px 12px 6px;border-top:1px solid rgba(233,184,114,.12);border-bottom:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.012)}
  .context-orbit::before{display:block;padding:7px 2px 5px;font-size:10px;letter-spacing:.13em;color:var(--gold)}
  .left-orbit::before{content:"客户与订单"}
  .right-orbit::before{content:"销售与资料"}
  .left-orbit span,.right-orbit span{padding:8px 2px;text-align:left;border:0;border-bottom:1px solid rgba(255,255,255,.045);border-radius:0;background:none;font-size:14px}
  .left-orbit span:last-child,.right-orbit span:last-child{border-bottom:0}

  .memory-layers>div,.expression-grid>div,.database-grid span,.handoff-items span{background:transparent;border-radius:0}
  .memory-layers{gap:0;border-top:1px solid rgba(233,184,114,.12);border-bottom:1px solid rgba(255,255,255,.05)}
  .memory-layers>div{min-height:104px;border-top:0;border-bottom:1px solid rgba(255,255,255,.045)}
  .expression-grid{border-top:1px solid rgba(233,184,114,.12)}
  .expression-grid>div{padding:18px 8px;border-top:0;border-bottom:1px solid rgba(255,255,255,.055)}
  .database-grid{border-top:1px solid rgba(95,227,208,.12)}
  .database-grid span{border-bottom:1px solid rgba(255,255,255,.05)}
  .handoff-items{border-top:1px solid rgba(233,184,114,.12)}
  .handoff-items span{border-top:0;border-bottom:1px solid rgba(255,255,255,.05)}

  .route-row{gap:0;border-top:1px solid rgba(233,184,114,.12)}
  .route-type{padding:16px 2px;border-bottom:1px solid rgba(255,255,255,.055)}
  .state-track{gap:0;border-top:1px solid rgba(233,184,114,.12);border-bottom:1px solid rgba(255,255,255,.05)}
  .state-track>div{border-top:0;border-bottom:1px solid rgba(255,255,255,.045)}
  .state-track>div:last-of-type{border-bottom:0}

  .decision-input,.decision-output{gap:0 12px;border-top:1px solid rgba(233,184,114,.10)}
  .decision-input span,.decision-output span{border-bottom:1px solid rgba(255,255,255,.045)}
  .transform-target{gap:0;border-top:1px solid rgba(233,184,114,.10)}
  .transform-target span{border-bottom:1px solid rgba(255,255,255,.045)}

  .confirm-board{border-top-color:rgba(233,184,114,.18);border-left:0}
  .confirm-section{border-right:0;padding:20px 4px}
  .scope-foot{gap:0}
  .scope-foot>div{padding:14px 4px}

  .delivery-track{gap:0;border-top:1px solid rgba(233,184,114,.14)}
  .delivery-step{padding:18px 4px;border-top:0;border-bottom:1px solid rgba(255,255,255,.055)}
  .delivery-step.key{padding-left:14px;padding-right:14px;border-left:2px solid rgba(233,184,114,.38)}
}

@media (max-width:380px){
  .wrap{padding-left:15px;padding-right:15px}
  .chapter h1{font-size:38px}
  .chapter h2{font-size:28px}
  .difficulty-panel-head,.difficulty-row{grid-template-columns:minmax(0,1fr) 94px}
  .difficulty-row b,.core-panel .difficulty-row b{font-size:14px}
  .difficulty-row>span{font-size:14px}
  .quote strong{font-size:46px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
