:root{--bg: #0f1115;--panel: #161922;--panel-2: #1c2030;--border: #262b3b;--text: #e6e7eb;--text-dim: #8a8f9d;--accent: #e87722;--accent-soft: rgba(232, 119, 34, .15);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}button{font-family:inherit;font-size:14px;background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 12px;cursor:pointer}button:hover{background:var(--accent-soft);border-color:var(--accent)}button[disabled]{opacity:.4;cursor:not-allowed}.app{height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--panel)}.topbar .brand{font-weight:600;letter-spacing:-.01em}.topbar .crumbs{color:var(--text-dim);font-size:13px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;padding:22px}.project-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:16px;cursor:pointer}.project-card:hover{border-color:var(--accent)}.project-card h3{margin:0 0 6px}.project-card .meta{color:var(--text-dim);font-size:13px}.empty{text-align:center;padding:80px 20px;color:var(--text-dim)}.viewer{flex:1;display:flex;flex-direction:column;min-height:0}.viewer .frame-wrap{flex:1;background:#fff;position:relative;min-height:0}.viewer .canvas-wrap{flex:1;min-width:0;min-height:0;position:relative}.viewer iframe{width:100%;height:100%;border:0;display:block}.feedback-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.feedback-note{position:absolute;width:190px;min-height:70px;display:flex;flex-direction:column;align-items:stretch;gap:5px;text-align:left;color:#2f2205;background:#ffe07a;border:1px solid #d7a50f;border-radius:4px;box-shadow:0 8px 24px #0f11153d;pointer-events:auto;white-space:normal}.feedback-note:hover{background:#ffd65b;border-color:#b88400}.feedback-note strong{font-size:12px}.feedback-note span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:13px;line-height:1.3}.feedback-note-inline-actions{display:flex;gap:5px;margin-top:2px}.feedback-note-inline-actions button{flex:1;padding:4px 6px;color:#2f2205;background:#fff1a8;border-color:#d7a50f;font-size:12px}.feedback-note-editor{position:absolute;width:240px;padding:8px;background:#fff1a8;border:1px solid #d7a50f;border-radius:4px;box-shadow:0 10px 28px #0f111547;pointer-events:auto}.feedback-note-editor label{display:flex;flex-direction:column;gap:4px;margin-bottom:7px;color:#5a4308;font-size:12px;font-weight:600}.feedback-note-editor input{width:100%;border:1px solid #c99810;border-radius:4px;padding:7px;color:#2f2205;background:#fff8cf;font:inherit;font-size:13px}.feedback-note-editor textarea{width:100%;min-height:96px;resize:vertical;border:1px solid #c99810;border-radius:4px;padding:7px;color:#2f2205;background:#fff8cf;font:inherit;font-size:13px}.feedback-note-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:7px}.feedback-note-actions button{color:#2f2205;background:#ffe07a;border-color:#d7a50f}.chat-md p{margin:0 0 8px;line-height:1.5}.chat-md p:last-child{margin-bottom:0}.chat-md code{background:var(--panel-2);padding:1px 5px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.92em;border:1px solid var(--border)}.chat-md pre{background:var(--panel-2);padding:8px 10px;border-radius:6px;overflow-x:auto;border:1px solid var(--border);font-size:12px;margin:6px 0}.chat-md pre code{background:none;padding:0;border:0}.chat-md ul,.chat-md ol{padding-left:20px;margin:4px 0 8px}.chat-md li{margin:2px 0}.chat-md strong{font-weight:600}.chat-md em{font-style:italic}.chat-md a{color:var(--accent)}.select,select{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:13px;font-family:inherit}
