*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f1a;--surface: #1a1a2e;--surface2: #22223a;--border: #3a3a5c;--accent: #4a9eff;--accent2: #2a7de0;--success: #2ecc71;--warning: #f39c12;--danger: #e74c3c;--text: #f0f0f0;--text-dim: #9090b0;--radius: 10px;--tap: 52px}html,body,#root{height:100%;width:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}.app-shell{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.screen-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 24px;border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:filter .15s,transform .1s;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(1.15)}.btn-secondary{background:var(--surface2);color:var(--text);border:1.5px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-success{background:var(--success);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-lg{min-height:64px;font-size:1.2rem;padding:0 36px}.card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:20px}input,select,textarea{background:var(--surface2);border:1.5px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:1rem;padding:12px 16px;width:100%;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}label{display:block;font-size:.85rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.screen-title{font-size:1.6rem;font-weight:700;margin-bottom:4px}.screen-subtitle{color:var(--text-dim);margin-bottom:28px;font-size:.95rem}.confidence-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:700}.confidence-high{background:#2ecc7133;color:var(--success);border:1px solid var(--success)}.confidence-medium{background:#f39c1233;color:var(--warning);border:1px solid var(--warning)}.confidence-low{background:#e74c3c33;color:var(--danger);border:1px solid var(--danger)}.surface-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 24px;border-radius:var(--radius);border:2px solid var(--border);background:var(--surface2);cursor:pointer;transition:border-color .15s,background .15s;text-align:center;min-height:100px}.surface-chip:hover{border-color:var(--accent)}.surface-chip.selected{border-color:var(--accent);background:#4a9eff1f}.surface-chip .icon{font-size:2rem}.surface-chip .name{font-weight:700;font-size:1rem}.surface-chip .desc{font-size:.8rem;color:var(--text-dim)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.w-full{width:100%}.text-dim{color:var(--text-dim)}.text-sm{font-size:.85rem}.bold{font-weight:700}.stepper-input::-webkit-inner-spin-button,.stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.mmw-rich span{line-height:0}.mmw-gfx svg *{stroke:#000!important}.mmw-gfx svg [fill]:not([fill=none]){fill:#000!important}.mmw-gfx svg path[data-outline]{fill:#000!important;fill-rule:evenodd}.mmw-gfx svg path[data-outline]{stroke-width:1px!important;vector-effect:non-scaling-stroke}.mmw-gfx-nofill svg path[data-outline],.mmw-gfx-nofill svg [fill]:not([fill=none]),.mmw-gfx-nofill svg path:not([fill]),.mmw-gfx-nofill svg polygon:not([fill]),.mmw-gfx-nofill svg rect:not([fill]),.mmw-gfx-nofill svg circle:not([fill]),.mmw-gfx-nofill svg ellipse:not([fill]){fill:#fff!important;fill-rule:evenodd;stroke:#000!important;stroke-width:1px;vector-effect:non-scaling-stroke}.btn.mmw-notes-alert{background:#f1c40f;color:#1a1a1a;border:2px solid #f1c40f;animation:mmw-notes-pulse 1.4s ease-in-out infinite}.btn.mmw-notes-alert:hover{background:#ffd83a;border-color:#ffd83a}@keyframes mmw-notes-pulse{0%,to{box-shadow:0 0 #f1c40fbf}50%{box-shadow:0 0 0 7px #f1c40f00}}.mmw-gfx.mmw-gfx-light svg *{stroke:var(--mmw-ink, #ececec)!important}.mmw-gfx.mmw-gfx-light svg [fill]:not([fill=none]),.mmw-gfx.mmw-gfx-light svg path[data-outline]{fill:var(--mmw-ink, #ececec)!important}.mmw-gfx-nofill.mmw-gfx-light svg path[data-outline],.mmw-gfx-nofill.mmw-gfx-light svg [fill]:not([fill=none]),.mmw-gfx-nofill.mmw-gfx-light svg path:not([fill]),.mmw-gfx-nofill.mmw-gfx-light svg polygon:not([fill]),.mmw-gfx-nofill.mmw-gfx-light svg rect:not([fill]),.mmw-gfx-nofill.mmw-gfx-light svg circle:not([fill]),.mmw-gfx-nofill.mmw-gfx-light svg ellipse:not([fill]){fill:#ececec4d!important;stroke:var(--mmw-ink, #ececec)!important}.mmw-erase-line:hover .mmw-erase-ink{stroke:#e74c3c!important;stroke-width:5px}.mmw-gfx svg path[data-cutline]{fill:none!important;stroke-width:1.5px;vector-effect:non-scaling-stroke}
