.session-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.session-controls #session-name{font-size:12px}.session-controls button{border:1px solid #cedcd2;background:#fff;border-radius:8px;padding:9px 12px;color:#315a46;font-size:12px}.login{background:#fff;border:1px solid #dce5dd;border-radius:17px;margin:auto;width:min(500px,calc(100% - 32px));padding:36px}.login h2{font-size:27px;letter-spacing:-.8px}.login p{color:#637e6e;line-height:1.7;font-size:13px}.login form{display:grid;gap:12px;margin-top:25px}.login label{font-size:12px;font-weight:600}.login select{padding:13px;border:1px solid #b7cbbb;border-radius:9px;background:#f9fbf8;font:inherit;color:#163c35;width:100%}.login .primary{justify-content:center;background:#214e40;color:#fff;padding:14px}.login .primary:disabled{opacity:.55;cursor:wait}#login-status{font-size:12px;min-height:40px}main:has(.login:not([hidden])) .home{display:none}@media(max-width:700px){header{height:auto;min-height:90px;align-items:flex-start}.session-controls{max-width:190px;gap:6px}.session-controls #session-name{font-size:10px}.session-controls button{font-size:10px;padding:6px}.session-controls .environment{font-size:7px}.login{padding:24px;margin:25px auto;overflow:auto}.login h2{font-size:23px}}
.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:#fff;padding:12px 16px;color:#163c35;transform:translateY(-150%)}.skip-link:focus{transform:none}
.notice{flex:none;padding:12px 20px;background:#fff7df;color:#624d13;border-bottom:1px solid #dec788;font-size:14px;line-height:1.5;display:flex;align-items:center;justify-content:space-between;gap:16px}
.notice button,.workspace-actions button,.frame-notice button{border:1px solid #aac0b4;border-radius:8px;padding:10px 14px;min-height:44px;background:#fff;color:#244e40;font-weight:600;font-size:13px}
.workspace-bar{padding:8px 16px;align-items:center;flex:none;color:#375648;font-size:12px}.workspace-info{display:grid;gap:4px}.workspace-info strong{font-size:14px}.workspace-actions{display:flex;gap:8px;flex:none}.workspace-actions #expand-workspace{background:#214e40;color:#fff;border-color:#214e40}
.test-limits{display:block;max-height:35dvh;overflow:auto}.test-limits p{margin:8px 0 0;max-width:950px}
#frame-container{position:relative;flex:1;min-height:0}#frames{height:100%}.frame-notice{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:#f4f7f5f5;overflow:auto}.frame-notice>div{max-width:520px;text-align:center}.frame-notice h2{font-size:22px}.frame-notice p{font-size:15px;line-height:1.6;color:#4b6659}#retry-warning{font-weight:600}
.workspace-expanded>.sidebar,.workspace-expanded>main>header{display:none}.workspace-expanded .workspace-bar{min-height:60px}.workspace-expanded #frame-status{display:none}
nav button,.session-controls button{min-height:44px}select:focus-visible{outline:3px solid #41bda1;outline-offset:3px}
@media(max-width:700px){.workspace-bar{display:flex;gap:8px;flex-wrap:wrap;padding:8px 12px}.workspace-info{flex:1;min-width:110px}.workspace-info strong{font-size:13px}.workspace-actions{gap:6px}.workspace-actions button{padding:8px 10px;font-size:12px}.workspace-actions #toggle-limits{font-weight:400}.workspace-expanded .workspace-info{min-width:80px}.workspace-expanded .workspace-actions{flex:1;justify-content:flex-end}.workspace-expanded .workspace-info strong{font-size:12px}.notice{align-items:flex-start;flex-wrap:wrap;font-size:13px}nav button{font-size:12px;padding:8px}.session-controls button{font-size:12px}.session-controls #session-name{font-size:12px}.login{min-height:0}.environment{max-width:100%;text-align:center}.workspace-expanded .workspace-bar{gap:4px}.workspace-expanded #toggle-limits{max-width:76px;line-height:1.2}}
.data-panel { padding: 24px; margin: 20px 0; border: 1px solid #bdd1c9; border-radius: 16px; background: #f2f8f5; }
.data-panel h3 { margin: 0 0 10px; }
.data-panel p { line-height: 1.55; }
.data-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.data-actions button { background: white; border: 1px solid #b1c9bf; border-radius: 8px; padding: 10px 14px; cursor: pointer; font-weight: 600; }
.data-actions button:disabled { opacity: .5; cursor: wait; }
#data-errors { color: #973121; }
#data-progress { font-weight: 600; }
#workspace-data-mode { color: #34715e; }
.shop9-lookup { border-top: 1px solid #bdd1c9; margin-top: 16px; padding-top: 8px; }
.shop9-lookup input { margin: 0 10px; padding: 9px; border: 1px solid #aaa; border-radius: 6px; max-width: 160px; }
.shop9-lookup button, #data-collections button { padding: 8px 12px; border: 1px solid #b1c9bf; border-radius: 8px; background: white; cursor: pointer; }
