*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:#1f2328;background:#e9ebee;font-family:Segoe UI,system-ui,sans-serif;font-size:13px}.app{height:100%;display:flex}.main{flex-direction:column;flex:1;min-width:0;display:flex}.toolbar{background:#fff;border-bottom:1px solid #d0d7de;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.title{flex-direction:column;display:flex}.title strong{font-size:15px}.controls{align-items:center;gap:14px;display:flex}.controls select{margin-left:4px}.muted{color:#656d76}.small{font-size:11px}.stage{flex:1;padding:20px;overflow:auto}.error{color:#b42318;background:#fee4e2;border-radius:4px;margin-bottom:12px;padding:8px 12px}.details{background:#fff;border-top:1px solid #d0d7de;flex-wrap:wrap;gap:6px 16px;padding:8px 14px;font-family:Consolas,monospace;font-size:12px;display:flex}.sidebar{background:#fff;border-left:1px solid #d0d7de;flex-direction:column;width:320px;display:flex}.sidebar-head{border-bottom:1px solid #d0d7de;flex-direction:column;gap:6px;padding:10px;display:flex}.search{border:1px solid #d0d7de;border-radius:4px;width:100%;padding:6px 8px}.row{gap:6px;display:flex}.row select{flex:1}.file{cursor:pointer;white-space:nowrap;background:#f6f8fa;border:1px solid #d0d7de;border-radius:4px;padding:2px 8px}.screen-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.screen-list li{cursor:pointer;border-bottom:1px solid #f0f1f3;justify-content:space-between;gap:8px;padding:5px 10px;display:flex}.screen-list li:hover{background:#f3f6fa}.screen-list li.active{color:#fff;background:#0a5bb5}.screen-list li.active .meta{color:#d6e6fb}.screen-list .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.screen-list .meta{color:#8c959f;white-space:nowrap;font-size:11px}.canvas-wrap{position:relative;box-shadow:0 2px 10px #00000040}.canvas{transform-origin:0 0;background:#f0f0f0;border:1px solid #a0a0a0;font-family:Tahoma,MS Sans Serif,Arial,sans-serif;font-size:11px;position:absolute;top:0;left:0;overflow:hidden}.label,.w{position:absolute}.label{white-space:nowrap;line-height:13px;overflow:hidden}.w{cursor:pointer}.w[data-selected]{outline-offset:1px;z-index:5;outline:2px solid #ff6a00}.fillin,.combo,.editor{background:#fff;border:1px solid #e3e3e3;border-color:#7a7a7a #e3e3e3 #e3e3e3 #7a7a7a;box-shadow:inset 1px 1px #404040}.combo .arrow{background:#e1e1e1;border-left:1px solid #adadad;justify-content:center;align-items:center;width:16px;font-size:10px;display:flex;position:absolute;top:0;bottom:0;right:0}.toggle{background:#fff;border:1px solid #333}.button{text-align:center;background:linear-gradient(#fdfdfd,#e3e3e3);border:1px solid #707070;border-radius:2px;justify-content:center;align-items:center;padding:0 3px;line-height:12px;display:flex;overflow:hidden}.rect{border:1px solid #a0a0a0;box-shadow:inset 1px 1px #fff,1px 1px #fff}.frame{border:1px dashed #b0b0b0}.image{color:#666;background:repeating-linear-gradient(45deg,#e6e6e6 0 6px,#ededed 6px 12px);border:1px solid #c4c4c4;justify-content:center;align-items:center;display:flex;overflow:hidden}.table{background:#fff;border:1px solid #7a7a7a;overflow:hidden}.table-head{color:#444;background:#dcdcdc;border-bottom:1px solid #a0a0a0;padding:2px 4px}.browser{color:#666;background:#fff;border:1px solid #7a7a7a;justify-content:center;align-items:center;display:flex}.text{white-space:pre-wrap;line-height:13px;overflow:hidden}.unknown{color:red;border:1px dotted red}.canvas.outlines .label{outline:1px dotted #2f81f7}.canvas.outlines .w{outline:1px dotted #d1242f}.canvas{background:#fff}.canvas.coloured .fillin,.canvas.coloured .combo,.canvas.coloured .editor,.canvas.coloured .toggle{box-shadow:none;border-color:#7a7a7a}.canvas.coloured .rect{box-shadow:none}.swatch{vertical-align:-1px;border:1px solid #00000059;border-radius:2px;flex:none;width:10px;height:10px;margin-right:6px;display:inline-block}.swatch-wrap{white-space:nowrap}.details{flex-direction:column}.details-row{flex-wrap:wrap;gap:6px 16px;display:flex}.nowrap{white-space:nowrap}.screen-list li.deleted .name{opacity:.6;text-decoration:line-through}.badge{color:#57606a;background:#eaeef2;border-radius:8px;margin-left:8px;padding:1px 6px;font-size:11px;font-weight:400}.screen-list li.hidden-screen .name{color:#8c959f;font-style:italic}.screen-list li.active.hidden-screen .name{color:#d6e6fb}.label.is-hidden,.w[data-hidden]{opacity:.45;outline:1px dashed #cf222e!important}.warn{color:#7d4e00;background:#fff8c5;border-radius:4px;margin-bottom:12px;padding:6px 12px}.sidebar-head>select{width:100%}.label{cursor:pointer}.banner{background:#fff;border-top:3px solid #0a5bb5;max-height:45vh;padding:12px 40px 10px 16px;animation:.15s ease-out banner-in;position:relative;overflow-y:auto;box-shadow:0 -4px 14px #0000001f}@keyframes banner-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.banner-close{cursor:pointer;color:#57606a;background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:6px;right:10px}.banner-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.banner-head h2{margin:0;font-size:17px}.status{color:#57606a;background:#eaeef2;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:600}.status-confirmed{color:#116329;background:#dafbe1}.status-draft{color:#7d4e00;background:#fff8c5}.status-amended{color:#0550ae;background:#ddf4ff}.banner-grid{grid-template-columns:90px 1fr;gap:6px 12px;margin:10px 0;display:grid}.banner-grid dt{color:#57606a;font-weight:600}.banner-grid dd{margin:0;line-height:1.45}.banner-grid textarea{width:100%;font:inherit;resize:vertical;border:1px solid #0a5bb5;border-radius:4px;padding:6px}.banner-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.banner-actions button{cursor:pointer;font:inherit;background:#f6f8fa;border:1px solid #d0d7de;border-radius:4px;padding:5px 12px}.banner-actions button.primary{color:#fff;background:#1f883d;border-color:#1a7f37}.banner-actions button:disabled{opacity:.5;cursor:default}.banner-actions .note{border:1px solid #d0d7de;border-radius:4px;flex:1;min-width:160px;padding:5px 8px}.error-text{color:#cf222e}.style-checks{margin:6px 0 0;padding:0;font-size:12px;line-height:1.4;list-style:none}.style-checks li{margin:2px 0}.style-checks.ok{color:#1a7f37}.style-error{color:#cf222e}.style-warning{color:#9a6700}.tabs{flex:none;gap:2px;display:flex}.tabs button{cursor:pointer;font:inherit;background:#f6f8fa;border:1px solid #d0d7de;border-radius:4px;padding:5px 12px}.tabs button.active{color:#fff;background:#0a5bb5;border-color:#0a5bb5}.badge.virtual{color:#6639ba;background:#fbefff}.screen-list li.virtual .name{color:#6639ba}.screen-list li.active.virtual .name{color:#fff}.abbr-view{background:#f6f8fa;flex:1;padding:14px 18px;overflow-y:auto}.abbr-intro p{color:#57606a;max-width:80ch;margin:0 0 10px}.abbr-filters{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.abbr-filters button{cursor:pointer;font:inherit;background:#fff;border:1px solid #d0d7de;border-radius:14px;padding:4px 10px}.abbr-filters button.active{color:#fff;background:#0a5bb5;border-color:#0a5bb5}.abbr-filters .search{flex:1;width:auto;min-width:200px}.abbr-list{background:#fff;border:1px solid #d0d7de;border-radius:6px;margin:0;padding:0;list-style:none}.abbr-row{border-bottom:1px solid #eaeef2}.abbr-row:last-child{border-bottom:0}.abbr-head{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:80px 140px 1fr auto;align-items:baseline;gap:10px;padding:7px 12px;display:grid}.abbr-head:hover,.abbr-row.open .abbr-head{background:#f3f6fa}.abbr{font-family:ui-monospace,Consolas,monospace}.abbr-status{color:#57606a;background:#eaeef2;border-radius:10px;justify-self:start;padding:1px 8px;font-size:11px;font-weight:600}.abbr-status.unknown{color:#a40e26;background:#ffebe9}.abbr-status.unconfirmed{color:#7d4e00;background:#fff8c5}.abbr-status.ambiguous{color:#6639ba;background:#fbefff}.abbr-status.known,.abbr-status.confirmed{color:#116329;background:#dafbe1}.abbr-meaning{min-width:0}.abbr-count{white-space:nowrap;color:#57606a;font-size:12px}.abbr-body{padding:4px 12px 12px 102px}.abbr-fields{columns:2;margin:4px 0 8px;padding-left:18px;font-size:12px}.abbr-fields li{break-inside:avoid}.link{color:#0a5bb5;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.abbr-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.abbr-form input{font:inherit;border:1px solid #d0d7de;border-radius:4px;padding:5px 8px}.abbr-form input:first-child{flex:2;min-width:220px}.abbr-form .note{flex:1;min-width:140px}.abbr-form button{color:#fff;cursor:pointer;font:inherit;background:#1f883d;border:1px solid #1a7f37;border-radius:4px;padding:5px 12px}.abbr-form button:disabled{opacity:.5;cursor:default}.abbr-empty{padding:12px}@media (width<=700px){.abbr-head{grid-template-columns:70px 1fr}.abbr-body{padding-left:12px}.abbr-fields{columns:1}}.handler-question{background:#fff8c5;border-left:3px solid #9a6700;margin-top:6px;padding:6px 8px;font-size:12px}.was-status{font-style:italic}.status-rewrite{color:#6639ba;background:#fbefff}.style-guide{color:#57606a;margin:0 0 6px;padding-left:18px;font-size:12px}.banner-tech{color:#57606a;border-top:1px solid #eaeef2;flex-wrap:wrap;gap:4px 14px;margin-top:10px;padding-top:8px;font-family:Consolas,monospace;font-size:11px;display:flex}.banner-tech .swatch{margin:0 3px 0 2px}.view-as{flex-direction:column;gap:6px;display:flex}.view-as.on{background:#f1f8ff;border:1px solid #54aeff;border-radius:6px;margin:0 -2px;padding:8px}.view-as .row{align-items:center}.view-as .clear{cursor:pointer;color:#57606a;background:0 0;border:0;font-size:18px}.view-as-info{flex-direction:column;gap:4px;display:flex}.view-as-info .team{color:#57606a;flex-direction:column;gap:2px;font-size:12px;display:flex}.view-as-info select{width:100%}.canvas .w[data-def]{z-index:3}.canvas .w[data-def=todo]{outline-offset:1px;animation:1.6s ease-in-out infinite def-pulse;outline:3px solid #ff1f1f!important;box-shadow:0 0 0 5px #ff1f1f40,0 0 10px 3px #ff1f1f8c!important}.canvas .w[data-def=done]{outline-offset:1px;outline:3px solid #00c853!important;box-shadow:0 0 0 5px #00c85338!important}.canvas .w[data-def][data-selected]{animation:none;outline-width:4px!important;outline-color:#ff6a00!important}@keyframes def-pulse{50%{box-shadow:0 0 0 7px #ff1f1f1f,0 0 16px 6px #ff1f1fb3}}.def-count{color:#fff;border-radius:10px;margin-right:10px;padding:1px 8px;font-weight:600;display:inline-block}.def-count.todo{background:#e5191a}.def-count.done{background:#00a344}.todo-pill{color:#fff;text-align:center;background:#e5191a;border-radius:9px;min-width:18px;margin-right:6px;padding:0 5px;font-weight:700;display:inline-block}.report-flag{color:#fff;border-radius:4px;margin:8px 0 0;padding:6px 10px;font-weight:600}.report-flag.todo{background:#e5191a}.report-flag.done{background:#00a344}.report-cols{color:#57606a;word-break:break-word;font-family:Consolas,monospace;font-size:11px}.workspace{flex:1;min-height:0;display:flex}.workspace .stage{flex:1;min-width:0}.workspace .banner{border-top:0;border-left:3px solid #0a5bb5;flex:none;width:400px;max-height:none;animation:.15s ease-out panel-in;overflow-y:auto;box-shadow:-4px 0 14px #0000001f}@keyframes panel-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:none}}.workspace .banner-grid{grid-template-columns:1fr;gap:2px}.workspace .banner-grid dd{margin-bottom:8px}.canvas .w[data-inert],.canvas .label[data-inert]{pointer-events:none;cursor:default}.canvas .w:not([data-inert]):hover{outline-offset:1px;outline:2px solid #0a5bb5}
