*{box-sizing:border-box}html,body,#root{height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{background:#f5f5f5;color:#222}button{cursor:pointer;padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:4px}button:hover{background:#f0f0f0}button.primary{background:#2563eb;color:#fff;border-color:#2563eb}button.primary:hover{background:#1d4ed8}button.danger{background:#dc2626;color:#fff;border-color:#dc2626}input,select{padding:6px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px}.auth-page{max-width:360px;margin:80px auto;padding:24px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014}.auth-page h1{margin-top:0}.auth-page form{display:flex;flex-direction:column;gap:12px}.error{color:#dc2626;font-size:14px}.editor{display:flex;height:100vh}.editor .canvas-wrap{flex:1;position:relative;overflow:hidden;background:#e5e7eb}.editor .sidebar{width:340px;background:#fff;border-left:1px solid #ddd;display:flex;flex-direction:column;overflow:hidden}.sidebar h3{margin:0;padding:12px;border-bottom:1px solid #eee;font-size:14px;text-transform:uppercase;color:#555}.sidebar-section{border-bottom:1px solid #eee;padding:12px;overflow-y:auto}.sidebar-section.grow{flex:1}.category-row,.dot-row{display:flex;align-items:center;gap:6px;padding:4px 0;font-size:14px}.color-swatch{width:14px;height:14px;border-radius:50%;display:inline-block;border:1px solid #0003}.toolbar{background:#fff;padding:8px;border-bottom:1px solid #e5e7eb;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fff;border-bottom:1px solid #ddd}.projects-page{max-width:900px;margin:24px auto;padding:0 16px}.project-card{background:#fff;padding:16px;border-radius:8px;border:1px solid #e5e7eb;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}.modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:8px;padding:24px;min-width:360px;max-width:90vw}.modal h2{margin-top:0}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}
