/* Full-screen handheld layout, including wide phones, tablets and keyboard resize. */
@media (max-width:900px), (hover:none) and (pointer:coarse){
 html{height:100%;overflow:hidden;background:#fff;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{width:100%;height:100%;margin:0;overflow:hidden;background:white;overscroll-behavior:none}
 .workspace{position:fixed;top:var(--viewport-top,0px);left:0;right:0;display:block;width:100%;height:var(--app-height,100dvh);min-height:0;max-width:none;margin:0;padding:0;overflow:hidden;background:white}
 .editorial,.side-note,.orbit-label,.phone-caption,.status-bar,.home-indicator{display:none!important}
 .phone-stage{display:block;position:relative;width:100%;height:100%;min-height:0;gap:0;margin:0;padding:0}
 .phone{width:100%;height:100%;min-height:0;max-height:none;border:0;padding:0;margin:0;border-radius:0;box-shadow:none;background:white}
 .phone:before,.phone:after{display:none}
 .phone-screen{width:100%;height:100%;min-height:0;border:0;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);background:#fff}
 .phone-screen[data-view="chat"]{background:var(--chat-bg)}
 .screen{display:flex;flex:1;min-width:0;min-height:0;width:100%;overflow:hidden;isolation:isolate}
 .page{flex:1;min-height:0;height:auto;width:100%;padding-bottom:env(safe-area-inset-bottom,0px);overflow:hidden}
 .kt-main,.phone-screen[data-view="favorites"] .page{padding-bottom:0}
 .page-body{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:18px 20px;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scroll-padding-bottom:20px}
 .kt-main .page-body{padding-top:0}
 .kt-header{min-height:80px;padding:20px 20px 16px}
 .kt-header h2{font-size:26px}
 .kt-header small{font-size:11px;margin-top:4px}
 .kt-header .head-right{gap:7px}
 .icon-button{width:44px;height:44px;padding:10px;flex-shrink:0}
 .icon-button svg{width:24px;height:24px}
 .head-right{gap:3px}
 .kt-tabs{height:auto;min-height:66px;padding:9px 10px calc(10px + env(safe-area-inset-bottom,0px));gap:4px}
 .kt-tab{flex:1;min-width:44px;min-height:44px;gap:5px;font-size:11px}
 .kt-tab.active:after{bottom:-5px}
 .kt-notice{padding:16px;margin:2px 0 16px;font-size:13px;line-height:1.5}
 .kt-notice small{font-size:10px;margin-top:3px}
 .kt-notice-mark{width:35px;height:35px;font-size:16px;flex-shrink:0}
 .chat-card{min-height:80px;gap:13px;padding:13px 0;margin-bottom:0}
 .chat-card .avatar{width:54px;height:54px;border-radius:19px}
 .card-info strong{font-size:16px}
 .card-info p{font-size:13px;line-height:1.5;margin-top:5px}
 .kt-row-meta{gap:9px;padding-top:5px}
 .kt-row-meta time{font-size:10px}
 .kt-sim-tag{font-size:9px;padding:3px 5px}
 .kt-friend-heading{font-size:12px;margin-top:20px}
 .kt-my-profile{min-height:88px;padding:10px 0 20px}
 .kt-my-profile strong{font-size:17px}
 .kt-my-profile small{font-size:12px}
 .kt-edit-label{font-size:11px;padding:7px 12px}
 .kt-add-friend{min-height:48px;font-size:13px}
 .kt-list-foot{font-size:12px;margin-top:70px}
 .kt-list-foot span{font-size:12px}
 .kt-more-grid{gap:25px 10px;padding:28px 0}
 .kt-more-grid .app{font-size:13px;min-height:65px}
 .kt-yellow-card h3{font-size:19px}
 .kt-yellow-card p{font-size:13px}
 .kt-yellow-card button{min-height:44px;font-size:12px}
 .page-head{min-height:64px;padding:9px 14px}
 .page-head h2{font-size:18px}
 .page-head small{font-size:11px;line-height:1.4}
 .back{min-width:40px;min-height:44px;padding:0;display:grid;place-items:center;font-size:33px}
 .chat{padding-bottom:env(safe-area-inset-bottom,0px)}
 .chat:after{display:none}
 .chat .page-head{min-height:64px;padding:6px 10px;gap:6px;flex-shrink:0}
 .chat-title{max-width:none;flex:1;min-width:0}
 .chat-title h2{font-size:17px}
 .chat-title small{font-size:10px}
 .chat .head-right{gap:0;margin-left:0}
 .chat .icon-button{width:40px;height:44px;padding:9px}
 .chat-messages{min-height:0;min-width:0;padding:13px 16px 18px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-x:hidden;flex:1}
 .chat-date{font-size:10px;padding:7px 12px;margin-bottom:23px;max-width:95%}
 .msg{gap:9px;margin-bottom:19px}
 .msg .avatar{width:39px;height:39px;border-radius:14px}
 .msg .avatar svg{width:30px;height:30px}
 .msg-content{min-width:0;max-width:min(80%,440px);padding-right:39px}
 .msg.mine .msg-content{padding-right:0;padding-left:39px}
 .message-author{font-size:12px;margin-bottom:7px}
 .bubble{font-size:15px;line-height:1.65;padding:10px 12px;overflow-wrap:anywhere}
 .message-foot{font-size:9px;gap:5px}
 .save-message{min-width:28px;min-height:25px;font-size:14px;padding:0}
 .suggestions{padding:7px 12px 10px;gap:7px;flex-shrink:0}
 .suggestions button{font-size:11px;padding:8px 11px;min-height:34px}
 .composer{flex-shrink:0;padding:8px 10px;gap:5px;align-items:flex-end;min-height:60px;background:white}
 .composer textarea{font-size:16px!important;line-height:1.45;min-height:42px;height:42px;max-height:110px;padding:9px 10px;border-radius:10px}
 .composer-plus,.voice-toggle{width:34px;min-width:34px;height:42px;display:grid;place-items:center}
 .composer-plus{font-size:28px}
 .voice-toggle svg{width:24px;height:24px}
 .send{width:40px;min-width:40px;height:42px;font-size:23px;border-radius:10px}
 .composer-note{display:none}
 .voice-message{min-width:135px}
 .voice-play{min-height:40px;gap:10px}
 .voice-duration{font-size:14px}
 .voice-label{font-size:10px}
 .voice-label button{font-size:11px;min-height:30px;padding:2px 6px}
 .voice-transcript{font-size:14px}
 .transfer-card{min-width:170px;max-width:260px}
 .transfer-top{padding:15px 13px 9px;gap:9px}
 .transfer-top strong{font-size:21px}
 .transfer-top p{font-size:12px}
 .transfer-party{font-size:10px;padding-bottom:12px}
 .transfer-receive{min-height:44px;font-size:12px}
 .transfer-received{font-size:12px;padding:12px}
 .transfer-card>small{font-size:9px;padding:7px 12px}
 .field{font-size:13px;margin-bottom:20px}
 .field input,.field textarea,.field select,.search{font-size:16px!important;min-height:46px;border-radius:10px;line-height:1.5}
 .field small{font-size:11px;line-height:1.7}
 .primary,.subtle{font-size:14px;min-height:46px}
 .settings-row{font-size:14px;min-height:58px}
 .settings-row small{font-size:11px;line-height:1.6}
 .switch{min-width:38px;width:38px;height:24px}
 .switch:after{width:18px;height:18px}
 .switch:checked:after{transform:translateX(14px)}
 .theme-option{font-size:12px;min-height:80px}
 .notice{font-size:12px;line-height:1.8;padding:15px}
 .danger{font-size:13px;min-height:44px;padding:12px 0}
 .section-label{font-size:10px}
 .count-label,.empty-note{font-size:13px}
 .note-card h3{font-size:17px}
 .note-card p{font-size:13px}
 .note-card small{font-size:11px}
 .favorite-card{font-size:14px;padding:16px}
 .favorite-card small{font-size:11px}
 .group-count{font-size:12px}
 .group-member{font-size:15px;min-height:62px}
 .group-member input{width:22px;height:22px}
 .group-members{max-height:calc(var(--app-height,100dvh) * .33);overscroll-behavior:contain}
 .group-avatar{gap:2px}
 .group-avatar>span{font-size:12px}
 .clock-page{flex:1;height:auto;min-height:0;overflow:auto}
 dialog{position:fixed;top:calc(var(--viewport-top,0px) + env(safe-area-inset-top,0px) + 12px);bottom:auto;margin:auto;max-width:520px;width:calc(100vw - 24px);max-height:calc(var(--app-height,100dvh) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);padding:26px 20px 20px;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:17px}
 dialog h3{font-size:21px;padding-right:26px}
 dialog p{font-size:13px;line-height:1.8}
 .dialog-close{width:44px;height:44px;font-size:28px;top:6px;right:6px}
 .dialog-buttons{align-items:center}
 .dialog-buttons button{margin-top:0}
 .voice-mode-tabs button{font-size:13px;min-height:44px}
 .recorder-panel{padding:10px 0}
 .recorder-panel p{font-size:12px}
 .record-button{width:66px;height:66px}
 .voice-reply-option{font-size:13px}
 .voice-reply-option small{font-size:11px}
 .find-results{max-height:calc(var(--app-height,100dvh) * .48)}
 .preview-image{max-height:calc(var(--app-height,100dvh) * .6)}
 .notification{top:calc(env(safe-area-inset-top,0px) + 8px);left:10px;right:10px;font-size:13px;padding:15px;z-index:25}
 .notification strong{font-size:15px}
 .notification small{font-size:10px}
 .toast{top:calc(var(--viewport-top,0px) + env(safe-area-inset-top,0px) + 14px);bottom:auto;font-size:13px;max-width:calc(100vw - 32px);width:max-content;line-height:1.6;padding:12px 18px;pointer-events:none;z-index:1000}
 :root[data-keyboard="open"] .suggestions{display:none}
 :root[data-keyboard="open"] .page,:root[data-keyboard="open"] .kt-tabs{padding-bottom:0}
 :root[data-keyboard="open"] dialog{top:calc(var(--viewport-top,0px) + 8px);max-height:calc(var(--app-height,100dvh) - 16px)}
}
@media (max-width:360px){
 .kt-header{padding-left:16px;padding-right:16px}
 .page-body{padding-left:15px;padding-right:15px}
 .chat-messages{padding-left:12px;padding-right:12px}
 .msg-content{max-width:calc(100% - 48px);padding-right:32px}
 .msg.mine .msg-content{max-width:90%;padding-left:32px}
 .transfer-card{min-width:158px}
 .transfer-top strong{font-size:19px}
 .composer{gap:3px;padding-left:6px;padding-right:6px}
 .composer-plus,.voice-toggle{width:30px;min-width:30px}
 .voice-message{min-width:112px}
}
