[hidden]{display:none!important}.login-wrap{max-width:460px;margin:10vh auto;padding:36px;background:white;border:1px solid var(--border);border-radius:22px;box-shadow:0 24px 65px #17332b0b}.login-wrap .brand{color:var(--ink);margin-bottom:35px}.login-wrap label{display:block;font-size:13px;margin:18px 0 8px}.login-wrap input{width:100%;padding:13px;border:1px solid var(--border);border-radius:9px;font:inherit}.login-wrap .btn{width:100%;margin-top:24px;justify-content:center}.login-wrap p{font-size:13px;line-height:1.7}.error{color:#a83c35}.connection-line{padding:12px 34px 0;font-size:12px;color:#63766c;min-height:26px}.profile small{display:block;font-size:10px;margin-top:5px;color:#b5cabe}.pill-list{display:flex;gap:7px;flex-wrap:wrap}.result-table{border-collapse:collapse;width:100%;font-size:12px}.result-table th,.result-table td{padding:13px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.result-table th{font-size:10px;text-transform:uppercase;color:#66736d;background:#f5f8f6;white-space:nowrap}.result-table td:first-child{font-family:Consolas,monospace;font-size:11px}.result-table small{display:block;line-height:1.6;color:#718078}.result-table a{color:#216f55}.table-scroll{overflow:auto}.result-info{padding:17px 20px;border-bottom:1px solid var(--border);line-height:1.7}.ai-output{white-space:pre-wrap;font-size:13px;line-height:1.85;padding:22px}.row-warning{background:#fffaf0}.history-list{display:grid;gap:12px}.history-item{padding:15px;border:1px solid var(--border);border-radius:10px;font-size:12px;line-height:1.8}.history-item a{color:#186543}.field,select,input,textarea{max-width:100%}textarea.field{min-height:110px}.form-grid{display:grid;gap:16px}.form-grid label{display:grid;gap:7px;font-size:12px}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:#fff}.file-chip{display:inline-flex;align-items:center;gap:8px;margin:6px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;font-size:11px}.message .bubble{max-width:100%;overflow-wrap:anywhere}.bubble img{display:block;max-width:260px;max-height:200px;margin:10px 0;border-radius:8px}.bubble p{white-space:pre-wrap}.file-link{display:block;color:#216f55;font-size:12px;padding:8px 0}.photo-stage img{object-fit:contain;width:100%;height:100%}.photo-stage .file-placeholder{font-size:35px;color:#6c8c76;font-weight:700}.photo-body select{font-size:11px}.photo-body .actions{flex-wrap:wrap}.empty-full{padding:50px 24px;text-align:center;color:#78837b;line-height:1.9}.pending-label{padding:10px 14px;background:#fff4d9;color:#795614;border-radius:8px;font-size:12px}.source-note{white-space:pre-wrap;max-height:220px;overflow:auto;background:#f5f8f6;padding:14px;border-radius:8px;font-size:12px}.message-count{font-size:11px;color:#718078}.ai-submit{gap:10px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.toolbar .field{width:auto}.choice-list{display:grid;gap:9px}.btn:disabled{opacity:.5;cursor:wait}.form-status{min-height:20px;font-size:12px;color:#9c4937}.search-results{display:grid;gap:6px;max-height:280px;overflow:auto}.search-results button{text-align:left;padding:13px;background:white;border:1px solid var(--border);border-radius:8px;cursor:pointer}.search-results button strong{display:block;font-size:12px}.search-results button small{font-size:11px;color:#718078}.source-hint{font-size:11px;color:#6b7970;margin-top:8px}.task-note{white-space:pre-wrap;font-size:13px;line-height:1.7}.modal-body .note-box{margin-bottom:18px}.chat-shell{height:690px}.chat-main{min-width:0}.task-code{font-size:10px}.profile strong{font-size:12px}.topbar .quiet{font-size:11px}@media(max-width:680px){.login-wrap{margin:35px 15px;padding:25px}.connection-line{padding:10px 15px 0}.inline-fields{grid-template-columns:1fr}.local-indicator{display:none}.topbar{padding:0 12px}.chat-shell{height:calc(100vh - 260px);min-height:520px}.table-scroll{max-width:100%}.result-table td{min-width:125px}.result-table td:first-child{min-width:220px}.message .bubble{width:100%}}

/* PHONE-FIRST-20260929: appended to live.css; same data and desktop layout. */
@media(max-width:760px),(pointer:coarse) and (max-width:1100px){
 body{font-size:14px}.sidebar{position:relative;inset:auto;width:100%;padding:12px 16px;display:block;height:58px;z-index:20;overflow:visible}.sidebar .brand{font-size:23px;padding:0;gap:10px}.sidebar .brand-mark{width:34px;height:34px;line-height:34px;font-size:21px}.sidebar .brand small{font-size:7px;margin-top:3px}.nav-caption,.sidebar-note,.profile{display:none}
 #nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));height:calc(70px + env(safe-area-inset-bottom));background:#102733;border-top:1px solid #2a4450;z-index:30;overflow:visible}
 #nav a{padding:7px 2px;border-radius:9px;display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;white-space:nowrap;font-size:18px}#nav a>span:last-child{display:none}#nav a::after{content:attr(data-phone-label);font-size:10px;line-height:12px;font-weight:600}#nav a.active{background:#c0e880}
 .workspace{margin-left:0;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.topbar{height:42px;padding:0 14px}.breadcrumb{font-size:0}.breadcrumb span{display:none}.breadcrumb strong{font-size:13px}.header-right{gap:10px}.header-right .quiet{padding:10px 4px}.local-indicator{display:none}.connection-line{padding:7px 14px;font-size:10px;min-height:27px}
 main{padding:16px 12px;max-width:100%;width:100%}.page-head{gap:10px;margin-bottom:16px}.page-head .eyebrow{font-size:9px}h1{font-size:24px}.subtitle{font-size:12px}.page-head .btn{white-space:normal;padding:10px;font-size:12px}.field,input,textarea,select,.login-wrap input{font-size:16px!important}.btn,.quiet{min-height:40px}.form-status{font-size:12px}.inline-fields,.grid-two{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr;gap:10px}.hero{grid-template-columns:1fr;padding:22px}.hero-progress{display:none}.board,.photo-grid{grid-template-columns:1fr}.memory-filters{grid-template-columns:1fr 1fr}.memory-input{flex-direction:column}.memory-scope{display:block}.memory-card-top{align-items:flex-start;flex-direction:column}.memory-compose{padding:16px}.memory-preview{width:100px}.toolbar{gap:10px}.toolbar .btn{flex:1}.toolbar label{width:100%}.login-wrap{margin:30px 14px;padding:26px 22px}dialog{width:calc(100% - 20px);max-width:600px;max-height:92dvh}.modal-body,.modal-head{padding:18px}.modal-body .actions{gap:6px}.bubble img{max-width:100%;max-height:250px}footer{display:none}
 body[data-view="messages"] #shell{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
 body[data-view="messages"] .sidebar{flex:0 0 58px}
 body[data-view="messages"] .workspace{display:flex;flex-direction:column;flex:1;min-height:0}
 body[data-view="messages"] .topbar,body[data-view="messages"] .connection-line{flex-shrink:0}
 body[data-view="messages"] main{display:flex;flex-direction:column;flex:1;min-height:0;padding:0 8px 8px}
 body[data-view="messages"] .page-head{flex:none;justify-content:flex-end;margin:0 0 6px;min-height:38px}
 body[data-view="messages"] .page-head>div{display:none}
 body[data-view="messages"] .page-head .btn{padding:7px 12px;font-size:12px;min-height:36px}
 body[data-view="messages"] .chat-shell{display:flex;flex-direction:column;flex:1;height:auto;min-height:0;border-radius:12px}
 body[data-view="messages"] .chat-list{display:flex;overflow-x:auto;flex:none;border:0;border-bottom:1px solid #e3e9ed;min-height:48px}
 body[data-view="messages"] .chat-list-top{display:none}
 body[data-view="messages"] .conversation{flex:0 0 auto;min-width:132px;width:auto;max-width:220px;border:0;border-bottom:3px solid transparent;padding:8px 10px;gap:8px}
 body[data-view="messages"] .conversation.selected{border-bottom-color:#236b61;background:#eef7ef}
 body[data-view="messages"] .conversation h3{font-size:12px;margin:3px 0;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
 body[data-view="messages"] .conversation p,body[data-view="messages"] .conversation small{display:none}
 body[data-view="messages"] .conversation .avatar{width:26px;height:26px;font-size:10px}
 body[data-view="messages"] .chat-main{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}
 body[data-view="messages"] .chat-header,body[data-view="messages"] .context{display:none}
 body[data-view="messages"] .messages{flex:1;min-height:0;overflow-y:auto;padding:14px 10px;overscroll-behavior:contain}
 body[data-view="messages"] .message{max-width:96%}
 body[data-view="messages"] .message>.avatar{display:none}
 body[data-view="messages"] .bubble p{font-size:14px;line-height:1.55}
 body[data-view="messages"] .compose{flex:none;padding:10px;background:white;border-top:1px solid #e3e9ed}
 body[data-view="messages"] .compose textarea{min-height:60px;max-height:120px;width:100%;border-radius:9px;background:#f4f7f7;padding:10px;resize:none}
 body[data-view="messages"] .compose-actions{gap:8px;flex-wrap:wrap}
 body[data-view="messages"] .compose-note{display:none}
 body[data-view="messages"] .compose-actions .quiet{font-size:12px;padding:6px 3px}
 body[data-view="messages"] .compose-actions .btn{margin-left:auto;min-height:40px;padding:8px 12px}
 body[data-view="messages"] .compose .form-status:empty{display:none}
}

.update-banner{margin:12px 24px 0;padding:12px 16px;border:1px solid #bad3be;border-radius:10px;background:#edf6ed;color:#254a36;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;flex-shrink:0}.update-banner .btn{white-space:nowrap}@media(max-width:760px),(pointer:coarse) and (max-width:1100px){.update-banner{margin:8px 14px 0;padding:10px;flex-wrap:wrap;font-size:11px}.update-banner .btn{min-height:36px}}
