#mobile-root,#mobile-dock{display:none}
@media(max-width:640px){#import-results table,#import-results tbody{display:block;width:100%}#import-results thead{display:none}#import-results tr{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;margin:0 0 12px;padding:12px}#import-results td,#import-results td:last-child{display:flex;gap:16px;justify-content:space-between;border:0;width:auto;min-width:0;max-width:none;height:auto;text-align:right;padding:7px 0;font-size:14px}#import-results td::before{content:attr(data-label);color:var(--muted);text-align:left;flex-shrink:0;max-width:42%}}
@media(max-width:640px){
 :root{background:#f6f4f4}body{min-height:100dvh}body:has(dialog[open]){overflow:hidden}
 header{min-height:0;border:0;padding:24px 20px 22px;background:var(--red)}.brand{font-size:24px;letter-spacing:1px}.org{font-size:12px;margin-top:8px;opacity:.85}#identity{margin-top:16px;font-size:13px}#logout{min-height:36px}
 main{padding:0 16px calc(95px + env(safe-area-inset-bottom))}#workspace{min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
 #tabs{margin:0 -16px;padding:0 8px;flex-wrap:nowrap;overflow-x:auto}#tabs button{white-space:nowrap;min-height:50px;flex:1;padding:12px}
 .toolbar{margin:0 -16px;padding:14px 16px;gap:8px;background:#fff}.toolbar button{min-height:42px}#count{display:none}
 .searchbar{margin:16px 0 0;padding:0;border:0;gap:8px}.searchbar label{display:none}.searchbar input{height:46px;background:#fff;border:1px solid #e9e1e3;border-radius:12px;font-size:16px;flex:1;width:0;max-width:none}.searchbar button{height:44px;border:0;background:transparent;padding:8px;color:var(--red)}
 #main-grid,#activity-detail,#hint{display:none!important}#mobile-root{display:block}.m-intro{padding:22px 2px 14px}.m-eyebrow{font-size:13px;color:var(--muted);margin:0 0 8px}.m-intro h1{font-size:25px;line-height:1.4;margin:0;font-weight:700;overflow-wrap:anywhere}.m-intro>button{margin-bottom:18px;border:0;background:none;padding:0;color:var(--red);min-height:40px}
 .m-tools{display:flex;gap:8px;margin-bottom:12px}.m-tools button{font-size:14px;min-height:42px;border-radius:10px;background:#fff}
 .m-list-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 14px}.m-list-controls label{display:flex;align-items:center;gap:9px;margin:0;min-height:44px;white-space:nowrap;font-size:14px}.m-list-controls select{width:auto;max-width:65%;font-size:14px;height:44px;background:transparent;border-color:#e4dadd;border-radius:10px}
 input[type=checkbox]{width:20px;height:20px;flex-shrink:0}.m-card{padding:18px;margin-bottom:12px;border:1px solid #ede5e7;border-radius:16px;background:#fff;box-shadow:0 3px 12px #4b122304;overflow-wrap:anywhere}.m-card-top{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.m-card-top h3{flex:1;min-width:140px;font-size:18px;line-height:1.5;margin:0}.m-card-top>input{margin-top:4px}.m-title-link{border:0;padding:0;background:transparent;text-align:left;font-weight:650;color:var(--ink);font-size:18px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;max-width:100%}.m-date{color:var(--muted);font-size:13px;margin:8px 0 16px}.m-badge{padding:5px 9px;border-radius:6px;font-size:12px;background:#f5f1f2;color:#796269;white-space:nowrap}.m-badge.pass{color:#28664a;background:#edf6f0}.m-badge.fail{color:#9d2636;background:#fcedef}.m-badge.pending{color:#8a602b;background:#fcf4e8}
 .m-fields{display:grid;gap:10px;margin-top:14px}.m-pair{display:flex;justify-content:space-between;gap:18px;font-size:14px;line-height:1.6}.m-pair>span{color:var(--muted);flex-shrink:0}.m-pair strong{font-weight:500;text-align:right;min-width:0}.m-card-actions{display:flex;justify-content:flex-end;border-top:1px solid #f1ebed;margin-top:16px;padding-top:10px}.m-card-actions button{border:0;color:var(--red);background:transparent;min-height:42px;padding:8px 2px;font-size:14px}.m-empty{padding:34px 18px;background:#fff;border:1px dashed #dac6cb;border-radius:16px;text-align:center;margin:12px 0;line-height:1.7;color:var(--muted)}.m-empty strong{color:var(--ink);font-size:18px}.m-empty p{font-size:14px}.m-empty button{min-height:46px;border-color:var(--red);color:var(--red);border-radius:10px}.m-list-end{text-align:center;color:var(--muted);font-size:13px;margin:24px}.m-detail-section h2{margin:18px 0 12px;padding:0;border:0;background:none;font-size:18px;color:var(--ink)}.m-detail-section>button{margin:0 8px 12px 0;min-height:44px}
 body[data-role=volunteer] #tabs,body[data-role=volunteer] .toolbar{display:none}body[data-role=volunteer] #mobile-dock{position:fixed;display:flex;bottom:0;left:0;right:0;z-index:10;align-items:center;justify-content:space-around;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #eee4e6;box-shadow:0 -4px 20px #52132606}#mobile-dock button{flex:1;min-height:48px;padding:8px 0;font-size:14px;border-radius:12px}#mobile-dock button[aria-current=page]{color:var(--red);background:var(--red-soft)}#mobile-dock button:nth-child(2){background:var(--red);color:#fff;font-weight:600}#mobile-dock button::after{display:none}
 .login-panel{max-width:none;width:auto;margin:24px 0 0;border:0;border-radius:20px;box-shadow:0 8px 30px #471d2908;padding:28px 22px}.login-panel h1{border:0;margin:0 0 26px;padding:0;font-size:23px;color:var(--ink)}.login-panel label{font-size:15px;margin:20px 0}.login-panel input{height:52px;font-size:16px;border-radius:10px;background:#faf8f9}.login-panel .primary{height:52px;border-radius:12px;font-size:17px}.login-panel a{min-height:44px;line-height:44px;margin-top:14px}.login-panel p{font-size:14px}
 #dialog,#import-dialog{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:100dvh;margin:0;border:0;border-radius:0;background:#f8f5f6;box-shadow:none;overflow-y:auto;overscroll-behavior:contain}dialog form{padding:0 18px;min-height:100%;display:flex;flex-direction:column}dialog h2{position:sticky;top:0;z-index:2;margin:0 -18px 22px;padding:20px 18px;background:#fff;color:var(--ink);border-top:0;border-bottom:1px solid var(--line);font-size:20px}#fields{display:flex;flex-direction:column;gap:20px}#fields label{margin:0;gap:10px;font-size:15px}#fields input,#fields select,dialog input,dialog select{min-height:50px;font-size:16px;border-radius:10px;background:#fff}#fields input[type=hidden]{display:none}.mobile-autofilled{display:none!important}#fields .leader-picker{padding:16px;border-radius:12px;background:#fff}.leader-picker legend{font-size:15px}.leader-picker-bottom{flex-wrap:wrap;line-height:1.6}.leader-picker-bottom button{min-height:44px}.leader-chips button{min-height:40px}.search-results button{min-height:44px}
 dialog footer{position:sticky;bottom:0;z-index:2;margin:24px -18px 0;padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}dialog footer button{min-height:50px;border-radius:10px;font-size:16px}dialog footer .primary{flex:1}#form-error{line-height:1.7;font-size:14px}#message{position:fixed;bottom:calc(84px + env(safe-area-inset-bottom));left:16px;right:16px;margin:0;padding:13px 16px;z-index:11;background:#fff5f6;border:1px solid #e6c6cd;border-radius:12px;box-shadow:0 5px 20px #3309140c;line-height:1.6}
 #import-results{max-height:none}.import-grid{margin:16px 0}#import-preview{min-height:48px}#import-template{line-height:44px;font-size:16px}
}
